Понятие пространства имен
В XML технологии множество понятий (элементов, атрибутов), принадлежащих определенной предметной области, характеризуется понятием пространство имен (NameSpace). Согласно спецификации W3C http://www.w3.org/TR/1999/REC-xml-names-19990114 «пространство имен XML – это идентифицируемая с помощью ссылки URI коллекция имен, используемых в XML документах для обозначения типов элементов и именования атрибутов». Для объявления пространства имен в XML документе используется атрибут xmlns. Синтаксис объявления имеет следующий формат: xmlns[:prefix]="uri" где: prefix – это квалифицированное имя, посредством которого элементы и атрибуты XML документа связываются с пространством имен; uri – это URI, задающий пространство имен, которое будет использоваться в XML документе. В том случае, если параметр prefix не задан, то объявленное пространство имен будет использоваться как пространство имен по умолчанию. Пример 7. <?xml version="1.0" encoding="windows-1251"?> <journal xmlns:x="http://www.kcn.ru/one" xmlns:y="http://www.kcn.ru/two"> < x:title >Lobachevsky Journal</x:title> <url>ljm.ksu.ru</url> <articles> <article ID="1"> < y:title >MathML and TeX</y:title> </article> <article ID="2"> < y:title >MathML and RDF</y:title> </article> </articles> </journal> В приведенном примере образовано два пространства имен с префиксами x и y. Префиксы используются в тегах, указывая, к какому пространству имен относится данный тег (см. также Пример 5). При задании пространства имен в XML документе необходимо иметь в виду следующее: · элементы и атрибуты связываются с пространством имен с помощью квалифицированных имен; · в одном XML документе может быть задано несколько пространств имен; · область действия пространства имен может распространяться: ▫ на весь документ – когда оно задано в корневом элементе XML документа; ▫ контейнер и все вложенные в него элементы и атрибуты – когда оно задано в элементе верхнего уровня контейнера; ▫ отдельный элемент или атрибут – когда оно задано непосредственно для данного элемента и атрибута. Поскольку используется лишь алгоритм образования адреса (uri), нет необходимости в выборе адреса реально существующего Web-сайта, и поэтому адрес можно составить совершенно произвольно. Атрибут xmlns используется как ключевое слово XML для обозначения объявления пространства имен. Пространству имен назначается префикс пространства имен – он указывается после атрибута xmlns и отделяется двоеточием, а затем после знака равенства записывается адрес, однозначно идентифицирующий пространство имен.
|