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

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

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

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

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

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

Идентификатор (имя) пространства имён

Идентификатор (имя) пространства имён ( англ. namespace name ) задаётся с помощью XML-атрибута xmlns , значение которого должно быть ссылкой URI .

Например:

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

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

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

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

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

Ссылки

Источник —

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