WWW.DISS.SELUK.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА
(Авторефераты, диссертации, методички, учебные программы, монографии)

 

Pages:     || 2 |

«А. А. Дырдин, А. О. Куранов РАЗРАБОТКА WEB-ИЗДАНИЯ В ОПЕРАЦИОННОЙ СИСТЕМЕ L I N U X Планирование и управление процессом создания WEB-узла Учебное пособие для студентов специальности 030901 Издательское дело и ...»

-- [ Страница 1 ] --

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Государственное образовательное учреждение высшего профессионального образования

«УЛЬЯНОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

А. А. Дырдин, А. О. Куранов

РАЗРАБОТКА WEB-ИЗДАНИЯ

В ОПЕРАЦИОННОЙ СИСТЕМЕ L I N U X

Планирование и управление процессом

создания WEB-узла Учебное пособие для студентов специальности 030901 «Издательское дело и редактирование»

Ульяновск 2010 УДК 655.4:004.4 (075) ББК 76.17+32.973 я7 Д90 Рецензенты:

Шаврыгин С. М., доктор филологических наук, профессор, Рассадин А. П., кандидат филологических наук, доцент;

Дырдин, А. А.

Д 90 Разработка Web-издания в операционной системе Linux. Планирование и управление процессом создания web-узла : учебное пособие / А. А. Дырдин, А. О. Куранов. Ульяновск : УлГТУ, 2010. - 108 с.

ISBN 978-5-9795-0560- Пособие адресовано студентам специальности 030901 - «Издательское дело и редактирование» (специализация «Электронные издания»), студентам иных гумани­ тарных направлений, обладающих знанием информационных технологий на первона­ чальном уровне. Дать представление о современных базовых концепциях подготовки электронных изданий средствами HTML в операционной системе Linux - это главная цель, которую ставили перед собой авторы пособия.

Электронный вариант учебного пособия отмечен Дипломом лауреата «Лучшее учебно-методическое издание в отрасли» на II Всероссийской выставке-презентации «Сочи-2009».

Электронное издание рекомендовано УМО РАЕ по классическому и универ­ ситетскому и техническому образованию в качестве учебного пособия для студентов высших учебных заведений, обучающихся по специальности 030901 - «Издательское дело и редактирование».

УДК 655.4:004.4 (075) ББК 76.17+32.973 я © Дырдин А. А., Куранов А. О., ISBN 978-5-9795-0560-2 © Оформление. УлГТУ,

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ ИНТЕРНЕТ ЯЗЫКИ РАЗМЕТКИ

ПЛАНИРОВАНИЕ

И УПРАВЛЕНИЕ ПРОЦЕССОМ СОЗДАНИЯ WEB-УЗЛА

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

WEB-АДРЕСА ДЛЯ ДОПОЛНИТЕЛЬНОЙ ИНФОРМАЦИИ

ГЛОССАРИЙ ЗАКЛЮЧЕНИЕ

СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

ВВЕДЕНИЕ

Учебное пособие адресовано студентам специальности 030901 Издательское дело и редактирование» (специализация «Электронные изда­ ния»), студентам иных гуманитарных направлений, обладающих знанием ин­ формационных технологий на первоначальном уровне. Главная задача, кото­ рую ставили перед собой авторы пособия, - дать представление о современных базовых концепциях подготовки электронных изданий средствами HTML в операционной системе Linux. Данная задача является сложной в силу разнооб­ разия графических интерфейсов и программного обеспечения Linux-систем,a также - весьма слабой известности данного продукта среди студентов, изу­ чающих гуманитарные науки. Авторы стремились соблюдать равновесие меж­ ду уровнем подготовки учащихся и сложностью изложения материала, давая подробные комментарии к выполняемым действиям.

Главной особенностью предлагаемого пособия является то, что его авто­ ры показывают возможность создания электронного издания разного уровня сложности и назначения (web-site, или е-Book на базе HTML), используя сред­ ства, которые входят в базовую установку любого дистрибутива Linux. Это оз­ начает, что у обучающегося не возникает необходимости в поиске репозитариев и в установке дополнительного программного обеспечения. Студент может сразу приступить к изучению излагаемого материала.

В первую очередь, пособие будет интересно тем, кто не имеет достаточно полного представления о мире web-технологий, но испытывает желание изу­ чить данную область информационных систем. Это одно из немногих учебных изданий, которые объясняют доступным языком механику создания электрон­ ных ресурсов (с учетом редактирования и обновления контента) для специали­ стов книгоиздательского профиля.

Цель электронного издания - не только популярно изложить учебный ма­ териал, но и научить студентов-гуманитариев основам работы с HTML. По­ следнее особенно важно в период перехода вузов на образовательные стандар­ ты третьего поколения, в которых обучению будущих бакалавров и магистров новым информационным технологиям уделяется повышенное внимание.

Главный акцент авторы пособия сделали на обучении азбуке Hyper Text Markup Language (HTML). Учитывая тенденции современного рынка про­ граммного обеспечения, разработчики новых web-концепций строят их на про­ граммных продуктах, снижающих непосредственную работу web-издателя с html-кодом, всё более автоматизируя этот процесс с помощью понятных графи­ ческих интерфейсов. В свою очередь, материал пособия выстроен таким обра­ зом, чтобы студент работал исключительно с HTML и простыми текстовыми редакторами VIM и GEDIT, входящими в любой дистрибутив Linux. Содержа­ ние пособия не ограничено разбором основ конструирования web-страниц ин­ струментами HTML. Параллельно рассматриваются процедуры создания webстраниц с использованием таких технологий, как CSS, XML, практика перевода файла PDF в Web средствами HTML.

Подаче практического материала предшествует изложение основ работы в операционной системе Linux (как в графической среде, так и в consoleокружении), необходимых для самостоятельного выполнения практических за­ даний по курсу «Информационные технологии в издательском деле».



Электронная версия издания будет размещена на официальном сайте ка­ федры «Филология, издательское дело и редактирование» Ульяновского госу­ дарственного технического университета. В Приложении к этому документу будет дано описание полного спектра программного обеспечения, необходимо­ го для электронного макетирования изданий и создания web-ресурсов разного назначения и уровня сложности.

Изучение базовых концепций создания html-страниц осуществляется в операционной системе Linux. Главным затруднением при подготовке пособия стал выбор оболочки Linux, которая должна иллюстрировать изучаемый мате­ риал. Если Windows имеет в своем распоряжении две оболочки: графический интерфейс и консоль, то Linux предлагает пользователю, как минимум, четыре:

GNOME, KDE, XFCE и bash.

В целях достижения наиболее приемлемой продуктивности работы было решено отказаться от программ, использующих графический интерфейс Linux, и остановить свой выбор на Терминале Linux (командная строка).

Дело в том, что некомпетентные пользователи либо испытывают неуве­ ренность при виде командной строки Linux (подобная реакция вызвана незна­ нием порядка действий), либо предпочитают работать с графическим интер­ фейсом GNOME или KDE, не испытывая желания тратить время на изучения различных команд. Практическое использование применяемого модуля при подготовке макета издания показало, что командная строка Linux не вызывает негативных эмоций у тех студентов, которые готовы затратить дополнительные усилия для получения желаемого результата.

В анонсируемом пособии рассмотрены некоторые программы создания web-страниц/web-сайтов, функционирующих в графическом режиме Bluefish и Quanta+. Это сделано для того, чтобы показать учащимся все преимуществаиспользования рабочей среды Bash. Дело в том, что сейчас существуют своего рода «кланы» пользователей многоплатформенных сред GNOME, KDE, XFCE, Bash и т. д., которые ведут тщетный спор: «какая оболочка лучше». Составите­ ли пособия рекомендуют выбрать наиболее удобную командную оболочку (в данном случае - Bash-программирование) и пакет программ, которые позволя­ ют выполнять задачи, стоящие перед разработчиками web-изданий, на макси­ мально эффективном уровне.

Студенты, начинающие осваивать сферу сетевых изданий, склонны пола­ гать, что языки разметки гипертекста и языки web-программирования знать не­ обязательно. Следовательно, для создания web-сайта достаточно освоить про­ граммы, действующие на платформе Linux, например: Bluefish, Quanta+ или Adobe Dreamweaver CS, которые работают на платформах Microsoft Windows и Apple Macintosh.Taким пользователям представляется, что они способны создать на этой базе качественный, эргономичный web-проект. В данном посо­ бии это убеждение ставится под сомнение. Представленные на страницах посо­ бия образцы разработки web-страниц/web-сайтов предназначены для облегче­ ния набора и редактирования кода. Большинство программ данного класса ав­ томатизируют процедуру набора кода.

Чтобы создавать эффективные web-проекты, сегодня необходимо свобод­ ное владение, как минимум, технологиями HTML и CSS. Данные технологии позволяют конструировать «статичные» web-сайты, динамичность которых может быть достигнута за счет использования «классики жанра» в мире webпрограммирования: DHTML, Java, JavaScripts, CGI, Perl, PHP, MySQL. Бес­ смысленно изучать эти технологии в контексте проектирования web-сайтов без знания фундаментальных основ World Wide Web.

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

ИНТЕРНЕТ

История и структура интернета.

Компьютерные сети бывают локальными и распределенными. Локальной называется компьютерная сеть, объединяющая компьютеры, расположенные в одном здании или в соседних зданиях. Если же соединенные компьютеры на­ ходятся в разных частях города, а иногда и в разных городах и странах, то такие сети называют распределенными. Иногда распределенные сети называют также территориальными. Часто к распределенной сети подключается не отдельные компьютеры, а локальные сети. Таким образом можно создавать корпоратив­ ные сети для предприятий, имеющих филиалы в других городах. Распределен­ ные сети мирового масштаба также называют глобальными сетями. Интернет и является самой известной глобальной компьютерной сетью.

Прообраз сети Интернет был создан в конце шестидесятых годов по зака­ зу Министерства обороны США. В то время существовало не очень много мощных компьютеров, и для проведения научных исследований возникла по­ требность обеспечить доступ многочисленных ученых к этим компьютерам.

При этом Министерство обороны поставило условие, чтобы сеть продолжала работать при уничтожении ее части, поэтому повышенная надежность Интер­ нета была заложена при его создании.

Днем рождения Интернета можно назвать 2 января 1969 года. В этот день Управление перспективных исследований (ARPA - Advanced Research Projects Agency), являющееся одним из подразделений Министерства обороны США, на­ чало работу над проектом связи компьютеров оборонных организаций. В резуль­ тате исследований была создана сеть ARPANET2, в основе функционирования которой лежали принципы, на которых позже был построен Интернет.

Следующим этапом в развитии Интернета было создание сети Нацио­ нального научного фонда США (NSF). Сеть, названная NSFNET, объединила научные центры Соединенных Штатов. При этом основой сети стали пять су­ перкомпьютеров, соединенных между собой высокоскоростными линиями свя­ зи. Все остальные пользователи подключались к сети и могли использовать возможности, предоставляемые этими компьютерами.

Сеть NSFNET быстро заняла место ARPANET, и последняя была ликви­ дирована в 1990 году. Развитие сети потребовало ее реорганизации, и в году был создан NSFNET Backbon [Бэкбон] - базовая часть или хребет сети.

Хребет состоял из тринадцати центров, соединенных друг с другом высокоско­ ростными линиями связи. Центры располагались в разных частях США. Таким образом появилась сеть Интернет в США.

Одновременно были созданы национальные сети в других странах. Ком­ пьютерные сети разных стран стали объединяться, и в девяностых годах поя­ вился Интернет в его сегодняшнем виде. Сейчас Интернет объединяет тысячи разных сетей, расположенных по всему миру. К Интернету имеют доступ де­ сятки миллионов пользователей. Рост и развитие Интернета продолжается, и в начале следующего века ожидается значительное увеличение роли Интернета во всех информационных технологиях.

Бурный рост числа пользователей Интернета в России начался в 1996 го­ ду. Сегодня и в нашей стране Интернет превратился из диковинки в повседнев­ ный инструмент. Это можно увидеть и по развитию русской части Интернета.

Если несколько лет назад почти вся информация в сети приводилась на англий­ ском языке и предназначалась, в основном, для иностранцев, то сегодня в ос­ новном поставщики информации ориентируются на отечественных пользовате­ лей и в Интернете можно найти самую разнообразную информацию на русском языке.

В последнее время ведутся активные работы по передаче новых видов информации через Интернет. Уже сегодня можно слушать радио через Интер­ нет, а не за горами и Интернет - телевидение. Глобальная сеть позволяет прово­ дить селекторные совещания и видеоконференции. С помощью Интернета мно­ гие служащие смогут работать дома, обмениваясь документами со своими кол­ легами, которые находятся за тысячи километров от них. Все идет к тому, что Интернет станет основным средством связи, главным способом получения и передачи информации. Не только компьютеры, но и телефоны, телевизоры, ви­ деокамеры и другие устройства будут подключаться напрямую к Интернету.

Таким образом, умение использовать Интернет, так же, как и умение ра­ ботать на компьютере, является на сегодняшний день обязательным условием для достижения успехов практически в любой области деятельности.

Структура и основные принципы работы сети Интернет.

Отличительной особенностью Интернета является высокая надежность.

При выходе из строя части компьютеров и линий связи сеть будет продолжать функционировать. Такая надежность обеспечивается тем, что в Интернете нет единого центра управления. Если выходят из строя некоторые линии связи или компьютеры, то сообщения могут быть переданы по другим линиям связи, так как всегда имеется несколько путей передачи информации.

Как и любая другая компьютерная сеть, Интернет состоит из множества компьютеров, соединенных между собой линиями связи, и установленных на этих компьютерах программ. Хотя есть некоторые особенности, присущие только Интернету.

Пользователи Интернета подключаются к сети через компьютеры специ­ альных организаций, которые называются поставщиками услуг Интернета. К сети могут быть подключены как отдельный компьютер, так и локальная сеть.

В последнем случае можно считать, что к Интернету подключены все компьютеры данной локальной сети, хотя линией связи с Интернетом соединен только один компьютер. Соединение может быть постоянным или временным.

Поставщики услуг Интернета имеют множество линий для подключения поль­ зователей и высокоскоростные линии для связи с остальной частью Интернета.

Часто мелкие поставщики подключены к более крупным, которые, в свою оче­ редь, подключены к другим поставщикам. Все организации, соединенные друг с другом самыми скоростными линиями связи, образуют базовую часть сети, или хребет Интернета, на английском языке называемый Backbon [Бэкбон]. Ес­ ли поставщик подключен непосредственно к хребту, то скорость передачи ин­ формации будет максимальной.

В действительности разница между пользователями и поставщиками ус­ луг Интернета достаточно условна. Любой человек, подключивший свой ком­ пьютер или свою локальную вычислительную сеть к Интернету и установив­ ший необходимые программы, может предоставлять услуги подключения к се­ ти другим пользователям. Одиночный пользователь, в принципе, может под­ ключиться скоростной линией непосредственно к хребту Интернета.

В общем случае Интернет осуществляет обмен информацией между лю­ быми двумя компьютерами, подключенными к сети. Компьютеры, подключен­ ные к Интернету, часто называют узлами Интернета, или сайтами, от англий­ ского слова site, которое переводится как место, местонахождение. Узлы, уста­ новленные у поставщиков услуг Интернета, обеспечивают доступ пользовате­ лей к Интернету. Существуют также узлы, специализирующиеся на предостав­ лении информации. Например, многие фирмы создают узлы в Интернете, с по­ мощью которых они распространяют информацию о своих товарах и услугах.

В Интернете используются два основных понятия, которые постоянно будут встречаться: адрес и протокол. Свой уникальный адрес имеет любой компьютер, подключенный к Интернету. Даже при временном соединении по коммутируемому каналу компьютеру выделяется уникальный адрес. В любой момент времени все компьютеры, подключенные к Интернету, имеют разные адреса. Так же, как почтовый адрес однозначно определяет местонахождение человека, адрес в Интернете однозначно определяет местонахождение компью­ тера в сети. Адреса в Интернете являются важнейшей его частью, и чуть позже мы подробно расскажем о них.

В общем случае протокол - это правила взаимодействия. Например, ди­ пломатический протокол предписывает, как поступать при встрече зарубежных гостей или при проведении приема. Так же сетевой протокол предписывает правила работы компьютерам, которые подключены к сети. Стандартные про­ токолы заставляют разные компьютеры «говорить на одном языке». Таким об­ разом осуществляется возможность подключения к Интернету разнотипных компьютеров, работающих под управлением различных операционных систем.

Описать в одном протоколе все правила взаимодействия практически не­ возможно. Поэтому сетевые протоколы строятся по многоуровневому принци­ пу. Например, на нижнем уровне описываются правила передачи небольших порций информации с одного компьютера на другой, так как отслеживать пра­ вильность передачи небольших частей информации значительно проще. Если какая-то часть информации была искажена помехами при передаче, то на этом уровне запрашивается повтор передачи только искаженной части. Протокол следующего уровня описывает, как большие массивы данных разбить на не­ большие части и собрать обратно. При этом небольшие части пересылаются с помощью протокола нижнего уровня. На следующем, более высоком уровне описывается передача файла. При этом используются протоколы нижних уров­ ней. Таким образом, для реализации нового протокола высокого уровня в Ин­ тернете не требуется знать особенности функционирования сети, а надо уметь пользоваться протоколами более низкого уровня.

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

Точно так же в Интернете имеется несколько уровней протоколов, которые взаимодействуют друг с другом. На нижнем уровне используются два ос­ новных протокола : IP - Internet Protocol (Протокол Интернета) и TCP - Trans­ mission Control Protocol (Протокол управления передачей). Так как эти два про­ токола тесно взаимосвязаны, то часто их объединяют, и говорят, что в Интерне­ те базовым протоколом является TCP/IP. Все остальные многочисленные про­ токолы строятся на основе именно протоколов TCP/IP.

Конечно, для успешной работы в Интернете совершенно не обязательно знать о работе протоколов, но для полноты картины мы должны рассмотреть их работу. Предположим, требуется передать информацию с одного компьютера, подключенного к Интернету, на другой компьютер. Протокол TCP разбивает информацию на порции и нумерует все порции, чтобы при получении можно было правильно собрать информацию. Далее с помощью протокола IP все части передаются получателю, где с помощью протокола TCP проверяется, все ли части получены. Так как отдельные части могут путешествовать по Интернету самыми разными путями, то порядок прихода частей может быть нарушен. По­ сле получения всех частей TCP располагает их в нужном порядке и собирает в единое целое.

Для протокола TCP не имеет значения, какими путями информация пу­ тешествует по Интернету. Этим занимается протокол IP. К каждой полученной порции информации протокол IP добавляет служебную информацию, из которой можно узнать адреса отправителя и получателя информации. Если следо­ вать аналогии с почтой, то данные помещаются в конверт или пакет, на кото­ ром пишется адрес получателя. Далее протокол IP так же, как и обычная почта, обеспечивает доставку всех пакетов получателю. При этом скорость и пути прохождения разных конвертов могут быть различным.

Так работают протоколы TCP/IP. Они обеспечивают передачу информа­ ции между двумя компьютерами. Все остальные протоколы с их помощью реа­ лизуют самые разные услуги Интернета.

ЯЗЫКИ РАЗМЕТКИ

В этом разделе мы рассмотрим три языка разметки: SGML, HTML и, ко­ нечно, XML. SGML - это метаязык, который используется для создания других языков разметки. Наиболее известным из них, написанным в стандарте SGML, является всеми нами любимый HTML, ведь именно он применяется в Web. По­ скольку язык HTML разработан в соответствии с правилами SGML, его назы­ вают приложением SGML. Проблема практического употребления SGML со­ стоит в том, что он очень сложен. Поэтому нам и интересен XML, созданный специально для Web как упрощенная версия SGML, сохраняющая большую часть его функциональных возможностей. Рассмотрим подробнее возможности каждого из упомянутых выше языков разметки.

В 1986 году, задолго до того, как идея создания Web была воплощена в жизнь, универсальный стандартизированный язык разметки SGML (Standard­ ized Generalized Markup Language) был утвержден в качестве международного стандарта (ISO 8879) определения языков разметки. Кстати, SGML существовал еще с конца шестидесятых. В ту пору его использовали для того, чтобы описы­ вать языки разметки, при этом автору позволялось давать формальные опреде­ ления каждому элементу и атрибуту языка. Таким образом, программисты име­ ли возможность создавать свои собственные тэги, связанные с содержанием до­ кумента. В то время SGML был всего лишь одним из нескольких конкурирующих между собой подобных языков, однако популярность одного из его потомков HTML - дала SGML неоспоримое преимущество перед своими собратьями.

Как язык SGML является очень мощным средством. Однако вместе с мо­ щью пришла и сложность, поэтому все его широкие возможности используются редко. Кроме того, SGML-документ трудно интерпретировать без определения языка разметки, которое хранится в определении типа документа (Document Туре Definition, DTD). В DTD сгруппированы все правила языка в стандарте SGML.

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

Первоначально язык HTML был всего лишь одним из SGMLприложений. Он описывал правила, по которым должна быть подготовлена ин­ формация для World Wide Web. Таким образом, язык HTML - это набор пред­ писаний SGML, сформулированных в виде определения типа документа (DTD), которые объясняют, что именно обозначают тэги и элементы. В случае языка HTML, DTD хранится в браузере, оно описано во множестве книг, а также на нескольких Web-сайтах. По размеру язык HTML во много раз меньше языка SGML. В то же время он намного проще и легок для изучения, что добавило ему популярности. Сейчас HTML принят во всех кругах компьютерного сооб­ щества.

Язык HTML как способ разметки технических документов был создан Тимом Бернерсом-Ли (Tim Berners-Lee) в 1991 году специально для научного сообщества. С его помощью оказалось возможным значительно упростить ор­ ганизацию специальных текстов и передачу их через компьютеры различного типа. Идея состояла в создании набора особых словесных формул, которые можно было употреблять для разметки документов. Применение подобных формул должно было обеспечить передачу документов между компьютерами таким образом, чтобы адресаты могли воспроизводить документ в удобном формате.

В те далекие времена представители научного сообщества почти не об­ ращали внимания на внешний вид посылаемых и получаемых документов.

Ученым было важно сохранить смысл передаваемого текста. Их не волновали такие мелочи, как цвет шрифта или точный размер заголовка первого уровня.

Для передачи информации по Internet язык HTML использует так назы­ ваемый протокол передачи гипертекстов (Hypertext Transfer Protocol, HTTP).

Это только один из протоколов, используемых в Internet, входящий в широко известный набор протоколов Internet (Internet Protocol Suite), который чаще на­ зывают TCP/IP. В настоящее время широко используются и несколько других протоколов из набора TCP/IP. До того как появился язык HTML, самым попу­ лярным был протокол передачи файлов (File Transfer Protocol, FTP).

Преимущество перед другими протоколами дала HTTP легкость, с кото­ рой он мог быть использован для подключения к другому документу. Объеди­ нение этого протокола с простым для изучения языком обеспечило быстрое распространение систем, реализующих язык HTML и протокол HTTP Однако по мере того, как HTML приобретал все более широкое распростра­ нение, Web-браузеры становились все доступней, пользователи, не входившие в научное сообщество, стали в массовом порядке создавать свои собственные стра­ ницы. Эти пользователи все чаще обращают внимание на внешний вид своих ма­ териалов. Производители браузеров, используемых для просмотра Web-сайтов, с готовностью предлагали различные тэги, которые позволяли авторам Webстраниц представлять свои документы в куда более разнообразном виде, чем про­ сто текст ASCII. Первой на этот путь встала компания Netscape, которая добавила знакомый нам тэг,позволявший пользователям менять как сами шрифты, так и их размер и ширину. С этого начался быстрый рост числа тэгов, поддержи­ ваемых браузерами.

С новыми тэгами пришли новые проблемы. Различные браузеры воспро­ изводили новые тэги по-разному. [Сегодня Web-сайты, практически одинаково отображаются разными web-браузерами]. От пользователей ожидают, что соз­ данные ими Web-страницы будут похожи на документы, оформленные в самых совершенных настольных издательских системах.

Таким образом, потенциал браузера как новой платформы для приложе­ ний был признан очень быстро, и Web-разработчики приступили к созданию распределенных прикладных систем для бизнеса, используя Internet в качестве среды для получения информации и осуществления финансовых транзакций.

Недостатки языка HTML В связи с широким распространением языка HTML все больший круг пользователей вовлекался в процесс написания HTML-приложений. Их усилия в первую очередь были направлены на увеличение числа и сложности опера­ ций, осуществляемых в Web. В результате скоро стали очевидны слабые места языка HTML, а именно:

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

2. HTML - это исключительно технология представления данных.

HTML не несет информации о значении содержания, заключенного 3. HTML - «плоский» язык. Значимость тэгов в нем не определена, поэтому нельзя представить иерархию данных;

а в качестве платформы для приложений используются браузеры. HTML не обладает достаточной мощью для создания Web-приложений на том уровне, к которому в настоящее время стремятся Web-разработчики. Например, на язы­ ке HTML достаточно сложно написать приложение для профессиональной об­ работки и поиска документов; а большие объемы трафика сети. Существующие HTML-документы, используемые как приложения, засоряют Internet большими объемами трафика в системах клиент-сервер. Примером может служить пере­ сылка по сети большой группы записей общего характера, в то время как необ­ ходима только небольшая часть этой информации.

Со временем усилиями пользователей, пытавшихся представить инфор­ мацию в самых разнообразных формах, Web становилась все более и более фрагментированной. Создавая свои страницы, авторы пытались использовать не только разные реализации языка HTML, но и привлекали языки скриптов, динамический HTML (Dynamic HTML), каналы (Channels) и другие техноло­ гии, которые оказались несовместимы с многими браузерами.

Вот так и случилось, что, с одной стороны, язык HTML являлся очень удобным средством разметки документов для использования в Web, а с другой - документ, размеченный в HTML, нес мало информации о своем содержании, и это в то время, когда использование документа в деловых целях требовало серьезных знаний о его сути. Если тот или иной документ несет достаточно полную информацию о своем содержании, появляется возможность сравни­ тельно легко провести автоматическую обобщенную обработку и поиск в фай­ ле, хранящем документ. Язык SGML позволяет сохранять информацию о со­ держании документа, однако вследствие особой сложности он никогда не ис­ пользовался так широко, как HTML.

Как появился XML Со временем основные производители браузеров дали понять разработ­ чикам, что не собираются в полном объеме поддерживать язык SGML. Более того, его запредельная сложность отпугивала многих людей. Вот почему науч­ ная общественность пришла к выводу о необходимости сосредоточить усилия, на создании упрощенной версии SGML, предназначенной для использования в Web. Подобное решение открывало перспективу возвращения к документам, размеченным в соответствии со своим содержанием. Консорциум World Wide Web (W3C) первым оценил все преимущества такого подхода и согласился вы­ делить средства на этот проект. Группа экспертов по языку SGML, возглавляе­ мая Джоном Боузэком (Jon Bosak) из компании Sun Microsystems, приступила к работе по созданию подмножества языка SGML, которое могло бы быть приня­ то Web-сообществом. Решено было удалить многие несущественные возмож­ ности SGML. Перекроенный подобным образом язык назвали XML. Упрощен­ ный вариант оказался значительно более доступным, чем оригинал, его специ­ фикации занимали всего 26 страниц по сравнению с более чем пятьюстами страницами спецификаций SGML.

Свое название расширяемый язык разметки XML (Extensible Markup Lan­ guage) получил по той причине, что в нем нет фиксированного формата, как в HTML. В то время как язык HTML ограничивается набором твердо закреплен­ ных тэгов, пользователи XML могут создавать свои собственные тэги, соответ­ ствующие содержанию их документа (или применять тэги, созданные другими авторами). Таким образом, XML - это метаязык, то есть особая конфигурация, с помощью которой можно описывать другие языки. Таблицы стилей содержат правила, устанавливающие, каков должен быть внешний вид документа. Они могут быть написаны на разных языках, включая расширяемый язык таблиц стилей (Extensible Stylesheet Language, XSL), а также механизм каскадных таб­ лиц стилей (Cascading Style Sheets, CSS), которые тоже будут рассмотрены в этой книге. Таблица стилей используется в том случае, когда данные необхо­ димо представить в форме, удобной для восприятия человеком, будь то экран, бумага, система чтения для слепых или звуковой агент пользователя. Таблица стилей сообщает агенту, как воспроизвести информацию, заключенную в тэгах.

Поскольку XML-документ и таблица стилей хранятся раздельно, в разных си­ туациях можно использовать различные таблицы стилей для воспроизведения одного и того же XML-файла. Можно также использовать одну и ту же таблицу стилей для воспроизведения нескольких XML-документов в аналогичном фор­ мате.

Анализаторы Использование стандарта XML-требует обязательного наличия двух ком­ понентов:

1. XML-процессора;

XML-процессор (XML processor) применяется для проверки на соответст­ вие XML-файла спецификации XML. Чтобы компьютер мог интерпретировать XML-файлы, XML-процессор создает конструкцию, известную под названием дерево документа (document tree). Именно этим деревом пользуется компьютер, чтобы точно следовать инструкциям процессора. Роль XML-процессора играет анализатор (parser). Затем приложение (application) обрабатывает данные, со­ держащиеся в дереве.

Кроме того, анализаторы используются также в качестве инструмента, проверяющего синтаксис и структуру документа. По мере развития HTML ос­ новные производители браузеров выпускали все новые и новые версии своих программ. В конечный продукт они включали все больший и больший объем кода, который позволял браузеру воспроизводить HTML-страницы, не только не в полной мере соответствующие спецификациям HTML, но и вообще непра­ вильно написанные. Предполагается, что документы на языке XML будут соз­ даваться более тщательно, и анализаторы станут проверять их соответствие правилам XML.

Создание ссылок Простые ссылки, которые применяются в языке HTML, обеспечили воз­ можность свободного перемещения как внутри Web-сайтов, оформленных в HTML, так и между ними. Кроме того, они существенно способствовали разви­ тию практики использования Web как среды гипертекстов. Однако механизм создания ссылок в HTML ограничен, и некоторые разработчики попытались найти новый, более мощный способ установления связи со своими документа­ ми. В действительности XML не меняет способ, с помощью которого ссылки обеспечиваются на базовом уровне; основная структура ссылок языка HTML сохранена. Однако разработчики языка XML сумели создать эффектное допол­ нение к этой структуре. Спецификация образования ссылок в XML состоит из двух частей: Х-ссылки (XLinks) и Х-указатели (XPointers). В спецификации Xссылок определено, что ссылки могут быть использованы для связей между доку­ ментами по типу «один ко многим» и «многие одному», в то время как Xуказатели обеспечивают подсоединение к конкретным частям документов.

Достоинства XML Язык XML отличается исключительным разнообразием, и главная причи­ на его гибкости заключается в том, что разметка XML-файла позволяет описы­ вать его содержание. В этом смысле он не похож на HTML, который является не более, чем приложением для воспроизведения содержания. XML-документ способен нести информацию о включенном в него материале. Это становится возможным по двум причинам. Во-первых, авторы XML-документов могут создавать свои собственные теги, относящиеся к содержанию документа. Вовторых, XML несет информацию о структуре и смысле документа, оставляя форматирование элементов таблице стилей. Таким образом, тэги XML не про­ сто сами что-то обозначают, но и сообщают информацию о содержании эле­ ментов, позволяя процессору обрабатывать XML-файл. Помимо этого, сведения о содержании файла могут быть затем повторно использованы на различных компьютерах и в различных приложениях.

Язык XML в качестве данных Язык SGML первоначально создавался для разметки документов и до сих пор широко используется для этой цели в полиграфической промышленности.

Язык - в свою очередь, давно стал общепринятым форматом для разметки до­ кументов и передачи их в Web. Конечно, с одной стороны, XML можно рас­ сматривать в том же качестве, что HTML и SGML, поскольку в основном он предназначен для разметки документов. В то же время языком XML все шире интересуются в других областях, и порой уже совсем в другом качестве. По­ скольку разметка XML по сути а в какой-то мере отражает содержание доку­ мента, его можно использовать и как универсальный формат в любых прило­ жениях. Таким образом, XML-файл не только будет воспроизведен на вашем браузере, но, поскольку XML интегрирован в ряд других приложений, с его по­ мощью можно предоставить пользователю данные и для других целей. Напри­ мер, XML, как язык разметки документов, приобрел большую популярность в качестве формата хранения различных материалов. Трудность, однако, состоит в том, что тэги тоже должны где-то храниться, поэтому XML не всегда удобен для хранения больших групп записей. В таком случае разработчики обычно предпочитают использовать традиционную базу данных и по мере необходимо­ сти преобразовывать ее содержимое в XML.

Таким образом, реальна перспектива возрастания популярности языка XML и освоения его в ряде других приложений. По крайней мере, авторы счи­ тают это вполне вероятным.

Слияние многих документов Другое важное достоинство XML заключается в его способности объеди­ нять несколько XML-документов в один большой документ. Если применить метод слияния множества документов и при этом воспользоваться возможно­ стью преобразовать содержимое базы данных в XML, нетрудно создать один итоговый - XML-документ, включающий данные из различных источников.

Взаимодействие с машиной Как известно, не только люди с помощью браузеров просматривают XML-страницы в Web. Авторы, пишущие на языке HTML, уже, должно быть, привыкли к использованию тэгов с ключевыми словами, описываю­ щими содержание Web-сайтов. С их помощью короткие программы, посылае­ мые поисковыми машинами, адекватно помещают авторские сайты в указатели.

Поскольку XML-файлы несут информацию о своем содержании, машинные пользовательские агенты способны обрабатывать информацию, помещенную в файл. Это означает, что в частном случае применения поисковых машин они обеспечивают значительно более точные результаты по запросам. В то время как HTML стал форматом представления, XML действует в качестве общепри­ нятого синтаксиса, позволяя значительно большему числу машинных пользова­ тельских агентов использовать хранимые в XML-файлах данные для различных целей. Однако XML представляет собой только часть движения по пути описа­ ния содержания документов. По мере роста интернет растет необходимость ис­ пользования метаданных.

Метаданные Существует мнение, что в настоящее время наши Web-страницы в основ­ ном воспроизводятся браузером, который визуально демонстрирует их содер­ жимое на мониторе компьютера. В то время как механизмы типа каскадных таблиц стилей (CSS) позволяют выводить содержимое файлов на устройства для чтения слепыми или на звуковые пользовательские агенты, разработчики прикладывают усилия, чтобы и машина сумела прочитать представляемые дан­ ные. За этой идеей просматривается обоснованная надежда на то, что Internet вскоре будет в значительной мере населен машинными пользовательскими агентами, которые станут действовать от имени людей. Например, появятся специальные программы, которые с помощью языка XML смогут найти нуж­ ную книгу. Именно метаданные (metadata) обеспечивают этот тип обмена ин­ формацией, описывающей содержание документов. Таким образом, метадан­ ные являются по сути данными о данных, или, в нашем случае, данными, опи­ сывающими ресурсы Web. Это, в свою очередь и наряду с другими возможно­ стями, позволит машинам осуществлять значительно более точный поиск. Дру­ гие области применения, на которые особенно активно повлияют метаданные, включают в себя:

1. оценку содержания документов;

2. описание наборов страниц, представляющих собой единый логиче­ 3. описание прав интеллектуальной собственности на те или иные 4. выражение частных предпочтений по поводу различных докумен­ Заинтересованность консорциума W3C в развитии метаданных как раз и инициировала разработку формата описания ресурсов (Resource Description Framework, RDF), пo существу являющийся языком представления метаданных.

Те же причины привели к созданию платформы отбора содержания в Internet (Platform for Internet Content Selection, PICS), о которой мы часто слышим в Web при обсуждении методов оценки содержания.

RDF представляет собой язык, выбранный консорциумом W3C для опи­ сания метаданных, которые смогут легко обрабатываться машинами. Ожидают, что этот метод будет играть большую роль в автоматизации многих задач.

Формат описания ресурсов Формат описания ресурсов (RDF) следует рассматривать как основу об­ работки метаданных, обеспечивающую независимый от приложений обмен ин­ формацией, понимаемой машинами. RDF упрощает автоматическую обработку ресурсов в Web.

Существуют две главные области использования RDF:

Модель данных RDF представляет собой абстрактную концептуальную схему представления данных. Это нейтральный к синтаксису способ представ­ ления выражений RDF. Представление модели данных часто применяют для оценки эквивалентности значений. Модели данных подвергают сравнению, и если их представления совпадают, то и выражения RDF можно считать эквива­ лентными.

Синтаксис RDF - это особая структура для создания метаданных и обме­ на ими. В настоящее время в этом качестве предлагается синтаксис XML, хотя со временем могут появиться и другие варианты. Чтобы установить точное со­ ответствие между каждым свойством и областью, в которой оно определено, RDF также требует использования пространства имен XML. Таким образом, RDF и XML дополняют друг друга. RDF позволяет авторам выбирать словарь по желанию; им лишь нужно знать, как разрешается пользоваться данным сло­ варем. RDF позволяет понять, какая именно лексика используется это достига­ ется с помощью присвоения Web-адреса каждому отдельному словарю путем указания пространства имен.

Возможность выбирать словарь также означает, что можно будет произ­ водить операции с данными, размеченными в соответствии с RDF. Вы сможете фильтровать и сортировать затребованную информацию.

Причины, побудившие специалистов заняться разработкой RDF, ясны. По мере расширения Web и увеличения объемов данных, доступ к которым стал реальным с появлением Internet, в той же, а то и более высокой, степени увели­ чивается потребность в формальном описании информации. Пытаясь с помо­ щью поисковых машин найти те или иные данные, каждый из нас не раз полу­ чал наряду с нужными адресами множество адресов, не относящихся к делу.

Теперь, когда на сцену выходят метаданные, появляется возможность обработ­ ки и поиска информации специальными программами-машинами без всякого нашего участия, но от нашего имени. Использование RDF в качестве средства для подготовки анализа поможет эффективнее проводить мета-анализ данных при оценке тренда и показателей бизнеса.

Консорциум World Wide Web Одним из главных направлений деятельности консорциума World Wide Web (W3C) является оказание содействия при разработке и оформлении стан­ дартов Всемирной Паутины. Финансовую поддержку консорциум получает за счет грантов и членских взносов. Консорциум W3C насчитывает всего около трехсот членов, однако все они чрезвычайно богатые и, что более важно, ком­ петентные люди.

Каждый новый стандарт, впервые представляемый в W3C, сначала стано­ вится предложением (proposal), а затем, после рассмотрения и одобрения в W3C, сообщением (note). Например, сообщение по расширяемому языку таб­ лиц стилей (XSL) было принято в августе 1997 года. Затем это сообщение стало рабочим проектом, который в процессе прохождения по закрытому списку ад­ ресатов, включающих членов W3C и приглашенных экспертов, был исправлен и дополнен. После этого проект в августе 1998 года был вновь обнародован; то­ гда же началась общая дискуссия по открытым спискам адресов рассылки. Лю­ бой мог принять участие в этом обсуждении. Некоторые списки адресов при­ надлежат консорциуму W3C, другие, такие как, например, список DSSSL, на­ ходящийся в ArborText, относятся к независимым от W3C исследователям. Все это лишний раз подтверждает, что консорциум W3C прислушивается к общест­ венному мнению.

После обсуждения члены консорциума возвращаются к проекту и рас­ сматривают предложенные рекомендации, по которым голосуют в течение шести недель. В зависимости от результата голосования, проект либо становит­ ся официальным стандартом, либо возвращается на стадию проекта.

Говоря о языке XML, обратим ваше внимание на то, что дальнейшее со­ вершенствование Web жизненно необходимо для развития промышленности, и поэтому скорее будет подчиняться требованиям рынка в целом, чем рыночным стратегиям основных игроков. Вот почему утверждение, что XML будет суще­ ствовать и впредь, можно принять за аксиому.

Достоинства XML Надеемся, вы уже начали осознавать потенциал, заложенный в языке XML. Повторим некоторые из его достоинств:

1. для широкого круга пользователей Internet необходим стандарт языка (SGML недостаточно популярен из-за своей сложности) и скорее всего как раз XML займет это место. Он будет использовать­ 2. XML отделяет синтаксис и структуру от представления документа;

3. XML дает возможность создавать свои собственные тэги, описы­ вающие содержание документа;

4. определяя свой собственный язык разметки, можно кодировать ин­ формацию значительно точнее, чем позволяет HTML;

5. XML-файл может быть прочитан человеком;

6. обрабатывать структурированную информацию смогут не только браузеры. XML обеспечивает расширенную функциональность, предоставляя машинам легкий доступ к файлам;

7. XML относительно легко изучить, что позволяет программистам, работающим на HTML, быстро овладеть структурированной раз­ 8. в отличие от языка SGML, для XML определения типа документа 9. тэги XML можно применять для управления поиском;

10.XML может употребляться в качестве формата обмена для прото­ 11.XML кодирует не только документы, но и данные;

12.XML создан таким образом, чтобы его можно было легко реализо­ 13.XML позволяет объединять большое количество файлов и созда­ вать из них составные документы;

14.XML обеспечивает работу с различными приложениями, в отличие от HTML, который совместим только с браузерами.

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

В начале этой главы будет уместно дать общие сведения о схемах, далее мы затронем вопрос об ограничениях и определенных недоработках, связанных с применением определения типа документа в XML. Затем читатели познако­ мятся с двумя новыми проектами, которые используют синтаксис XML для описания структуры документа и в настоящий период находятся в разработке.

В октябре 1998 года, в консорциуме W3C была сформирована рабочая группа по XML-схемам. Ее участникам было поручено разработать наиболее приемлемую для всех пользователей методику, написанную в синтаксисе XML.

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

1. этот язык должен быть пригоден для непосредственного использо­ 2. XML должен поддерживать разнообразные приложения;

3. XML должен быть совместим с SGML;

4. написание программ для обработки XML-документов не должно вызывать особых затруднений.

Задача состоит в том, чтобы сделать XML языком, пригодным (и удоб­ ным) для обмена информацией между приложениями. С точки зрения профес­ сионалов, работающих в прикладных областях и использующих специальные программы, любая подобная схема обязана накладывать определенные ограни­ чения на XML-документ. Это позволит создавать программное обеспечение, которое, с одной стороны, заранее «знает», какую информацию оно может ожидать, а с другой - вводить в проекте программы допущения, которые помо­ гут расширить возможности приложения. При этом проверка на состоятель­ ность окажется в то же время и проверкой на соответствие документа его схе­ ме, что позволит быстро удостовериться, способно ли приложение принять до­ кумент к исполнению и выполнить запрос, используя при этом все свои воз­ можности.

С точки зрения пользователя, проверка состоятельности по отношению к схеме увеличивает шансы на то, что передаваемая информация будет понята и употреблена с пользой. Отправитель может оценить правильность своего сооб­ щения до того, как оно будет послано, а адресат прежде, чем его обрабатывать, испытает его на состоятельность.

Усиливающийся интерес к XML-схемам обусловлен в первую очередь потребностями в обмене новыми типами приложений, для создания которых используется описываемый здесь язык. Несмотря на то, что за долгие годы экс­ плуатации в этом проекте были обнаружены некоторые пробелы и ограниче­ ния, определения типа документа SGML/XML до сих пор во многом удовле­ творяет пользователей. Как было сказано выше, обмен документами в основном связан с их структурой и иерархией, которые достаточно подробно описывают­ ся в определении типа документа. Однако возрастающий поток обмена данны­ ми между обрабатывающими приложениями требует более строгой проверки их на состоятельность. Возможность как можно раньше накладывать ограниче­ ния на применяемые в подобных материалах типы данных, а также обеспечение легкой расширяемости и обработки документов дорогого стоят.

Определение типа документа XML как схема Как уже было сказано при разборе XML-документов, схема является опи­ санием способа разметки документа: его грамматики, словаря, структуры, ти­ пов данных и т.д. Классическое определение типа документа тоже является схемой для XML, оно имеет свои преимущества и недостатки.

Для описания разметки в настоящее время, используется синтаксис, от­ личный от синтаксиса XML. Этот синтаксис обычно называют расширенной формой Бэкуса-Наура, или EBNE.

Схемы типа DTD имеют и несколько других, менее очевидных недостат­ ков. Вот лишь несколько из них:

1. создать удобные для работы DTD достаточно трудно;

3. DTD плохо описывают XML как данные;

4. не обеспечивается наследование свойств из одного DTD в другое;

5. DTD не поддерживает пространства имен;

6. описательная способность DTD ограничена;

7. нет механизма, обеспечивающего содержание элемента по умолча­ 8. авторская работа по созданию программного продукта фактически разбивается на два этапа: первый заключается в создании DTD, второй - в формировании XML-документа. Таким образом, для об­ работки документа нужно иметь два анализатора.

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

Синтаксис в сообщении о DTD по форме похож на синтаксис, описанный в сообщении об XML-данным, но включает также часть синтаксиса RDF.

W3-консорциум и Х-технологии Рассматривая язык XML в перспективе, мы не станем затрагивать такие моменты, как общественная деятельность различных рабочих групп, географи­ ческие пути распространения языка и т. п. Мы проанализируем только лишь побудительные причины возникновения XML как платформы, на основе кото­ рой развилось множество взаимосвязанных и взаимодополняющих технологий.

Временем рождения XML можно считать 1996 год, в конце которого поя­ вился черновой вариант спецификации языка, или 1998, когда эта специфика­ ция была утверждена. Разумеется, для понимания проблем современности не­ обходимо знание истории, но, говоря об истории XML, предоставим каменный век историкам и начнем сразу с 1986 года — года появления языка SGML.

SGML (Standard Generalized Markup Language - Стандартный обобщен­ ный Язык Разметки) заявил о себе как гибкий, комплексный и всеохватываю­ щий мета-язык для создания языков разметки. И хотя понятие гипертекста поя­ вилось в 1945 году, этот язык не имеет гипертекстовой модели. Создание SGML можно с уверенностью назвать попыткой, объять необъятное, т.к. он объединяет в себе такие возможности, которые крайне редко используются все вместе. В этом и состоит его главный недостаток — сложность и, как следст­ вие, дороговизна этого языка ограничивает его использование только крупными компаниями, которые могут позволить себе купить соответствующее про­ граммное обеспечение и нанять высокооплачиваемых специалистов. Кроме то­ го, у небольших компаний редко возникают настолько сложные задачи, чтобы привлекать к их решению SGML.

Наиболее широко SGML применяется для создания других языков раз­ метки, именно с его помощью был создан язык разметки гипертекстовых доку­ ментов — HTML, спецификация которого была утверждена в 1992 году. Его появление было связано с необходимостью организации стремительно увели­ чивающегося массива документов в сети Internet. Бурный рост количества под­ ключений к Internet и, соответственно, Web-серверов повлек за собой такую по­ требность в кодировке электронных документов, с которой не мог справиться SGML вследствие высокой трудности освоения. Появление HTML — очень простого языка разметки - быстро решило эту проблему, легкость в изучении и богатство средств оформления документов сделали его самым популярным языком для пользователей Internet.

По мере роста количества и изменения качества документов в Сети, рос­ ли и предъявляемые к ним требования. Простота HTML превратилась в его главный недостаток. Ограниченность количества тегов и полное безразличие к структуре документа побудили разработчиков в лице консорциума W3C к созданию такого языка разметки, который был бы не столь сложен, как SGML, и не настолько примитивен, как HTML. В результате, сочетая в себе простоту HTML, логику разметки SGML и удовлетворяя требованиям Internet, появился на свет язык XML. И несмотря на молодость, уже успел превратиться в целый набор технологий, призванных выполнять самые разные действия по обработке информации как в сети Internet, так и вне ее.

Расширяемый язык разметки (extensible Markup Language, XML) описывает класс объектов XML document, а также частично работу компьютерных программ, обрабатывающих объекты с данными, реализующими этот класс.

XML — это прикладной уровень или усеченная форма SGML, Стандартного обобщенного языка разметки [ISO 8879]. По своему построению, XMLдокумент является полноценным SGML-документом.

Расширяемый язык стилевых таблиц (extensible Stylesheet Language, XSL)состоит из двух частей: языка для трансформации XML-документов и из XML-словаря, определяющего семантику форматирования. Стилевая таблица X S L определяет представление класса XML-документов, описывая, как пред­ ставитель класса, трансформируемый в XML-документ, использует словарь форматирования.

Язык XSLT (XSL Transformations) разработан как часть XSL. XSL опре­ деляет стилизацию XML-документа, задействуя XSLT для объяснения того, как документ трансформируется в другой XML-документ на основе словаря форма­ тирования. Кроме того, XSLT может использоваться независимо от XSL. Одна­ ко XSLT не является единым комплексным языком трансформации XMLдокументов. Он, скорее, предназначен для тех видов трансформаций, которые необходимы, когда XSLT используется как часть XSL.

Главной задачей XPath является адресация частей XML-документа. Для этой цели XPath представляет XML-документ как некоторое дерево узлов раз­ личного типа. Поэтому помимо адресации в XPath обеспечиваются минималь­ ные возможности по обработке данных различных типов. Третьей задачей XPath можно назвать динамическое генерирование контента, если этот контент не может быть создан до первого обращения к документу.

XSL Formatting Objects XSL FO (Formatting Objects — форматирующие объекты) — это набор классов, в терминах которых отражена семантика форматирования. Они пред­ ставляют собой узлы дерева, полученного в результате XSL-трансформации.

Классы форматирующих объектов определяют такие полиграфические терми­ ны, как страница, параграф и т. п. Лучший контроль над представлением этих объектов обеспечивается множеством свойств форматирования. Это такие свойства, как отступы, тени, промежутки между словами и буквамии т.п. В XSL классы свойств и объектов форматирования обеспечивают словарь для отраже­ ния цели представления.

Расширяемый HTML (extensible HTML, XHTML) является результатом применения правил синтаксиса XML к стандарту HTML. Расширяемость XHTML заключается в возможности определения таких конструкций, как эле­ менты, атрибуты, сущности и т. п. с помощью подключения определения типа документа (Document Type Definition, DTD).

Инструментарий описаний ресурсов (Resource Description Framework, RDF) — это набор инструментов для работы с метаданными. Он обеспечивает единую, стандартизированную среду управления внутренним (без вмешатель­ ства человека) взаимодействием приложений, которые обмениваются в Web информацией, понимаемой машинами. RDF делает ударение на легкость авто­ матизированной обработки Web-ресурсов. Метаданные RDF могут быть ис­ пользованы в самых разных областях работы приложений. В общем, RDF обес­ печивает основу для элементарных инструментов авторизации, поиска и редак­ тирования данных, понимаемых машинами, в Web, содействуя, таким образом, трансформации Web в аппаратно обрабатываемое хранилище информации.

Язык XML Schema используется для объявления элементов и атрибутов в XML-документе с целью его структуризации. Кроме того, этот язык предостав­ ляет расширяемые возможности для определения типов данных элементов и ат­ рибутов.

XML Base представляет собой аналог элемента BASE из языка HTML.

Оно описывает механизм предоставления сервисов базовых URI (UniformResource Locator, универсальное местоположение ресурса) для XLink.

Расширяемый язык связывания (XML Linking Language, XLink) определя­ ет конструкции, которые могут быть вставлены в XML-документы для описа­ ния связей между объектами. Он использует синтаксис языка XML для созда­ ния структур, которые могут служить как для описания простых одно направ­ ленных гиперссылок, определяемых в HTML, так и для более сложных связей.

Расширяемый язык указателей (XML Pointer Language, XPointer) - язык, разработанный для совместного использования с XLink. XPointer определяет конструкции, которые поддерживают адресацию во внутренних структурах XML-документов. В частности, он предназначен для специфических ссылок на элементы, символьные строки и другие части XML-документов.

Xlnclude Расширяемый язык встраивания (XML Include Language, Xlnclude) пред­ назначен для объединения блоков информации в формате XML (XML infosets) в единый составной информационный блок. Спецификация документов XML (или информационных блоков), которые должны быть объединены, а также процесс объединения описываются с помощью дружественного языку XML синтаксиса (элементов, атрибутов, ссылок на URI).

Расширяемый язык запросов (XML Query Language, XQL) - это нотация для адресации и фильтрации элементов и текста в XML-документах. XQL явля­ ется естественным расширением схемы (pattern) синтаксиса XSL. Он обеспечи­ вает выразительную и простую нотацию для указания (pointing) на специфиче­ ские узлы, а также для поиска узлов со специальными, частными характеристи­ ками. Этот язык, базируясь на возможностях XSL, обеспечивает идентифика­ цию классов узлов путем добавления булевой логики, фильтров, индексации в коллекциях узлов и т. д.

Простой протокол доступа к объектам (Simple Object Access Protocol, SOAP) представляет собой облегченный протокол для обмена информации в децентрализованной, распределенной среде. Этот базирующийся на XML про­ токол состоит из трех частей:

1. конверт, который служит для определения содержимого сообщения 2. набор правил кодировки (encoding rules), предназначенных для опи­ сания определенных в приложении типов данных;

3. соглашение о вызовах удаленных процедур (Remote Procedure В SOAP заложены потенциальные возможности взаимодействия с други­ ми протоколами, такими как HTTP и его расширенным инструментарием (HTTP Extension Framework).

Математический язык разметки (Mathematical Markup Language, MathML) — базирующийся на XML язык описания математических формул. Представля­ ет собой расширение XML, предназначенное как для отображения, так и для обработки структуры математических публикаций. Этот язык предназначен для создания инструментария разметки математики в Web.

Химический язык разметки (Chemical Markup Language, CML) является аналогом MathML для публикаций в Web статей по химической тематике.

На самом деле, Internet-технологий, разными способами обрабатывающих данные в Сети и для Сети, гораздо больше.

XML среди других серверных технологий Несмотря на многообразие возможностей, которые предоставляет язык XML, было бы заблуждением думать, что программное обеспечение, необхо­ димое для создания Web-приложения, состоит только из синтаксического ана­ лизатора (парсера) XML. Большинство функций этого языка направлено на об­ работку данных, содержащихся внутри документа, но как обстоит дело с опе­ рациями над самими документами? Кроме того, информация, содержащаяся в документе, может быть структурирована различными способами, в зависимости от специфики задачи. Зададимся вопросом, для работы с какими типами таких структур подходит язык XML, а для каких нет?

Рассмотрим совокупность функций Web-приложения и языка XML. Для этого предположим, что рассматриваемое нами Web-приложение достаточно компактно, пусть оно обслуживает не более чем несколько сотен пользовате­ лей, и в задачи этих пользователей входит только работа с документами. Наше приложение не производит ни научных расчетов, ни громоздких операций с до­ кументами в режиме реального времени. И вместе с тем, оно успешно справля­ ется с поставленными перед ним задачами и делает это с удовлетворительной скоростью.

Прежде всего, заметим, что если мы решили воспользоваться помощью XML для построения Web-приложения, то это еще не значит, что нам необхо­ димо отказаться от программного обеспечения, служащего для представления HTML-документов. Ведь некоторые документы, обрабатываемые приложени­ ем, могут служить только для представления информации. Единственная опе­ рация, которую может осуществить над ними пользователь — просмотр, по­ этому логическая структура таких документов не имеет никакого значения.

Следовательно, для того, чтобы приложение имело возможность обраба­ тывать статические документы, одним из его компонентов должен быть Webсервер. Можно, разумеется, перевести все HTML-документы в формат XML, но тогда логично будет заключить, что таким образом Web-приложение будет ра­ ботать медленнее, т.к. ему понадобится время на преобразование XML в HTML. Хотя нужно признаться, что на практике такое замедление работы слу­ чается не всегда.

Основная функция языка XML, как мы уже говорили, состоит в структу­ ризации информации, т.е. создавая XML-документ, мы фактически строим формализованную модель данных. Если при этом количество этих данных слишком велико для того, чтобы они образовывали один документ, то возника­ ет множество таких документов, средствами коммуникации между которыми служат языки запросов.

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

Но проделав всю эту работу, мы всего лишь создадим "службу каталога".

В этом нет никакой необходимости, т.к. на данный момент существует доста­ точное количество соответствующих серверов на любой вкус как коммерче­ ских, так и бесплатных. Единственным исключением является ситуация, когда количество документов слишком мало для привлечения услуг этой службы.

Так как Web-приложение помимо статических данных обрабатывает еще и динамические, то должен существовать механизм, позволяющий обновлять связи между документами. Это означает, что при изменении какой-либо ин­ формации о документе или содержащейся в документе, на которую ссылается другой документ, в этом другом документе также должны произойти соответ­ ствующие изменения. Например, создание одного XML-документа может по­ влечь за собой обновление общего списка этих документов, т.е. другого XMLдокумента. Другим примером может быть генерирование отчетов — докумен­ тов, содержащих сводную информацию из других источников.

Опять же, язык XML может быть привлечен для решения этой задачи, но когда речь заходит о каких-либо действиях произвольного характера (то есть не только представление и работа со структурой), то лучше воспользоваться ка­ ким-либо языком программированиия. Ведь такая простая операция как полу­ чение текущей даты не может быть выполнена средствами языка разметки, ка­ ким бы расширяемым он не был.

Использование Java в качестве языка программирования, который, как и XML, представляет собой платформу для создания различных Internetтехнологий. Одной из таких технологий является выполненный средствами Java инструмент под названием «сервлет» (servlet), который грубо можно опре­ делить как «атомарный» код, выполняющийся на сервере и возвращающий кли­ енту результаты своего выполнения. Причем клиент и сервер не обязательно должны находиться на различных машинах и взаимодействовать по сети.

Благодаря механизму сервлетов, мы можем объединить функциональ­ ность языка XML в плане обработки документов с мощной логикой языка про­ граммирования. Как XML-документы, так и сервлеты представляют собой множество объектов, которое может быть упорядочено. Но поскольку сервлеты представляют собой наборы действий, т.е. программы, и в свою очередь явля­ ются приложениями, то для их обслуживания необходим отдельный сервер, ко­ торый так и называется — сервер приложений (application server). Вообще в за­ дачу сервера приложений входит не только обработка сервлетов, но и любых других приложений, взаимодействующих с сервером и друг с другом по неко­ торому единому протоколу.

Так же, как и в случае службы каталога, сферой деятельности сервера приложений является обслуживание подключающихся к нему клиентов (поли­ тика пользователей, механизм транзакций и т.п.), а также некоторые специфи­ ческие функции, связанные с обслуживанием приложений (время жизни при­ ложения, способ хранения информации, которой обмениваются приложения, и т. д.). Как правило, серверы приложений включают в себя и некоторые меха­ низмы защиты от взлома и сбоев оборудования. Среди них средства шифрова­ ния, аутентификации, резервного копирования и многое другое.

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

Круг задач, решаемых с помощью XML Можно выделить три основных области применения языка XML, если как отправной точкой воспользоваться существующими на сегодняшний день ти­ пами моделей данных. Воспользовавшись классификацией баз данных, выде­ лим среди них те, которые наиболее часто используются для решения практи­ ческих задач:

1. одно- или многомерный список (реляционная база данных);

2. иерархическая структура (дерево);

3. сетевая структура.

Мы определим первый класс задач, для которых можно воспользоваться услугами XML. Если данные, с которыми предстоит работать Webприложению, можно описать с помощью одного из обозначенных типов, и по каким-либо причинам нет необходимости привлекать соответствующее про­ граммное обеспечение (например, вследствие малого объема данных, или их простой структуры, или дороговизны этого ПО и т. д.), то для полной или час­ тичной организации информации вполне подойдет язык XML, Вторым классом задач является ситуация, когда XML берет на себя управление какой-либо частью Web-приложения. Даже при создании Webсайта, который состоит хотя бы из нескольких HTML-документов, иногда бы­ вает необходимо эти документы как-то упорядочить. Примером, когда исполь­ зование XML может сильно сэкономить время, является создание карты сайта.

Другим примером может быть, в частности, построение пользовательского ин­ терфейса. Таким образом, в этих и им подобных задачах язык XML служит од­ ним из посредников между массивом данных и к ним обращающимися пользо­ вателями или приложениями.

Говоря о том, что главной особенностью языка XML является его спо­ собность работать с документом как с множеством динамических данных, а не­ просто как с текстом, мы вовсе не имели в виду, что эти данные не могут пред­ ставлять собой текст. Хранение информации в виде текста или гипертекста наиболее естественно для человека, и, вместе с тем, такой способ хранения не укладывается ни в одну из схем моделей данных, описанных ранее. Для более четкого представления того, о чем идет речь, рассмотрим такой пример. Пред­ ставим себе набор текстов на английском языке, каждый из которых иллюстри­ рует использование в контексте некоторых содержащихся в нем слов. Изучаю­ щий английский язык может на основе этих текстов получить представление о корректном использовании английских слов с неоднозначным переводом (иди­ ом).

Если посмотреть на Web-приложение, осуществляющее таким образом обучение английскому языку нескольких учащихся одновременно, то можно выделить следующие его услуги своему администратору:

1. добавление текстового документа;

2. удаление документа;

3. пометка слова, содержащегося в документе, как ключевого (идио­ 4. удаление этой пометки;

5. поиск документа по одному или нескольким ключевым словам Такого рода задача является примером третьего класса задач, решаемых с помощью XML. Очевидно, что таким образом организованные данные плохо поддаются формализации, и если ключевые слова образуют древовидную структуру, то как быть с остальным текстом? Язык XML рассматривает и текст и ключевые слова в виде отдельных узлов дерева, но при этом формализован­ ные данные имеют легко читаемый текстовый вид. Кроме того, в подобном случае, чтобы как-либо оперировать текстом или его частями, нет необходимо­ сти приводить эти данные к другому, специальному виду. Таким образом, об­ работка текстовых документов является основным классом задач, для которых язык XML изначально проектировался и, следовательно, подходит лучше всего.

Заменит ли XML HTML?

На сегодняшний день ответ на этот вопрос отрицательный. HTML попрежнему остается основным языком для сообщения браузеру, как отображать информацию в Web.

В современных web-браузерах вы можете открывать XML-документы с вложенными таблицами стилей непосредственно браузером, не используя HTML-страницы. Однако в двух других основных методах отображения XMLдокументов - связывании данных и DOM-сценариях - отображение XMLдокументов осуществляется через HTML Web-страницы. (Даже при примене­ нии метода таблиц стилей в случае, если вы используете язык XSL, вам потре­ буется воспользоваться HTML, чтобы сообщить браузеру, каким образом фор­ матировать XML-данные.) Не заменяя HTML, XML в настоящее время используется в сочетании с ним, существенно расширяя возможности Web-страниц для:

1. виртуального представления документов любого типа;

2. сортировки, фильтрации, упорядочения, поиска и манипулирования информацией иными способами;

3. представления информации в структурированном виде.

4. Как заявляют сами разработчики, XML был создан для взаимодей­ ствия с HTML и совместного с ним использования.

Официальные концептуальные цели XML Ниже представлено десять концепций предназначения и целей примене­ ния XML, заявленных в официальной спецификации W3C.

«1. XML должен стать языком прямого использования в Internet)»

Как вы уже могли понять, XML был разработан главным образом для хранения и распространения информации в Web.

«2. XML будет поддерживать большое количество приложений.»

Хотя основным его назначением является распространение информации в Web через серверы и программы-браузеры, XML также разработан для исполь­ зования его другими программами. Например, XML применяется для обмена информацией между финансовыми программами, для распространения и об­ новления программных продуктов, а также написания голосовых сценариев при доставке информации по телефону.

«3. XML будет совместим с SGML.»

XML является специализированной ветвью SGML. Преимущество здесь заключается в простоте адаптации программных средств SGML для работы с HTML.

«4. Будет легче писать программы, обрабатывающие XML-документы.»

Для практического использования XML необходимо, чтобы было доста­ точно просто писать браузеры и другие программы, обрабатывающие XMLдокументы. На деле основной причиной выделения XML из SGML была дос­ тупность написания программ для обработки XML-документов.

Все перечисленные далее свойства являются в той или иной степени про­ изводными этой основной концепции.

«5. Количество дополнительных функций в XML должно быть мини­ мальным, а в идеале - нулевым.»

Минимальное число дополнительных функций в XML упрощает написа­ ние программ для обработки XML-документов. Изобилие дополнительных подключаемых функций в SGML стало основной причиной, обусловившей его практическую непригодность для представления Web-документов. Дополни­ тельные функции SGML требуют переопределения символов-разделителей для тегов (обычно ) и пропуск конечного тега с целью обнаружения процес­ сором конца элемента. При строгом написании программы обработки SGMLдокументов необходимо учитывать возможность появления всех дополнитель­ ных функций, даже если они редко встречаются.

«6. XML-документы должны быть понятными и ясными для пользователя.»

XML призван стать lingua franca (универсальным языком) для обмена ин­ формацией среди пользователей и программ по всему миру. В соответствии с этой концепцией пользователи, а также специализированные программы, должны иметь возможность создавать и прочитывать XML-документы. Дос­ тупность и прозрачность для пользователя выделяют XML из большинства дру­ гих форматов, применяемых при построении баз данных и текстовых докумен­ тов.

Пользователь может легко прочесть XML-документ, поскольку он описан простым текстом и имеет логичную иерархическую структуру в виде дерева.

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

«7. Разработка XML должна быть завершена достаточно быстро.»

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

«8. Язык XML должен быть формальным и кратким.»

Спецификация XML написана на формальном языке, используемом для представления компьютерных языков, с нотацией, известной как расширенная форма Бакус-Наура (Extended Backus-Naur Form (EBNF)).Этот формальный язык, хотя и достаточно сложен для восприятия, лишен двусмысленности и су­ щественно облегчает написание XML-документов, а в особенности программ для их обработки.

«9. XML-документы будет проще создавать.»

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

«10. Сжатая форма при XML-разметке не важна.»

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

Стандартные XML-приложения Вы можете использовать XML не только для описания отдельного доку­ мента. Индивидуальный пользователь, компания или комитет по стандартам может определить необходимый набор элементов XML и структуру документа, которые будут применяться для особого класса документов. Подобный набор элементов и описание структуры документа называют XML-приложением или XML-словарем.

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

XML-приложение обычно определяется созданием описателя типа доку­ мента (DTD), который является допустимым компонентом XML-документа.

DTD построен по схеме базы данных: он устанавливает и определяет имена элементов, которые могут быть использованы в документе, порядок, в котором элементы могут появляться, доступные к применению атрибуты элементов и другие особенности документа. Для практического использования XMLприложения вы обычно включаете его DTD в ваш XML-документ; наличие DTD в документе ограничивает круг элементов и структур, которые вы будете использовать, вследствие чего ваш документ отвечает стандартам данного при­ ложения.

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

XML-приложения, повышающие качество XML-документов Кроме XML-приложений для описания определенных классов докумен­ тов, имеется несколько XML-приложений, которые вы можете применять внут­ ри XML-документа любого типа. Эти приложения облегчают создание доку­ мента и улучшают его качество. Ниже приведены примеры таких приложений:

1. Extensible Stylesheet Language (XSL) позволяет вам создавать мощ­ ные стилевые таблицы с использованием синтаксиса XML.

2. XML Schema позволяет разрабатывать подробные схемы для ваших XML-документов с использованием стандартного синтаксиса XML, что является более мощной альтернативой применения DTD.

3. XML Linking Language (XLink) дает возможность связывать ваши XML-документы. Он поддерживает множественные целевые ссылкии другие полезные функции, обеспечивая большую свободу по сравнению с механизмом организации ссылок в HTML.

4. XML Pointer Language (XPointer) позволяет определять гибкие це­ левые ссылки. При совместном использовании XPointer и XLink вы можете организовывать ссылки на любое место в целевом докумен­ те - а не только переходы к специально выделенным пунктам.

Как видите, XML является не только полезным инструментом для описа­ ния документов, но и служит основой для построения приложений и расшире­ ний, которые могут оказаться востребованными по мере развития Internet.

Практическое использование XML Хотя концепция XML весьма интересна, у вас может возникнуть вопрос, как его применить на практике. В этом разделе приведен перечень примеров такого применения XML, как уже широко используемых, так и перспективных.

Если имеются соответствующие XML-приложения для практического исполь­ зования, они будут приведены в скобках. Например, вы сможете узнать, что XML-приложение MathML позволит вам форматировать математические фор­ мулы.

Работа с базами данных. Подобно традиционным базам данных, XML может быть использован для присвоения метки каждому полю информации внутри каждой записи базы данных. (Например, можно пометить каждое имя, адрес и номер телефона внутри записей списка адресов.) После этого вы смо­ жете отображать данные различными способами и организовывать поиск, сор­ тировку, фильтрацию и иную обработку данных.

Структурирование документов. Иерархическая структура XMLдокументов идеально подходит для разметки структуры таких документов, как романы, научные труды, пьесы. Например, вы можете использовать XML для разметки пьесы на акты, сцены, размечать действующих лиц, сюжетные линии, декорации и т.д. XML-разметка дает возможность программам отображать или распечатывать документ в необходимом формате; находить, извлекать или ма­ нипулировать информацией в документе; генерировать оглавления, резюме и аннотации; обрабатывать информацию иными способами.

1. Работа с векторной графикой (VML - Vector Markup Language).

2. Мультимедиа презентации (SMIL - Synchronized Multimedialntegration Language, HTML + TIME - HTML Timed Interactive Multimedia 3. Описание каналов. Каналы представляют собой Web-страницы, ко­ торые автоматически рассылаются подписчикам. (CDF - ChannelDefinition Format).

4. Описание программных пакетов и их взаимосвязей. Такие описания обеспечивают распространение и обновление программных продуктовв сети (OSD - Open Software Description).

5. Взаимодействие приложений через Web с использованием XMLсообщений. Эти сообщения являются независимыми от операцион­ ных систем, объектных моделей и компьютерных языков (SOAP SimpleObject Access Protocol).

6. Отправка электронных бизнес-карт через e-mail.

7. Обмен финансовой информацией. Обмен информацией в открытом и понятном формате осуществляется между финансовыми про­ граммами (такими как Quicken и Microsoft Money) и финансовыми институтами (банками, общественными фондами) (OFX - Open Fi­ 8. Создание, управление и использование сложных цифровых форм для коммерческих Internet-транзакций. Подобные формы могут включать оцифрованые подписи, которые делают их признанными юридически (XFDL - Extensible Forms Description Language).

9. Обмен запросами по приему на работу и резюме (HRMML - HumanResource Management Markup Language).

10.Форматирование математических формул и научной информации в Web (MathML - Mathematical Markup Language).

11. Описание молекулярных структур (CML - Chemical Markup Lan­ 12.Кодирование и отображение информации о ДНК, РНК и цепочках (BSML - Bioinformatic Sequence Markup Language).

13.Кодирование генеалогических данных (GeDML - Genealogical 14.Обмен астрономическими данными (AML - Astronomical Markup 15.Создание музыкальных партитур (MusicML - Music Markup Lan­ 16.Работа с голосовыми сценариями для доставки информации по те­ лефону. Голосовые сценарии могут быть использованы, например, для генерирования голосовых сообщений, справок о наличии това­ ров и прогнозов погоды (VoxML).

17.Обработка и доставка информации курьерскими службами. Служба Federal Express, например, уже использует XML для этих целей.

18.Представление рекламы в прессе в цифровом формате (Ad Markup).

19.3аполнение юридических документов и электронный обмен юриди­ ческой информацией (XCL - XML Court Interface).

20.Кодирование прогнозов погоды (OMF - Weather Observation MarkupFormat).

21.Обмен информацией по операциям с недвижимостью (RETS - RealEstate Transaction Standard).

22.0бмен страховой информацией.

23.Обмен новостями и информацией с использованием открытых Webстандартов (XMLNews).

24.Представление религиозной информации и разметка текстов бого­ служений (ThML - Theological Markup Language, LitML - LiturgicalMarkup Language).

Что такое документ?

В повседневной жизни мы часто сталкиваемся с самыми разными видами документов. В быту это газеты, журналы, книги, письма, документы, удостове­ ряющие личность и, может быть, какие-либо ее права или полномочия (пас­ порт, водительские права, свидетельства об уровне образования) и многие дру­ гие. В профессиональной деятельности типология обрабатываемых документов еще более многообразна. Кроме того, не стоит упускать из виду, что бумага не является единственным носителем информации и что каждый такой носитель определяет специфику обработки и хранения своего документа. Очевидно, что, например, использование гиперссылки невозможно при работе с бумажными документами.

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

Любой документ, будь то газета, прайс-лист, письмо и т. д., подпадет под наше определение, и здесь уже можно говорить о создании, удалении или ка­ кой-либо еще обработке этого документа. Заметим, что информация, содержащаяся в подобных документах, неоднородна. Газета содержит заголовки раз­ личных уровней, сноски, подписи к фотографиям и т. п. Конверт письма несет информацию об адресе отправителя и получателя. Разделение информации на различные типы и какое-либо выделение этих типов дает нам возможность бо­ лее тонкой обработки документа, чем просто его создание и удаление. Если представить себе книгу без оглавления, в которой отсутствуют абзацы, и весь текст, включая заголовки, набран одним и тем же шрифтом, то становится по­ нятным, что наличие даже простейшей структуры в документе придает ему значительную гибкость в обработке.

Рассматривая в качестве примера такие документы, как письмо, мы исхо­ дили из того, что работать с ними предстоит человеку. Но если поручить их об­ работку компьютеру, т. е. коснуться электронных документов, то интуитивно понятной структуры здесь уже недостаточно. Для однозначного определения адреса здесь необходимо четко указать название города, улицы, номера дома и квартиры. Таким образом, должны существовать однозначные обозначения для соответствующих групп символов.

Теперь мы уже можем говорить о документе как о последовательности символов, некоторые группы которых выделены, т. е. интерпретируются осо­ бым образом, в зависимости от способа их выделения или, иными словами, от того, как они обозначены. Но и сейчас еще рано говорить о жесткой структуре документа. Помечая различные слова или части текста, мы ничего не сказали о том, как они должны интерпретироваться в зависимости от их местоположения в тексте или относительно друг друга. Возникающую в этой ситуации неодно­ значность можно проиллюстрировать следующими двумя примерами.

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

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

Второй пример заключается в обработке омонимов — слов, которые мо­ гут иметь несколько значений в зависимости от контекста. Пример омонима — слово «коса». Оно может означать речную косу, женскую прическу и сельско­ хозяйственное орудие. В документах чаще всего встречаются омонимы другого рода, когда одно и то же слово используется непосредственно по своему значе­ нию и как имя собственное. Например, слово «труд» может быть названием га­ зеты и нарицательным именем. Для того чтобы избавится от неоднозначности, мы, как и в первом примере, можем ввести для каждого смысла омонима уни­ кальное обозначение и использовать его при каждом вхождении этого омонима во всем тексте. Или же мы можем описать правила интерпретации одного един­ ственного обозначения, зависящие от местоположения омонима в этом тексте.

Правило может быть, например, таким: если слово "труд" встречается в самом начале текста (газеты), то его следует трактовать как название газеты, если сло­ во встречается где-либо еще, то его нужно интерпретировать по своему смыслу.

Рассмотрев эти два примера, мы постараемся максимально уточнить по­ нятие документа, насколько это можно сделать, не вдаваясь в строгие техниче­ ские описания, такие как спецификация языка XML. Хотя, собственно говоря, в этой спецификации строгое и полное определение термину "документ" отсутст­ вует как таковое. В ней сказано лишь нечто вроде: "корректным XMLдокументом является то, что удовлетворяет данной спецификации". Перед тем, как перейти к рассмотрению XML-документов, давайте остановимся на сле­ дующем определении непосредственно документа, безотносительно XML.

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

Структура XML-документа Можно разделить содержимое XML-документа на две составляющие:

группы символов, несущие информацию, которую должен представлять доку­ мент, и специальные наборы символов, служащие для специфического выделе­ ния или пометки некоторых частей первой группы. В XML-документах первая группа носит название "текст" или "контент", а вторая, представляющая собой систему обозначений, которые поддаются интерпретации, называется размет­ кой. В языке HTML, к примеру, к разметке относятся все теги, без исключения.

Разметка XML-документа представляет собой несколько более сложное по­ нятие, чем в языке HTML. Это связано с тремя следующими обстоятельствами:

XML-документ может содержать инструкции обработки самого себя. Это означает, что обработчик XML-документа (процессор) является посредником между этим документом и некоторым приложением или приложениями. Таки­ ми приложениями могут быть базы данных, сервер каталога, язык программи­ рования, работающий на стороне сервера, и т.п.

Синтаксис языка XML определен весьма жестко и не допускает много­ значного толкования своих правил. Причем любое отклонение от этих правил влечет за собой отказ процессора обрабатывать весь документ. Поэтому в языке XML количество ограничений на синтаксис документа, о которых необходимо помнить разработчику, гораздо больше, чем в языке HTML.

В отличие от языка HTML, разработчик XML-документов сам определяет названия тегов (элементы) и, может быть, правила их интерпретации. Если та­ кие правила присутствуют, то они отделены от непосредственно XML-кода и образуют так называемый сценарий XSLT. Проще говоря, если XML-файл слу­ жит не только для хранения каких-либо данных, но и для их представления, то способы представления этих данных вынесены в отдельный XSL-файл.

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

Содержимое XML-документа Любой законченный неэлектронный документ можно разбить на две ос­ новные части. Первая представляет собой так называемую «шапку», в которую входят название документа и какие-либо его характеристики. Вторая — непо­ средственно «тело» документа. Всем нам приходилось неоднократно писать самые разные заявления — о приеме на работу, об увольнении, о получении денег и т. д. Каждое из них было примерно таким: справа вверху пишется, на чье имя и от кого это заявление, затем идет название документа, слово «Заявле­ ние», далее - текст самого заявления и, наконец, дата и подпись. В этом доку­ менте телом является текст, идущий после слова «Заявление». Все, что распо­ лагается перед телом документа, - шапка. Точно так же устроен и XMLдокумент.

Отображение XML-документов Есть три основных способа сообщить браузеру, как обрабатывать и ото­ бражать каждый из созданных вами XML-элементов.

1. Таблица стилей. С помощью данного метода вы связываете таблицу стилей с XML-документом. Таблица стилей представляет собой от­ дельный файл, содержащий инструкции для форматирования инди­ видуальных XML-элементов. Вы можете использовать либо кас­ кадную таблицу стилей (Cascading Style Sheet - CSS), которая также применяется для HTML-страниц, либо расширяемую таблицу в формате языка стилевых таблиц (Extensible Stylesheet Language XSL), обладающую более широкими возможностями, нежели CSS, и разработанную специально для XML-документов.

2. Связывание данных. Этот метод требует создания HTML-страницы, связывания с ней XML-документа и установления взаимодействий стандартных HTML-элементов на странице, таких как SPAN или TABLE, с элементами XML. В дальнейшем HTML-элементы авто­ матически отображают информацию из связанных с ними XMLэлементов.



Pages:     || 2 |


Похожие работы:

«В.Н. ВОЛЫНСКИЙ ТЕХНОЛОГИЯ КЛЕЕНЫХ УЧЕБНОЕ ПОСОБИЕ ДЛЯ ВУЗОВ МАТЕРИАЛОВ 2003 В.Н. Волынский ТЕХНОЛОГИЯ КЛЕЕНЫХ МАТЕРИАЛОВ (Учебное пособие) Рекомендовано Министерством образования Российской Федерации в качестве учебного пособия для студентов высших учебных заведений, обучающихся по специальности Технология деревообработки Архангельск ББК 37.130 + 37. В УДК (674.213:624.011.14) Волынский В.Н. Технология клееных материалов: Учебное пособие для вузов. (2-е изд., исправленное и дополненное)....»

«Утверждены на заседании кафедры предпринимательского и финансового права Протокол № 1 от 30 августа 2013года МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ (МАТЕРИАЛЫ) ПРЕПОДАВАТЕЛЮ ПО ПРЕПОДАВАНИЮ ДИСЦИПЛИНЫ ФИНАНСОВОЕ ПРАВО Методические рекомендации преподавателю для проведения практических (семинарских) занятий Практические (семинарские) занятия являются одним из основных этапов в процессе обучения, составляя вместе с лекционным курсом единый комплекс подготовки специалиста. Семинарские занятия проводятся с...»

«МИНИСТЕРСТВО ВНУТРЕННИХ ДЕЛ РОССИЙСКОЙ ФЕДЕРАЦИИ КРАСНОДАРСКИЙ УНИВЕРСИТЕТ Э.Н. Любичева Е.А. Сычев АДМИНИСТРАТИВНАЯ ДЕЯТЕЛЬНОСТЬ ОРГАНОВ ВНУТРЕННИХ ДЕЛ Учебно-методическое пособие Краснодар – 2008 Печатается по решению редакционно-издательского совета Краснодарского университета МВД России Авторы: Э.Н. Любичева – старший преподаватель кафедры административной и служебной деятельности. Е.А. Сычев – начальник кафедры административной и служебной деятельности, кандидат юридических наук...»

«ВЛАСОВ А.И., ШЕВЧУН В.Н. МЕТОДИЧЕСКИЕ УКАЗАНИЯ по организации научно-исследовательской работы студентов, обучающихся по программе бакалавров и магистров по профилю подготовки Наноинженерия Под редакцией заслуженного деятеля науки РФ, Член-корреспондента РАН, профессора, В.А.Шахнова Комплект учебно-методического обеспечения для подготовки бакалавров и магистров по программам высшего профессионального образования направления подготовки Нанотехнология с профилем подготовки Наноинженерия Москва...»

«Новые книги (математика, дизайн, программирование) Аполлонский, С. М. Дифференциальные уравнения математической физики в электротехнике : для студентов вузов / С. М. Аполлонский. - Санкт-Петербург [и др.] : Питер, 2012. - 352 с. Учебное пособие соответствует требованиям государственных образовательных стандартов ВПО по направлениям подготовки дипломированных специалистов: по специальностям Электроэнергетика, Электромеханика, Электрические и электронные аппараты, Промышленная электроника. Книга...»

«Министерство здравоохранения Красноярского края Обеспечение доступности первичной медико-санитарной помощи в амбулаторно-поликлинических отделениях (учреждениях) на территории Красноярского края Часть I Организация работы по формированию потока пациентов в амбулаторно-поликлинических отделениях (учреждениях) Методические рекомендации для организаторов здравоохранения, врачей первичного звена, врачей-специалистов, экспертов Красноярск 2012 1 2 Министерство здравоохранения Красноярского края...»

«ФБГОУ ВПО ТВЕРСКОЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ НАУЧНАЯ БИБЛИОТЕКА ОТДЕЛ ЮРИДИЧЕСКОЙ И ЭКОНОМИЧЕСКОЙ ЛИТЕРАТУРЫ ВАСИЛЬЕВ Александр Анатольевич Биобиблиографический указатель Тверь 2014 Биобиблиографический указатель посвящен юбилею кандидата технических наук, доцента, заведующего кафедрой математики, статистики и информатики в экономике экономического факультета Тверского государственного университета Александра Анатольевича Васильева. Пособие содержит общую биографическую справку о тверском...»

«В.И.ОВЧАРЕНКО КЛАССИЧЕСКИЙ И СОВРЕМЕННЫЙ ПСИХОАНАЛИЗ Программы курсов и спецкурсов (Электронная версия) А АНТОЛОГИЯ МИРОВОГО ПСИХОАНАЛИЗА УДК 159.9 ББК 88.8 О 35 Овчаренко Виктор Иванович О 35 Классический и современный психоанализ. Программы курсов и спецкурсов. М.: Академический проект, 2000. – 622 с. (Электронная версия с изменениями и дополнениями – 550 с.) ISBN 5-8291-0033-9 Первая в России представительная публикация программ различных учебных курсов и спецкурсов по классическому и...»

«МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО СОВЕРШЕНСТВОВАНИЮ ПРОПАГАНДИСТСКОЙ РАБОТЫ В СФЕРЕ ПРОТИВОДЕЙСТВИЯ РАСПРОСТРАНЕНИЮ ИДЕОЛОГИИ ТЕРРОРИЗМА В СУБЪЕКТАХ РОССИЙСКОЙ ФЕДЕРАЦИИ Москва 2013 Под общей редакцией В.В. Попова – к.п.н., профессора Института переподготовки и повышения квалификации преподавателей гуманитарных и социальных наук Московского государственного университета имени М.В. Ломоносова Методические рекомендации для сотрудников аппаратов антитеррористических комиссий, журналистов,...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ МОСКОВСКОЙ ОБЛАСТИ АКАДЕМИЯ СОЦИАЛЬНОГО УПРАВЛЕНИЯ Кафедра социально-гуманитарных наук Учебно-методический комплекс по дисциплине ГЕОПОЛИТИКА Для специальности 080504 Государственное и муниципальное управление АСОУ 2010 УДК 371 Авторы-составители: Крылов Петр Михайлович, канд. географ. наук, доцент кафедры социально-гуманитарных дисциплин; Сересова Ульяна Игоревна, канд. полит. наук, старший преподаватель кафедры социально-гуманитарных дисциплин. Учебно-методический...»

«Государственный комитет связи и информатизации Украины Украинская государственная академия связи им. А.С. Попова Л.А. Никитюк ТЕЛЕКОММУНИКАЦИОННЫЕ ТЕХНОЛОГИИ ЦИФРОВЫХ СЕТЕЙ Учебное пособие Под редакцией докт. техн. наук Н.В. ЗАХАРЧЕНКО УТВЕРЖДЕНО методическим советом академии связи Протокол № 4 от 24.12.1999 г. Одесса 2000 2 Телекоммуникационные технологии цифровых сетей УДК 621.39 681. Никитюк Л.А. Телекоммуникационные технологии цифровых сетей: Учеб. пособие /Под редакцией Н.В. Захарченко. –...»

«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ имени М.В. Ломоносова Галеев Э. М. Подготовка к вступительным экзаменам по математике в МГУ и ЕГЭ (типы задач и методы их решений) Часть 5 Геометрия • Планиметрия • Стереометрия Москва 2012 МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ имени М.В. Ломоносова Галеев Э. М. Подготовка к вступительным экзаменам по математике в МГУ и ЕГЭ (типы задач и методы их решений) Часть 5 Геометрия • Планиметрия • Стереометрия Издание деcятое, дополненное Москва ББК 22.1 я УДК...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ Государственное образовательное учреждение высшего профессионального образования Пензенский государственный университет (ПГУ) ВЫПОЛНЕНИЕ КОНТРОЛЬНОЙ РАБОТЫ ПО НАЧЕРТАТЕЛЬНОЙ ГЕОМЕТРИИ Методические указания для студентов заочного факультета Пенза Издательство ПГУ 2011 УДК 744(07) В 92 Рецензент ведущий инженер ОАО Пензенский часовой завод П. М. Великанов Составители: Е. М. Кирин, М. Н. Краснов. А. Н. Вантеев Выполнение контрольной работы по начертательной В92...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Государственное образовательное учреждение высшего профессионального образования Оренбургский государственный университет Кафедра экологии и природопользования С.В. ШАБАНОВА АТМОСФЕРА ПРОМЫШЛЕННОГО ПРЕДПРИЯТИЯ, МЕТОДЫ АНАЛИЗА И ОЧИСТКИ МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОРНЫМ И ПРАКТИЧЕСКИМ ЗАНЯТИЯМ Рекомендовано к изданию Редакционно-издательским советом государственного образовательного учреждения высшего профессионального образования “Оренбургский...»

«Государственное бюджетное образовательное учреждение среднего профессионального образования ОРЕНБУРГСКИЙ ГОСУДАРСТВЕННЫЙ КОЛЛЕДЖ УТВЕРЖДАЮ Директор ГБОУ СПО ОГК Л.В. Елагина _2012г. ПРОЕКТ Методические рекомендации по формированию контрольно-оценочных средств по учебной дисциплине /профессиональному модулю Оренбург 2012 1 Разработаны методической службой ГБОУ СПО ОГК Приняты решением Научно-методического совета ГБОУ СПО ОГК от _2012 г. протокол №. Исполнитель: Зам. директора по УМР Н.В....»

«Данные об обеспеченности учебно-методической документацией Направление (специальность): 080507 Менеджмент организации Специализация: Финансовый менеджмент № Наименование Наименование Количество Обеспече п/п дисциплины учебников, учебно-методических, методических пособий, экземпляро нность разработок и рекомендаций в студентов учебной литератур ой (экземпля ров на одного студента) Цикл гуманитарных и социально-экономических дисциплин 1. Иностранный язык 1.Бурова З. И. Учебник английского языка...»

«московский государственный институт международных отношений (университет) мид россии РОССИЯ И ЕВРОПА ЭПОХА НАПОЛЕОНОВСКИХ ВОЙН Москва 2012 УДК 94 (47) (075.8) ББК 63.3 (2) я 73 Х91 Участники проекта выражают благодарность ректору МГИМО (У) МИД России А.В. Торкунову, проректорам МГИМО (У) МИД России А.В. Худайколовой и И.А. Логинову, сотрудникам МГИМО (У) МИД России Е.Н. Алимовой и А.В. Соколовой Россия и Европа. Эпоха Наполеоновских войн. – М.: Р.Валент, 2012. – 412 с. илл. ISBN...»

«Е. С. Мельников О. И. Григорьева Н. В. Беляева ВВЕДЕНИЕ В СПЕЦИАЛЬНОСТЬ. ЛЕСНОЕ ХОЗЯЙСТВО Учебное пособие Санкт-Петербург 2009 ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Государственное образовательное учреждение высшего профессионального образования САНКТ-ПЕТЕРБУРГСКАЯ ГОСУДАРСТВЕННАЯ ЛЕСОТЕХНИЧЕСКАЯ АКАДЕМИЯ им. С.М. Кирова Кафедра лесоводства Е. С. Мельников, доктор сельскохозяйственных наук, профессор О. И. Григорьева, кандидат сельскохозяйственных наук, доцент Н. В. Беляева, кандидат...»

«ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ БЛАГОВЕЩЕНСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ ОТЧЕТ о результатах самообследования (2013 г.) Благовещенск 2014 СОДЕРЖАНИЕ 1. Общие сведения об образовательной организации. 3 2. Образовательная деятельность.. 7 3. Научно-исследовательская деятельность.. 40 4. Международная деятельность.. 50 5. Внеучебная работа.. 6. Материально-техническое обеспечение.. 1. Общие сведения об...»

«министерство образования и науки рФ Гоу вПо Пятигорский государственный лингвистический университет УНИВЕРСИТЕТСКИЕ ЧТЕНИЯ – 2011 13-14 января 2011 г. ЧастЬ XVI секции 7-8 симпозиума 3 Пятигорск 2011 ББК 74.58.46 Печатается по решению У 59 редакционно-издательского совета ГОУ ВПО ПГЛУ Университетские чтения – 2011. Материалы научно-методических чтений ПГЛУ. – Часть XVI. – Пятигорск: ПГЛУ, 2011. – 160 с. В настоящий сборник включены материалы Университетских чтений – 2011, которые проходили в...»






 
2014 www.av.disus.ru - «Бесплатная электронная библиотека - Авторефераты, Диссертации, Монографии, Программы»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.