Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt einen xs:NCNAME zurück, der den lokalen Anteil des durch $arg angegebenen QName darstellt. Das Ergebnis ist eine leere Sequenz, wenn $arg die leere Sequenz ist.
Syntax
fn:local-name-from-QName($arg as xs:QName?) as xs:NCName?
Argumente
- $arg
Der QName, aus dem der lokale Name extrahiert werden soll.
Beispiele
Dieses Thema stellt XQuery-Beispiele für XML-Instanzen bereit, die in verschiedenen Spalten vom xml-Datentyp in der AdventureWorks2012 -Datenbank gespeichert sind.
Das folgende Beispiel verwendet die local-name-from-QName()-Funktion, um aus einem Wert vom QName-Typ die Teile mit dem lokalen Namen und der Namespace-URI abzurufen. Das Beispiel führt die folgenden Aktionen aus:
Erstellen einer XML-Schemaauflistung.
Erstellen einer Tabelle mit einer Spalte des Typs xml. Der xml-Typ wird mithilfe der XML-Schemaauflistung typisiert.
Speichern einer XML-Beispielinstanz in der Tabelle. Mithilfe der query()-Methode des xml-Datentyps wird der Abfrageausdruck ausgeführt, um den lokalen Namensanteil des Werts vom Typ QName aus der Instanz abzurufen.
DROP TABLE T
go
DROP XML SCHEMA COLLECTION SC
go
CREATE XML SCHEMA COLLECTION SC AS '
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="QNameXSD" >
<element name="root" type="QName" nillable="true"/>
</schema>'
go
CREATE TABLE T (xmlCol XML(SC))
go
-- following OK
insert into T values ('<root xmlns="QNameXSD" xmlns:a="http://someURI">a:someLocalName</root>')
go
-- Retrieve the local name.
SELECT xmlCol.query('declare default element namespace "QNameXSD"; local-name-from-QName(/root[1])')
FROM T
-- Result = someLocalName
-- You can retrive namespace URI part from the QName using the namespace-uri-from-QName() function
SELECT xmlCol.query('declare default element namespace "QNameXSD"; namespace-uri-from-QName(/root[1])')
FROM T
-- Result = http://someURI