Passa al contenuto principale
Workday User Guide
Ultimo aggiornamento: 2023-06-23
XPATH_STRING

XPATH_STRING

Descrizione

XPATH_STRING
è una funzione di riga che accetta XML e restituisce la prima stringa corrispondente all'espressione XPath specificata.

Sintassi

XPATH_STRING
(
xml_expression
,"
xpath_expression
")

Valore restituito

Restituisce un valore per ogni riga di tipo
TEXT
.
Se l'espressione XPath corrisponde a più di una stringa nel nodo XML specificato, questa funzione restituirà solo la
prima
corrispondenza. Per restituire tutte le corrispondenze, utilizzare
XPATH_STRINGS
invece.

Parametri di input

xml_expression
Sono obbligatori. Il nome di un campo di tipo
TEXT
o una stringa letterale che contiene un nodo XML valido (un frammento di codice XML composto da un elemento padre e uno o più nodi figlio).
xpath_expression
Sono obbligatori. Espressione XPath che fa riferimento a un nodo, un elemento o un attributo all'interno della stringa XML passata a questa espressione. Qualsiasi espressione XPath conforme alla specifica XML Path Language (XPath) versione 1.0 è valida.

Esempi

Questi esempi
XPATH_STRING
Le espressioni presuppongono che nel set di dati sia presente un campo denominato
address
che contiene stringhe in formato XML come:
<list> <address type="work"> <street1>1300 So. El Camino Real</street1> <street2>Suite 600</street2> <city>San Mateo</city> <state>CA</state> <zipcode>94403</zipcode> </address> <address type="home"> <street1>123 Oakdale Street</street1> <street2/> <city>San Francisco</city> <state>CA</state> <zipcode>94123</zipcode> </address> </list>
Ottenere il valore
del codice postale
da qualsiasi elemento
indirizzo
in cui l'attributo
type
è uguale
a home
:
XPATH_STRING([address], "//address[@type='home']/zipcode")
restituisce:
94123
Ottenere il valore
della città
dal secondo elemento
indirizzo
:
XPATH_STRING([address], "/list/address[2]/city")
restituisce:
San Francisco
Ottenere i valori da tutti gli elementi figlio del primo elemento indirizzo (come una stringa):
XPATH_STRING([address], "/list/address")
restituisce:
1300 So. El Camino RealSuite 600 San MateoCA94403