Gli ultimi tutorial di sviluppo web
 

XSD elementi semplici


Gli schemi XML definiscono gli elementi dei file XML.

Un elemento semplice è un elemento XML che contiene solo testo. Non può contenere altri elementi o attributi.


Che cosa è un semplice elemento?

Un elemento semplice è un elemento XML che può contenere solo testo. Non può contenere altri elementi o attributi.

Tuttavia, il "only text" restrizione è del tutto fuorviante. Il testo può essere di molti tipi diversi. Può essere uno dei tipi inclusi nella definizione dello schema XML (boolean, string, date, etc.) , oppure può essere un tipo personalizzato che può essere definita dall'utente.

È inoltre possibile aggiungere restrizioni (facets) di un tipo di dati al fine di limitare il contenuto, oppure si può richiedere i dati per abbinare un modello specifico.


Definizione di un elemento semplice

La sintassi per definire un elemento semplice è:

<xs:element name="xxx" type="yyy"/>

dove xxx è il nome dell'elemento e yyy è il tipo di dati dell'elemento.

XML Schema ha un sacco di tipi di dati incorporati. I tipi più comuni sono:

  • xs: string
  • xs: decimal
  • xs: integer
  • xs: boolean
  • xs: date
  • xs: time

Esempio

Qui ci sono alcuni elementi XML:

<lastname>Refsnes</lastname>
<age>36</age>
<dateborn>1970-03-27</dateborn>

Ed ecco le definizioni degli elementi semplici corrispondenti:

<xs:element name="lastname" type="xs:string"/>
<xs:element name="age" type="xs:integer"/>
<xs:element name="dateborn" type="xs:date"/>

Valori predefiniti e fissi per elementi semplici

Elementi semplici possono avere un valore predefinito o un valore fisso specificato.

Un valore predefinito viene assegnato automaticamente all'elemento quando non viene specificato alcun altro valore.

Nel seguente esempio il valore di default è "red" :

<xs:element name="color" type="xs:string" default="red"/>

Un valore fisso viene anche assegnato automaticamente all'elemento, e non è possibile specificare un altro valore.

Nel seguente esempio il valore fisso è "red" :

<xs:element name="color" type="xs:string" fixed="red"/>