Пространство имён (XML)
Пространство имён в XML — это стандарт, описывающий именованную совокупность имён элементов и атрибутов, служащую для обеспечения их уникальности в XML-документе.
В декабре 2009 года третья редакция стандарта получила статус рекомендации.
Все имена элементов в пределах пространства имён должны быть уникальны.
XML-документ может содержать имена элементов и атрибутов из нескольких словарей XML. В каждом словаре задано своё пространство имён — так разрешается проблема неоднозначности имён элементов и атрибутов.
Возьмём, например, простой XML, который содержит ссылки на покупателя и на заказанный продукт. И элементы покупателя, и элементы продукта могут содержать дочерний элемент «ID_number». Ссылки на элемент ID_number будут, таким образом, неоднозначны, у нас будут два одинаковых имени элемента несущих разную смысловую нагрузку и так будет, пока мы не введём пространства имён для их различения.
Объявление пространства имён
Пространства имён объявляются с помощью XML атрибута xmlns
, значение которого должно быть ссылкой URI.
Например:
xmlns="http://www.w3.org/1999/xhtml"
Однако следует обратить внимание, что URI в действительности не читается как адрес в сети, это просто обрабатываемая XML парсером строка. Например, по адресу http://www.w3.org/1999/xhtml на самом деле нет никакого кода, там находится просто справочник по пространству имён xhtml. Использование URL (таких как "http://www.w3.org/1999/xhtml") для идентификации пространства имён вместо простой строки (такой как «xhtml») уменьшает возможность совпадения идентификаторов у различных пространств имён. Идентификаторы пространств имён не обязаны быть правильными веб-адресами, хотя зачастую они ими являются.
В объявление можно также включить короткий префикс, которым будет однозначно идентифицироваться пространство имён каждого элемента, например:
xmlns:xhtml="http://www.w3.org/1999/xhtml"
Пространство имён XML не требует, чтобы был определён его словарь, хотя существует сложившаяся практика помещать DTD или XML Schema, определяющие точную структуру данных в контексте конкретного пространства имён.
См. также
Ссылки
de:Namensraum (XML) en:XML namespace es:Espacios de nombres XML fa:فضای نام (اکسامال) ja:Extensible Markup Language#XML名前空間 pl:Przestrzenie nazw w XML zh:XML命名空间
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....