2000 г

WML

ПереводПеревод— деятельность по интерпретации смысла текста на одном языке (исходном языке [ИЯ]) и созданию нового, эквивалентного текста на другом языке (переводящем языке [ПЯ]). Жаркова Алексея, www.tay.ru

Вступление

WML - язык разметки, основанный на XML (extensible Markup Language). Официальная спецификация WML разработана и поддерживается WAP Forum, производственным консорциумом, основанном Nokia, Phone.com, Motorola и EricssonEricsson (Telefonaktiebolaget L. M. Ericsson) (по-русски произносится Эрикссон)— шведская компания, известный производитель телекоммуникационного оборудования. Штаб-квартира— в Стокгольме.. Эта спецификацияСпецификация— (позднелат.specificatio, от лат. species - род, вид, разновидность и facio - делаю) инженерный термин, обозначающий набор требований и параметров, которым удовлетворяет некоторая сущность. К примеру, мост через реку удовлетворяет таким параметрам, как максимальный общий вес нагрузки, максимальная нагрузка на ось, максимальная скорость ветра ит.д. определяет синтаксис, переменныеПеременная— атрибут физической или абстрактной системы, который может изменять своё значение. Значение может меняться в зависимости от контекста, в котором рассматривается система, или в случае уточнения, о какой конкретно системе идёт речь. Концепция переменной широко используется в таких областях как математика, естественные науки, техника и программирование. Примерами переменных могут служить температура воздуха, параметр функции и многое другое. В широком смысле, переменная характеризуется лишь множеством значений, которые она может принимать. и элементы используемые в файлах WML. Последнее определение типа документа (Document Type Definition) для тех, кто знаком с XML, доступны по адресу: http://www.wapforum.org/DTD/wml_1.1.xml

Любой правильный XML-файл должен соответствовать этому DTD. В противном случае он не будет правильно обработан.

В этом руководстве, мы расскажем об основах XML и представим пример. Этот пример демонстрирует обработку событий, навигацию и обмен информацией с расположенным на сервере скриптСкриптовый язык (англ.scripting language, в русской литературе принято название язык сценариев)— язык программирования, разработанный для записи «сценариев», последовательностей операций, которые пользователь может выполнять на компьютере. Простые скриптовые языки раньше часто называли языками пакетной обработки (англ.batch languages или job control languages). Сценарии обычно интерпретируются, а не компилируются (хотя всё чаще применяют компиляцию каждый раз перед запуском).ом.

Понимание WML

WML базируется на XML, языке разметки получившем невероятную поддержку благодаря своей способностиСпособности— это индивидуальные свойства личности, являющиеся субъективными условиями успешного осуществления определённого рода деятельности. Способности не сводятся к имеющимся у индивида знаниям, умениям, навыкам. Они обнаруживаются в быстроте, глубине и прочности овладения способами и приёмами некоторой деятельности и являются внутренними психическими регулятивами, обусловливающими возможность их приобретения. В отечественной психологии наибольший вклад в экспериментальные исследования способностей внес Б.М.Теплов. описывать данные (HTML, кстати, используется для описания представления данных). HTML - предопределяет те тэги, которые могут быть использованы для описания страницы так, чтобы ее смог правильно понять и обработать броузер. XML, в свою очередь, позволяет создателю документа определять такой набор тэгов, которой он считает необходимым. Этот набор тэгов группируется затем в набор грамматических "правил", называемых по-другому Определение Типа Документа«documenta» (рус. документа)— выставка современного искусства, проходящая каждые пять лет в Касселе, Германия. Основана в 1955 году художником и куратором Арнольдом Боде. На первой документе были представлены художники, оказавшие заметное влияние на современное искусство (Пикассо, Кандинский и др). Выставка должна была восстановить нарушенную традицию авангардистских выставок в Германии, прерванную в 1937 году нацистами, устроившими обличительную «Выставку дегенеративного искусства». Впоследствии документа стала одним из самых значительных событий в современном искусстве. или проще DTD. Как уже упоминалось ранее, DTD, используемый для описания WML, расположен по адресу: http://www.wapforum.org/DTD/wml_1.1.xml

В телефоне или в любом другом коммуникационном устройстве, заявленном как WAP-совместимое, загружено специальное программное обеспечение (известное как микроброузерВеб-обозреватель, браузер (от англ.Web browser; вариант броузер— устаревшая форма)— программное обеспечение для просмотра веб-сайтов, то есть для запроса веб-страниц (преимущественно из Сети), их обработки, вывода и перехода от одной страницы к другой.), которое полностью понимает, как обрабатывать все вариации WML 1.1 DTD.

Самая первая фраза внутри любого XML-документа называется пролог. Поскольку стандартен, он содержит две строчки кода: определение версии XML и DTD (указатель на файл, содержащий DTD)

Пролог выглядит следующим образом.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">

Следом за прологом, в каждом XML-документе содержится один единственный«Противостояние» (англ.The One) — фантастический боевик 2001 года от Revolution Studios. В главных ролях Джет Ли и Карла Гугино. элемент, который содержит в себе остальные подэлементы и entities. Так же как и в HTML этими элементами являются угловые скобки: <> и </>. Например: <element>data</element>. В документе должен содержаться только один элемент описывающий сам документ. В WML этим элементом является <wml>. Все остальные элементы содержатся уже внутри него.

Два самых распространенных способа хранения информации внутри XML-документа это элементы и их атрибуты. Элементы определяют структурную разметку внутри документа открытием и закрытием определенных тэгов. Элементы, в свою очередь могут содержать подэлементы. Атрибуты в основном используются для описания элементов. В качестве примераПримера Дивизион (исп.Primera Divisin) профессиональной футбольной лиги Испании (исп.Liga de Ftbol Profesional, LFP), известный также как Примера и Ла Лига (исп.La Liga), является профессиональным футбольным турниром клубов высшего уровня в системе футбольных лиг Испании. Ла Лига считается одной из лучших футбольных лиг в мире. можно привести следующий кусочек кода:

<!-- This is the Login Card -->
<card id="LoginCard" title="Login">
Please select your user name.
</card>

В этом примере элемент card содержит атрибуты id и title. Комментарий в WML, также как и в HTML заключается между тэгами <!-- и -->. В дальнейшем мы будем использовать элементы и их атрибуты для написания примеров.

Правильные WML элементы.

В WML описывается набор элементов, которые можно комбинировать для создания WML-документа. Эти элементы можно условно разделить на две группы: Элементы типа Deck/Card и элементы обработки событий.

Элементы типа Deck/Card

wml card template head access meta

Элементы обработки событий

do ontimer onenterforward onenterbackward onpick onevent postfield

Задачи

go prev refresh noop

Переменные

setvar

Ввод пользователя

input select option optgroup fieldset

Анкоры, Картинки и Таймеры

a anchor img timer

Форматирование текста

br p table tr td

Каждый из этих элементов может быть использован в документе используя следующий синтаксисСинтаксис (от др.-греч. — «построение, порядок, составление»)— раздел лингвистики, изучающий строение предложений и словосочетаний..

<элемент> значение элемента </элемент>

Если элемент не содержит внутри себя какую либо информацию (обычно такое случается с элементом форматирования <br>), вы можете использовать тэг с добавленным к нему "/" (например <br/>).

СтроительствоСтроительство зданий— это процесс добавления строения к недвижимости. Подавляющее большинство строительных проектов являются малыми реконструкциями, такими как добавление комнаты, или ремонт ванной. Зачастую владелец имущества выступает в качестве подсобного рабочего, инженера-конструктора и команды дизайнеров всего проекта. Тем не менее, все проекты строительства зданий включают некоторые общие элементы— проектирование, определение бюджета проекта, решение правовых вопросов. Многие проекты различных масштабов приводят к нежелательным конечным результатам, таким как разрушение сооружения, перерасход средств, и/или судебные разбирательства. Опытные специалисты в данной области делают подробные планы и ведут тщательный надзор за проектом на каждой его стадии для обеспечения позитивных результатов. приложений с помощью WML.

WML был разработан для для устройств с низкой пропускной способностью и маленьким дисплеем. В качестве составной этого дизайна была применена концепцияКонцепция, или концепт, (от лат.conceptio— понимание, система)— определённый способ понимания (трактовки, восприятия) какого-либо предмета, явления или процесса; основная точка зрения на предмет; руководящая идея для их систематического освещения. дек и карт. Один WML-документДокумент (от лат.documentum— «образец, свидетельство, доказательство») — материальный объект, содержащий информацию в зафиксированном виде и специально предназначенный для её передачи во времени и пространстве . (а точнее элементы, содержащиеся внутри элемента <wml>) называется декой (deck). Интерактивное взаимодействиеВзаимодействие— философская категория, отражающая процессы воздействия объектов друг на друга, их взаимную обусловленность и порождение одним объектом другого. Взаимодействие— объективная и универсальная форма движения, развития, которая определяет существование и структурную организацию любой материальной системы. с пользователем осуществляется с помощью карт (card). ДостоинствоДостоинство— уважение и самоуважение человеческой личности как морально-нравственная категория. Из величайшей ценности человеческой жизни следует наличие достоинства у каждого, даже не подозревающего о том человека. такой реализации заключается в том, что несколько экранов могут быть загружены на клиентское устройствоУстройство(также прибор, жарг.девайс— от англ.device)— рукотворный объект со сложной внутренней структурой, созданный для выполнения определённых функций, обычно в области техники. за один раз. Используя WMLScriptWMLScript— язык, исполняемый на стороне клиента, диалект JavaScript, используемый в WML страницах и являющийся частью WAP. Основан на ECMAScript, но не полностью с ним совместим., обработка действий пользователя может быть произведена с использованием находящихся в одной деке карт, исключая тем самым множественные транзакцииТранзакция (англ.transaction)— в информатике, группа последовательных операций, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще и тогда она не должна произвести никакого эффекта. Транзакции обрабатываются транзакционными системами, в процессе работы которых создаётся история транзакций. с сервером. Конечно, в связи с ограниченными ресурсами клиентского устройства возникает другая проблемаПроблема (др.-греч. ) — положение, причинность, условие, вопрос, объект, который создаёт затруднение, побуждает к действию и связан с избыточностью или недостатком чего либо для сознания субъекта,например: процессора (движителя, калькулятора, компьютера,специалиста), знаний, ресурсов, регламента (упорядоченности, алгоритма, программы) и побуждает к действию или ограничивает его и соответственно неразрешён или нежелателен. В природе, вне деятельности человека, проблемы находят естественное разрешение и в последовательности движения форм материи есть этап в наблюдениях формализуемый человеком. Отличие природного процесса, разрешение проблемы как результат законов природы. Сущность проблемы для человека такова, что требует анализа, оценки, формирования идеи, концепции для поиска ответа (решение проблемы) с проверкой и подтверждением опытом. В природе это: Вода течёт вниз. Ветер качает деревья. Вода камень точит. и др., что естественно и непротиворечиво. ПРОБЛЕМОЙ преимущественно называется вопрос, не имеющий однозначного решения (степень неопределённости). Неопределённостью проблема отличается от задачи. Совокупность возможных вопросов взаимосвязанных объектом рассмотрения называется проблематикой.. Поэтому вам вполне возможно«Возможно» (фр.Peut-tre)— фильм режиссёра Седрика Клапиша 1999 года. придется разбрасывать ваши карты по разным деками во избежании чрезмерного увеличения объема одного файла.

Использование переменных

Поскольку, как мы говорили ранее, в одной деке может содержаться несколько карт, нам потребуется механизмМеханизм (греч. mechan— машина)— это совокупность совершающих требуемые движения тел (обычно— деталей машин), подвижно связанных и соприкасающихся между собой. Механизмы служат для передачи и преобразования движения. хранения информации из одной карты для ее последующего использования в другой. Этот механизм обеспечивается переменными. Переменные могут быть созданы и определены, используя несколько различных методов.

  • Используя элемент <setvar> в качестве результата выполнения пользователем определенных действий. Кроме того, этот элемент может быть использован для определения переменной внутри следующих элементов: <go>, <prev>, <refresh>. Следующий элемент создает переменную x и присваивает ей значение "123".
     <setvar name="x" value="123"/>
    
  • Переменным также присваивается значениеЗначение— ассоциативная связь между знаком и предметом обозначения. через использование элементов <input>, <select>, <option> и других. При этом автоматически создается переменнаяПеременная— атрибут физической или абстрактной системы, который может изменять своё значение. Значение может меняться в зависимости от контекста, в котором рассматривается система, или в случае уточнения, о какой конкретно системе идёт речь. Концепция переменной широко используется в таких областях как математика, естественные науки, техника и программирование. Примерами переменных могут служить температура воздуха, параметр функции и многое другое. В широком смысле, переменная характеризуется лишь множеством значений, которые она может принимать. с именем этого элемента. По окончании ввода, ей присваивается значение соответствующее выбору пользователя. НапримерПример рассматривается в риторике чаще всего в контексте доказательств и аргументов. Для Квинтилиана пример является одним из дополняющих, наглядных доводов к высказыванию, либо упоминанием полезного, настоящего или якобы существующего образца убеждения того, что определено тобой одним. Правда, в отличие от доказательств, связь с предметом обсуждения должна быть установлена прежде автором или оратором. следующий элемент создаст переменную с именем "x"
    <select name="x" title="X Value:">
    

Несмотря на то, что мы не описывает WMLScript, следует отметить, что WML и WMLScript используют одни и те же переменные в рамках одной деки.

Создаем деку.

В этом примере, мы начнем создавать деку, которая позволяет нам сначала выбрать имя пользователя из предложенного списка, затем ввести пароль после чего выводит на экран полученные данные.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
        <card id="Login" title="Login">
                <do type="acceptAccept (читается эксэпт— «одобрять», «принимать»)— немецкая рок-группа, играющая в стиле хэви-метал. Отличительными особенностями музыки группы являются оригинальный вокал, плотность и насыщенность звука, мелодичность и виртуозность гитарных соло. Подчёркнуто брутальная, агрессивная ритмическая основа, в сочетании с хард-роковой, зачастую пронизанной классическими ходами, мелодикой гитарной партии и уникальным вокалом, определяют стиль группы, который также называют «тевтонский рок»." label="Password">
                        <go href=#>

Как вы наверно уже заметили, вначале примера идет пролог, в котором мы определяем версию XML и DTD для нашего документа. Затем следует элемент <wml>, дека которая содержит три карты: Login, Password и Result. Каждая из этих карт определяется с использованием элемента <card>. Поскольку карты Login и Password определяют события, они используют элемент <do type="accept"> для определения события которое произойдет, когда пользователь закончит ввод.

Если мы определяем элемент <do> типом "accept" он появляется на экране в качестве опции

Выбор этой опции приведет к анализу введенной пользователем информации.

Атрибут "href" тега <go> работает так же, как и в элементе <a> из HTML. Также как и в HTML, для того, чтобы на экран вывелась другая карты из активной деки, на нее надо сослаться используя символ "#" перед именем карты.

<go href=#>

Эта карта обрабатывает пользовательский ввод и используя определенные в предыдущей карте переменные выводит их содержимое на экран. Вызов переменных осуществляется следующим образом:

$(variable_name)

Вызов скрипта.

Без возможности производить различные операции с информацией на сервере, WML остался бы просто средством форматированного вывода текста. Добавление такой возможности, напротив, открывает любому WAP-совместимому устройству пути передачи сообщений через Интернет, промышленному использованию на предприятии и электронной коммерции. WAP-совместимое устройство взаимодействуют с подобными источниками информации через WAP-шлюз. Этот шлюз должен уметь взаимодействовать с различными стандартами сотовой связи, такими как CDMA, GSM или GPRS. Однако, вполне возможно установить тестовый шлюз в сочетании с популярными веб-серверами (такими как MS IIS или Apache) прямо в вашей локальной сети. Мы не будем тут сильно вдаваться в детали процесса установки шлюза, однако нельзя не предостеречь вас от самой распространенной ошибки. Вам обязательно необходимо добавить определения следующих типов в конфигурацию веб-сервера.

WML text/vnd.wap.wml wml
WMLScript text/vnd.wap.wmlscript wmls

Теперь мы рассмотрим небольшой примерчик в котором пользователю будет предложено сделать выбор какой-то одной опции а затем на основе этого выбора с сервера будет загружена определенная информация. Для этого примера мы используем ASP. С тем же успехом мы могли написать скрипт использую Javascript, Servlets, Perl или любой другой язык. В следующем листинге приведен исходный код для нашей новой деки. В ней содержится всего один элемент <select>, который предлагает пользователю выбор из нескольких опций. Элемент <go> вызывает серверный скрипт с определенными параметрами.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
        <card id="Order" title="Query Inventory">
                <p>
                <select name="Items" title="Items">
                        <option value="Books">Books</option>
                        <option value="Music">Music</option>
                        <option value="Video">Video</option>
                        <option value="Software">Software</option>
                </select>
                </p>
                <do type="accept" label="Query">
                        <go href=#>

Скрипт показанный на листинге 3 обрабатывает полученную из деки информацию и выводит на экран результат.

<%
Dim Body
If Request.Form("Items") = "Books" Then
        Body = "You selected Books!"
ElseIf Request.Form("Items") = "Video" Then
        Body = "You selected Video!"
ElseIf Request.Form("Items") = "Software" Then
        Body = "You selected Software!"
ElseIf Request.Form("Items") = "Music" Then
        Body = "You selected Music!"
End If
Response.ContentType = "text/vnd.wap.wml"%>
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card>
<p>
<%Response.write(Body)%>
</p>
</card>
</wml>

Несколько вещей необходимо напомнить для тех, кто захочет повторить этот пример в своих условиях. Вы обязательно должны "зарегистрировать" MIME типы на своем сервере для того, чтобы файлы WML и WMLScript правильно обрабатывались и отображались сервером.

.wml    text/vnd.wap.wml
.wmls   text/vnd.wap.wmlscript

Если вы хотите использовать картинки (WBMP) вам также необходимо добавить и этот MIME-тип:

.wbmp           image/vnd.wap.wbmp

Заключение

WML предоставляет разработчикам совершенно новую замечательную платформу для создания приложений. Эта платформа бросает нам новый вызов. Новые нюансы, связанные с низкой пропускной способностью, маленьким экраном и различными серверными заморочками, добавятся в процесс дизайна. Несмотря на то, что производителям придется пройти различные стадии осознания новых возможностей и ограничений для того чтобы суметь наконец достаточно внятно сформулировать коммерческое предложение, WAP открывает широкие двери в новую эру разработки и развертывания приложений.

Описание тегов (переведено из документации Motorola SDK) :

Деки.

Дека определяется элементом wml

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN""http://www.wapforum.com/DTD/wml_1.1.xml">
<wml>
<card>
<p>Hello World!</p>
</card>
</wml>

Задачи.

Элемент:

Do

Атрибуты:

type - указывает микроброузеру назначение кнопки. В WML определяется девять типов, но в подавляющем большинстве случаев используются "accept" и "options".

label - значение этого атрибута используется для замены названия кнопки. Это помогает кастомизировать приложения. Количество символов на кнопке ограничено возможностями устройства.

name - установка этого атрибута дает возможность разработчику воспользоваться преимуществами иерархической структуры WML-документа. Элемент "do" с именем "one" унаследует свойства определенные элементу с таким же именем в элементе "template" этой деки.

optional - указывает микроброузеру на необязательность показа этой кнопки в случае если атрибуту присвоено значение true.

Элемент

Go

Атрибуты:

href - URL.

sendreferer - этот атрибут необходим серверу в списках контроля доступа. Его значение указывает броузеру на то, что необходимо отослать на сервер URL минимально возможной длины.

method - может принимать значение либо "post" либо "get". Значение аналогично HTML.

accept-charset - указывает кодировку, в которой микроброузер должен посылать ссылку.

Небольшой пример простейшей навигации.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.com/DTD/wml_1.1.xml">
<wml>
<card id="Start">
<do type="accept">
<go href=#>

Элемент

Setvar

Атрибуты:

name - имя, присваемое переменной. Переменная так же может выполнять эту функцию, например:

<setvar name=$bogus value=$bear>.

value - значение, присваемое переменной.

Элемент

Postfield

Атрибут:

name имя, присваемое переменной. Переменная так же может выполнять эту функцию, например:

<postfield name=$bogus value=$bear>.

value - значение, присваемое переменной.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.com/DTD/wml_1.1.xml">
<wml>
<card id="Start" label="Bob's CGI">
<do type="accept">
<setvar name="lastExecuted" value="bob.cgi"/>
<go href=#>

Элемент

Anchor

Атрибуты:

title - имя элемента. Микроброузер может воспользоваться этим атрибутом по своему усмотрению. При перемещении курсора на анкор, микроброузер может вывести его имя в софт-кнопке.

Элемент

A

Атрибут:

href - URL на который ссылается анкор. У этого элемента нет дополнительных атрибутов позволяющих указать статус ссылки или ее метод. Если необходимы эти опции можно воспользоваться элементом "anchor" с внедренным в него элементом "go":

<anchor>
click me
<go href=#>

События.

Элемент

Onevent

Атрибуты:

type - Тип события, которое будет обрабатываться

Существует четыре типа событий:

onenterbackward
Сработает при выборе элемента "prev"

onenterforward
Сработает при вызове карты

onpick
Сработает при выборе опции в списке элемента "select"

ontimer
Сработает по истечении времени у элемента "timer".

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN""http://www.wapforum.com/DTD/wml_1.1.xml">
<wml>
<card id="start">
<do type="accept">
<go href=#>

Структура

Элемент

Access

Атрибуты:

domain - имя домена для запрета доступа. Микроброузер будет просматривать и сравнивать со значением этого атрибута все имена доменов встречающиеся в документе. Так если "<access domain="motorola.com"/>" броузер сможет зайти на "http://www.motorola.com/", но не сможет зайти на "http://www.rola.com/" или на "http://www.motorola.net/".

path - путь для сравнения. Работает примерно так же как и атрибут домен. Так если "<access path="/internal"/>" путь "/internal/wml" пройдет проверку, в то время как "/internal-wml" - нет.

Элемент "access" с примерно такими атрибутами: "<access domain="motorola.com" path="/spin"/>" разрешит ссылку на деку только со следующих адресов:

http://www.motorola.com/spin/getuid.cgi
https://www.motorola.com/spin/index.wml
http://www.motorola.com/spin/madk/create_index.cgi?x=123&y=234

А с этих запретит: http://www.mot.com/spin/getuid.cgi
http://www.motorola.com/internal/spin/getuid.cgi

Элемент

Card

События:

onenterbackward
Сработает при выборе элемента "prev"

onenterforward
Сработает при вызове карты

ontimer
Сработает по истечении времени у элемента "timer".

Атрибуты:

id - атрибут, позволяющий сослаться на эту карточку из других элементов. Ссылка на карточку состоит из символа "#" и значения ее атрибута id (#nextcard).

title - значение этого атрибута может быть использовано для озаглавливания экрана, в котором отображается карточка, а также может появится в списке ранее посещенных страниц, а также в любом другом месте по усмотрению микроброузера.

newcontext - может быть использован для того, чтобы сбросить состояние деки. Этот атрибут может иметь значение "true" или "false".

ordered - сообщает микроброузеру принадлежит ли эта карта к упорядоченному списку карт или нет. Разработчики могут использовать этот атрибут по своему усмотрению и разрабатывать либо деку с последовательным просмотром карточек, либо состоящую из одной большой карточки.

Немного более сложная дека в качестве примера:

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN""http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head>
<access domain="motorola.com" path="/spin"/>
</head>
<template>
<do type="accept" name="accept1" label="OK">
<go href=#>

Управление

Управляющими элементами в WML являются элементы "select" и "input". У каждого есть несколько подэлементов, а также механизм группировки, для приведения нескольких относящихся друг к другу элемементов ввода к одной логике. Также тут присутствует атрибут tabindex. этот атрибут определяет последовательность в которой происходит передвижение по элементам.

Элемент

Select

Атрибуты

multiple - по умолчанию равно "off". При включении этого атрибута пользователь может выбрать несколько элементов из предложенного списка.

name - обозначает имя переменной в которой будет храниться значение введенной в этом поле информации.

value - значение элемента по умолчанию.

iname - имя выбранного элемента(ов) списка. Значение "0" означает, что в списке нет элементов. Нумерация элементов списка начинается с "1" и постепенно увеличивается.

ivalue - имя переменной, в которой содержится значение(я) выбранных элементов списка. Несколько значений можно ввести, разделяя их ";", например (1;2) . Нельзя вводить пустое значение переменной. Так значение (1;;2) - неправильно.

title - заголовок. Указывается для того, что бы микроброузер определил тип навигационного элемента.

tabindex - очередь следования этого элемента относительно других. Реализация зависит от броузера.

Элемент:

Option

Атрибуты:

value - значение, присваемое переменной элемента select, в случае выбора этой опции

title - заголовок. В зависимости от микроброузера может не выводиться на экран.

onpick - URL на который пойдет микроброузер, в случае выбора этой опции.

Элемент:

Optgroup

Атрибуты:

title - заголовок. В зависимости от микроброузера может не выводиться на экран.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN""http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card>
<p>
Bogus:
<select name="bogus">
<optgroup title="one">
<option value="uno">uno</option>
<option value="eins">eins</option>
</optgroup>
<optgroup title="two">
<option value="dos">dos</option>
<option value="zwei">zwei</option>
</optgroup>
</select>
</p>
</card>
</wml>
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN""http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<template>
<do type="options" label="Back">
<prev/>
</do>
</template>
<card id="lists">
<p>
<select title="Pick Lists">
<option onpick="#single">Single</option>
<option onpick="#multiple">Multiple</option>
</select>
</p>
</card>
<card id="single">
<onevent type="onenterbackward">
<prev/>
</onevent>
<do type="accept">
<go href=#>

Элемент:

Input

Атрибуты:

name - то же, что и в элементе select. обозначает имя переменной в которой будет храниться значение введенной в этом поле информации.

value - значение поля по-умолчанию.

type - имеет значение либо "text" либо "password". В зависимости от микроброузера поле типа "password" может отображаться на дисплее видимым текстом.

format - маска ввода.

A - Любая буква в верхнем регистре [A-Z]
a Любая буква в нижнем регистре и пунктуация [a-z]
N - любая цифра [0-9]
X - любой символ в верхнем регистре [A-Z,0-9]
x - любой символ в нижнем регистре [a-z,0-9]
M - любой символ
m - любой символ
*f - любое количество символов определенного формата, например *N -любое количество цифр
nf - "n" это целое число так например "3A" означает 3 буквы в верхнем регистре или пунктуации.
\c - символ ввода, так например "\(3N\)\ \3N\-4N" означает номер телефона с кодом местности в американском формате.

emptytok - разрешает пустой ввод

size - ширина поля ввода. Реализация зависит от броузера.

Maxlength - определяет максимальное количество вводимых.

Title - заголовок, показывается броузером в некоторых случаях. Рекомендуется использовать атрибут title во всех элементах, которые им располагают, потому что в некоторых телефонах заполнение поля ввода реализовано в виде отдельного окошка, при этом title будет выводится в качестве напоминания, какое именно поле в настоящий момент заполняет пользователь.

Элемент:

Fieldset - Использование зависит от микроброузера.

Атрибуты:

title - Заголовок

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN""http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<template>
<do type="options" label="Back">
<prev/>
</do>
</template>
<card id="fields">
<p>
Field Type:
<select title="Field type">
<option onpick="#nested">Nested</option>
<option onpick="#password">Password</option>
</select>
</p>
</card>
<card id="nested">
<onevent type="onenterbackward">
<prev/>
</onevent>
<do type="accept" label="Done">
<go href=#>

Таймер

Элемент:

timer

Атрибуты:

value - промежуток времени в десятых долях секунды.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="first" ontimer="#next">
<timer value="100"/>
<p>Wait ten seconds</p>
</card>
<card id="next">
<timer value="10"/>
<onevent type="timer">
<go href=#>

Текст

У элемента p нет атрибутов

У элемента br нет атрибутов

 

Мы рекомендуем еще посмотреть:

  Cеминар «Avaya Communication Manager - управляем коммуникациями».
10 марта 2006 г.   Версия для вывода на принтер

    10 марта состоится обзорный семинар «Avaya Communication Manager - управляем коммуникациями».

    Семинар, организованный s-networks, предназначен для менеджеров продаж, руководителей проектов, руководителей подразделений связи и технических специалистов. Семинар пройдет в рамках партнерской программы «Работаем вместе!».

    Темой предстоящего семинара станет новая версия ПО Communication Manager 3.1, выпуск которой Avaya запланировала на конец февраля - начало марта.

    Нововведения в этой версии достаточно разнообразны, и основной целью семинара как раз и будет обзор новинок версии 3.1, важных и интересных для специалиста по Avaya Telephony : новый медиасервер S8720, новая платформа S8400, высоконадежная технология дублирования внутренних IP-соединений, самоинсталлирующаяся система Quick Office, выживающая аналитическая платформа Survivable CMS и многое другое.

    Традиционно в обзорных семинарах программы «Работаем вместе!» поднимаются вопросы применения сопутствующих продуктов. Этот семинар, разумеется, также не станет исключением.


Условия участия:

Участие в семинаре бесплатное.

Для участия в семинаре необходимо зарегистрироваться.

Регистрация: 9:30

Начало семинара: 10:00


Место проведения:

Бизнес-центр «Павелецкий», 1-й этаж, зал «Куликово поле»
Проезд: Метро «Павелецкая», 1-й Кожевнический пер., 6 (7 мин. пешком), Бизнес-центр «Павелецкий» (Схема проезда).


Контакты:

По организационным вопросам вы можете обращаться в оргкомитет:

по электронной почте
по телефонам:
+7 (495) 163-25-25 доб. 543 Светлана Иванова
+7 (495) 163-25-25 доб. 548 Светлана Иванова


Документы по теме   / Телефонные станции /  


2009 IT и оборудование для бизнеса, S-NETWORKS. Информационные технологии и Информационное оборудование