Файл XML: что это такое и как его открыть? Зачем нужен язык XML? Как открыть XML-файл

Рассмотрим технологию использования XML для передачи данных на сервер.

Мы уже рассмотрели 2 способа передачи данных на сервер: это простой текст с разделителем и JSON. Но у них есть недостатки:

  • Отсутствие типов данных. У JSON есть только строка, число, null, boolean. Т.е. ограниченный набор данных.
  • Сложно контролировать целостность передаваемых данных.
  • Сложно визуализировать данные, т.е. сложные объекты сложно отобразить, например, в виде html кода.
  • Сложно преобразовывать данные, т.е. сложно преобразовать свойства одного объекта в свойства другого объекта.

Теперь обратимся в XML как способу передачи данных. XML (eXtensible Markup Language) - язык разметки, предназначенный для описания, хранения и передачи структурированных данных. На сегодня XML используют повсеместно.

На базе XML существует много технологий: DOM (програмное взаимодействие с данными), XLink (указатели и ссылки), XPath (описание и выборка элементов), XSL, XSLT (преобразование XML документа).

Разбор XML пакета выглядит так:

//Объект XMLHttpRequest var req= getXmlHttpRequest (); //Установка обработчика req. onreadystatechange= function () { if (req. readyState== 4 ) { //состояние "4 - comlete" var xml= req. responseXML; }}

Здесь даже сериализацию и десериализацию делать не надо. Это делает сам объект. Как только сервер присылает XML данные, они уже в распарсенном виде (responseXML - DOM модель документа). Подробнее о технологии DOM читайте в предыдущих статьях на сайте.

Иногда для отладки надо сделать сериализацию и десериализацию XML данных (для передачи данных на сервер это делается автоматически, вручную не надо делать). Сделаем сериализацию в строку:

//для IE var str = dom. xml //для Firefox var serializer = new XMLSerializer (); var str = serializer. serializeToString (dom);

Для IE рабочий код короче, т.к. в него уже встроен объект для сериализации, а в других браузерах только появляется объект XMLSerializer для сериализации.

При работе с XML данными обычно мы имеем дело с DOM моделью документа. Поэтому стоит вспомнить некоторые моменты DOM (об этом читайте в предыдущих статьях). Напомню только способы доступа к элементу DOM модели:

//корневой элемент var root = xmlDOM. documentElement; //первый элемент в коллекции var book = root. childNodes[ 0 ]; //дочерний элемент var title = book. childNodes[ 0 ]; //текстовый узел элемента alert (title. firstChild. nodeValue);

Также из DOM модели документа можно выбирать элементы одного типа. Внимание! Функции getElemensById - нет, т.к. в XML id может означать что угодно, а не только идентификатор, поэтому его не применяют.

//выборка всех элементов с одним тегом var books = xmlDOM. getElementsByTagName ("book" );

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

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

Протокол XML-RPC

RPC (Remote Procedure Call) - удаленный вызов процедур. Это протокол взаимодействия между двумя удаленными точками. Он позволяет точке “а” вызвать функцию на удаленной точке “б”.

Есть несколько реализаций протокола RPC. Рассмотрим реализацию на базе XML.

По сути, клиент и сервер просто обмениваются какими-то XML фрагментами.

XML-RPC предоставляет следующие типы данных:

  • boolean.
  • integer.
  • double.
  • string.
  • date/time.
  • base64.
  • array.
  • struct.
  • null.

Т.е. при передаче определенного типа данных нужно декларировать, что это за тип данных. Структура похожа на объект JSON.

Преобразование XML данных

Для преобразования данных, полученных с сервера в виде XML используют XSLT.

XSLT (eXtendable Stylesheet Language Transformation) - технология, которая помогает получить на вход XML, а на выходе сформировать все, что угодно.

Преобразование XSLT на javaScript - IE

var dom = new ActiveXObject ("MSXML2.DOMDocument" ); dom. async = false; dom var xsl = new ActiveXObject ("[email protected]" ); xsl. async = false; xsl. load ("my.xsl" ); //само преобразование var result = dom. transformNode (xsl);

Преобразование XSLT на javaScript для Firefox. Ghrome, Opera

var xslStylesheet; var xsltProcessor var myXMLHTTPRequest = mew XMLHttpRequest (); myXMLHTTPRequest. open ("GET" , "example.xsl" , false); myXMLHTTPRequest. send (null); //получение xml xslStileshett = myXMLHTTPRequest. responseXML; xsltProcessor myXMLHTTPRequest = new XMLHttpRequest (); myXMLHTTPRequest. open ("GET" , "example.xml" , false); myXMLHTTPRequest. send (null); //сама трансформация var xmlSource = myXMLHTTPRequest. responseXML; var resultDocument = xsltProcessor. transformToDocument (xmlSource);

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

Что это за формат XML, для чего нужен и где используется

По правде говоря, цели, с которыми создавался формат XML (появился он в 1996 году), были, можно так сказать, глобальными. XML или eXtensible Markup Language, что переводится как «расширяемый язык разметки», был разработан как средство обеспечения совместимости передачи структурированных данных между различными программными системами, особенно теми из них, которые используются в интернете. Язык этот настолько универсален, что файлы XML понимают даже несовместимые приложения разных операционных систем, что, конечно же, существенно упрощает программистам задачу по обмену информацией между программными платформами.

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

Программы для открытия и просмотра файлов в формате XML

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

Notepad++

Если ищете, чем открыть XML, попробуйте Notepad++ – универсальный текстовый редактор, предназначенный для создания и редактирования кода. Легкий, быстрый и простой, он идеально подходит для работы со всевозможными типами конфигурационных файлов. Редактором поддерживается подсветка синтаксиса, изменение кодировки, есть мощный встроенный поиск по разным параметрам, одним словом, всё, что нужно программисту и не только ему.

XMLPad

В отличие от Notepad++, XMLPad является узкоспециализированным редактором. Как раз то, чем можно и нужно открывать формат XML, поскольку создавался он именно для работы с файлами этого типа. Помимо просмотра и редактирования документов XML редактор XMLPad поддерживает их валидацию и инспектирование, конвертирование в DTD, импортирование данных из HTML и многое другое. Как и положено, в приложении имеется поддержка синтаксиса, есть средство поиска и замены. Из особенностей программы можно выделить наличие встроенного мини-браузера для открытия URL-ссылок.

Тем, кто настроен на изучение веб-языков более серьезно, можно предложить – продвинутый и в то же время простой и удобный редактор XML на платформе Java. Программой поддерживается создание и редактирования файлов XML, XSL, XSD и DTD, также имеются встроенный конвертер в скрипты, отладчик XSLT и XQuery, средства для работы с визуальными диаграммами XML и множество других компонентов. Недостатки – программа платная, и в ней отсутствует поддержка русского языка.

XML Marker

Неплохой способ открыть файл XML – воспользоваться простым редактором XML Marker . Он не такой навороченный, как Oxygen XML Editor, но при этом вполне справляется с большинством задач, которые возникают перед пользователем при работе с файлами XML. В наличии представление древовидной структуры документа с возможностью быстрого перехода к выбранным строкам по тегам, удобная навигация, полный набор средств для работы с текстовыми данными. Минус программы – нет русского языка.

Браузеры

Есть еще один простейший способ, как прочитать файл XML, правда, речь здесь идет только о чтении. Откройте в Google Chrome или любом другом браузере новую вкладку и перетащите XML-файл на окно обозревателя. Документ будет представлен в структурированном виде, с подсветкой синтаксиса, всё, как и положено.

Просмотр XML-файлов онлайн

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

XmlGrid

Простой с виду, но достаточно функциональный онлайновый редактор файлов XML, доступный по адресу xmlgrid.net . Сервисом поддерживается создание, изменение, валидация и конвертирование документов XML, дополнительно имеется функция проектирования карт сайтов. Код редактируемого файла можно вставить в веб-форму из буфера обмена, по URL-адресу или загрузив на сервер сам документ. Содержимое файла отображается в виде таблицы с данными, в которой каждое поле представляет собою отдельную ячейку.

XML EDITOR

Открыть файл XML онлайн позволяет также интернет-редактор XML EDITOR, входящий в набор приложений TutorialsPoint – одного из самых крупных обучающих ресурсов. Чтобы воспользоваться сервисом, перейдите по адресу www.tutorialspoint.com , в верхней части страницы нажмите ссылку «Tools», найдите в списке веб-приложений XML EDITOR и откройте его. Вы увидите окно простого текстового редактора с двумя колонками. В левой пишется и редактируется код, в правой отображается древовидная структура документа. Загрузить файл в редактор можно как с компьютера, так и с любого веб-сайта, указав URL.

По существу, стандартизация дает возможность взаимодействовать между собой разнородным предметам – фонарику и батарейкам, Macromedia Flash и серверу многопользовательской игры, и так далее. Также и во Всемирной сети, где каждую секунду перемещаются огромные объемы данных, чрезвычайно важно стандартизировать способы обмена данными между системами. Мощный и простой в использовании XML очень быстро становится таким общепринятым стандартом.

В этом уроке мы познакомим вас с основами формата XML , а также покажем, как можно использовать во Flash объекты XML и XMLSocket . К концу урока вы научитесь организовывать "общение" Flash с ASP -страницами для регистрации входа пользователей; также мы с вами создадим простой чат, работающий в реальном времени с использованием сокет -сервера.

Что будет изучаться

В этом уроке :

  • Формат XML
  • Отсылка XML-данных на сервер и загрузка их с сервера
  • Создание нового объекта XML
  • Применение методов, свойств и событий объекта XML
  • Организация соединения с сокет -сервером при помощи Flash

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

Время выполнения

На выполнение этого урока требуется примерно полтора часа.

Файлы урока

Файлы-носители :

Стартовые файлы :

Lesson12/Assets/LoginRegister1.fla Lesson12/Assets/Chat1.fla

Законченные проекты :

LoginRegister2.fla Chat2.fla

Основы xml

Хотя само название XML , или eXtensible Markup Language , звучит несколько таинственно, понять и освоить этот язык совсем несложно. В сущности, XML есть способ форматирования и структурирования информации, которую приложения-получатели могут интерпретировать и использовать. На самом деле все мы, быть может, сами о том не подозревая, имеем большой опыт структурирования и организации информации. Возьмем такой пример.

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


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

В синтаксисе XML , подобно HTML , используются теги, атрибуты и значения – но на этом сходство и заканчивается. Тогда как в HTML используются заранее определенные теги (например, body, head или html ), в XML пользователь создает свои собственные, а не выбирает готовые имена из библиотеки. Давайте для начала рассмотрим вот этот простой документ XML :

Kelly Makar Mike Grundvig Free Makar

Каждый тег XML называется узлом ( node ), набор данных в формате XML называется документом XML . В нашем документе-примере имеется корневой узел MyFriends и три дочерних узла. Каждый XML-документ может содержать только один корневой узел. Первый из дочерних узлов имеет имя узла Name и значение узла Kelly Makar . Слово Gender в каждом из дочерних узлов – атрибут . Атрибуты необязательны; каждый узел может иметь неограниченное число атрибутов. Обычно атрибуты используются для размещения небольших порций информации, которые необязательно отображать на экране (например, идентификационный номер пользователя).


Как вы видите в этом примере, теги (которые мы сами же создали и описали) придают смысл порциям информации (Kelly Makar, Mike Grundvig и Free Makar).

Следующий XML-документ являет более сложный пример структурирования.

Kelly Makar 121 Baker Street Some City North Carolina Tripp Carter 777 Another Street Elizabeth City North Carolina

В этом примере показано, как могут выглядеть данные адресной книги в формате XML . Если бы в нашей адресной книге числилось 600 человек, то узел Person повторялся бы 600 раз при той же самой структуре.

Каким же образом следует создавать свои узлы, свою структуру? Как объект -получатель ( ASP -страница, сокет и т.п.) распознает форматирование документа? Ответ прост – средства для этого должны быть встроены в объект -получатель. Например, если мы создали адресную книгу во Flash и хотим поместить содержащуюся в ней информацию в базу данных, нам следует послать версию нашей книги в формате XML на ASP -страницу (или другую страницу сценария), которая сможет проанализировать информацию и разместить данные в соответствующих полях базы данных . Вы должны понимать, что этот скрипт ASP -страницы должен быть заранее разработан так, чтобы обработать данные должным образом. XML больше приспособлен для передачи информации, чем для хранения; поэтому данные нашей адресной книги удобнее хранить в записях базы данных , чем в виде XML -документа. Когда понадобится, информацию можно будет извлечь из базы данных , с помощью специального скрипта перевести в формат

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

XML отделяет данные от HTML

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

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

XML упрощает распределение данных

В реальном мире компьютерные системы и базы данных используют данные в несовместимых форматах.

XML данные хранятся в простом текстовом формате. Это обеспечивает программную и аппаратную независимость.

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

XML упрощает передачу данных

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

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

XML упрощает модификацию платформы

Переход на новые системы (аппаратные или программные платформы) всегда занимает много времени. Множество данных необходимо конвертировать в новые форматы. При этом часто несовместимые данные теряются.

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

XML делает ваши данные более доступными

Доступ к вашим данным могут получать не только HTML документы, но и любые другие приложения.

Благодаря XML ваши данные становятся доступными для всех видов "машин чтения" (голосовых машин, новостных каналов и т.д.), что позволяет значительно проще обращаться к ним людям с ограничениями по зрению и другими физическими проблемами.

XML используется для создания новых интернет-языков

С использованием XML было создано множество языков программирования в Интернете.

Вот несколько примеров:

  • XHTML
  • WSDL для описания доступных веб-сервисов
  • WAP и WML как языки разметки для портативных устройств типа КПК
  • RSS языки для новостных каналов
  • RDF и OWL для описания ресурсов и онтологии
  • SMIL для описания мультимедиа для сети

Язык XML (Extensible Markup Language) был разработан рабочей группой XML Working Group консорциума World Wide Web Consortium (W3C). Вот как описывают его создатели:

«Расширяемый язык разметки Extensible Markup Language (XML) представляет собой составную часть языка SGML... Он предназначен для облегчения использования языка SGML в Web и выполнения задач, которые в настоящее время реализуются с помощью языка HTML. XML разработан с целью усовершенствовать применение и взаимодействие языков SGML и HTML.»

Это выдержка из спецификации версии 1.0 XML, созданной XML Working Group в феврале 1998 г. Весь документ вы можете найти на сайте W3C по адресу http://www.w3.org/TR/REC/-xml .

XML - язык разметки, разработанный специально для размещения информации в World Wide Web, аналогично языку гипертекстовой разметки HTML (Hypertext Markup Language), который изначально стал стандартным языком создания Web-страниц. Поскольку язык HTML полностью удовлетворяет всем нашим потребностям, возникает вопрос: для чего понадобился совершенно новый язык для Web? В чем состоят его преимущества и достоинства? Как он взаимодействует с HTML? Заменит ли он HTML, или только усовершенствует его? Наконец, что собой представляет язык SGML, частью которого является XML, и почему нельзя использовать для Web-страниц собственно SGML? В этой главе я постараюсь ответить на все эти вопросы.

Предназначение XML

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

создания личной домашней страницы. Ниже приведено описание домашней страницы в кодах HTML:

Home Раgе

Michael Young"s Home Page

Welcome to my Web site!

Web Site Contents

Please choose one of the following topics:

  • Writing
  • Family
  • Photo Gallery

Other Interesting Web Sites

Click one of the following to explore another Web site:

  • «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-разметке не важна.»

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

    Стандартные XML-приложения

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

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

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

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

    XML-приложения, повышающие качество XML-документов

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

    • Extensible Stylesheet Language (XSL) позволяет вам создавать мощные стилевые таблицы с использованием синтаксиса XML.
    • XML Schema позволяет разрабатывать подробные схемы для ваших XML-документов с использованием стандартного синтаксиса XML, что является более мощной альтернативой применения DTD.
    • XML Linking Language (XLink) дает возможность связывать ваши XML-документы. Он поддерживает множественные целевые ссылки и другие полезные функции, обеспечивая большую свободу по сравнению с механизмом организации ссылок в HTML.
    • XML Pointer Language (XPointer) позволяет определять гибкие целевые ссылки. При совместном использовании XPointer и XLink вы можете организовывать ссылки на любое место в целевом документе -а не только переходы к специально выделенным пунктам.

    Об XLS будет рассказано в главе 10. Другие XML-приложения еще не доведены до готовности и не рассматриваются в этой книге. (XLink и XPointer не поддерживаются в Internet Explorer 5).

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

    Реальное использование XML

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

    Ссылка . Более полный список текущих и перспективных XML-приложений, включая их подробное описание, вы можете найти на Web-странице Oasis SGML/XML (http://www.oasis-open.arg/cover/ocml . htmW applications).

    • Работа с базами данных. Подобно традиционным базам данных, XML может быть использован для присвоения метки каждому полю информации внутри каждой записи базы данных. (Например, можно пометить каждое имя, адрес и номер телефона внутри записей списка адресов.) После этого вы сможете отображать данные различными способами и организовывать поиск, сортировку, фильтрацию и иную обработку данных.
    • Структурирование документов. Иерархическая структура XML-до-кументов идеально подходит для разметки структуры таких документов, как романы, научные труды, пьесы. Например, вы можете использовать XML для разметки пьесы на акты, сцены, размечать действующих лиц, сюжетные линии, декорации и т. д. XML-разметка дает возможность программам отображать или распечатывать документ в необходимом формате; находить, извлекать или манипулировать информацией в документе; генерировать оглавления, резюме и аннотации; обрабатывать информацию иными способами.
    • Работа с векторной графикой (VML - Vector Markup Language).
    • Мультимедиа презентации (SMIL - Synchronized Multimedia Integration Language, HTML + TIME - HTML Timed Interactive Multimedia Extensions).
    • Описание каналов. Каналы представляют собой Web-страницы, которые автоматически рассылаются подписчикам. (CDF - Channel Definition Format).
    • Описание программных пакетов и их взаимосвязей. Такие описания обеспечивают распространение и обновление программных продуктов в сети (OSD - Open Software Description).
    • Взаимодействие приложений через Web с использованием XML-co-общений. Эти сообщения являются независимыми от операционных систем, объектных моделей и компьютерных языков (SOAP - Simple Object Access Protocol).
    • Отправка электронных бизнес-карт через e-mail.
    • Обмен финансовой информацией. Обмен информацией в открытом и понятном формате осуществляется между финансовыми программами (такими как Quicken и Microsoft Money) и финансовыми институтами (банками, общественными фондами) (OFX - Open Financial Exchange).
    • Создание, управление и использование сложных цифровых форм для коммерческих Internet-транзакций. Подобные формы могут включать оцифрованные подписи, которые делают их признанными юридически (XFDL - Extensible Forms Description Language).
    • Обмен запросами по приему на работу и резюме (HRMML - Human Resource Management Markup Language).
    • Форматирование математических формул и научной информации в
    • Web (MathML - Mathematical Markup Language).
    • Описание молекулярных структур (CML - Chemical Markup Language).
    • Кодирование и отображение информации о ДНК, РНК и цепочках (BSML - Bioinformatic Sequence Markup Language).
    • Кодирование генеалогических данных (GeDML - Genealogical Data Markup Language).
    • Обмен астрономическими данными (AML - Astronomical Markup Language).
    • Создание музыкальных партитур (MusicML -Music Markup Language).
    • Работа с голосовыми сценариями для доставки информации по телефону. Голосовые сценарии могут быть использованы, например, для генерирования голосовых сообщений, справок о наличии товаров и прогнозов погоды (VoxML).
    • Обработка и доставка информации курьерскими службами. Служба Federal Express, например, уже использует XML для этих целей.
    • Представление рекламы в прессе в цифровом формате (AdMarkup).
    • Заполнение юридических документов и электронный обмен юридической информацией (XCL - XML Court Interface).
    • Кодирование прогнозов погоды (OMF - Weather Observation Markup Format).
    • Обмен информацией по операциям с недвижимостью (RETS - Real Estate Transaction Standard).
    • Обмен страховой информацией.
    • Обмен новостями и информацией с использованием открытых Web-стандартов (XMLNews).
    • Представление религиозной информации и разметка текстов богослужений (ThML - Theological Markup Language, LitML - Liturgical Markup Language).