MED XMLNAMESPACES

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Deklarerar ett eller flera XML-namnrymder.

Transact-SQL syntaxkonventioner

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>  
  

Arguments

xml_namespace_uri
En Uniform Resource Identifier (URI) som identifierar det XML-namnrymd som deklareras. xml_namespace_uri är en SQL-sträng.

xml_namespace_prefix
Specificerar ett prefix som ska mappas och associeras med namnrymdens URI-värde som anges i xml_namespace_uri. xml_namespace_prefix måste vara en SQL Server-identifierare.

Anmärkningar

När du använder WITH XMLNAMESPACES-klausulen i ett uttryck som också inkluderar ett uttryck för en gemensam tabell, måste satsen WITH XMLNAMESPACES föregå uttrycket i den gemensamma tabellen i satsen.

Följande är allmänna syntaxregler som gäller när du använder WITH XMLNAMESPACES-klausulen:

  • Varje XML-namnrymdedeklaration måste innehålla minst ett XML-standarddeklarationsobjekt för namnrymd.

  • Varje XML-namnrymdsprefix som används måste vara ett icke-koloniserat namn (NCName) där kolontecknet (:) inte ingår i namnet.

  • Du kan inte definiera ett namnrymdsprefix två gånger.

  • XML-namnrymdsprefix och URI:er är kasuskänsliga.

  • Prefixet xmlns XML-namnrymder kan inte deklareras.

  • XML-namnrymdsprefixet xml kan inte åsidosättas med ett namnrymd, annat än namnrymdernas URI 'http://www.w3.org/XML/1998/namespace', och denna URI som inte kan tilldelas ett annat prefix.

  • Prefixet xsi XML-namnrymder kan inte deklareras om när ELEMENTS XSINIL-direktivet används på frågan.

  • Det är inte nödvändigt att deklarera 'http://www.w3.org/2001/XMLSchema-instance' för att använda xsi-standardnamnrymden. Det läggs implicit till av XML/XPATH-processorn om det inte specificeras och xpath-uttryck kan använda xsi-prefixet så länge 'http://www.w3.org/2001/XMLSchema-instance'-schemat är korrekt deklarerat i xml-dokumentet.

  • URI-strängvärden kodas enligt den aktuella databasens kodsida och översätts internt till Unicode.

  • XML-namnrymdens URI kommer att kollapsas med vitfält enligt XSD:s regler för kollapsning av vitrymdsfält som används för xs:anyURI. Observera också att ingen entitisering eller deidentitisering utförs på XML-namnrymdens URI-värden.

  • XML-namnrymdens URI kommer att kontrolleras för XML 1.0-tecken som inte är giltiga, och ett fel kommer att uppstå om ett sådant hittas (såsom U+0007).

  • XML-namnrymdens URI (efter att allt vitt utrymme kollapsas) kan inte vara en sträng av nolllängd eller då uppstår ett fel med "ogiltig tom namnrymds-URI".

  • XMLNAMESPACES-nyckelordet är reserverat i kontexten av WITH-satsen.

Examples

För exempel, se Lägg till namnrymder till frågor med MED XMLNAMNSRYMDER.

Se även

SQL Server(XQuery Language Reference)