Copyright © 2002, 2003 Keith Isdale
È concesso il permesso di copiare, distribuire ovvero modificare questo documento sotto i termini della GNU Free Documentation License, versione 1.1 o qualsiasi versione successiva pubblicata dalla Free Software Foundation; con nessuna sezione invariante, con nessun testo di copertina anteriore e con nessun testo di copertina posteriore. Una copia di questa licenza è inclusa nella sezione intitolata "GNU Free Documentation License".
xsldbg è uno strumento progettato per aiutare a capire i fogli di stile. Ciò che lo rende differente dagli altri programmi per il debug di fogli di stile è la capacità di cercare oggetti interessanti e di rintracciare l'esecuzione dei fogli di stile.
Sommario
Lista delle Tabelle
xsldbg è uno strumento basato sul testo per effettuare il debug dei fogli di stile (il linguaggio per i fogli di stile estendibili - eXtensible Stylesheet Language) e fornisce comandi simili al programma Unix/Linux per il debug gdb. Fornisce tre modalità principali di esecuzione dei fogli di stile.
Esegui l'intero foglio di stile |
Passa alla prossima istruzione xsl |
Continua fino al prossimo punto di arresto, oppure fino all'inizio del foglio di stile |
Sui sistemi nei quali è disponibile la libreria readline puoi usare i tasti indietro/avanti per navigare nell'elenco dei comandi inseriti. Su tutti i sistemi l'ultimo comando inserito può essere ripetuto premendo semplicemente il tasto <INVIO>.
Se il tuo sistema operativo lo supporta, i nomi di file verranno espansi.
Diversi comandi accettano più di un argomento. Le virgolette (") possono essere utilizzare per far sì che espressioni complesse vengano trattate come un solo argomento. Ad esempio, break "* | @" ti permette di impostare un breakpoint sul template di nome "* | @"
La seguente tabella descrive i termini utilizzati nella guida ai comandi subito dopo
NOME_TEMPLATE : Un nome di template valido contiene solo codici di caratteri ASCII da 0x00 a 0x7F. Può essere un nome completamente qualificato, ad esempio "xsl:nomeTemplate". |
NOMEFILE : Un nome di file locale al sistema dell'utente. Può avere un prefisso "~" sulle piattaforme *nix e CYGWIN. Oppure variabili di ambiente nei SO (sistemi operativi) RISC |
URI : Uno Uniform Resource Identifier (Identificatore uniforme di risorsa) come definito dalla RFC 2396 |
NOME_MODO : Il modo di un template che può essere un nome completamente qualificato, ad esempio "xsl:nomeModo". |
QNAME : Un nome completamente qualificato, ad esempio "xsl:localPart" |
NUMRIGA : Un numero di riga valido nel <NOMEFILE> associato |
NUM_DI_FRAME : Un numero di riga nel frame valido col quale cambiare posizione |
ID_BREAKPOINT : Un numero valido di break point |
ID_WATCH : Un numero valido di espressione di osservazione come indicato dal comando showwatch |
PASSO: passo con il quale scorrere il codice, tra 0 e 9 |
(Commento): un commento circa il significato o l'uso di un comando |
{ opz1 | opz2 | opz2 .. etc} : Scegli una delle opzioni |
XPATH : una selezione xpath di nodo/i |
ID_PARAM : un numero valido di parametro come indicato dal comando showparam |
PERCORSO : Un percorso per cambiare la cartella di lavoro. Su qualche sistema operativo un prefisso di tipo "~" verrà sostituito dal percorso della cartella home |
TESTO : Testo libero (nessuna restrizione) |
COMANDO : Un comando valido per xsdbg |
QNAME : Un nome valido di variabile/parametro |
SORGENTE : Il foglio di stile da eseguire/in esecuzione. Vedi <NOMEFILE> e <URI> |
DATI : I dati (documento) xml da processare/in processamento dal foglio di stile. Vedi <NOMEFILE> e <URI> |
PERCORSO_DISP : Un terminale valido sul sistema operativo |
LIVELLO_TTY : Un livello valido di input/output da utilizzare |
Riguardanti l'aiuto :help |
Riguardanti l'esecuzione : {bye|exit| quit}, step, stepup, stepdown, next, continue, run, trace, setoption, options |
Riguardanti i parametri libxslt : addparam, delparam, showparam, output, setoption, options |
Riguardanti i template : templates, where, frame |
Riguardanti i break point : break, showbreak, delete, enable |
Visualizzazione di espressioni (xpath) : cat |
Visualizzazione di nodi : ls, dir, du, cat, pwd |
Visualizzazione di variabili : globals, locals, cat, addwatch |
Impostazione di variabili: set |
Selezione di nodi : source, data, cd |
Ricerca :search |
Riguardanti il sistema operativo :chdir, shell, tty |
Riguardanti i file : output, entities, system, public |
Comandi sui file disabilitati: validate, load, save, write, free |
Aggiunge un parametro libxslt ; equivalente a fornire --param <QNAME>:<XPATH> attraverso la riga di comando.
Aggiunge un'espressione da osservare. Vedi showwatch per i valori di osservazione
Nome scorciatoia: watch
Interrompe su un template, alla posizione di un foglio di stile o ad un file xml caricato da xsldbg, o al nodo corrente. È un comando introdotto in xsldbg 3.1.4: Quando si è in modalità compatibile con gdb i punti di interruzione rimasti orfani possono essere impostati per un file ed un numero di riga specificati ed essere risolti ad un punto effettivo più tardi.
Nome scorciatoia: b
xsldbg cercherà di indovinare l'URL completo a partire dal
nome del file senza il percorso specificato |
nome del file nella stessa directory del foglio di stile principale caricato |
nome del file relativo alla directory di lavoro corrente di xsldbg |
break -l xsldoc.xsl 26
Questo comando troverà corrispondenze con template di QNAME parziali completi e/o nomi di modi forniti. Ad esempio “template” corrisponderà con successo ad ogni QNAME che ha come parte locale “template”
Uno spazio dei nomi fornito in QNAME sarà espanso come specificato dagli spazi dei nomi definiti nel file sorgente XSL. Ad es. xsl:test1
sarà espanso come http://www.w3.org/199/XSL/Transform:test1
Un punto di interruzione richiesto può essere risolto come l'URL associato e il numero di riga. Ciò è fatto automaticamente dopo che il primo template è stato visto da xsldbg. I punti di interruzione sono ri-convalidati poco dopo l'avvio di ogni esecuzione.
La convalida automatica dei punti di interruzione è usata quando è in uso la modalità gdb – il comportamento predefinito di xsldbg
Tabella 3.4. Uso di break
break -l <NOMEFILE> <NUMRIGA> (Per impostare un breakpoint sul file e numero di riga specificati) |
break -l <URI> <NUMRIGA> (Per impostare un breakpoint sull'URI e numero di riga specificati) |
break <NOME_TEMPLATE> (Per interrompere sul template indicato o corrispondente.) |
break <NOME_TEMPLATE> <NOME_MODO> (Per interrompere sul template indicato con la modalità data.) > |
break "" <NOME_MODO> (Per arrestarsi su un template qualsiasi che ha un dato nome) |
break * (Per arrestarsi quando si incontra un template qualsiasi.) |
break \* (Per arrestarsi al template "*". Altri nomi che includono '*' non verranno trattati in modo speciale.) |
break (Per inserire un punto di arresto sul nodo corrente. Include nodi dati xml!) |
Stampa il risultato di un'espressione xpath nella modalità relativa corrente.
Cambia il percorso a quello specificato da un xpath.
Cambia la cartella di lavoro
Continua ad eseguire un foglio di stile, fermandosi su ogni breakpoint trovato.
Nome scorciatoia: c
Commuta sulla visualizzazione del nodo corrente dei dati xml. Oppure cambia i dati xml da usare
Elimina il punto di interruzione di un modello
Nome scorciatoia: d
Tabella 3.11. Uso di delete
delete (Per eliminare un punto di interruzione al nodo corrente) |
delete <ID_BREAKPOINT> (Per eliminare il punto di interruzione al numero di interruzione specificato) |
delete -l <NOMEFILE> <NUMRIGA> (Per eliminare nel file specificato, alla riga indicata) |
delete -l <URI> <NUMRIGA> (Per eliminare nell'URI specificato, alla riga indicata) |
delete <NOMETEMMPLATE> (Per eliminare un punto di interruzione nel template indicato) |
delete * (Per eliminare tutti i punti di interruzione) |
Elimina un parametro libxslt
Elimina un'espressione di osservazione o elimina tutte le espressioni di osservazione mostrate dal comando “showwatch”
Disabilita un breakpoint
Tabella 3.15. Uso di disable
disable (Per disabilitare un punto di interruzione nel nodo corrente) |
disable <ID_BREAKPOINT> (Per disabilitare un punto di interruzione col numero specificato |
disable -l <FILENAME> <LINENO> (Disabilita un punto di interruzione alla riga e al file specificati) |
disable -l <URI> <LINENO> (Disabilita un punto di interruzione alla riga e all'URI specificati) |
Abilita o disabilita un breakpoint (Commuta abilita/disabilita/)
Nome scorciatoia: e
Tabella 3.18. Uso di enable
enable (Per abilitare/disabilitare un punto di interruzione al nodo corrente) |
enable <ID_BREAKPOINT> (Per abilitare/disabilitare il punto di interruzione col numero specificato |
enable -l <NOMEFILE> <NRIGA> (Abilita/disabilita un punto di interruzione per file e riga specificati) |
enable -l <URI> <NRIGA> (Abilita/disabilita un punto di interruzione per URI e riga specificati) |
Stampa l'elenco delle entità General Parsed usate dal file di dati (documento)
Nome scorciatoia: ent
Esce dal processamento del foglio di stile il più presto possibile.
Stampa il frame dello stack alla profondità indicata
Nome scorciatoia: f
Stampa un elenco delle variabili o dei parametri globali del foglio di stile. Stampa il valore di una variabile globale
Mostra l'aiuto su un comando o una breve introduzione
Nome scorciatoia: h
Stampa una lista di variabili o parametri di un foglio di stile locale. Stampa il valore di una variabile locale
Salta oltre un xsl:call-template o xsl:apply-templates. Ha lo stesso effetto dell'esecuzione del comando "step" seguito da "up"
Nome scorciatoia: n
Specifica un file locate e scrivibile da usare per l'output dei risultati
Nome scorciatoia: o
Tabella 3.30. Uso di output
output <NOMEFILE> (Un nome di file su cui è permesso scrivere. Può avere un prefisso "~" sulle piattaforme *nix e CYGWIN, o può avere variabili di ambiente in RISC OS) |
output <URI> (L'<URI> può usare solo il protocollo "file://". È convertito al nome di un file adatto al sistema operativo) |
output - (invia all'output standard. Può essere usato solo al prompt dei comandi di xsldbg) |
Stampa il valore associato ad un ID pubblico attraverso li catalogo corrente
Nome scorciatoia: pub
Esce dal processamento del foglio di stile il più presto possibile.
Nome scorciatoia: q
Cerca in una banca dati di informazioni raccolte dai fogli di stile caricati
tutti i file di output sono scritti sul percorso specificato da "searchresultspath", se l'opzione è specificata, o nella stessa directory del foglio di stile fornito. searchresults.xml è normalmente trasformato da search.xsl, ma sarà trasformato da seachhtml.xsl se l'opzione "preferhtml" è impostata.
Quando viene eseguito il comando di ricerca, sarà creato un file xml (searchresults.xml). Potrai quindi elaborare questo file con un tuo foglio di stile per presentare i dati in altri modi. Se l'opzione "preferhtml" non è impostata, verrà stampato sullo schermo searchresult.txt
A seconda della quantità di dati raccolti, il completamento di questo comando può richiedere parecchio tempo.
Imposta una opzione per l'esecuzione di un foglio di stile
Dovrai usare il comando run per attivare le modifiche
Tabella 3.38. Uso di setoption
setoption <NOME_OPZIONE> <VALORE_INTERO> | ||||||||||||||||||||||||
Dove <NOME_OPZIONE> può essere | ||||||||||||||||||||||||
| ||||||||||||||||||||||||
Dove il valore è true se non è uguale a zero | ||||||||||||||||||||||||
Dove il valore è false se è uguale a zero | ||||||||||||||||||||||||
stdout Stampa tutti i messaggi di errore su stdout. Normalmente i messaggi di errore vanno a stderr. | ||||||||||||||||||||||||
setoption <NOME_OPZIONE> "<VALORE_STRINGA>" (Non deve contenere virgolette doppie in <VALORE_STRINGA>) | ||||||||||||||||||||||||
setoption <NOME_OPZIONE> <VALORE_STRINGA> (Non deve contenere spazi né virgolette doppie in <VALORE_STRINGA>) | ||||||||||||||||||||||||
Dove <NOME_OPZIONE> può essere | ||||||||||||||||||||||||
|
Esegue comandi della shell
Per mostrare un elenco dei punti di interruzione
Nome scorciatoia: show
Se esiste un modo sul punto di interruzione di un template, verrà inserito in fondo al nome del template del punto di interruzione. Un esempio dell'uscita è:
Breakpoint 3 enabled for template :"*" in file test1.xsl : line 105 |
Breakpoint 2 enabled for template :"* testMode" in file test1.xsl : line 109 |
Breakpoint 1 enabled for template :"* http://www.w3.org/1999/XSL/Transform:testMode" in file test1.xsl : line 113 |
Total of 3 breakpoints present |
Mostra l'espressione corrente sotto osservazione
Nome scorciatoia: watches
Tabella 3.42. Uso di showwatch
showwatch (Mostra le espressioni sotto osservazione attualmente selezionate ed i loro valori) |
showwatch 1 (Abilita la stampa automatica delle espressioni sotto osservazione. È la modalità predefinita) |
showwatch 0 (Disabilita la stampa automatica delle espressioni sotto osservazione) |
Passa a mostrare il nodo corrente del foglio di stile. Oppure cambia il foglio di stile da usare
Passa alla prossima istruzione del foglio di stile.
Nome scorciatoia: s
Discende ad un nuovo "frame di chiamata"
Nome scorciatoia: down
Risale ad un "frame di chiamata" più vecchio.
Nome scorciatoia: up
Questo non è un comando accurato, xsldbg cercherà di fermarsi il più vicino possibile.
Stampa una lista di fogli di stile caricati
Nome scorciatoia: style
Stampa il valore associato ad un file di sistema attraverso il catalogo corrente
Nome scorciatoia: sys
Stampa una lista di template disponibili. Cerca un template
Nome scorciatoia: t
Esegue il trace dell'esecuzione del foglio di stile stampando il file e le righe dei passi intermedi
Apre un terminale. Imposta il livello di redirezione tty.
Tabella 3.51. Uso di tty
tty <PERCORSO_DISPOSITIVO> (Dove <PERCORSO_DISPOSITIVO> è un terminale valido del sistema operativo. Prova soltanto ad aprire il terminale | |||||
tty <LIVELLO_TTY> (Imposta il livello di ridirezione su tty, dove <LIVELLO_TTY> è un livello valido di input/output da usare)
|
Convalida il file di output generato dal foglio di stile (disabilitato)
Esegue passo a passo il codice usando una gamma di velocità
Stampa la sequenza delle chiamate ai template (lo stack frame) e stampa la directory attuale.
Nome scorciatoia: w
xsldbg
Copyright del programma 2004 Keith Isdale (k_isdale tpg com au)
Fabio Avallone, Federico Zenith
Questa documentazione è concessa in licenza sotto i termini della GNU Free Documentation License.
Questo programma è concesso in licenza sotto i termini della GNU General Public License.
Vedi il componente kxsldbg del modulo kdewebdev nell'SVN di KDE.
xsldbg fa parte del progetto KDE http://www.kde.org/.
Puoi trovare xsldbg nel pacchetto kdewebdev all'indirizzo ftp://ftp.kde.org/pub/kde/, il sito FTP principale del progetto KDE.
Per poter utilizzare xsldbg devi avere installate le librerie libxslt, libexslt e libxml di KDE (sono normalmente disponibili nell'installazione tipica di KDE).
xsldbg normalmente è compilato come parte delle componenti di kxsldbg nel modulo kdewebdev
xsldbg è configurato usando gli argomenti passati dalla linea di comando e dal suo comando setoption
Would you like to make a comment or contribute an update to this page?
Send feedback to the KDE Docs Team