WITH XMLNAMESPACES (Transact-SQL)
Deklariert mindestens einen XML-Namespace.
Syntax
WITH XMLNAMESPACES ( <XML namespace declaration item>
[ { , <XML namespace declaration item> }...] )
<XML namespace declaration item> ::=
<xml_namespace_uri> AS <xml_namespace_prefix>
| <XML default namespace declaration item>
<xml_namespace_uri> ::= <character string literal>
<xml_namespace_prefix> ::= <identifier>
<XML default namespace declaration item> ::=
DEFAULT <xml_namespace_uri>
Argumente
xml_namespace_uri
Ein URI (Uniform Resource Identifier), der den zu deklarierenden XML-Namespace identifiziert. xml_namespace_uri ist eine SQL-Zeichenfolge.xml_namespace_prefix
Gibt ein Präfix an, das dem in xml_namespace_uri angegebenen Namespace-URI-Wert zugeordnet werden soll. xml_namespace_prefix muss ein SQL Server-Bezeichner sein.
Hinweise
Wenn Sie die WITH XMLNAMESPACES-Klausel in einer Anweisung verwenden, die außerdem einen allgemeinen Tabellenausdruck enthält, muss die WITH XMLNAMESPACES-Klausel vor dem allgemeinen Tabellenausdruck in der Anweisung stehen.
Es folgen allgemeine Syntaxregeln, die beim Verwenden der WITH XMLNAMESPACES-Klausel angewendet werden.
Jede XML-Namespacedeklaration muss mindestens ein Element der XML-Standardnamespacedeklaration enthalten.
Jedes verwendete XML-Namespacepräfix muss ein nicht kolonisierter Name (NCName) sein, bei dem der Doppelpunkt (:) nicht Teil des Namens ist.
Ein Namespacepräfix kann nicht zweimal definiert werden.
XML-Namespacepräfixe und URIs berücksichtigen die Groß-/Kleinschreibung.
Das XML-Namespacepräfix xmlns kann nicht deklariert werden.
Das XML-Namespacepräfix xml kann nur mit dem URI 'http://www.w3.org/XML/1998/namespace' des Namespaces außer Kraft gesetzt werden, und dieser URI kann keinem anderen Präfix zugeordnet werden.
Das XML-Namespacepräfix xsi kann nicht erneut deklariert werden, wenn die ELEMENTS XSINIL-Direktive für die Abfrage verwendet wird.
URI-Zeichenfolgenwerte werden gemäß der aktuellen Datenbanksortierungs-Codepage verschlüsselt und intern in Unicode übersetzt.
Die Leerzeichen des XML-Namespace-URIs werden gemäß den für xs:anyURI verwendeten XSD-Leerzeichenreduzierungsregeln reduziert. Darüber hinaus werden keine Entitäten für XML-Namespace-URI-Werte ausgeführt oder aufgelöst.
Der XML-Namespace-URI wird auf ungültige XML 1.0-Zeichen überprüft. Wird ein solches Zeichen gefunden, wird ein Fehler ausgelöst (z. B. U+0007).
Der XML-Namespace-URI (nach der Reduzierung aller Leerzeichen) kann keine leere Zeichenfolge sein, da sonst ein Fehler vom Typ "ungültiger leerer Namespace-URI" ausgelöst wird.
Das Schlüsselwort XMLNAMESPACES ist im Kontext der WITH-Klausel reserviert.
Siehe auch