Пространство имён (XML)

Поделись знанием:
Перейти к: навигация, поиск

Пространство имён в XML (англ. XML namespace) — это стандарт, описывающий именованную группу имён элементов и атрибутов, служащую для обеспечения их уникальности в XML-документе.

В декабре 2009 года третья редакция стандарта получила статус рекомендации.

Все имена элементов в пределах пространства имён должны быть уникальны.

XML-документ может содержать имена элементов и атрибутов из нескольких словарей XML. В каждом словаре задано своё пространство имён — так разрешается проблема неоднозначности имён элементов и атрибутов.

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



Объявление пространства имён

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

Например:

xmlns="www.w3.org/1999/xhtml"

Однако следует обратить внимание, что URI в действительности не читается как адрес в сети, он обрабатывается XML парсером как простая строка. Например, по адресу [www.w3.org/1999/xhtml www.w3.org/1999/xhtml] на самом деле нет никакого кода, там находится просто справочник по пространству имён xhtml. Использование URI (таких как "www.w3.org/1999/xhtml") для идентификации пространства имён вместо простой строки (такой как «xhtml») уменьшает возможность совпадения идентификаторов у различных пространств имён. Идентификаторы пространств имён не обязаны быть правильными веб-адресами, хотя зачастую они ими являются.

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

xmlns:xhtml="www.w3.org/1999/xhtml"

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

Напишите отзыв о статье "Пространство имён (XML)"

Ссылки

  • [www.w3.org/TR/xml-names/ Namespaces in XML 1.0 (Third Edition)]
  • [www.w3schools.com/xml/xml_namespaces.asp XML Namespace Tutorial]

Отрывок, характеризующий Пространство имён (XML)

Князь Андрей зажмурился и отвернулся. Пьер, со времени входа князя Андрея в гостиную не спускавший с него радостных, дружелюбных глаз, подошел к нему и взял его за руку. Князь Андрей, не оглядываясь, морщил лицо в гримасу, выражавшую досаду на того, кто трогает его за руку, но, увидав улыбающееся лицо Пьера, улыбнулся неожиданно доброй и приятной улыбкой.
– Вот как!… И ты в большом свете! – сказал он Пьеру.
– Я знал, что вы будете, – отвечал Пьер. – Я приеду к вам ужинать, – прибавил он тихо, чтобы не мешать виконту, который продолжал свой рассказ. – Можно?
– Нет, нельзя, – сказал князь Андрей смеясь, пожатием руки давая знать Пьеру, что этого не нужно спрашивать.
Он что то хотел сказать еще, но в это время поднялся князь Василий с дочерью, и два молодых человека встали, чтобы дать им дорогу.
– Вы меня извините, мой милый виконт, – сказал князь Василий французу, ласково притягивая его за рукав вниз к стулу, чтоб он не вставал. – Этот несчастный праздник у посланника лишает меня удовольствия и прерывает вас. Очень мне грустно покидать ваш восхитительный вечер, – сказал он Анне Павловне.
Дочь его, княжна Элен, слегка придерживая складки платья, пошла между стульев, и улыбка сияла еще светлее на ее прекрасном лице. Пьер смотрел почти испуганными, восторженными глазами на эту красавицу, когда она проходила мимо него.
– Очень хороша, – сказал князь Андрей.
– Очень, – сказал Пьер.
Проходя мимо, князь Василий схватил Пьера за руку и обратился к Анне Павловне.
– Образуйте мне этого медведя, – сказал он. – Вот он месяц живет у меня, и в первый раз я его вижу в свете. Ничто так не нужно молодому человеку, как общество умных женщин.


Анна Павловна улыбнулась и обещалась заняться Пьером, который, она знала, приходился родня по отцу князю Василью. Пожилая дама, сидевшая прежде с ma tante, торопливо встала и догнала князя Василья в передней. С лица ее исчезла вся прежняя притворность интереса. Доброе, исплаканное лицо ее выражало только беспокойство и страх.
– Что же вы мне скажете, князь, о моем Борисе? – сказала она, догоняя его в передней. (Она выговаривала имя Борис с особенным ударением на о ). – Я не могу оставаться дольше в Петербурге. Скажите, какие известия я могу привезти моему бедному мальчику?