Penso che la risposta alla tua domanda sia, sì. È possibile inviare un nodo a una funzione XSLT.
Se vi state chiedendo cosa usare per il valore dell'attributo as = "", avete diverse scelte. Se vuoi essere molto rilassato e accettare qualsiasi cosa, usa come = "item() *".
item() * .. sorta di serie di nodi? W3C
Sì, sono d'accordo sembra abbastanza senza significato non lo è. Però. A partire da CR, è piuttosto essenziale, in particolare lo se si desidera utilizzare i tipi. E voglio generare, diciamo, un nodeset .. scusa sequenza , in una variabile.
Questo crea una variabile che può incidere ad utilizzare XPath abbastanza prontamente. Cioè ricorda l'elemento() *.
tipi ... alcuni esempi. W3C
Da un messaggio esplicativo di Mike Kay, grazie Mike. Esempi:
<xsl:param name="x" as="item()"/>
il valore del parametro può essere qualsiasi elemento (cioè un nodo o valore atomico). Ma è deve essere un singolo elemento.
<xsl:param name="x" as="item()?"/>
il parametro può essere un singolo elemento o una sequenza vuota
<xsl:param name="x" as="item()+"/>
il parametro deve essere una sequenza di uno o più articoli - una sequenza vuota non è consentito
<xsl:param name="x" as="item()*"/>
il parametro può essere una qualsiasi sequenza di zero o più elementi - non vi sono vincoli sul suo valore.
<xsl:param name="x" as="node()*"/>
il parametro può essere qualsiasi sequenza di zero o più nodi
<xsl:param name="x" as="xs:atomicValue*"/>
il parametro può essere qualsiasi sequenza di zero o più valori atomici (es interi, stringhe, o booleani).
elemento() * è il tipo più generale possibile, corrisponde a tutto, come "Oggetto" in Java. Per questo motivo, di solito è possibile omettere lo . Ma non sempre, per esempio il tipo predefinito in xsl: variabile non è item() * ma documento nodo(), per garantire che
<xsl:variable name="rtf"><a>thing</a> </xsl:variable>
continua a comportarsi come XSLT 1.0
Usare questi per specificare i parametri, tipi di variabili ecc
stai chiedendo per le persone a scrivere il codice vero e proprio per te? Questo non funzionerà molto bene, temo ... – Tomalak
Data la formulazione della domanda ("funzione", ecc.) E il desiderio di elaborare semplicemente il nodo, penso che @unknown sia piuttosto nuovo per xslt. E alcuni esempi di codice che utilizzano libri/libri potrebbero aiutare, in particolare per altri neofiti di xslt che trovano questa domanda in una ricerca. –
Sto cercando una funzione XSLT, che accetta un nodo (praticamente qualsiasi nodo che possa essere) come parametro per la funzione XSLT? Se sì, posso avere la sintassi per la funzione XSLT? –