Язык XML

Автор работы: Пользователь скрыл имя, 22 Мая 2011 в 22:36, реферат

Описание

Целью создания XML было обеспечение совместимости при передаче структурированных данных между разными системами обработки информации, особенно при передаче таких данных через Интернет. Словари, основанные на XML (например, RDF, RSS, MathML, XHTML, SVG), сами по себе формально описаны, что позволяет программно изменять и проверять документы на основе этих словарей, не зная их семантики, то есть не зная смыслового значения элементов. Важной особенностью XML также является применение так называемых пространств имён.

Работа состоит из  1 файл

XML.docx

— 35.18 Кб (Скачать документ)

     XLINK

     Современные практические приложения часто характеризуются  большим многообразием хранимых и обрабатываемых ресурсов, для которых  возникает желание специфицировать  семантику их родства в виде системы  межресурсных связей. Мощным и гибким решением данной задачи является язык ссылок XML (XML Linking Language - XLink), позволяющий описывать взаимосвязи между ресурсами в виде ссылок, с использованием XML и отдельного пространства имен. Язык ссылок XML начал разрабатываться Консорциумом Всемирной Сети вскоре после появления самого языка XML, и первоначально предполагался как вторая часть Спецификации XML.

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

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

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

     Обзор языка XLink 

     Язык  ссылок XML (XML Linking Language, XLink) - это язык описания межресурсных связей с помощью XML и отдельного пространства имен.

     На  дизайн языка XLink в значительной степени повлияли следующие стандарты:

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

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

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

     Хотя  ссылки XLink описываются на XML, с их помощью можно соединять не только XML-документы, но и другие виды ресурсов

     Язык  XLink вводит два типа ссылок.

     Простая ссылка (simple link) - это ссылка, которая ассоциирует в точности два ресурса - один локальный и один удаленный - и определяет семантику перехода от первого ко второму. Предоставляемая простой ссылкой функциональность по связыванию ресурсов является наиболее распространенной (например, в эту же категорию попадают ссылки A и IMG языка HTML). Синтаксис простых ссылок ориентирован на краткость записи, и поэтому у простых ссылок нет какой-либо специальной внутренней структуры.

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

     XPARTH

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

     Язык  XPath спроектирован так, что помимо поддержки адресации он обладает естественным набором элементов, которые могут использоваться для сравнения (проверки, соответствует ли узел некому шаблону). Такой порядок использования языка XPath описывается в спецификации XSLT.

     XPath представляет XML документ в виде дерева узлов. Узлы бывают различных типов, например, узлы элементов, узлы атрибутов и узлы текста. Для каждого типа узлов в XPath определяется способ вычисления строкового значения. Некоторые типы узлов имеют также имя. XPath полностью поддерживает пространства имен XML. В результате, имя любого узла в этом языке образуется из двух частей: локальной части и URL некого пространства имен (возможно, нулевого), такая комбинация называется расширенным именем.

     Главной синтаксической конструкцией языка  XPath является выражение. Любое выражение соответствует сценарию Expr. В результате обработки выражения получается объект, относящийся к одному из четырех основных типов:

     набор узлов (node-set) - неупорядоченный набор узлов без дубликатов

     булево  значение (boolean) - true или false

     число (number) - число с плавающей точкой

     строка (string) - последовательность UCS символов

     Обработка выражений осуществляется, отталкиваясь от некого контекста. Контекст образуется из:

     узла (узел контекста, context node)

     пары  ненулевых положительных целых  чисел (положение в контексте  и размер контекста)

     привязки  переменных контекста (variable bindings)

     библиотеки  функций 

     набора  деклараций пространства имен в области  видимости данного выражения

     Положение в контексте всегда меньше или  равно размеру контекста.

     Схема привязки переменных контекста образуется в результате отображения множества  имен переменных на множество значений переменных. Значением переменной является объект, относящийся к одному из типов, допустимых для значений выражений, либо к какому-либо дополнительному  типу, не описанному в спецификации.

     Библиотека  функций образуется в результате отображения множества названий функций на множество функций. Каждая функция имеет нуль или более  аргументов и возвращает один результат. Декларации пространства имен образуются в результате отображения множества  префиксов на множество идентификаторов  URI пространств имен.

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

     Выражения XPath часто используются в атрибутах XML.

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

     XSL

     XSL (eXtensible Stylesheet Language) — расширяемый язык таблиц стилей. Языком, лежащим в основе XSL, является XML. XSL более гибок, универсален, и у разработчиков появляется возможность использования средств контроля за корректностью составления таких стилевых списков (используя DTD или схемы данных). Язык XSL состоит из трех взаимосвязанных спецификаций концерна Консорциума всемирной паутины:

     XSL Transformations (XSLT) — язык преобразований; предназначен для изменения структуры документа XML или его преобразования в документ на другом диалекте XML.

     XSL Formatting Objects (XSL-FO) — язык объектов форматирования/оформления; представляет собой словарь XML, предназначенный для описания вывода документов XML на устройство отображения.

     XPath — язык, который представляет собой подмножество XSL, используемое языком XSLT для идентификации отдельных частей документа XML (язык адресации узлов дерева XML-документа).

     XSL-трансформация

     С помощью XSL можно трансформировать XML-документ в любой вид, будь то HTML, WML, RTF, PDF, SQL, даже в SWF (flash запускаемый модуль), а также в XML и XSL. XSL несёт в себе информацию о том, как будет оформлен документ, где и как должны располагаться данные.

     Самой доступной XSL-T машиной на данный момент для Microsoft Windows является MSXML (поставляется с Internet Explorer начиная с версии 4.5 и выше); для систем на основе GNU — xsltproc. Для того, чтобы обработать XML документ c помощью XSL, необходимо в XML документе написать следующую инструкцию:

       <?xml version="1.0"?>

       <?xml-stylesheet type="text/xsl" href="my-style.xsl"?>

       <root>

         < !-- ... -- >

      </root> 

     VRML (англ. Virtual Reality Modeling Language — язык моделирования виртуальной реальности) — стандартный формат файлов для демонстрации трёхмерной интерактивной векторной графики, чаще всего используется в WWW.

     Формат

     VRML — это текстовый формат файлов, где, например, вершины и грани  многогранников могут указываться  вместе с цветом поверхности,  текстурами, блеском, прозрачностью  и так далее. URL могут быть связаны с графическими компонентами, таким образом, что веб-браузер может получать веб-страницу или новый VRML-файл из сети Интернет тогда, когда пользователь щёлкает по какому-либо графическому компоненту. Движение, звуки, освещение и другие аспекты виртуального мира могут появляться как реакция на действия пользователя или же на другие внешние события, например таймеры. Особый компонент Script Node позволяет добавлять программный код (например, Java или JavaScript (ECMAScript)) к VRML-файлу.

     VRML-файлы  обычно называются мирами и  имеют расширение .wrl (например: island.wrl). Хотя VRML-миры используют текстовый формат они часто могут быть сжаты с использованием алгоритма компрессии gzip для того, чтобы их можно было передавать по сети за меньшее время. Большинство программ трёхмерного моделирования могут сохранять объекты и сцены в формате VRML.

     Стандарты

     Для дальнейшей коллективной разработки формата  был создан консорциум Web3D.

     Первая  версия VRML была выпущена в ноябре 1994 года. Эта версия была основана на API и файловом формате программной  компоненты Open Inventor, изначально разработанной в SGI. Текущая и функционально завершенная версия — VRML97 (ISO/IEC 14772-1:1997). Сейчас VRML вытесняется форматом X3D (ISO/IEC 19775-1).

     Появление, популярность и упадок

     Понятие VRML было введено Дэйвом Раджеттом (Dave Raggett) в документе представленом на Первой Международной Конференции по Всемирной Паутине (1994 год) и впервые обсуждалось на WWW94 VRML BOF, учреждённой Тимом Бернерсом-Ли где Марк Песке (Mark Pesce) представил демо-программу Labirinth («Лабиринт»), разработанную им совместно с Тони Паризи (Tony Parisi) и Питером Кеннардом (Peter Kennard).

     VRML достиг вершины популярности  после выхода VRML 2.0 в 1997 году, когда  он стал использоваться на  некоторых персональных страницах  и сайтах, в основном для 3D-чатов.  Формат поддерживался SGI Cosmo Software (основной костяк программистов этого подразделения находился в Москве и сейчас это компания Parallel Graphics). Когда в 1998 году SGI была реструктурирована это подразделение было продано Platinum Technologies, которое было затем куплено Computer Associates. Последняя не стала развивать и распространять программы для VRML. Пустота была заполнена различными недолговечными коммерческими Web 3D форматами, появившимися за последние несколько лет, включая Microsoft Chrome, Adobe Atmosphere и Shockwave 3D, ни один из этих форматов не поддерживается сегодня. Возможности VRML оставались прежними, тогда как возможности трёхмерной компьютерной графики, работающей в реальном времени росли. VRML Consortium сменил своё название на Web3D Consortium и начал работать над потомком VRML — X3D.

Информация о работе Язык XML