.. _resolve-QName: ============= resolve-QName ============= Descrição ~~~~~~~~~ A função fn:resolve-QName resolve um QName com base nos namespaces em escopo de um elemento. O argumento $qname é uma string com um nome qualificado, com prefixo (por exemplo, prod:number) ou sem (por exemplo, number). O argumento $element é o elemento cujos namespaces em escopo dizem qual URI de namespace está ligado ao prefixo. Se $qname não tiver prefixo, vale a declaração de namespace padrão de $element. Se não houver namespace padrão em escopo, o QName construído não tem namespace. Repare que o prefixo nunca é resolvido pelo contexto da consulta. Por exemplo, se você ligar o prefixo pre ao namespace http://datypic.com/pre no prólogo da consulta, isso não importa ao chamar fn:resolve-QName com o primeiro argumento pre:myName. O que importa é só como o prefixo está ligado em $element. Se você quer usar o contexto da consulta, use o construtor xs:QName, como em xs:QName("pre:myName"). .. list-table:: :widths: 40 60 :header-rows: 1 * - **Parâmetros** - **Descrição** * - qname:string() - o QName a resolver * - element:element() - o elemento que define o escopo Exemplos ~~~~~~~~ Os exemplos abaixo usam este documento de entrada: .. code-block:: xml ... .. list-table:: :widths: 50 50 :header-rows: 1 * - **XPath** - **Resultado** * - resolve-QName('myName', $root) - A QName whose namespace is empty, whose prefix is empty, and whose local part is myName * - resolve-QName('myName', $root/dty:order) - A QName whose namespace is http://datypic.com, whose prefix is empty, and whose local part is myName * - resolve-QName('ord:myName', $root) - Error FONS0004 * - resolve-QName('ord:myName', $root/dty:order) - A QName whose namespace is http://datypic.com/ord, whose prefix is ord, and whose local part is myName * - resolve-QName('dty2:myName', $root/dty:order) - Error FONS0004 Veja também ~~~~~~~~~~~ .. toctree:: :titlesonly: :glob: * :ref:`QName`. * :ref:`local-name-from-QName`. * :ref:`namespace-uri-from-QName`. * :ref:`namespace-uri-for-prefix`.