Funciones relacionadas con QNames: local-name-from-QName

Se aplica a:SQL Server

Devuelve un xs:NCNAME que representa la parte local de QName especificada por $arg. El resultado es una secuencia vacía si $arg es la secuencia vacía.

Sintaxis

fn:local-name-from-QName($arg as xs:QName?) as xs:NCName?  

Argumentos

$arg
Es el QName del que se debería extraer el nombre local.

Ejemplos

En este tema se proporcionan ejemplos de XQuery en instancias XML almacenadas en varias columnas de tipo xml de la AdventureWorks2022 base de datos.

En el ejemplo siguiente se usa la función local-name-from-QName() para recuperar los elementos URI del nombre local y del espacio de nombres de un valor de tipo QName. En el ejemplo, se realizan las tareas siguientes:

  • Crear una colección de esquemas XML.

  • Crear una tabla con una columna de tipo xml. El tipo xml se escribe utilizando la colección de esquemas XML.

  • Almacenar una instancia XML de ejemplo en la tabla. Con el método query() del tipo de datos xml, la expresión de consulta se ejecuta para recuperar la parte de nombre local del valor de tipo QName de la instancia.

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="https://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 retrieve 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 = https://someURI  

Consulte también

Funciones relacionadas con QNames (XQuery)