| Каталог | Индекс раздела |
| Назад | Содержание | Вперед |
QNameсостоит из не обязательного префикса пространства и локального имени. Префикс пространства имен prefix и локальное имя разделяются двоеточием. Префикс пространства имен , если он есть, привязан к URI (Universal Resource Identifier) и предоставляет краткую форму URI.
При обработке запроса XQuery расширяет QName и определяет URI, который связан с префиксом пространства имен. Расширенное QName включает URI пространства имен локальное имя. Два QNames равны, если имеют один и тот же URI пространства имен и локальное имя. Это значит, что два QNames могут соответствовать друг другу, если они имеют разные префиксы, но префиксы связаны с одним и тем же URI пространства имен.
Следующие примеры показывают QNames:
В этом примере ns1 - префикс, который привязан к URI http://posample.org. Префикс ns2 привязан к URI http://mycompany.com. Пространство имен по умолчанию - другой URI, который отличается от URI, которые связаны с ns1 и ns2. Локальное имя для всех трех элементов - name.
<ns1:name>This text is in an element named "name" that is qualified by the prefix "ns1".</ns1:name> <ns2:name>This text is in an element named "name" that is qualified by the prefix "ns2".</ns2:name> <name>This text is in an element named "name" that is in the default element namespace.</name>
Элементы в этом примере используют одно и то же локальное имя, name, но конфликт именования не происходит, поскольку существуют разные пространства имен. При обработке выражения имя ns1:name расширяется в имя, содержащее URI, связанный с ns1, и локальное имя name. Аналогично, имя ns2:name расширяется в имя, содержащее URI, связанный с ns2, и локальное имя name. Элемент name, который имеет пустой префикс, связан с пространством имен по умолчанию, поскольку префикс не указан. Если имя использует префикс, не привязанный к URI, происходит ошибка.
QNames (квалифицированные имена) удовлетворяют синтаксису, определенному в рекомендации W3C Namespaces in XML.
| Назад | Содержание | Вперед |
| Каталог | Индекс раздела |