![]() |
||
|
aranea.ru || WML - Введение | 11. Структура дек в WML
11. Структура дек в WMLДанные WML структурируются как коллекция карт (card). Одна коллекция карт составляет деку WML (deck). Каждая карта содержит структурированное содержание и спецификации по навигации. Следовательно, пользователь осуществляет навигацию через серию карт, просматривая содержание каждой, вводя требуемую информацию, осуществляет выбор и навигацию к другой карте или возвращается к предыдущей карте, которую уже посетил. 11.1 Вводная частьКорректная дека WML является корректным документом XML, и поэтому должна содержать XML-декларацию и декларацию тип документа (смотрите [XML] для получения подробной информации об определении корректного документа). Типичная вводная часть для документа содержит: <?xml version="1 .0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd"> Опускание вводной части является ошибкой. 11.2 Элемент WML<!ELEMENT wml ( head?, template?, card+ )> <!ATTLIST wml xml:lang NMTOKEN #IMPLIED %coreattrs; > Элемент wml определяет деку и включает всю информацию и карты в деке. Атрибутыxml : lang=nmtoken Атрибут xml:lang определяет естественный и формальный язык, на котором написан документ. Смотрите раздел 8.8 для получения подробной информации. 11.2.1 Пример WMLСледующий пример является декой, содержащей две карты, каждая представлена элементом card (смотрите раздел 11.5 по информации в картах). После загрузки деки устройство вывода выводит на экран первую карту. Если пользователь активирует элемент DO, устройство вывода выводит на экран вторую карту. <wml> <card> <p> <do type="accept"> <go href="#card2"/> </ do> Hello world! This is the first card... </p> </card> <card id="card2"> <p> This is the second card. Goodbye. </p> </card> </wml> 11.3 Элемент Head
Элемент head содержит информацию, связанную с декой, указывая метаданные и элементы управления доступом. Атрибуты, определенные в другом месте
11.3.1 Элемент Access<!ELEMENT access EMPTY> <!ATTLIST access domain CDATA path CDATA %coreattrs; > #IMPLIED #IMPLIED Элемент access определяет информацию по управлению доступом для всей деки. Включать более одного элемента access является ошибкой для деки. Если дека не включает элемент access, то управление доступом отключено. Когда управление доступом отключено, карты в любой деке могут получить доступ к этой карте. Атрибутыdomain=cdata path=cdata Атрибуты domain и path определяют, какие другие деки могут получить доступ к данной деке. Так как устройство вывода осуществляет навигацию от одной деки к другой, оно осуществляет проверку управления контролем для определения, позволяет ли требуемая дека доступ из текущей деки. Если дека имеет атрибут domain и/или path, URI деки, к которой обращаются, должен соответствовать значениям атрибутов. Согласование осуществляется соответствующим образом: домен доступа является согласованным по суффиксу против части имени домена URI, к которому обращаются, и путь доступа является согласующимся по префиксу против части пути URI, к которому обращаются. Согласование по суффиксу Domain осуществляется с использованием всего элемента каждого субдомена и должны согласовываться с каждым элементом точно (например, www.wapforum.org должны согласовываться с wapforum.org, но не согласуется с forum.org). Согласование по префиксу Path осуществляется с использованием полных элементов пути и долждны согласовываться с каждым элементом точно (например, /X/Y соответствует атрибуту пути ="/X", но не согласуется с атрибутом пути ="/XZ"). Атрибут domain по умолчанию соответствует текущему домену деки. Атрибут path по умолчанию соответствует значению "/". Для упрощения развития приложения, которому нельзя знать абсолютный путь к текущей деке, атрибут path принимает относительные адреса URI. Устройство вывода конвертирует относительный путь в абсолютный, и затем выполняет согласование префикса по отношению к атрибуту PATH. Например, внизу показаны атрибуты управления доступом: domain="wapforum. org" path=" /cbb" Следующие URI, к которым обращаются, будут позволять переходить к деке: http: //wapforum. org/cbb/stocks . cgi https : / /www . wapforum. org/cbb/bonds . cgi http://www.wapforum.org/cbb/demos/alpha/packages.cgi?x=123&y=456 Следующие адреса URI, к которым обращаются, не будут позволять переходить к деке: http://www.test.net/cbb http://www.wapforum.org/internal/foo.wml Domain и path следуют правилам капитализации URL. Атрибуты, определенные в другом месте
11.3.2 Элемент Meta<!ELEMENT meta EMPTY> <!ATTLIST meta http-equiv CDATA #IMPLIED name CDATA #IMPLIED forua %boo lean; "false" content CDATA #REQUIRE D scheme CDATA #IMPLIED %coreattrs; > Элемент meta содержит метаинформацию, связанную с декой WML. Метаинформация устанавливается с именами и значениями свойств. Эта спецификация не определяет какие-либо свойства, и не определяет, как устройства вывода должны интерпретировать метаданные. Устройства вывода не обязаны поддерживать механизм метаданных. Элемент meta должен содержать точно один атрибут, определяющий имя свойства; т.е. точно одну форма, следующий набор: http-equiv и name. Атрибутыname=cdata Этот атрибут определяет имя свойства. Устройства вывода должны игнорировать любые метаданные, названные этим атрибутом. Сетевые серверы не должны показывать содержание WML в метаданных, названных этим атрибутом. http-equiv=cdataЭтот атрибут может использоваться вместо name, и указывать, что свойство должно интерпретироваться как заголовок HTTP (смотрите [RFC2068]). Метаданные, названные этим атрибутом, должны конвертироваться в заголовки ответа WSP или http, если содержание помечается перед тем, как он прибывает в устройство вывода. forua=BooleanЕсли значение - "false", то промежуточный агент ДОЛЖЕН убрать элемент "meta" перед тем, как послать документ клиенту. Если значение - "true", то метаданные элемента ДОЛЖНЫ доставляться устройству вывода. Метод передачи может варьировать. Например, метаданные http-equiv могут доставляться с использованием заголовков HTTP или WSP. content=cdataЭтот атрибут определяет значение свойства. scheme=cdataЭтот атрибут определяет форму или структуру, которую можно использовать для интерпретирования значения свойства. Значения схемы варьируют в зависимости от типа метаданных. Атрибуты, определенные в другом месте
|