15.1 Рекомендация W3C XML Namespaces определяет понятия и правила, управляющие необходимыми классификаторами и механизмами, чтобы гарантировать, что имя элемента XML или атрибута могут быть правильно идентифицированы с соответствующей спецификацией связанной семантики.
15.2 W3C XML Namespaces определяет пространства имен XML как набор однозначных имен, идентифицированных URI, которые используются в документах XML в качестве типов элементов и имен атрибутов. URI, которое идентифицирует пространство имен, называется именем пространства имен. В настоящем стандарте пространство имен также используется, чтобы классифицировать значения типа, который имеет окончательную команду кодирования USE-QNAME (см. 35) и который представляет XML QName (см. W3C XML Схема, Часть 2, 3.2.18).
15.3 Имена ссылок на тип и идентификаторы могут (но не обязательно) быть назначенными пространству имен.
Примечание - Настоящий стандарт использует имя пространства имен, т.е., по умолчанию, форму URI, основанную на идентификаторах объекта АСН.1 (см. раздел 28). Все другие формы URI могут использоваться, чтобы назначить имя пространства имен именам в модуле АСН.1.
15.4 Принадлежность типа части пространства имен (и если так, его имени пространства имен) определяется присутствием (или отсутствием) окончательной команды кодирования NAMESPACE.
Примечание - Команда кодирования NAMESPACE может присутствовать, только если команда кодирования GLOBAL-DEFAULTS MODIFIED-ENCODINGS также присутствует в разделе управления кодированием (см. 28.2.1).
15.5 Пространство имен идентифицировано продукционным правилом "NamespaceSpecification", которое обеспечивает Унифицированный Идентификатор Ресурса для пространства имен, и опционально рекомендованный префикс пространства имен. "NamespaceSpecification" определена в разделе 28.
15.6 Имена элементов и атрибутов XML при EXTENDED-XER кодировании генерируются из нескольких источников. В 15.8 перечислены источники имен элементов и атрибутов XML, идентифицировано пространство имен, частью которого они являются, и определено, должны ли они быть именами в уточненном пространстве имен или нет.
15.7 Имя элемента XML, имя атрибута XML или значение атрибута идентификации типа могут (но не обязательно) иметь окончательную команду кодирования NAMESPACE, которая, применяется к "Типу" ("Туре") и генерирует имя. Если происходит это генерирование, имя должно быть именем в уточненном пространстве имен при кодировании (уточненное пространство имен при кодировании может быть создано или явно с использованием определенного префикса пространства имен XML, или неявно путем установления пространства имен XML для диапазона действий, который включает использование имени или значения). Если нет команды кодирования NAMESPACE, примененной к "Типу" ("Туре"), которая генерирует имя, тогда имя не является именем уточненного пространства имен. Имена, которые не являются именами уточненного пространства имен, называются неуточненными именами, и не должны встречаться в пределах установленного значения по умолчанию пространства имен XML.
Примечание - Базовые правила BASIC-XER не поддерживают пространство имен XML, и имена уточненного пространства имен никогда не встречаются при кодировании.
15.8 В следующих подразделах термин "Пространство имен АСН.1" относится к пространству имен, чье имя и рекомендованный префикс определены в 15.9. Термин "назначенное пространство имен" относится к пространству имен, назначенному командой кодирования NAMESPACE типу. Если сгенерированные имена не из пространства имен АСН.1 и нет такого назначения пространства имен, то имена элементов XML, атрибутов XML и значения атрибутов идентификации типа являются неуточненными именами.
15.8.1 Во всех подпунктах подраздела 15.8 имена элементов и атрибутов в тегах XML (будут ли теги тегами пустого элемента или начальными тегами) являются именами уточненного пространства имен при кодировании, если и только если порождающий "Тип" ("Туре") имеет окончательную команду кодирования NAMESPACE.
15.8.2 Названия элементов в тегах пустого элемента XML, используемых для управляющих символов (см. ИСО/МЭК 8824-1, 11.15.5), не имеют пространства имен, пока одно не будет назначено применением команды кодирования NAMESPACE к типу "ограниченная строка символов" с уточняющей информацией ALL.
15.8.3 Имена элементов в тегах пустого элемента XML, используемых для значений типов целый, перечислимый, строка битов и специальных значений действительных типов (см. ИСО/МЭК 8824-1,18.9, 19.8, 20.6 и 21.9), будут всегда неуточненными именами (см. 15.7) при кодировании этих типов.
15.9 Пространство имен атрибута идентификации типа (см. раздел 36) и атрибута идентификации пустого множества (см. раздел 32) - это управляющее пространство имен, которое, по умолчанию, является пространством имен АСН.1, если только другое управляющее пространство имен не определено командой кодирования GLOBAL-DEFAULTS (см. раздел 25). Пространство имен АСН.1 имеет имя "urn:oid:2.1.5.2.0.1" (см. 39.3), и рекомендованный префикс пространства имен "asn.1" (см. также 25.3.2.).
15.10 Для типа строка октетов с ограничением содержания, которое определяет EXTENDED-XER кодирование, любое абстрактное значение типа строка октетов должно быть полным EXTENDED-XER кодированием значения типа АСН.1 (см. ИСО/МЭК 8824-3,11.5 и 11.6) и будет содержать все необходимые декларации пространства имен для всех уточненных имен с префиксом и без префикса, присутствующих в абстрактном значении строки октетов.
Примечание - Такой тип (строка октетов) закодирован как "xmlhstring" или "Base64OctetstringValue". Любые объявления пространства имен, представленные в документе XML, который содержит "xmlhstring", или "Base64OctetstringValue" не включают в их область применения имена, представленные в строке октетов.
15.11 Когда открытый тип закодирован как "xmlhstring" или "Base64XMLOpenTypeFieldVal" и правила кодирования, используемые для содержавшегося типа, являются EXTENDED-XER, "xmlhstring" или "Base64XMLOpenTypeFieldVal" должны иметь шестнадцатеричное или base64 представление (соответственно) строки октетов, которая является полным EXTENDED-XER кодированием значения содержавшегося типа, и должна содержать все необходимые декларации пространства имен для всех имен с префиксом или без префикса, представленных в ней.
Примечание - Любые декларации пространства имен, представленные в документе XML, который содержит "xmlhstring" или "Base64XMLOpenTypeFieldVal" не включают в их область применения имена, представленные в строке октетов.