XML-Метаданные
Aus EnigmaWiki
Available languages: Deutsch, English, Русский
Метаданные - это информация об уровне, например, его название, имя автора, версия, лицензия, версия Enigma и.т.д. В уровнях Enigma эти данные находятся в XML между тегами <el:info ...> и </el:info>. Это выглядит так:
<el:info el:type="level"> <el:identity el:title="Hello world" el:subtitle="My first level" el:id="20061215weihnachtsmann523"/> <el:version el:score="1" el:release="1" el:revision="0" el:status="experimental"/> <el:author el:name="Saint Nicholas" el:email="weihn@chtsma.nn" el:homepage="http://enigma.mal2.ch"/> <el:copyright>Copyright (c) 2006 Saint Nicholas </el:copyright> <el:license el:type="GPL v2.0 or above" el:open="true"/> <el:compatibility el:enigma="1.00"/> <el:modes el:easy="false" el:single="true" el:network="false"/> <el:comments> <el:credits el:showinfo="true" el:showstart="true"> Thanks to the Elves, who tested this level. </el:credits> <el:dedication el:showinfo="true" el:showstart="true"> For Rudolph with the red nose, which always shines the way for me. </el:dedication> <el:code> notes to the code, e.g. To-Do lists or version references </el:code> </el:comments> <el:update el:url="http://mein-server.org/pfad/zum/level.xml"/> <el:upgrade el:url="http://mein-server.org/pfad/zum/level_v2.xml" el:release="2"/> <el:score el:easy="00:23" el:difficult="00:55"/> </el:info>
Inhaltsverzeichnis |
Краткий курс XML
Элементы XML (теги)обозначаются следующим образом
<element> содержимое элемента </element>
or
<element/>
для тегов без содержимого.
Тегам могут быть присвоены атрибуты:
<element attribut1="value1" attribut2="value2"> содержимое </element>
и/или
<element attribut1="value1" attribut2="value2"/>
Более того, содержимое одного тега может включать другие.
Если вы хотите узнать больше про XML, почитайте документацию XML на Selfhtml [1] (Немецкий сайт)
Данные
el:identity
<el:identity el:title="Hello world" el:subtitle="My first level" el:id="20061215weihnachtsmann523"/>
Это обозначение обязательно, т.е., уровень без el:identity не является допустимым уровнем и вызывает сообщение об ошибке.
el:identity уровня содержит его заголовок, подзаголовок и идентификатор.
Атрибуты
-
el:title(обязательный): Заголовок уровня -
el:subtitle(обязательный): Подзаголовок уровня -
el:id(обязательный): Строка-идентификатор уровня. Теоретически здесь можно ввести любую строку. Рекомендуется, однако, использовать следующий шаблонYYYYMMDDauthorXXX.YYYYMMDD- это Год-Месяц-День, а вместоauthorвы можете ввести своё имя.XXXэто 3 цифры, которые вы можете выбирать по вашему усмотрению. Они гарантируют то, что 2 уровня, написанные вами в один день,будут иметь разный идентификатор. Если вы пишете более 1000 уровней в день, заведите себе псевдоним ;-)
Содержимое
Тег не имеет содержимого
el:version
<el:version el:score="1" el:release="1" el:revision="0" el:status="experimental"/>
обязательный
el:version содержит информацию о версии уровня.
Атрибуты
-
el:score(обязательный): Значение необходимо увеличить на 1, если изменения делают Лучшее Время недействительным. Для новых уровней значение равно 1. -
el:release(обязательный): Значение необходимо увеличить на 1, если изменения привели к несовместимости уровня с более ранними версиями Enigma, или при увеличении. Для новых уровней значение равно 1. -
el:revision(обязательный): Значение увеличивается на 1 при публикации новой версии. -
el:status(обязательный): Может принимать значения "released"(выпущен), "stable"(стабилен), "test"(тестируется) and "experimental"(экспериментальный). Сначала устанавливается статус experimental. Когда уровень написан, но ещё не проверен, он получает статус test. Если в уровне не осталось багов, вы можете поставить его статус stable.
Содержимое
Нет содержимого.
el:author
<el:author el:name="Saint Nicholas" el:email="weihn@chtsma.nn" el:homepage="http://enigma.mal2.ch"/>
обязательный
el:author содержит информацию об авторе(авторах) уровня
Attribute
-
el:name(необязательный): Здесь вы можете ввести своё имя. Если вы пропустите этот атрибут, его значениебудет установлено в "anonymous". -
el:email(необязательный): Здесь вы можете ввести e-mail адрес, или ссылку на форум где вас можно найти. Адрес отображается на странице информации уровня. -
el:homepage(необязательный): Здесь вы можете ввести адрес своего сайта. Он также отображается на странице информации.
Содержимое
Нет содержимого
el:copyright
<el:copyright>Copyright (c) 2006 Saint Nicholas </el:copyright>
обязательный
el:copyright содержит информацию о копирайте
Атрибуты
Нет атрибутов
Содержимое
Строка, содержащая год и имя владельца копирайта.
el:license
<el:license el:type="GPL v2.0 or above" el:open="true"/>
обязательный
el:license contains information of the license under which the level is published.
Атрибуты
-
el:type(обязательный): Название лицензии и (возможно) ссылку на текст. Если вы хотите использовать собственную лицензию, обозначенную в содержимом, установите атрибут в "special". -
el:open(обязательный): "true", если лицензия свободная по критериям Open Source Initiative (OSI)[2]. В противном случае, атрибут принимает значение "false". Уровни, выпущенные не под свободной лицензией, не могут быть включены в официальные пакеты уровней Enigma.
Содержимое
Если атрибут el:type имеет значение "special", здесь можно ввести текст лицензии или ссылку.
el:compatibility
<el:compatibility el:enigma="1.00"/>
обязательный
el:compatibility содержит информацию о версии Enigma, а также о движке и библиотеках, необходимых для запуска.
Атрибуты
-
el:enigma(обязательный): Указание (минимальной) необходимой версии Enigma. -
el:engine(необязательный): Указание движка. Возможные значения: "enigma", "oxyd1", "per.oxyd" "oxyd.extra" and "oxyd.magnum". Они различаются в обработке некоторых объектов. По умолчанию используется "enigma". Этот атрибут может использоваться только с уровнями, но не с пакетами уровней (? м.б.с библиотеками?).
Содержимое
Список дочерних элементов см. XML-Метаданные/el:compatibility.
el:modes
<el:modes el:easy="false" el:single="true" el:network="false"/>
обязательный
Позволяет объявлять поддерживаемые режимы.
Атрибуты
-
el:easy(обязательный): "true" если уровень имеет лёгкий режим, иначе "false". -
el:single(обязательный): "true" если уровень можно играть в режиме одного игрока, иначе "false". -
el:network(обязательный): "true" если уровень можно играть по сети, иначе "false". -
el:control(необязательный): Указывает, каким образом и с какого устройства управляется мир. По умолчанию "force". При значении "balance", мышью управляется сам мир(?). Для управления с клавиатуры(например, в уровнях типа Сокобан), установите значение в "key". Для альтернативных методов ввода установите значение "other". Однако, какой метод в конце концов использовать, решает пользователь. Однако высокие результаты сохраняются только если они достигнуты методом, определённым здесь. В текущей версии Enigma поддерживается, однако, только метод "force". Другие пока не работают :-(. -
el:scoreunit(необязательный): Определяет, показываются ли результаты как время ("duration") или как число ("number"). Чем меньше время или число, тем лучше. По умолчанию "duration". -
el:scoretarget(необязательный): Указывает, как вычисляются результаты. По умолчанию "time", т.е. необходимое для завершения время. "pushes" считает перемещения ящиков(или других камней)."moves" cчитает перемещения акторов. Также здесь можно написать имя Lua-функции, возвращающей очки.
Содержимое
Нет содержимого
el:comments
<el:comments> <el:credits el:showinfo="true" el:showstart="true"> Thanks to the Elves, who tested this level. </el:credits> <el:dedication el:showinfo="true" el:showstart="true"> For Rudolph with the red nose, which always shines the way for me. </el:dedication> <el:code> notes to the code, e.g. To-Do lists or version references </el:code> </el:comments>
необязательный
el:comments содержит заметки, комментарии, посвящения, благодарности и.т.д.
Атрибуты
Нет атрибутов
Содержимое
Список дочерних элементов см. в XML-Метаданные/el:comments (German:XML-Metadaten/el:comments)
el:update
<el:update el:url="http://mein-server.org/pfad/zum/level.xml"/>
необязательный
Указывает адрес, откуда можно взять новую версию уровня с большим номером ревизии (revision). Внимание: Уровни, поставляемые с Enigma, будут расположены командой Enigma на (пока не существующем) сервере уровней Enigma.
Атрибуты
-
el:url(обязательный): URL-адрес, куда будут выкладываться обновления.
Содержимое
Нет содержимого
el:upgrade
<el:upgrade el:url="http://mein-server.org/pfad/zum/level_v2.xml" el:release="2"/>
необязательный
Указывает адрес, откуда можно взять новую версию уровня с большим номером выпуска (release).
Атрибуты
-
el:url(обязательный): URL-адрес, куда будут выкладываться обновления. -
el:release(обязательный): Номер выпуска.
Содержимое
Нет содержимого
el:score
<el:score el:easy="00:23" el:difficult="00:55"/>
обязательный
Записывает ориентир времени. Это обычно (лучшее) время автора (но не абсолютное лучшее время)
Атрибуты
-
el:easy(обязательный): Лучшие результаты в лёгком режиме. Если результаты - это время, то оно записывается в форматеMM:SS. Если это число, оно и записывается. Если автор не имеет, или не указывает результатов, то указывается "-". -
el:difficult(обязательный): Аналогично el:easy для сложного режима.
Содержимое
Нет содержимого

