Manuale di riferimento XML

Manuale di riferimento XML

节点类型

下面的表格列出了不同的 W3C 节点类型,以及它们可拥有的子元素:

节点类型 描述 子元素
Document 表示整个文档(DOM 树的根节点)
  • Element (max. one)
  • ProcessingInstruction
  • Comment
  • DocumentType
DocumentFragment 表示轻量级的 Document 对象,其中容纳了一部分文档。
  • ProcessingInstruction
  • Comment
  • Text
  • CDATASection
  • EntityReference
DocumentType 向为文档定义的实体提供接口。 None
ProcessingInstruction 表示处理指令。 None
EntityReference 表示实体引用元素。
  • ProcessingInstruction
  • Comment
  • Text
  • CDATASection
  • EntityReference
Element 表示 element(元素)元素
  • Text
  • Comment
  • ProcessingInstruction
  • CDATASection
  • EntityReference
Attr 表示属性。
  • Text
  • EntityReference
Text 表示元素或属性中的文本内容。 None
CDATASection 表示文档中的 CDATA 区段(文本不会被解析器解析) None
Comment 表示注释。 None
Entità 表示实体。
  • ProcessingInstruction
  • Comment
  • Text
  • CDATASection
  • EntityReference
Notazione 表示在 DTD 中声明的符号。 None

节点类型 - 所返回的值

下面的表格列出了对每个节点类型来说,nodeName 和 nodeValue 属性可返回的值:

节点类型 nodeName 的返回值 nodeValue 的返回值
Document #document null
DocumentFragment #document fragment null
DocumentType doctype 名称 null
EntityReference 实体引用名称 null
Element element name null
Attr 属性名称 属性值
ProcessingInstruction target 节点的内容
Comment #comment 注释文本
Text #text Contenuto del nodo
CDATASection #cdata-section Contenuto del nodo
Entità Nome dell'entità null
Notazione Nome simbolico null

NodeTypes - Costanti nominali

NodeType Named Constant
1 ELEMENT_NODE
2 ATTRIBUTE_NODE
3 TEXT_NODE
4 CDATA_SECTION_NODE
5 ENTITY_REFERENCE_NODE
6 ENTITY_NODE
7 PROCESSING_INSTRUCTION_NODE
8 COMMENT_NODE
9 DOCUMENT_NODE
10 DOCUMENT_TYPE_NODE
11 DOCUMENT_FRAGMENT_NODE
12 NOTATION_NODE

Top

Oggetto Node XML DOM

Proprietà dell'oggetto Node

Proprietà 描述
attributes NamedNodeMap che contiene le proprietà di questo nodo (se questo nodo è un elemento).
baseURI Restituire l'URI di base assoluto del nodo.
childNodes Restituire il NodeList dei nodi figli del nodo.
firstChild Restituire il primo nodo figlio del nodo.
lastChild Restituire l'ultimo nodo figlio del nodo.
nextSibling Restituire il nodo同级 immediatamente dopo il nodo.
nodeName Restituire il nome del nodo, in base al suo tipo.
nodeType Restituire il tipo del nodo.
nodeValue Impostare o restituire il valore del nodo, in base al suo tipo.
ownerDocument Restituire l'elemento radice del nodo (oggetto document).
parentNode Restituire il nodo padre del nodo.
prefix Impostare o restituire il prefisso di namespace del nodo.
previousSibling Restituire il nodo同级 immediatamente prima del nodo.
textContent Impostare o restituire il contenuto di testo del nodo e dei suoi discendenti.

Metodi dell'oggetto Node

Metodo 描述
appendChild() Aggiungere un nuovo nodo figlio alla fine della lista dei nodi figli del nodo.
cloneNode() Clona il nodo.
compareDocumentPosition() Confrontare la posizione di due nodi nella struttura gerarchica del DOM (documento).
getFeature(feature,version) Restituisce l'oggetto DOM che implementa l'API专用 per le caratteristiche e la versione specificate.
getUserData(key)

Restituire l'oggetto associato alla chiave sul nodo.

Deve essere impostato l'oggetto su questo nodo per primo, utilizzando la chiamata setUserData con la stessa chiave.

hasAttributes() Restituire true se il nodo specificato ha qualsiasi attributo, altrimenti restituire false.
hasChildNodes() Restituire true se il nodo specificato ha figli, altrimenti restituire false.
insertBefore() Inserire un nuovo nodo figlio prima del nodo figlio specificato.
isDefaultNamespace(URI) Controllare se l'URI di namespace specificato è di default.
isEqualNode() Verifica se due nodi sono uguali.
isSameNode() Controllare se due nodi sono lo stesso nodo.
lookupNamespaceURI() Restituire l'URI di namespace associato al prefisso dato.
lookupPrefix() Restituire il prefisso associato all'URI di namespace dato.
normalize() Unire i nodi di testo adiacenti e eliminare i nodi di testo vuoti.
removeChild() Eliminare (e restituire) il nodo figlio specificato del nodo corrente.
replaceChild() Sostituire il nodo figlio con un nuovo nodo.
setUserData(key,data,handler) Associare l'oggetto con la chiave sul nodo.

Top

Oggetto NodeList XML DOM

Proprietà dell'oggetto NodeList

Proprietà 描述
length Restituisce il numero di nodi nella lista dei nodi.

Metodi dell'oggetto NodeList

Metodo 描述
item() Restituisce il nodo nella lista dei nodi specificato per l'indice.

Top

Oggetto NamedNodeMap XML DOM

Proprietà dell'oggetto NamedNodeMap

Proprietà 描述
length Restituire il numero di nodi nella lista.

Metodi dell'oggetto NamedNodeMap

Metodo 描述
getNamedItem() Restituire il nodo con un nome specificato.
getNamedItemNS() Restituire il nodo con un nome e uno spazio di nomi specificati.
item() Restituire il nodo all'indice specificato.
removeNamedItem() Eliminare il nodo con un nome specificato.
removeNamedItemNS() Eliminare il nodo con un nome e uno spazio di nomi specificati.
setNamedItem() Impostare il nodo specificato (per nome).
setNamedItemNS() Impostare il nodo specificato (per nome e spazio di nomi).

Top

Oggetto Document XML DOM

Proprietà dell'oggetto Document

Proprietà 描述
childNodes Restituire il NodeList dei figli del documento.
doctype Restituire la dichiarazione di tipo del documento associata al documento.
documentElement Restituire il nodo radice del documento.
documentURI Impostare o restituire la posizione del documento.
domConfig Restituire la configurazione utilizzata durante la chiamata normalizeDocument().
firstChild Restituire il primo nodo figlio del documento.
implementation Restituire l'oggetto DOMImplementation che gestisce questo documento.
inputEncoding Restituire il metodo di codifica utilizzato dal documento (durante la解析).
lastChild Restituire l'ultimo nodo figlio del documento.
nodeName Restituire il nome del nodo (a seconda del suo tipo).
nodeType Restituire il tipo di nodo del nodo.
nodeValue Impostare o restituire il valore del nodo (a seconda del suo tipo).
xmlEncoding Restituire il metodo di codifica XML del documento.
xmlStandalone Impostare o restituire se il documento è indipendente.
xmlVersion Impostare o restituire la versione XML del documento.

Metodi dell'oggetto Document

Metodo 描述
adoptNode() Accettare un nodo da un altro documento in questo documento e restituire il nodo accettato.
createAttribute() Creare un nodo attributo con un nome specificato, e restituire l'oggetto Attr nuovo.
createAttributeNS() Creare un nodo attributo con un nome e uno spazio di nomi specificati, e restituire l'oggetto Attr nuovo.
createCDATASection() Creare un nodo sezione CDATA.
createComment() Creare un nodo commento.
createDocumentFragment() Creare un oggetto DocumentFragment vuoto e restituirlo.
createElement() Crea un nodo di elemento.
createElementNS() Crea un nodo di elemento con lo spazio dei nomi specificato.
createEntityReference() Crea un oggetto EntityReference e lo restituisce.
createProcessingInstruction() Crea un oggetto ProcessingInstruction e lo restituisce.
createTextNode() Crea un nodo di testo.
getElementById() Restituisce l'elemento con l'attributo id che ha il valore specificato.
getElementsByTagName() Restituisce NodeList di tutti gli elementi che hanno il nome specificato.
getElementsByTagNameNS() Restituisce NodeList di tutti gli elementi che hanno il nome e lo spazio dei nomi specificati.
importNode() Importa un nodo da un altro documento in questo documento.
normalizeDocument()
renameNode() Rinomina un nodo di elemento o un nodo attributo.

Attributi dell'oggetto DocumentType

Ogni documento ha un attributo DOCTYPE, il cui valore è null o l'oggetto DocumentType.

L'oggetto DocumentType fornisce l'interfaccia per le entità definite per il documento XML.

Proprietà 描述
name Restituisce il nome dell'DTD.
publicId Restituisce l'identificatore pubblico dell'DTD.
systemId Restituisce l'identificatore di sistema dell'DTD esterno.

Metodi dell'oggetto DocumentImplementation

L'oggetto DOMImplementation esegue operazioni specifiche dell'istanza indipendenti dal modello del documento.

Metodo 描述
createDocument() Crea un nuovo oggetto DOM Document con il tipo di documento specificato.
createDocumentType() Crea un nodo DocumentType vuoto.
getFeature() Restituisce l'oggetto API che implementa la caratteristica e la versione specificata (se esistente).
hasFeature() Controlla se l'implementazione DOM ha implementato determinate caratteristiche e versioni specifiche.

Attributi dell'oggetto ProcessingInstruction

L'oggetto ProcessingInstruction rappresenta l'instruzione di processing.

Le istruzioni di processing sono utilizzate come metodo per conservare informazioni specifiche del processore nel testo del documento XML.

Proprietà 描述
data Imposta o restituisce il contenuto dell'instruzione di processing.
target Restituisce l'obiettivo dell'instruzione di processing.

Top

Oggetto Element XML DOM

Attributi dell'oggetto Element.

Proprietà 描述
attributes Restituisce la NamedNodeMap dell'attributo dell'elemento.
baseURI Restituisce l'URI di riferimento assoluto dell'elemento.
childNodes Restituisce NodeList dei figli dell'elemento.
firstChild Restituisce il primo figlio dell'elemento.
lastChild Restituisce l'ultimo figlio dell'elemento.
localName Restituisce la parte locale del nome dell'elemento.
namespaceURI Restituisce l'URI dello spazio dei nomi dell'elemento.
nextSibling Restituisce il nodo immediatamente successivo a questo elemento.
nodeName Restituisce il nome del nodo, a seconda del suo tipo.
nodeType Restituire il tipo del nodo.
ownerDocument Restituisce l'elemento radice (oggetto documento).
parentNode Restituisce il nodo genitore dell'elemento.
prefix Imposta o restituisce il prefisso dello spazio dei nomi dell'elemento.
previousSibling Restituisce il nodo immediatamente precedente a questo elemento.
schemaTypeInfo Restituisce le informazioni sul tipo associato all'elemento.
tagName Restituisce il nome dell'elemento.
textContent Imposta o restituisce il contenuto testuale dell'elemento e dei suoi discendenti.

Metodi dell'oggetto Element

Metodo 描述
appendChild() Aggiunge un nuovo figlio alla fine della lista dei figli del nodo.
cloneNode() Clona il nodo.
compareDocumentPosition() Confronta la posizione del documento di due nodi.
getAttribute() Restituisce il valore dell'attributo.
getAttributeNS() Restituisce il valore dell'attributo (con spazio dei nomi).
getAttributeNode() Restituisce il nodo attributo come oggetto Attribute.
getAttributeNodeNS() Restituisce il nodo attributo (con spazio dei nomi) come oggetto Attribute.
getElementsByTagName() Restituisce NodeList di nodi di elemento che corrispondono e dei loro figli.
getElementsByTagNameNS() Restituisce NodeList di nodi di elemento che corrispondono e dei loro figli (con spazio dei nomi).
getFeature(feature,version) Restituisce l'oggetto DOM che implementa l'API专用 per le caratteristiche e la versione specificate.
getUserData(key) Restituisce l'oggetto associato alla chiave del nodo. È necessario prima impostare l'oggetto su questo nodo, utilizzando la stessa chiave per chiamare setUserData.
hasAttribute() Restituisce se l'elemento ha un attributo che corrisponde al nome specificato.
hasAttributeNS() Restituisce se l'elemento ha un attributo che corrisponde al nome e allo spazio dei nomi specificati.
hasAttributes() Restituisce se l'elemento ha attributi.
hasChildNodes() Restituisce se l'elemento ha figli.
insertBefore() Inserisci un nuovo nodo figlio prima del nodo figlio esistente.
isDefaultNamespace(URI) Restituisce se l'URI specificato è il namespace predefinito.
isEqualNode() Verifica se due nodi sono uguali.
lookupNamespaceURI() Restituisce l'URI del namespace che corrisponde al prefisso specificato.
lookupPrefix() Restituisce il prefisso che corrisponde all'URI del namespace specificato.
normalize()

Il metodo normalize() rimuove i nodi di testo vuoti e connette i nodi di testo adiacenti.

Normalizza tutti i nodi di testo sotto l'elemento (inclusi gli attributi), tra cui solo la struttura (ad esempio, elementi, commenti, istruzioni di processamento, parti CDATA e riferimenti alle entità) separa i nodi di testo.

Cioè, non esistono nodi di testo adiacenti né nodi di testo vuoti.

removeAttribute() Elimina l'attributo specificato.
removeAttributeNS() Elimina l'attributo specificato (con namespace).
removeAttributeNode() Elimina il nodo attributo specificato.
removeChild() Elimina il nodo figlio.
replaceChild() Sostituisci il nodo figlio.
setUserData(key,data,handler) Associare l'oggetto con la chiave sull'elemento.
setAttribute() Aggiungi un nuovo attributo.
setAttributeNS() Aggiungi un nuovo attributo (con namespace).
setAttributeNode() Aggiungi un nuovo nodo attributo.
setAttributeNodeNS(attrnode) Aggiungi un nuovo nodo attributo (con namespace).
setIdAttribute(name,isId) Se l'attributo isId dell'oggetto Attribute è true, questo metodo dichiara l'attributo specificato come attributo ID determinato dall'utente.
setIdAttributeNS(uri,name,isId) Se l'attributo isId dell'oggetto Attribute è true, questo metodo dichiara l'attributo specificato (con namespace) come attributo ID determinato dall'utente.
setIdAttributeNode(idAttr,isId) Se l'attributo isId dell'oggetto Attribute è true, questo metodo dichiara l'attributo specificato come attributo ID determinato dall'utente.

Top

Attributi dell'oggetto Attr

Proprietà 描述
baseURI Restituisce l'URI di base assoluto dell'attributo.
isId Se l'attributo è di tipo id, restituisce true, altrimenti restituisce false.
localName Restituisce la parte locale del nome dell'attributo.
name Restituisce il nome dell'attributo.
namespaceURI Restituisce l'URI del namespace dell'attributo.
nodeName Restituire il nome del nodo, in base al suo tipo.
nodeType Restituire il tipo del nodo.
nodeValue Impostare o restituire il valore del nodo, in base al suo tipo.
ownerDocument Restituire l'elemento radice (oggetto documento) dell'attributo.
ownerElement Restituire il nodo di elemento al quale l'attributo è associato.
prefix Impostare o restituire il prefisso dello spazio dei nomi dell'attributo.
schemaTypeInfo Restituire le informazioni di tipo associate all'attributo.
specified

Se il valore dell'attributo è stato impostato nel documento, restituire true;

Se il valore dell'attributo è il valore predefinito in DTD/Schema, restituire false.

textContent Impostare o restituire il contenuto testuale dell'attributo.
value Impostare o restituire il valore dell'attributo.

Top

Oggetto Text XML DOM

Proprietà dell'oggetto Text

Proprietà 描述
data Impostare o restituire il testo dell'elemento o dell'attributo.
isElementContentWhitespace Determinare se il nodo di testo contiene contenuto di spazi bianchi.
length Restituire la lunghezza del testo dell'elemento o dell'attributo.
wholeText Restituire tutti i testi dei nodi di testo adiacenti al nodo, connettendoli in ordine documentale.

Metodi dell'oggetto Text

Metodo 描述
appendData() Aggiunge dati alla fine del nodo.
deleteData() Elimina dati dal nodo.
insertData() Inserisce dati nel nodo.
replaceData() Sostituisce i dati nel nodo.
replaceWholeText(text) Sostituire il testo del nodo e di tutti i nodi di testo adiacenti con il testo specificato.
splitText() Dividere un nodo Text in due.
substringData() Estrae i dati dal nodo.

Top

Oggetto CDATASection XML DOM

Proprietà dell'oggetto CDATASection

Proprietà 描述
data Impostare o restituire il testo del nodo.
length Restituire la lunghezza della sezione CDATA.

Metodi dell'oggetto CDATASection

Metodo 描述
appendData() Aggiunge dati alla fine del nodo.
deleteData() Elimina dati dal nodo.
insertData() Inserisce dati nel nodo.
replaceData() Sostituisce i dati nel nodo.
splitText() Dividere il nodo CDATA in due nodi.
substringData() Estrae i dati dal nodo.

Top

Oggetto Comment XML DOM

Proprietà dell'oggetto Comment

Proprietà 描述
data Impostare o restituire il testo del nodo.
length Restituire la lunghezza del testo del nodo.

Metodi dell'oggetto Comment

Metodo 描述
appendData() Aggiunge dati alla fine del nodo.
deleteData() Elimina dati dal nodo.
insertData() Inserisce dati nel nodo.
replaceData() Sostituisce i dati nel nodo.
substringData() Estrae i dati dal nodo.

Top

Oggetto XMLHttpRequest XML DOM

Metodi dell'oggetto XMLHttpRequest

Metodo 描述
abort() Annullare la richiesta corrente.
getAllResponseHeaders() Restituire le informazioni di intestazione.
getResponseHeader() Restituire il valore dell'intestazione HTTP specificata.
open(method,url,async,uname,pswd)

Specificare il tipo di richiesta, l'URL, se il processo di richiesta deve essere gestito asincronamente e altre proprietà opzionali della richiesta.

  • method: tipo di richiesta: GET o POST
  • url: posizione del file sul server
  • async: true (asincrono) o false (sincrono)
send(string)

Invia la richiesta al server.

string: Utilizzato solo per richieste POST

setRequestHeader() Aggiungi un paio di etichetta/valore ai intestazioni da inviare.

Proprietà dell'oggetto XMLHttpRequest

Proprietà 描述
onreadystatechange Memorizza la funzione (o il nome della funzione) chiamata automaticamente ogni volta che cambia l'attributo readyState.
readyState

Salva lo stato XMLHttpRequest. Cambiamenti da 0 a 4:

  • 0: La richiesta non è stata inizializzata
  • 1: La connessione al server è stata stabilita
  • 2: La richiesta è stata ricevuta
  • 3: La richiesta è in corso di elaborazione
  • 4: La richiesta è stata completata, la risposta è pronta
responseText Restituisce i dati di risposta, in formato stringa.
responseXML Restituisce i dati di risposta, in formato XML.
status Restituisce il numero di stato (ad esempio "404" per "Not Found", o "200" per "OK").
statusText Restituisce il testo di stato (ad esempio "Not Found" o "OK").

Top

Elementi XSD

elemento Spiega
all Specifica che i sottoelementi possono apparire in qualsiasi ordine, e che ogni sottoelemento può apparire zero o una volta.
annotation L'elemento annotation è un elemento di livello superiore che definisce i commenti dello schema.
any Permette agli autori di estendere il documento XML attraverso elementi non specificati dallo schema.
anyAttribute Permette agli autori di estendere il documento XML attraverso attributi non specificati dallo schema.
appInfo Specifica le informazioni che l'applicazione deve utilizzare nell'elemento annotation.
attribute Definisci un attributo.
attributeGroup Definisci il gruppo di attributi utilizzato nella definizione del tipo complesso.
choice Permette che un singolo elemento appaia all'interno di una dichiarazione <choice>.
complexContent Definisci l'estensione o la limitazione di un tipo complesso (che contiene contenuto misto o contiene solo elementi).
complexType Definisci il tipo complesso.
documentazione Definisci i commenti di testo nel schema.
element Definisci l'elemento.
extension Estendi gli elementi esistenti simpleType o complexType.
field Specificare un'espressione XPath, che definisce il valore utilizzato per le restrizioni di identificazione.
group Definire il gruppo di elementi utilizzato nella definizione di tipo di dati complesso.
import Aggiungere più schemi con spazi di nomi di destinazione diversi a un documento.
include Aggiungere più schemi con lo stesso spazio di nomi di destinazione a un documento.
key Specificare che il valore di un attributo o di un elemento (o un insieme di valori) deve essere una chiave all'interno di un intervallo specificato.
keyref Specificare che il valore di un attributo o di un elemento (o un insieme di valori) deve corrispondere al valore di una chiave o di un elemento unique specificato.
list Definisce un tipo di dati simpleType come una lista di valori di un tipo di dati specificato.
notation Descrive il formato dei dati non XML all'interno di un documento XML.
redefine Ridefinisce i tipi di dati semplici e complessi, i gruppi e i gruppi di attributi prelevati da un file di schema esterno.
restriction Definisce le restrizioni per simpleType, simpleContent o complexContent.
schema Definisce l'elemento radice dello schema.
selector Specificare un'espressione XPath, che seleziona un insieme di elementi per le restrizioni di identificazione.
sequence Richiede che i sottoelementi appaiano in ordine. Ogni sottoelemento può apparire 0 o più volte.
simpleContent Contiene estensioni o restrizioni degli elementi complexType e non contiene alcun elemento.
simpleType Definisce un tipo di dati simpleType, specificando le restrizioni e le informazioni sui valori degli attributi o degli elementi che contengono solo testo.
union Definisce una collezione di tipi di dati simpleType.
unique Specificare che il valore di un attributo o di un elemento (o la combinazione di attributi o di elementi) deve essere unico all'interno di un intervallo specificato.

Limitazioni XSD per il tipo di dati

Vedere Limitazioni XSD / Facets

Limitazione 描述
enumeration Definisce una lista di valori accettabili.
fractionDigits Definisce il numero massimo di cifre decimali ammesse. Deve essere maggiore o uguale a 0.
length Definisce il numero esatto di caratteri o elementi di una lista ammessi. Deve essere maggiore o uguale a 0.
maxExclusive Definisce il limite superiore di un valore numerico. I valori ammessi devono essere minori di questo valore.
maxInclusive Definisce il limite superiore di un valore numerico. I valori ammessi devono essere minori o uguali a questo valore.
maxLength Definisce il numero massimo di caratteri o elementi di una lista ammessi. Deve essere maggiore o uguale a 0.
minExclusive Definisce il limite inferiore di un valore numerico. I valori ammessi devono essere maggiori di questo valore.
minInclusive Definisce il limite inferiore di un valore numerico. I valori ammessi devono essere maggiori o uguali a questo valore.
minLength Definire il numero minimo di caratteri o elementi nella lista ammessi. Deve essere maggiore o uguale a 0.
pattern Definire la sequenza esatta di caratteri accettabili.
totalDigits Definire il numero esatto di cifre decimali ammesse. Deve essere maggiore di 0.
whiteSpace Definire il modo di trattare i caratteri di spazio bianco (a capo, ritorno a capo, spazi e tabulazioni).

Top

elemento XSLT

elemento 描述
apply-imports Applicare le regole dei template provenienti da uno stylesheet importato.
apply-templates Applicare un template al nodo corrente o ai figli del nodo corrente.
attribute Aggiungere un attributo all'elemento.
attribute-set Creare un set di attributi denominati.
call-template Chiamare un template specificato.
choose Utilizzato insieme a <when> e <otherwise> per esprimere test condizionali multipli.
comment Creare un nodo commento nel albero dei risultati.
copy Creare una copia del nodo corrente (senza nodi figli e attributi).
copy-of Creare una copia del nodo corrente (con nodi figli e attributi).
decimal-format Definire i caratteri e i simboli da utilizzare quando un numero viene convertito in una stringa tramite la funzione format-number().
element Creare un nodo elemento nel documento di output.
fallback Se il processore non supporta un elemento XSLT, specificare un codice di riserva per l'esecuzione.
for-each Eseguire una scansione di ciascun nodo in un insieme di nodi specificato.
if Includere un template, applicabile solo se una condizione specifica è soddisfatta.
import Utilizzato per trasferire il contenuto di uno stylesheet in un altro stylesheet.
include Includere il contenuto di uno stylesheet in un altro stylesheet.
key Dichiarare una chiave denominata.
message Scrivere un messaggio nell'output (utilizzato per rapporti di errore).
namespace-alias Sostituire gli spazi dei nomi degli elementi dello stylesheet con quelli diversi nell'output.
number Determinare la posizione intera del nodo corrente e formattare i numeri.
otherwise Stabilire l'azione predefinita dell'elemento <choose>.
output Definire il formato del documento di output.
param Dichiarare un parametro locale o globale.
preserve-space Utilizzato per definire l'elemento che deve conservare gli spazi bianchi.
processing-instruction Generare un nodo di istruzione di processo.
sort Ordinare i risultati.
strip-space Definire l'elemento che deve rimuovere i caratteri di spazio bianco.
stylesheet Definisce l'elemento radice dello stylesheet.
template Le regole applicate quando il nodo specificato viene abbinato.
text Genera nodi di testo attraverso uno stylesheet.
transform Definisce l'elemento radice dello stylesheet.
value-of Estrae il valore del nodo selezionato.
variable Dichiarare variabili locali o globali.
when Determina l'azione dell'elemento <choose>.
with-param Determina il valore dei parametri da passare a un modello.

Top

Funzioni XSLT, XPath e XQuery

Funzioni di accesso

名称 Spiegazione
fn:node-name(node) Restituisce il nome del nodo del parametro.
fn:nilled(node) Restituisce un valore booleano che indica se il nodo del parametro viene rifiutato.
fn:data(item.item,...) Accetta una sequenza di elementi e restituisce una sequenza di valori atomici.
  • fn:base-uri()
  • fn:base-uri(node)
Restituisce il valore dell'attributo base-uri del nodo corrente o del nodo specificato.
fn:document-uri(node) Restituisce il valore dell'attributo document-uri del nodo specificato.

Funzioni di errore e trace

名称 Spiegazione
  • fn:error()
  • fn:error(error)
  • fn:error(error,description)
  • fn:error(error,description,error-object)

esempio: error(fn:QName('http://example.com/test', 'err:toohigh'), 'Error: Price is too high')

Risultato: Restituisce all'ambiente di elaborazione esterno http://example.com/test#toohigh e la stringa "Error: Price is too high".

fn:trace(value,label) Usato per debug delle query.

Funzioni numeriche

名称 Spiegazione
fn:number(arg)

Restituisce il valore numerico del parametro. Il parametro può essere un valore booleano, una stringa o un insieme di nodi.

esempio: number('100')

Risultato: 100

fn:abs(num)

Restituisce il valore assoluto del parametro.

esempio: abs(3.14)

Risultato: 3.14

esempio: abs(-3.14)

Risultato: 3.14

fn:ceiling(num)

Restituisce l'intero più piccolo maggiore del parametro num.

esempio: ceiling(3.14)

Risultato: 4

fn:floor(num)

Restituisce il numero intero massimo non superiore al parametro num.

Esempio: floor(3.14)

Risultato: 3

fn:round(num)

Arrotonda il parametro num al numero intero più vicino.

Esempio: round(3.14)

Risultato: 3

fn:round-half-to-even()

Esempio: round-half-to-even(0.5)

Risultato: 0

Esempio: round-half-to-even(1.5)

Risultato: 2

Esempio: round-half-to-even(2.5)

Risultato: 2

Funzioni di stringa

名称 Spiegazione
fn:string(arg)

Restituisce il valore di stringa del parametro. Il parametro può essere un numero, un valore logico o un insieme di nodi.

Esempio: string(314)

Risultato: "314"

fn:codici-punto-a-stringa(int,int,...)

Restituisce una stringa da una sequenza di codici punto.

Esempio: codepoints-to-string(84, 104, 233, 114, 232, 115, 101)

Risultato: 'Thérèse'

fn:codici-punto-da-stringa(string)

Restituisce una sequenza di codici punto da una stringa.

Esempio: string-to-codepoints("Thérèse")

Risultato: 84, 104, 233, 114, 232, 115, 101

fn:uguale-per-codice-punto(comp1,comp2) Secondo il confronto Unicode dei codici punto, se il valore di comp1 è uguale al valore di comp2, restituisce true. Altrimenti, restituisce false. (http://www.w3.org/2005/02/xpath-functions/collation/codepoint)
  • fn:confronta(comp1,comp2)
  • fn:confronta(comp1,comp2,collazione)

Se comp1 è minore di comp2, restituisce -1. Se comp1 è uguale a comp2, restituisce 0. Se comp1 è maggiore di comp2, restituisce 1. (Secondo le regole di confronto utilizzate).

Esempio: confronta('ghi', 'ghi')

Risultato: 0

fn:concatenazione(string,string,...)

Restituisce la concatenazione di stringhe.

Esempio: concat('XPath ','è ','DIVERTENTE!')

Risultato: 'XPath è DIVERTENTE!'

fn:unione((string,string,...),sep)

Usare il parametro sep come separatore per restituire la stringa concatenata dei parametri string.

Esempio: string-join(('We', 'are', 'having', 'fun!'), ' ')

Risultato: ' We are having fun! '

Esempio: string-join(('We', 'are', 'having', 'fun!'))

Risultato: 'Wearehavingfun!'

Esempio: string-join((), 'sep')

Risultato: ''

  • fn:substring(string,start,len)
  • fn:substring(string,start)

Restituire la sottostringa specificata di lunghezza specificata iniziando dalla posizione start. L'indice del primo carattere è 1. Se viene omesso il parametro len, viene restituita la sottostringa dalla posizione start alla fine della stringa.

Esempio: substring('Beatles',1,4)

Risultato: 'Beat'

Esempio: substring('Beatles',2)

Risultato: 'eatles'

  • fn:string-length(string)
  • fn:string-length()

Restituire la lunghezza della stringa specificata. Se non viene fornito il parametro string, restituire la lunghezza del valore stringa del nodo corrente.

Esempio: string-length('Beatles')

Risultato: 7

  • fn:normalize-space(string)
  • fn:normalize-space()

Eliminare gli spazi iniziali e finali della stringa specificata, sostituire tutte le sequenze di spazi interni con un singolo spazio e restituire il risultato. Se non viene fornito il parametro string, viene trattato il nodo corrente.

Esempio: normalize-space(' The   XML ')

Risultato: 'The XML'

fn:normalize-unicode() Eseguire la normalizzazione Unicode.
fn:upper-case(string)

Convertire il parametro string in maiuscolo.

Esempio: upper-case('The XML')

Risultato: 'THE XML'

fn:lower-case(string)

Convertire il parametro string in minuscolo.

Esempio: lower-case('The XML')

Risultato: 'the xml'

fn:translate(string1,string2,string3)

Sostituisci string2 in string1 con string3.

Esempio: translate('12:30','30','45')

Risultato: '12:45'

Esempio: translate('12:30','03','54')

Risultato: '12:45'

Esempio: translate('12:30','0123','abcd')

Risultato: 'bc:da'

fn:escape-uri(stringURI,esc-res)

Esempio: escape-uri("http://example.com/test#car", true())

Risultato: "http%3A%2F%2Fexample.com%2Ftest#car"

Esempio: escape-uri("http://example.com/test#car", false())

Risultato: "http://example.com/test#car"

Esempio: escape-uri ("http://example.com/~bébé", false())

Risultato: "http://example.com/~b%C3%A9b%C3%A9"

fn:contains(string1,string2)

Se string1 contiene string2, restituisce true, altrimenti restituisce false.

Esempio: contains('XML','XM')

Risultato: true

fn:starts-with(string1,string2)

Se string1 inizia con string2, restituisce true, altrimenti restituisce false.

Esempio: starts-with('XML','X')

Risultato: true

fn:ends-with(string1,string2)

Se string1 termina con string2, restituisce true, altrimenti restituisce false.

Esempio: ends-with('XML','X')

Risultato: false

fn:substring-before(string1,string2)

Restituisce la sottostringa che precede string2 all'interno di string1.

Esempio: substring-before('12/10','/')

Risultato: '12'

fn:substring-after(string1,string2)

Restituisce la sottostringa che segue string2 all'interno di string1.

Esempio: substring-after('12/10','/')

Risultato: '10'

fn:matches(string,pattern)

Restituisce true se il parametro stringa corrisponde al modello specificato, altrimenti restituisce false.

Esempio: matches("Merano", "ran")

Risultato: true

fn:replace(string,pattern,replace)

Sostituisci il modello specificato con il parametro replace e restituisci il risultato.

Esempio: replace("Bella Italia", "l", "*")

Risultato: 'Be**a Ita*ia'

Esempio: replace("Bella Italia", "l", "")

Risultato: 'Bea Itaia'

fn:tokenize(string,pattern)

Esempio: tokenize("XPath is fun", "\s+")

Risultato: ("XPath", "is", "fun")

Funzioni per anyURI

名称 Spiegazione
fn:resolve-uri(relative,base)  

Funzioni relative ai valori booleani

名称 Spiegazione
fn:boolean(arg) Restituisce il valore booleano di un numero, una stringa o un insieme di nodi.
fn:not(arg)

Prima di tutto, riporta il parametro a un valore booleano utilizzando la funzione boolean().

Restituisce true se il valore booleano è false, altrimenti restituisce true.

Esempio: not(true())

Risultato: false

fn:true()

Restituisce il valore booleano true.

Esempio: true()

Risultato: true

fn:false()

Restituisce il valore booleano false.

Esempio: false()

Risultato: false

Funzioni relative alla durata, data e ora

Funzione di estrazione dei componenti di data, ora e durata

名称 Spiegazione
fn:dateTime(date,time) Converti il parametro in una data e ora.
fn:years-from-duration(datetimedur) Restituisce l'intero parte dell'anno del valore del parametro, espresso secondo la notazione lessicale standard.
fn:months-from-duration(datetimedur) Restituisce l'intero parte del mese del valore del parametro, espresso secondo la notazione lessicale standard.
fn:days-from-duration(datetimedur) Restituisce l'intero parte del giorno del valore del parametro, espresso secondo la notazione lessicale standard.
fn:hours-from-duration(datetimedur) Restituisce l'intero rappresentante la parte oraria del valore, rappresentato secondo la notazione lessicale standard.
fn:minutes-from-duration(datetimedur) Restituisce l'intero rappresentante la parte minütia del valore, rappresentato secondo la notazione lessicale standard.
fn:seconds-from-duration(datetimedur) Restituisce il numero decimale della parte minütia del valore, rappresentato secondo la notazione lessicale standard.
fn:year-from-dateTime(datetime)

Restituisce l'intero rappresentante la parte annuale del valore locale del parametro.

Esempio: year-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Risultato: 2005

fn:month-from-dateTime(datetime)

Restituisce l'intero rappresentante la parte mensile del valore locale del parametro.

Esempio: month-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Risultato: 01

fn:day-from-dateTime(datetime)

Restituisce l'intero rappresentante la parte giornaliera del valore locale del parametro.

Esempio: day-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Risultato: 10

fn:hours-from-dateTime(datetime)

Restituisce l'intero rappresentante la parte oraria del valore locale del parametro.

Esempio: hours-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Risultato: 12

fn:minutes-from-dateTime(datetime)

Restituisce l'intero rappresentante la parte minütia del valore locale del parametro.

Esempio: minutes-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10"))

Risultato: 30

fn:seconds-from-dateTime(datetime)

Restituisce il numero decimale della parte secondaria del valore locale del parametro.

Esempio: seconds-from-dateTime(xs:dateTime("2005-01-10T12:30:00-04:10"))

Risultato: 0

fn:timezone-from-dateTime(datetime) Restituisce la parte di fuso orario del parametro, se esiste.
fn:year-from-date(date)

Restituisce l'intero rappresentante l'anno nel valore locale del parametro.

Esempio: year-from-date(xs:date("2005-04-23"))

Risultato: 2005

fn:month-from-date(date)

Restituisce l'intero che rappresenta la parte mensile del valore locale del parametro.

Esempio: month-from-date(xs:date("2005-04-23"))

Risultato: 4

fn:day-from-date(date)

Restituisce l'intero che rappresenta la parte giornaliera del valore locale del parametro.

Esempio: day-from-date(xs:date("2005-04-23"))

Risultato: 23

fn:timezone-from-date(date) Restituisce la parte di fuso orario del parametro, se esiste.
fn:hours-from-time(time)

Restituisce l'intero che rappresenta la parte oraria del valore locale del parametro.

Esempio: hours-from-time(xs:time("10:22:00"))

Risultato: 10

fn:minutes-from-time(time)

Restituisce l'intero che rappresenta la parte minutaria del valore locale del parametro.

Esempio: minutes-from-time(xs:time("10:22:00"))

Risultato: 22

fn:seconds-from-time(time)

Restituisce l'intero che rappresenta la parte secondaria del valore locale del parametro.

Esempio: seconds-from-time(xs:time("10:22:00"))

Risultato: 0

fn:timezone-from-time(time) Restituisce la parte di fuso orario del parametro, se esiste.
fn:adjust-dateTime-to-timezone(datetime,timezone)

Se il parametro timezone è vuoto, restituisce il dateTime senza fuso orario.

Altrimenti restituisce il dateTime con fuso orario.

fn:adjust-date-to-timezone(date,timezone)

Se il parametro timezone è vuoto, restituisce la data senza fuso orario.

Altrimenti restituisce la data con fuso orario.

fn:adjust-time-to-timezone(time,timezone)

Se il parametro timezone è vuoto, restituisce il tempo senza fuso orario.

Altrimenti restituisce il tempo con fuso orario.

Funzioni correlate a QNames

名称 Spiegazione
fn:QName()  
fn:local-name-from-QName()  
fn:namespace-uri-from-QName()  
fn:namespace-uri-for-prefix()  
fn:in-scope-prefixes()  
fn:resolve-QName()  

Funzioni relative ai nodi

名称 Spiegazione
  • fn:name()
  • fn:name(nodeset)
Restituisce il nome del nodo corrente o del primo nodo del set di nodi specificato.
  • fn:local-name()
  • fn:local-name(nodeset)
Restituisce il nome del nodo corrente o del primo nodo del set di nodi specificato senza prefisso di namespace.
  • fn:namespace-uri()
  • fn:namespace-uri(nodeset)
Restituisce l'URI del namespace del nodo corrente o del primo nodo del set di nodi specificato.
fn:lang(lang)

Restituisce true se il linguaggio del nodo corrente corrisponde al linguaggio specificato.

Esempio: Lang("en") è true per <p xml:lang="en">...</p>

Esempio: Lang("de") è false per <p xml:lang="en">...</p>

  • fn:root()
  • fn:root(node)
Restituisce il nodo radice del albero di nodi del nodo corrente o del nodo specificato. Di solito è il nodo documento.

Funzioni relative alle sequenze

Funzione generale

名称 Spiegazione
fn:index-of((item,item,...),searchitem)

Restituisce la posizione degli elementi nella sequenza di oggetti che sono uguali al parametro searchitem.

Esempio: index-of ((15, 40, 25, 40, 10), 40)

Risultato: (2, 4)

Esempio: index-of (("a", "dog", "and", "a", "duck"), "a")

Risultato (1, 4)

Esempio: index-of ((15, 40, 25, 40, 10), 18)

Risultato: ()

fn:remove((item,item,...),position)

Restituisce una nuova sequenza costruita dal parametro item, eliminando contemporaneamente l'elemento specificato dal parametro position.

Esempio: remove(("ab", "cd", "ef"), 0)

Risultato: ("ab", "cd", "ef")

Esempio: remove(("ab", "cd", "ef"), 1)

Risultato: ("cd", "ef")

Esempio: remove(("ab", "cd", "ef"), 4)

Risultato: ("ab", "cd", "ef")

fn:empty(item,item,...)

Se il valore del parametro è una sequenza vuota, restituisce true, altrimenti restituisce false.

Esempio: empty(remove(("ab", "cd"), 1))

Risultato: false

fn:exists(item,item,...)

Restituisce true se il valore del parametro non è una sequenza vuota, altrimenti restituisce false.

Esempio: exists(remove(("ab"), 1))

Risultato: false

fn:distinct-values((item,item,...),collation)

Restituisce i valori unici.

Esempio: distinct-values((1, 2, 3, 1, 2))

Risultato: (1, 2, 3)

fn:insert-before((item,item,...),pos,inserts)

Restituisce una nuova sequenza costruita dal parametro item, inserendo il valore specificato nel parametro inserts alla posizione specificata dal parametro pos.

Esempio: insert-before(("ab", "cd"), 0, "gh")

Risultato: ("gh", "ab", "cd")

Esempio: insert-before(("ab", "cd"), 1, "gh")

Risultato: ("gh", "ab", "cd")

Esempio: insert-before(("ab", "cd"), 2, "gh")

Risultato: ("ab", "gh", "cd")

Esempio: insert-before(("ab", "cd"), 5, "gh")

Risultato: ("ab", "cd", "gh")

fn:reverse((item,item,...))

Restituisce l'ordine inverso degli elementi specificati.

Esempio: reverse(("ab", "cd", "ef"))

Risultato: ("ef", "cd", "ab")

Esempio: reverse(("ab"))

Risultato: ("ab")

fn:subsequence((item,item,...),start,len)

Restituisce una sequenza di elementi specificati dalla posizione start, la lunghezza della sequenza è specificata dal parametro len.

La posizione del primo elemento è 1.

Esempio: subsequence(($item1, $item2, $item3,...), 3)

Risultato: ($item3, ...)

Esempio: subsequence(($item1, $item2, $item3, ...), 2, 2)

Risultato: ($item2, $item3)

fn:unordered((item,item,...)) Restituisce gli elementi in base all'ordine determinato dall'implementazione.

Funzione di test della capacità della sequenza

名称 Spiegazione
fn:zero-or-one(item,item,...) Se i parametri contengono zero o un elemento, restituisce i parametri, altrimenti genera un errore.
fn:one-or-more(item,item,...) Se i parametri contengono uno o più elementi, restituisce i parametri, altrimenti genera un errore.
fn:exactly-one(item,item,...) Se i parametri contengono un elemento, restituisce i parametri, altrimenti genera un errore.

Uguaglianza, Unione, Intersezione e Eccezione

名称 Spiegazione
fn:deep-equal(param1,param2,collation) Se param1 e param2 sono uguali (deep-equal), restituisce true, altrimenti restituisce false.

Funzioni di aggregazione

名称 Spiegazione
fn:count((item,item,...)) Restituisce il numero di nodi.
fn:avg((arg,arg,...))

Restituisce la media dei valori dei parametri.

Esempio: avg((1,2,3))

Risultato: 2

fn:max((arg,arg,...))

Restituisce il parametro più grande rispetto agli altri parametri.

Esempio: max((1,2,3))

Risultato: 3

Esempio: max(('a', 'k'))

Risultato: 'k'

fn:min((arg,arg,...))

Restituisce il parametro più piccolo rispetto agli altri parametri.

Esempio: min((1,2,3))

Risultato: 1

Esempio: min(('a', 'k'))

Risultato: 'a'

fn:sum(arg,arg,...) Restituisce la somma dei valori numerici di ciascun nodo nella raccolta specificata.

Funzioni di generazione di sequenze

名称 Spiegazione
fn:id((string,string,...),node) Restituisce una sequenza di nodi di elementi, i cui valori ID corrispondono a uno o più valori specificati nel parametro string.
fn:idref((string,string,...),node) Restituisce una sequenza di nodi di elementi o attributi, i cui valori IDREF corrispondono a uno o più valori specificati nel parametro string.
fn:doc(URI)  
fn:doc-available(URI) Se la funzione doc() restituisce un nodo del documento, restituisce true, altrimenti restituisce false.
  • fn:collection()
  • fn:collection(string)
 

Funzioni di contesto

名称 Spiegazione
fn:position()

Restituisce l'indice della posizione del nodo attualmente trattato.

Esempio: //book[position()<=3]

Risultato: selezionare i primi tre elementi book

fn:last()

返回在被处理的节点列表中的项目数目。

例子://book[last()]

结果:选择最后一个 book 元素

fn:current-dateTime() 返回当前的 dateTime(带有时区)。
fn:current-date() 返回当前的日期(带有时区)。
fn:current-time() 返回当前的时间(带有时区)。
fn:implicit-timezone() 返回隐式时区的值。
fn:default-collation() 返回默认对照的值。
fn:static-base-uri() 返回 base-uri 的值。

XSLT 函数

此外,还有以下内置的 XSLT 函数:

名称 描述
current() 返回当前节点作为唯一成员的节点集。
document() 用于访问外部 XML 文档中的节点。
element-available() 检测 XSLT 处理器是否支持指定的元素。
format-number() 把数字转换为字符串。
function-available() 检测 XSLT 处理器是否支持指定的函数。
generate-id() 返回唯一标识指定节点的字符串值。
key() 检索以前使用 <xsl:key> 语句标记的元素。
node-set 将树转换为节点集。产生的节点集总是包含单个节点并且是树的根节点。
system-property() 返回系统属性的值。
unparsed-entity-uri() 返回未解析实体的 URI。

Top

其他 XML DOM 对象

Top