Home

Possibili errori di traduzione possono essere presenti in questo documento.

Translation time: 2006/01/28, Tadas Talaikis, info@nakagava.com

Solo il documento originale in inglese puo essere considerato ufficiale: http://www.w3.org/TR/2005/REC-xml-id-20050909/

W3C

xml:id Version 1.0

Raccomandazione W3C 9 Settembre 2005

Questa versione (in inglese):
http://www.w3.org/TR/2005/REC-xml-id-20050909/
Ultima versione (in inglese):
Versione Precedente (in inglese):
http://www.w3.org/TR/2005/PR-xml-id-20050712/
Curatori:
Jonathan Marsh, Microsoft mailto:jmarsh@microsoft.com
Daniel Veillard, Invited Expert mailto:daniel@veillard.com
Norman Walsh, Sun Microsystems mailto:Norman.Walsh@Sun.COM

Si prega di far riferimento agli errori noti di questo documento, i quali potrebbero includere alcune correzioni normative.

Vedere anche le traduzioni.

Questo documento è anche disponibile in questi formati non normativi: XML.


Abstract

Questo documento definisce il significato dell’attributo xml:id come un attributo ID in documenti XML e definisce il processamento di quest’attributo per identificare ID in mancanza di validazione, senza recuperare risorse esterne e senza dipendere di un subset interno.

Stato di questo Documento

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 nell’ Indice di rapporti tecnici del W3C presso http://www.w3.org/TR/.

Questo documento è una Raccomandazione del W3C. Questo documento è stato sviluppato dal W3C XML Core Working Group come parte dalla XML Activity. È stato rivisto dai Membri del W3C e da altre parti interessate ed è stato approvato dal Direttore. È 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.

La versione inglese di questa specifica è l’unica versione normativa. Traduzioni di questo documento sono disponibili.

Tutti i commenti sono ben accetti su public-xml-id@w3.org, una mailing list con un archivio pubblico. L’elenco degli errori noti di questo documento è disponibile.

Questo documento definisce il significato dell’attributo xml:id come un attributo ID in documenti XML e definisce il processamento di quest’attributo per identificare ID in mancanza di validazione, senza recuperare risorse esterne e senza dipendere di un subset interno.

Questo documento è basato su xml:id Version 1.0 Proposed Recommendation, 12 Luglio 2005. I feedback ricevuti durante quella revisione hanno avuto come conseguenza alcuni cambiamenti editoriali minori. Si documentano evidenze d’interoperatibiltà tra almeno due implementazioni di questa specifica nel Rapporto d’implementazioni. Un insieme di prova è anche disponibile.

Questo documento è stato prodotto sotto la 5 February 2004 W3C Patent Policy. Il Working Group mantiene un elenco pubblico di divulgazioni di brevetto attinente a questo documento; la pagina include anche istruzioni per divulgare (ed escludere) un brevetto. Chi abbia una conoscenza attuale di un brevetto che possa avere Rivendicazioni Essenziali relative a questa specifica deve divulgare l’informazione de conformità con la sezione 6 della linea di condotta W3C su brevetti.

Contenuti

1 Introduzione
2 Terminologia
3 Sintassi
4 Processamento d’Attributi xml:id
5 Informare l’Applicazione
6 Errori
7 Conformità
    7.1 Conformità con xml:id
    7.2 Conformità con il Set d’Informazione XML
8 Estensibilità

Appendici

A Riferimenti
B Riferimenti (Non Normativo)
C Impatto sulla Canonizzazione (Non Normativo)
D Tecnologie di Validazione (Non Normativo)
    D.1 Validazione con DTD
    D.2 Validazione con lo Schema XML
    D.3 Validazione con RELAX NG
E Normalizzazione del Valore d’Attributo in ID (Non Normativo)


1 Introduzione

[XML 1.0] e [XML 1.1] forniscono un meccanismo per annotare elementi con identificatori unici. Questo meccanismo consiste in dichiarare il tipo di un attributo come "ID", poi il parser convaliderà che

Le dichiarazioni dei subset DTD interno o esterno di un documento XML possono dichiarare gli attributi come di tipo ID. Comunque, il processamento dei subset DTD esterni è opzionale per i processori con conformità XML; e alcune specifiche, in particolare [SOAP], vietano completamente i DTD, non lasciando nessuna garanzia a tutti gli utenti del documento sulla possibilità di riconoscere con successo gli identificatori.

Gli identificatori si possono anche dichiarare via meccanismi esterni. Di particolare interesse è [XML Schemas] che provvede un tipo "xs:ID" con la stessa unicità e limitazioni di validità del XML. In ogni modo, no vi sono garanzie per gli utenti di trovare lo schema "corretto", né di poter processarlo se lo trovano.

Sarebbe desiderabile, per fare più vigoroso il collegamento delle subrisorse XML, un meccanismo che permetta il riconoscimento degli identificatori d’elemento unico da tutti i processori XML con conformità, validino o no. Questa specifica permette agli autori l’identificazione degli elementi con ID la possibilità di essere riconosciuti da qualsiasi processore, non precisando come, o se, sono disponibili dichiarazioni interne o esterne.

Un problema addizionale è che gli identificatori, siano basati in DTD o basati nello Schema XML, sono esposti attraverso differenti meccanismi concettuali- la proprietà infoset tipo d’attributo, o la famiglia di proprietà definizione di tipo rispettivamente. Un meccanismo uniforme di riconoscimento d’identificatori è raccomandabile.

Questa specifica fornisce un meccanismo di questo tipo: descrive la semantica degli attributi xml:id. Questa specifica è stata progettata per essere uno strato separato nel processamento e per essere compatibile con le tecnologie di validazione esistenti. Gli sviluppatori dovrebbero supportare il processamento xml:id e fare della designazione di tipo ID il comportamento per default dei suoi processori.

Questo è stato un principio guida nel disegno di questa specifica: il risultato del processamento xml:id dovrebbe essere lo stesso se una dichiarazione appropriata fosse stata usata dal processore.

2 Terminology

[Definizione: Le parole chiave deve, non deve, richiesto, dovrà, non dovrà, dovrebbe, non dovrebbe, raccomandato, potrebbe e facoltativo in questa specifica si devono interpretare come descritte in [IETF RFC 2119].]

[Definizione: Un processore xml:id è un modulo software che lavora in congiunzione con un processore XML per fornire accesso agli ID in un documento XML.]

[Definizione: un errore xml:id è un’errore non fatale che accade quando un processore xml:id trova un documento che abbia violato le limitazioni di questa specifica.]

Validazione è il processo che compara un documento XML (o parte di un documento XML) con una grammatica o set di regole per determinare se la struttura attuale del documento soddisfa le limitazioni della grammatica o le regole. Alcune tecnologie di validazione eseguiscono assegnazioni di tipo, determinando così non solo se il documento soddisfa le limitazioni specificate ma anche determinando, ad esempio, quali (elementi e/o) attributi sono tipo “ID”.

Benché spesso si eseguiscano insieme, la validazione e la designazione di tipo non sono lo stesso processo. Un processore che non convalidi XML 1.0, per esempio, può eseguire la designazione di tipo usando soltanto dichiarazione dal subset interno, senza mai avere nessun’informazione sulla validità strutturale del documento.

[Definizione: Il processamento di una designazione di tipo ID trasforma un valore d’attributo xml:id in un ID.] Questo si raggiunge spesso facendo il tipo dell’attributo "ID" nell’infoset o post-schema-validation infoset (PSVI), però questo non è l’unico meccanismo possibile.

Nota:

Il processamento a livello d’applicazione degli ID, includendo quali elementi si possono davvero esaminare e con quali valori ID, è oltre lo scopo di questa specifica.

3 Sintassi

Per [Namespaces in XML] (e[Namespaces in XML 1.1]), i prefissi che comincino con “xml” sono riservati per uso delle specifiche XML e correlate XML. Questa specifica autorizza l’uso dell’attributo “xml:id” per la sintassi comune degli identificatori in XML con la semantica qui specificata.

Gli autori di documenti XML dovrebbero nominare i suoi attributi ID "xml:id" per aumentare l’interoperabilità di questi identificatori nel Web.

In processori XML che riconoscano namespace, il prefisso "xml" è legato al nome namespace http://www.w3.org/XML/1998/namespace come si descrive in Namespace in XML [Namespaces in XML] (e [Namespaces in XML 1.1]). Si deve tenere conto che xml:id può essere anche usato da processori XML che non riconoscano namespace.

4 Processamento d’Attributi xml:id

Ogni attributo xml:id è processato così:

  1. Il valore dell’attributo è normalizzato secondo le regole per normalizzazione del valore d’attributo degli attributi di tipo ID. Per i particolari, si veda E Normalizzazione del Valore d’Attributo in ID.

    La proprietà infoset valore normalizzato è aggiornata con il valore normalizzato.

  2. La Designazione di tipo ID è eseguita con il valore normalizzato.

Un processore xml:id deve assicurare che le seguenti limitazioni si mantengano per tutti gli attributi xml:id:

Un processore xml:id dovrà assicurare che si compiano le seguenti limitazioni:

Un errore xml:id accade quando qualsiasi attributo xml:id non soddisfa le limitazioni.

Il processore xml:id esegue la designazione del tipo ID in tutti gli attributi xml:id, anche in quelli che non soddisfano le limitazioni.

Un processore xml:id dovrà aggiornare la proprietà infoset referenze, come si descrive nella Sezione 2.3 di [Set d’Informazione XML], e aggiornare qualsiasi struttura d’implementazione specifica usata per referenze crociate che riflettino i risultati della designazione di tipo ID.

Molte tecnologie di validazione impongono la limitazione per la quale un elemento XML può avere come massimo un attributo di tipo ID. Il processamento xml:id non impone questa limitazione.

Questa specifica definisce il processamento xml:id, ma corrisponde all’applicazione la determinazione del momento in cui accade questo processamento. Gli utenti d’applicazioni che forniscano mezzi per modificare documenti XML possono ragionevolmente aspettare che il processamento xml:id accada sempre che si faccia un cambiamento di un valore ID.

5 Informing the Application

Quando accade la designazione di tipo ID, il processore xml:id deve informare gli attributi xml:id assegnati all’applicazione. Dipende dall’implementazione la forma d’informare.

Il requisito chiave è che l’applicazione possa riconoscere i risultati delle designazioni di tipo ID.

6 Errori

Una violazione delle limitazioni di questa specifica ha come conseguenza un errore xml:id. Questi non sono errori fatali, ma dovranno essere informati dal processore xml:id. Per ragioni d’interoperabilità è fortemente raccomandabile che gli errori xml:id non siano ignorati silenziosamente.

7 Conformità

7.1 Conformità con xml:id

La conformità con xml:id per applicazioni che dipendano da processori XML e usino tecnologie di validazione consiste nell’uso della struttura xml:id spiegata in 4 Processamento d’Attributi xml:id e la conformità con le limitazione tanto di questa specifica quanto delle regole della tecnologia di validazione.

La conformità con xml:id per applicazioni che dipendano di processori XML non validanti è definita per la riconoscenza degli attributi xml:id come si spiega in 4 Processamento d’Attributi xml:id e la conformità con le limitazioni di questa specifica.

La conformità con le limitazioni che “devano” compiersi è obbligatoria. Si raccomanda che le applicazioni assicurino anche le altre limitazioni. Questa specifica non definisce limitazioni che siano semplicemente opzionali.

Un documento è conforme a questa specifica se non genera nessun errore xml:id.

7.2 Conformità con il Set d’Informazione XML

Questa specifica è conforme al [Set d’Informazione XML]. Le seguenti informazioni devono essere presenti nell’input infoset per abilitare un processamento corretto:

  • Item Informazione dell’elemento con proprietà attributi.

  • Item Informazione dell’attributo con proprietà nome namespace, nome locale e valore normalizzato.

Inoltre, le seguenti proprietà potrebbero essere presenti nell’output infoset:

  • proprietà tipo d’attributo negli Item Informazione dell’Attributo.

8 Estensibilità

Questa specifica non è estensibile. Non vi sono disposizioni che permettano ai disegnatori d’applicazioni alterare il nome dell’attributo xml:id, il set di valori dell’attributo che siano considerati ID, il luogo(i) in cui possa accadere, o fare altre estensioni.

A References

IETF RFC 2119
RFC 2119: Key words for use in RFCs to Indicate Requirement Levels. Internet Engineering Task Force, 1997. (Si veda http://www.ietf.org/rfc/rfc2119.txt.)
XML 1.0
Tim Bray, Jean Paoli, C.M. Sperberg-McQueen, et. al., curatori. Extensible Markup Language (XML) 1.0 (Third Edition). World Wide Web Consortium, 2004. (Si veda http://www.w3.org/TR/REC-xml/.)
XML 1.1
Tim Bray, Jean Paoli, C.M. Sperberg-McQueen, et. al., curatori. Extensible Markup Language (XML) 1.1. World Wide Web Consortium, 2004. (Si veda http://www.w3.org/TR/xml11/.)
XML Information Set
John Cowan and Richard Tobin, curatori. XML Information Set (Second Edition). World Wide Web Consortium, 2004. (Si veda http://www.w3.org/TR/xml-infoset/.)
Namespaces in XML
Tim Bray, Dave Hollander, e Andrew Layman, curatori. Namespaces in XML. World Wide Web Consortium, 1999. (Si veda http://www.w3.org/TR/REC-xml-names/.)
Namespaces in XML 1.1
Tim Bray, Dave Hollander, Andrew Layman, e Richard Tobin, curatori. Namespaces in XML 1.1. World Wide Web Consortium, 2004. (Si veda http://www.w3.org/TR/xml-names11/.)

B References (Non-Normative)

XML Schemas
Henry S. Thompson, David Beech, Murray Maloney, Noah Mendelsohn, curatori. XML Schema Part 1: Structures. World Wide Web Consortium, 2001. (Si veda http://www.w3.org/TR/xmlschema-1/.)
SOAP
Martin Gudgin, Marc Hadley, Noah Mendelsohn, et. al., curatori. SOAP Version 1.2 Part 1: Messaging Framework. World Wide Web Consortium, 2003. (Si veda http://www.w3.org/TR/soap12-part1/.)

C Impatto sulla Canonizzazione (Non Normativo)

La specifica Canonical XML Version 1.0 descrive un processo nel quale gli attributi nel namespace xml: sono ereditati in un documento canonico. Mentre questo produce un risultato accettabile con gli attributi xml:lang o xml:space, il processamento degli attributi xml:id in questa forma probabilmente produrrà documenti che contengano errori xml:id, specificamente valori d’attributo xml:id che non siano unici.

Questa è un’apparente fessura nel disegno del XML canonico. La specifica Exclusive XML Canonicalization Version 1.0 non ha questa caratteristica e può essere più appropriata per i documenti che abbiano ID.

D Tecnologie di Validazione (Non Normativo)

Quest’appendice descrive come il processamento xml:id interagisce con le tecnologie di validazione selezionate.

D.1 Con Validazione DTD

Si promuove l’uso per gli autori DTD degli attributi xml:id quando forniscano identificatori per elementi dichiarati nei suoi DTD.

Il seguente frammento DTD dà un esempio di dichiarazione per attributo xml:id:

<!ATTLIST someElement
    xml:id     ID          #IMPLIED
>

Si promuove per gli autori DTD la dichiarazione d’attributi chiamati xml:id con il tipo ID. Un documento che usi attributi xml:id che abbiano un tipo dichiarato diverso da ID sempre genereranno errori xml:id.

Gli utenti di documenti validati con l’uso d’attributi xml:id dichiarati propriamente possono riconoscere gli ID con la proprietà tipo d’attributo.

D.2 Con Validazione Schema XML

Per gli autori Schema XML si promuove l’uso degli attributi xml:id quando si forniscono gli identificatori per elementi dichiarati nei suoi schemi. Si tenga conto che questo può essere portato a termine più facilmente importando lo schema per XML namespace e usando la dichiarazione d’attributo che contiene.

Il seguente frammento Schema XML per il namespace XML mostra un esempio di dichiarazione d’attributo xml:id:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           targetNamespace="http://www.w3.org/XML/1998/namespace">

    <xs:attribute name="id" type="xs:ID"/>

</xs:schema>

Per gli autori Schema XML si promuove la dichiarazione d’attributi nominati xml:id con il tipo xs:ID. Un documento che usa attributi xml:id che abbiano un tipo dichiarato diverso da xs:ID sempre genereranno errori xml:id.

I consumatori di documenti che validino attributi xml:id contro uno schema appropriato per il namespace XML possono riconoscere ID attraverso la famiglia definizione di tipo delle proprietà PSVI.

Le applicazioni possono riconoscere attributi xml:id come ID usando concettualmente un Processore di Conformità Schema Minima e lo schema di sotto.

Gli effetti di un Processore di Conformità Schema Minima, processando lo schema di sotto, si possono vedere in approssimazione osservando gli attributi chiamati xml:id, assicurandosi che i valori di questi attributi abbiano la forma lessicale corretta (NCName), e che il valore sia unico dentro il documento.

D.3 Con Validazione RELAX NG

Gli autori di RELAX NG Grammar sono incoraggiati ad usare attributi xml:id quando forniscano gli identificatori per gli elementi dichiarati in loro schemi.

Il seguente frammento RELAX NG mostra un esempio di dichiarazione per l’attributo xml:id:

<optional xmlns="http://relaxng.org/ns/structure/1.0"
              datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
  <attribute name="xml:id">
    <data type="ID"/>
  </attribute>
</optional>

Gli autori RELAX NG Grammar sono incoraggiati a dichiarare attributi chiamati xml:id con il tipo xs:ID. Un documento che usi attributi xml:id che abbiano un tipo dichiarato diverso da xs:ID sempre genererà errori xml:id.

E Normalizzazione del Valore d’Attributo in ID (Non Normativo)

[XML 1.0] richiede che i parser normalizzino tutti i valori d’attributo. La normalizzazione espande i caratteri referenze, le entità referenze e pulisce i caratteri line end. Gli attributi del tipo ID sono esposti a regole addizionali di normalizzazione: rimuovere i caratteri leading e trailing space e sostituire le sequenze di spazi con un singolo spazio.

Il processore xml:id deve assicurare che entrambi i passi della normalizzazione eseguiscano tutti gli attributi chiamati xml:id. In particolare, il parser può non aver effettuato i passi addizionali della normalizzazione richiesti per gli attributi del tipo ID perché l’attributo può non essere stato dichiarato o essere stato dichiarato come un ID.

Si consideri il seguente documento:

<!DOCTYPE doc [
<!ATTLIST doc xml:id ID #IMPLIED>
]>
<doc xml:id="  one
">
<para xml:id="  two
"></para>
</doc>

Il valore iniziale di xml:id in doc sarà “uno” perché il parser sa che era un ID. Il valore iniziale in para sarà “due”. Giacché il parser non sapeva che era un ID, non effettuerà le normalizzazioni addizionali richieste.

Dopo il processamento xml:id, il valore degli attributi xml:id in doc e para sarà “uno” e “due”, rispettivamente. Questi valori propriamente normalizzati saranno memorizzati nella proprietà valore normalizzato nell’infoset. L’esecuzione del processamento xml:id cambia l’infoset se vi sono attributi xml:id normalizzati incompletamente.

Nota:

Per ragioni d’interoperabilità, i produttori di documenti dovranno usare valore completamente normalizzati che siano NCNames legali in attributi xml:id.

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

Australian Debt Consolidation Experts
medical insurance
Wedding
Annunci di escort e accompagnatrici a Rimini, Padova, Treviso, in Riviera Adriatica, in Versilia ...
Adult Films UK
Telecommunications Talk
Make Your Own Website
Free International Calls
Long island Cleaning service
mold killer
UK Swingers Genuine Contacts Site
Free Cams
business supplies
Free Webcams Chat
Vacuum Cleaner Bags