Schema XML

Schema XML XSD
Caratteristiche
Estensione .xsd
Tipo MIME application/xml, text/xml
PUID x-fmt / 280
Firma 3C( hexa )
Sviluppato da World Wide Web Consortium
Basato su Linguaggio di markup estensibile
Siti web www.w3.org/TR/xmlschema-0
www.w3.org/TR/xmlschema-1
www.w3.org/TR/xmlschema-2

XML Schema , rilasciato come raccomandazione dal W3C nel maggio 2001 , è un linguaggio di descrizione del formato di documento XML per la definizione della struttura e del tipo di contenuto di un documento XML. Questa definizione permette in particolare di verificare la validità di questo documento.

È possibile descrivere un'organizzazione di vocabolari di diversa origine, mediante l'uso di spazi dei nomi . È possibile combinare i diagrammi stessi ed esprimere una combinazione per il documento contenuto, come qualcuno che parla di geografia e sociologia nello stesso testo.

È anche possibile, dopo la convalida, sapere quali informazioni specifiche sulla regola sono state testate: è lo schema di convalida post del gioco o PSVI (infoset di convalida post-schema ).

Una definizione è costituita da uno o più documenti XML, solitamente chiamati ( XML Schema Definition in inglese o file XSD ).

Un'istanza di uno schema XML è in qualche modo l'equivalente di una DTD ( Document Type Definition ). L'XML Schema tuttavia porta diverse differenze con i DTD: consente ad esempio di definire domini di validità per il valore di un campo, mentre questo non è possibile in un DTD; d'altra parte, non consente la definizione di entità  ; XML Schema è esso stesso un documento XML, mentre i DTD sono documenti SGML .

Questo linguaggio di descrizione del contenuto del documento XML è esso stesso definito da uno schema, i cui tag di definizione sono auto-definiti (questo è un esempio di definizione ricorsiva ).

La raccomandazione W3C 1.0 consiste in un documento di presentazione (non normativo), un documento che specifica come definire la struttura e un documento che specifica come definire i dati. L'ultima edizione, la versione 1.1, di questa raccomandazione è stata pubblicata inaprile 2012.

Schema XML del modello

La raccomandazione specifica la convalida dei documenti XML da un modello astratto; fornisce il formato XML.

Per questo modello astratto, un diagramma è un insieme di componenti, come ad esempio:

Introduce anche il tipo anyType (any type), che è la base per tutti i tipi utilizzati.

Ogni componente è inquadrato da un'unità informativa, nel significato della raccomandazione del W3C XML Information Set (noto come Infoset ).

In termini di utilizzo, XML Schema consente di definire elementi e tipi di valore per nome o localmente in un contesto denominato. La combinazione di queste due modalità permette di definire quattro tecniche: quella nota come bambole russe (gli elementi vengono descritti incastrandoli l'uno nell'altro), quella delle fette di salame (definizioni globali degli elementi, ma locali delle tipologie), delle veneziane (definizione locale di elementi, ma definizione globale di tipologie), e del Giardino dell'Eden (definizione globale di elementi e tipologie).

XML Schema determina l'unicità come una combinazione di nodi, rispetto a un contesto, rispetto ai loro componenti. Così, ad esempio, è possibile affermare e verificare che una persona è unica, nel contesto di un elenco, in relazione al suo nome e al suo nome.

Tipi di dati

I tipi di dati incorporati sono:

Esempio

Un file XSD di esempio (person.xsd):

<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="personne"> <xs:complexType> <xs:sequence> <xs:element name="nom" type="xs:string" /> <xs:element name="prenom" type="xs:string" /> <xs:element name="date_naissance" type="xs:date" /> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>

Seguito da un file XML valido:

<?xml version="1.0" encoding="UTF-8"?> <personne xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="personne.xsd"> <nom>De Latour</nom> <prenom>Jean</prenom> <date_naissance>1967-08-13</date_naissance> </personne>

Implementazione Dublin Core

XML Schema corrisponde a un alto livello di formalizzazione negli schemi di classificazione . XML Schema viene utilizzato per implementare lo standard Dublin Core per i metadati .

Vedere: " Schemi XML per supportare le linee guida per l'implementazione di Dublin Core nella raccomandazione XML "

I nomi degli elementi sono indicati come segue:

<xs: element name = "title" type = "elementType" /> <xs: element name = "creator" type = "elementType" /> <xs: element name = "subject" type = "elementType" /> <xs: element name = "description" type = "elementType" /> <xs: element name = "publisher" type = "elementType" /> <xs: element name = "contributor" type = "elementType" /> <xs: element name = " date " type = "elementType" /> <xs: element name = "type" type = "elementType" /> <xs: element name = "format" type = "elementType" /> <xs: element name = " identifier " type = "elementType" /> <xs: element name = "source" type = "elementType" /> <xs: element name = " language " type = "elementType" /> <xs: element name = "relation" type = "elementType" /> <xs: element name = "coverage" type = "elementType" /> <xs: element name = " rights " type = "elementType" />

Esempio di utilizzo

XML Schema viene utilizzato insieme ai moduli XForms per convalidare i dati all'ingresso.

Storico

XML Schema è il culmine di varie proposte provenienti principalmente da Microsoft in collaborazione con l'Università di Edimburgo nel 1998. Ha origine dal linguaggio di descrizione SGML. Dopo aver trovato i propri limiti, Microsoft ha proposto di utilizzare XML per descrivere documenti XML con formati come XML-Data o Document Content Description e ha ricevuto il sostegno dell'Università di Darmstadt (Germania) nel 1999. Tutte le proposte convergono su una prima specifica di XML Schema all'inizioMaggio 2001.

Note e riferimenti

  1. Uno schema per schemi (normativo)
  2. (in) Presentazione di modelli di design in schemi XML e (in) Bambola russa (in) Schema Design Patterns , (in) Fetta di salame , (in) Veneziana e (in) Giardino dell'Eden
  3. Jean-Jacques Thomasson , XML Schema , Parigi, Eyrolles ,2002, 466  p. ( ISBN  2-212-11195-9 ) , p.  160-165
  4. Tipi di dati incorporati, raccomandazione schema XML , W3C
  5. QName
  6. (in) Pagine di copertina: XML Schema
  7. W3C raccomanda XML Schema , W3C Press Release, 2 maggio 2001

Bibliografia

  • I servizi web . Tecniche, approcci e strumenti XML, WSDL, SOAP, UDDI, RosettaNet, UML. Hubert Kadima, Valérie Monfort, Dunod, 2003 .

Vedi anche

Articoli Correlati

link esterno