Possibili errori di traduzione possono essere presenti in questo documento. Translation time: 2005/12/20, Tadas Talaikis, info@nakagava.com Solo il documento originale in inglese puo essere considerato ufficiale: http://www.w3.org/TR/2004/REC-xml-infoset-20040204 |
Si prega di far riferimento agli errori noti di questo documento, i quali potrebbero includere alcune correzioni normative.
Vedere anche le traduzioni.
Copyright ©1999-2004 W3C® ( MIT, ERCIM, Keio), Tutti i diritti riservati. Si usano le regole W3C su responsabilità, marchio registrato, uso del documento e licenza del software.
Questa specifica fornisce un set di definizioni con lo scopo di essere usate in altre specifiche che bisognino fare riferimento all’informazione contenuta in un documento XML.
Questa sezione descrive lo stato di questo documento al momento della sua pubblicazione. Altri documenti possono sostituire questo documento. Un elenco delle pubblicazioni attuali del W3C e l´ultima revisione di questo rapporto tecnico si trova presso http://www.w3.org/TR/.
Questo documento è una Raccomandazioni dal W3C. È stato rivisto dai Membri del W3C e da altre parti interessate ed è stato approvato dal Direttore come una Raccomandazione W3C. È un documento stabile e può essere usato come materiale di riferimento o citato da un altro documento come una normativa di riferimento. L'obiettivo del W3C nel fare le Raccomandazioni è quello di richiamare l'attenzione alle specifiche e di promuovere la loro più ampia diffusione. Questo aumenta la funzionalità e l'interoperabilità del Web.
Questo documento aggiorna l’Infoset per coprire XML 1.1 e Namespaces 1.1, chiarifica le conseguenze di certi tipi d’invalidità e rettifica alcuni errori tipografici. È un prodotto della W3C XML Activity. La versione inglese di questa specifica è l’unica versione normativa. In ogni modo, traduzioni di questo documento sono disponibili presso http://www.w3.org/2003/03/Translations/byTechnology?technology=xml-infoset.
Si può trovare documentazione attinente alla proprietà intellettuale pertinente a questa raccomandazione nella pagina di rivelazione IPR pubblica del Working Group.
Si prega di informare gli errori di questo documento a www-xml-infoset-comments@w3.org (archivo pubblici disponibili). L’elenco degli errori noti di questa Raccomandazione si trova a http://www.w3.org/2001/10/02/xml-infoset-errata.html.
Questa specifica definisce un set astratto di dati chiamato Set d’Informazione XML (Infoset). L’obiettivo è quello di fornire un set consistente di definizioni con lo scopo di essere usate in altre specifiche che bisognino fare riferimento all’informazione contenuta in un documento XML ben formato [XML].
Non intende essere esaustiva; il criterio fondamentale per includere item informazione o proprietà è stato quello dell’utilità possibile per specifiche future. Neanche è un set minimo d’informazione che deva essere ritornato da un processore XML.
Un documento XML ha un set d’informazione se è ben formato e soddisfa le restrizioni di namespace descritte sotto. Non vi sono requisiti che sottomettano un documento XML valido all’esistenza di un set d’informazione.
I set d’informazione si possono creare con altri metodi (non descritti in questa specifica) che non siano analizzare un documento XML. Vedere Infoset Sintetici sotto.
Un set d’informazione di un documento XML consiste in una serie d’item informazione; il set d’informazione per qualsiasi documento XML ben formato conterrà almeno un item informazione del documento e molti altri. Un item informazione è una descrizione astratta di alcune parti di un documento XML: ogni item informazione ha un set di proprietà di nomi associati. In questa specifica, i nomi delle proprietà si mostrano tra parentesi quadrati, [così]. Nella sezione 2 si fa un elenco dei tipi d’item informazione.
Il Set d’Informazione XML non ha bisogno né preferenza per un interface specifico o alcuna classe di interface. Questa specifica presenta il set d’informazione come un albero modificato con lo scopo di garantire la sua chiarezza e semplicità, però non c’è bisogno di utilizzare il Set d’Informazione XML soltanto attraverso una struttura d’albero; altri tipi di interface, inclusi (ma non limitati a) gli interface con base event e con base query, sono anche capaci di provvedere informazione conforme al Set d’Informazione XML.
I termini "set d’informazione" e "item informazione" sono similari in significato ai termini generici "albero" e "nodo" come usati in calcolo. Comunque, i termini precedenti si usano in questa specifica con lo scopo di ridurre una possibile confusione con altri modelli specifici di dati. Gli item Informazione non coincidono esattamente con i nodi del DOM o gli “alberi” e i "nodi" del modello di dati XPath.
In questa specifica, le parole "deve", "dovrà", e "potrebbe" hanno il significato specificato in [RFC2119], salvo che non appaiano in lettere maiuscole.
Le diverse versioni della specifica XML possono specificare diverse regole d’analisi. Il set d’informazione di un documento XML è definito come quello che si ottenne analizzandolo di conformità con le regole della specifica la cui versione sia corrispondente con quella del documento. Un documento che non specifichi un numero di versione è considerato come di versione 1.0. Se un processore XML accetta un documento con un numero di versione che non capisce, non sarà capace di produrre con certezza il set d’informazione corretto.
I documenti XML che non siano conformi al [Namespaces], benché tecnicamente siano ben formati, non si considerano che abbiano set di informazione significativi. Cioè, questa specifica non definisce un set d’informazione per documenti che abbiano nomi di elemento o attributo che contengano due puntini usati in maniere diverse a quella prescritta da [Namespaces].
Inoltre, questa specifica non definisce un set d’informazione per documenti che usino referenze relative URI in dichiarazioni namespace. Questo è d’accordo alla decisione del W3C XML Plenary Interest Group descritta in [Relative Namespace URI References].
Il valore di una proprietà [nome namespace] è il valore normalizzato del corrispondente attributo namespace; il processore non applica nessun escaping URI.
Un set d’informazione descrive il documento XML con referenze d’entità già espanse, vale a dire, rappresentate dagli item informazione corrispondenti al testo sostituito. Comunque, ci sono alcune circostanze in cui un processore può non eseguire questa espansione. Un’entità può non essere dichiarata o può non essere riparata. Un processore non-validante può scegliere di non leggere tutte le dichiarazioni, e anche se lo fa, può non espandere tutte le entità esterne. In questi casi si usa un item informazione referenza d’entità non espansa per rappresentare la referenza entità.
I valori di tutte le proprietà dell’Infoset sono d’accordo alla normalizzazione end-of-line descritta in [XML], 2.11 "Maneggio End-of-Line".
Molti item informazione hanno una proprietà [base URI] o [dichiarazione base URI]. Queste si calcolano d’accordo a [XML Base]. La ricerca della risorsa può implicare riorientarla al livello d’analisi (per esempio, in un risolutore d’entità) o sotto; in questo caso la base URI è l’URI finale usata per ricuperare la risorsa dopo essere riorientata.
Il valore di queste proprietà non riflette nessun escaping URI che possa essere richiesto per ricuperare la risorsa, ma può includere caratteri scappati se questi sono stati specificati nel documento, o ritornati da un server, nel caso di riorientamento.
In alcuni casi (come un documento letto da una catena o un pipe) le regole di [XML Base] possono avere come conseguenze una base URI che si applichi come dipendente. In questi casi questa specifica non definisce il valore delle proprietà [base URI] o [dichiarazione base URI].
Quando si risolvano relative URI la proprietà [base URI] dovrebbe essere usata con preferenza ai valori degli attributi xml:base; possono essere incoerenti nel caso d’Infoset Sintetici.
Alcune proprietà possono a volte avere il valoresconosciuto o non ha valore, e si dice che il valore della proprietà è sconosciuto o che la proprietà non ha valore rispettivamente. Questi valori si distinguono tra loro e da altri valori. In particolare si distinguono della catena vuota, del set vuoto e dell’elenco vuoto, tutti i quali non hanno membri. Questa specifica non usa il termine nulla giacché in alcune comunità ha connotazioni particolari che si vogliono evitare qui.
Come abbiamo già detto, un documento XML non deve essere valido per avere un set d’informazione. Comunque, alcune classi d’invalidità affettano i valori assegnati ad alcune proprietà. Le entità, le notazioni, gli elementi e gli attributi possono non essere dichiarati. Le notazioni e gli elementi possono essere dichiarati più di una volta (dichiarazioni molteplici sono valide per entità e attributi). Un ID può essere non-definito o molteplicemente definito. Si farà riferimento a questi casi sotto, quando sia attinente, nelle definizioni d’Item Informazione.
Questa specifica descrive il set d’informazione che risulta di analizzare un documento XML. I set d’informazione possono essere costruiti con altri metodi, per esempio usando un API come il DOM o trasformando il set d’informazione esistente.
Un set d’informazione di un documento reale dovrà necessariamente essere compatibile in molti sensi; ad esempio la proprietà [in-scope namespace] di un elemento sarà compatibile con le proprietà [attributi namespace] dell’elemento e i suoi antenati. Questo potrebbe non accadere in un set d’informazione costruito con altri metodi; nel quale non ci sarà nessun documento XML corrispondente al set d’informazione, e la serializzazione richiederà la risoluzione delle incompatibilità (ad esempio, producendo dichiarazioni namespace corrispondenti ai namespace in scope).
Un set d’informazione può contenere fino ad undici tipi diversi d’item informazione, come di seguito si spiegherà. Ogni item informazione ha delle proprietà. Per facilitare il riferimento, ad ogni proprietà si dà un nome, indicato [cosi]. Per ogni item informazione si forniscono link con la definizione e/o la sintassi nella Raccomandazione XML 1.0 [XML].
Definizione XML: documento (Sezione 2, Documenti)
Sintassi XML: [1] Documento (Sezione 2.1, Documenti XML Ben Formati)
Vi è esattamente un item informazione del documento nel set d’informazione, e tutti gli altri item informazione sono accessibili dalle proprietà dell’item informazione del documento, tanto direttamente quanto indirettamente attraverso le proprietà degli altri item informazione.
L’item informazione del documento ha le seguenti proprietà:
Definizione XML: elemento (Sezione 3, Strutture Logiche)
Sintassi XML: [39] Elemento (Sezione 3,Strutture Logiche)
Vi è un item informazione dell’elemento per ogni elemento che appaia in un documento XML. Uno degli item informazione dell’elemento è il valore della proprietà [elemento del documento] dell’item informazione del documento, corrispondente alla radice dell’elemento albero, e tutti gli altri item informazione dell’elemento sono accessibili seguendo ricorrentemente la sua proprietà [derivata].
Un item informazione dell’elemento ha le seguenti proprietà:
xmlns, la cui proprietà [prefisso] non ha valore) hanno un namespace URI di http://www.w3.org/2000/xmlns/. Se l’elemento non ha dichiarazioni namespace, il set non ha membri.
xml che è implicitamente limitato al nome namespace http://www.w3.org/XML/1998/namespace. Non contiene un item con il prefisso xmlns (usato per dichiarare namespaces), giacché un’ applicazione non può mai incontrare un elemento o un attributo con quel prefisso. Il set includerà gli item namespace corrispondenti a tutti i membri di [attributi namespace], eccetto quelli che rappresentino dichiarazioni della forma xmlns="" o xmlns:name="", che non dichiarano un namespace ma piuttosto non dichiarano il namespace per difetto e i prefissi. Quando risolva questi prefissi di nomi qualificati questa proprietà dovrebbe essere usata con preferenza alla proprietà [attributi namespace]; potrebbero apparire incoerenze nel caso di Infoset Sintetici.
Definizione XML: attributo (Sezione 3.1, Etichetta di Inizio, Etichetta Finale, Etichetta Elemento Vuoto)
Sintassi XML: [41] Attributo (Sezione 3.1, Etichetta di Inizio, Etichetta Finale, Etichetta Elemento Vuoto)
Vi è un item informazione dell’attributo per ogni attributo (specificato o assunto per difetto) di ogni elemento nel documento, inclusi quelli che sono dichiarazioni di namespace. Questi, nonostante, appaiono come membri di una proprietà dell’ elemento [attributi namespace] piuttosto che delle sue proprietà [attributi].
Gli attributi che si dichiarino nel DTD senza valore per difetto né siano specificati nell’etichetta d’inizio non sono rappresentati nell’item informazione dell’attributo.
Un item informazione dell’attributo ha le seguenti proprietà:
Definizione XML: istruzione di processamento (Sezione 2.6, Istruzione di Processamento)
Sintassi XML: [16] PI (Sezione 2.6, Istruzione di Processamento)
Vi è un item informazione istruzione di processamento per ogni istruzione di processamento nel documento. Le dichiarazioni XML e le dichiarazioni di testo per entità esternamente analizzate non vengono considerate come istruzioni di processamento.
Un item informazione istruzione di processamento ha le seguenti proprietà:
xml:base.
Definizione XML: Sezione 4.4.3, Incluso se Validante
Un item informazione referenze d’entità non-espansa serve come un placeholder che permette ad un processore XML indicare che non ha espanso un’entità analizzata esternamente. Vi è un item informazione per ogni referenze non-espansa ad un’entità esterna generale dentro il contenuto di un elemento. Un processore XML validante, o un processore non-validante che sia in grado di leggere tutte le entità esterne generali, non creerà mai un item informazione referenze d’entità non-espansa per un documento valido.
Un item informazione referenze d’entità non-espansa ha le seguenti proprietà:
Sintassi XML: [2] Char (Sezione 2.2, Caratteri)
Vi è un item informazione del carattere per ogni carattere di dati che appaia nel documento, sia letteralmente come referenze di carattere, o dentro una sezione CDATA.
Ogni carattere è un item informazione separato logicamente, ma le applicazioni XML sono libere di aggruppare caratteri in gruppi più grandi se vi è bisogno o risulta consigliabile.
Un item informazione del carattere ha le seguenti proprietà:
Definizione XML: commento (Sezione 2.5, Commenti)
Sintassi XML: [15] Commento (Sezione 2.5, Commenti)
Vi è un item informazione del commento per ogni commento XML nel documento originale, eccetto quelli che appaiano nel DTD (che non sono rappresentati).
Un item informazione del commento ha le seguenti proprietà:
Definizione XML: dichiarazione di tipo di documento (sezione 2.8, Prologo e Dichiarazione di Tipo di Documento)
Sintassi XML: [28] doctypedecl (sezione 2.8, Prologo e Dichiarazione di Tipo di Documento)
Se il documento XML ha una dichiarazione di tipo di documento, allora il set d’informazione contiene un unico item informazione dichiarazione di tipo di documento. Queste entità e notazioni si forniscono come proprietà dell’item informazione del documento, non come item informazione dichiarazione di tipo di documento.
Un item informazione dichiarazione di tipo di documento ha le seguenti proprietà:
Definizione XML: entità (sezione 4, Strutture Fisiche)
Sintassi XML: [71] GEDecl (sezione 4.2, Entità)
Vi è un item informazione entità non-analizzata per ogni entità generale non-analizzata dichiarata nel DTD.
Un item informazione entità non-analizzata ha le seguenti proprietà:
Definizione XML: notazione (sezione 4.7, Notazione)
Sintassi XML: [82] NotationDecl (sezione 4.7, Notazione)
Vi è un item informazione della notazione per ogni notazione dichiarata nel DTD.
Un item informazione della notazione ha le seguenti proprietà:
Ogni elemento nel documento ha un item informazione namespace per ogni namespace che è in scope per l’elemento.
Un item informazione namespace ha le seguenti proprietà:
xmlns:. Se il nome dell’attributo è semplicemente xmlns, e perciò la dichiarazione è del namespace per difetto, questa proprietà non ha valore.
Siccome lo scopo del Set d’Informazione è quello di fornire un set di definizioni, la conformità è una proprietà delle specifiche che usino queste definizioni, piuttosto che delle realizzazioni.
Le specifiche che facciano riferimento all’Infoset devono:
Se una specifica permette la costruzione di un infoset che abbia incoerenze come quelle descritta sopra in Infoset Sintetici potrebbe descrive come queste incoerenze devono risolversi, e dovrebbe farlo se fornisce la serializzazione dell’infoset.
http://www.w3.org/TR/REC-xml-names.
http://www.w3.org/TR/xml-names11.
http://www.ietf.org/rfc/rfc2119.txt.
http://www.w3.org/TR/REC-xml.
http://www.w3.org/TR/xml11.
http://www.w3.org/TR/xmlbase.
http://www.w3.org/TR/REC-DOM-Level-1.
http://www.w3.org/TR/NOTE-xptr-infoset-liaison.
http://www.w3.org/2000/09/xppa.
http://www.w3.org/TR/xml-infoset-rdfs.
Sebbene la Raccomandazione XML [XML] riguarda basicamente la sintassi XML, include anche alcuni requisiti specifici di rapporto per i processori XML.
I requisiti di rapporto includono errori, che sono oltre lo scopo di questa specifica, e informazione del documento. Tutti i requisiti XML per riportare informazione del documento sono stati integrati nel Set d’Informazione XML, i numeri fra parentesi fanno riferimento alle sezioni della Raccomandazione XML:
Considerare il seguente esempio di documento XML:
<?xml version="1.0"?>
<msg:message doc:date="19990421"
xmlns:doc="http://doc.example.org/namespaces/doc"
xmlns:msg="http://message.example.org/"
>Phone home!</msg:message>
Il set d’informazione di questo documento XML contiene i seguenti item informazione:
http://message.example.org/", parte locale "message",
e prefisso"msg".
http://doc.example.org/namespaces/doc", parte locale "date", prefisso "doc", e valore normalizzato "19990421".
http://www.w3.org/XML/1998/namespace,
http://doc.example.org/namespaces/doc, e http://message.example.org/.
La seguente informazione non è contenuta nella versione attuale del Set d’Informazione XML (quest’elenco non intende d’essere esaustivo):
<foo/> e <foo></foo>.
Vedere RDF Schema for the XML Informazione Set per una caratterizzazione formale dell’Infoset.
Associating Style Sheets with XML documents
XML-Signature XPath Filter 2.0
XPointer element() Scheme
XPointer Framework
XPointer xmlns() Scheme
XML Inclusions (XInclude) Version 1.0
XML-binary Optimized Packaging
xml:id Version 1.0
XML Information Set (Second Edition)
OWL Web Ontology Language - Use Cases and Requirements
Ruby Annotation in Spanish
Ruby Annotation in Italian
SOAP Introduction