simpleType

Definisce un tipo semplice che determina i vincoli e le informazioni sui valori degli attributi o degli elementi che contengono solo testo.

<simpleType
  final = (#all | (list | union | restriction)) 
  id = ID 
  name = NCName 
  {any attributes with non-schema Namespace}...>
Content: (annotation?, (restriction | list | union))
</simpleType>

Attributi

  • final
    Tipo di derivazione. L'attributo final impedisce il tipo di derivazione specificato per questo elemento simpleType. Il valore può contenere #all o un elenco costituito da un sottoinsieme di list, union o restriction.

    list Impedisce la derivazione tramite elenco.
    union Impedisce la derivazione tramite unione.
    restriction Impedisce la derivazione per restrizione.
    #all Impedisce tutte le derivazioni (elenco, unione e restrizione).

    Facoltativo.

  • id
    ID dell'elemento. Il valore di id deve essere di tipo ID ed essere univoco all'interno del documento che contiene l'elemento.

    Facoltativo.

  • name
    Nome del tipo. Il nome deve essere un NCName (No-Colon-Name), come indicato nella specifica relativa agli spazi dei nomi XML.

    Se specificato, il nome deve essere univoco in tutti gli elementi simpleType e complexType.

    Obbligatorio se l'elemento simpleType è figlio dell'elemento schema. Non consentito negli altri casi.

Informazioni sull'elemento

Numero di occorrenze Illimitato
Elementi padre attribute, element, list, restriction (simpleType), schema, union
Contenuto annotation, list, restriction (simpleType), union

Osservazioni

I tipi semplici vengono definiti derivandoli da tipi semplici esistenti, ovvero tipi di dati incorporati e tipi semplici derivati. Un tipo semplice non può contenere elementi né disporre di attributi.

È possibile definire un tipo semplice utilizzando uno degli elementi che seguono.

restriction Limita l'intervallo di possibili valori del tipo semplice a un sottoinsieme di quelli del tipo semplice ereditato.
list Definisce un tipo semplice contenente un elenco, separato da spazi vuoti, dei valori di un tipo semplice ereditato.
union Definisce un tipo semplice contenente un'unione dei valori di due o più tipi semplici ereditati.

Una dichiarazione simpleType contenuta in un elemento complexType o attribute definisce tale tipo semplice nell'ambito del complexType o attribute che lo contiene. Una dichiarazione simpleType con l'elemento schema come padre ha un ambito globale all'interno di tale schema.

Dopo avere definito un tipo semplice, è possibile utilizzarlo in una dichiarazione di attributo o elemento o in una dichiarazione complexType, che può essere a sua volta utilizzata in una dichiarazione di elemento.

Esempi

Negli esempi che seguono vengono illustrate definizioni di tipi semplici che utilizzano gli elementi restriction, list e union.

Restriction

<xs:simpleType name="freezeboilrangeInteger">
  <xs:restriction base="xs:integer">
    <xs:minInclusive value="0"/>
    <xs:maxInclusive value="100"/>
  </xs:restriction>
</xs:simpleType>

List

<xs:simpleType name="listOfDates">
  <xs:list itemType="xs:date">
</xs:simpleType>

Union

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:attribute name="allframesize">
  <xs:simpleType>
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="roadbikesize"/>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="mountainbikesize"/>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
</xs:attribute>

<xs:simpleType name="roadbikesize">
  <xs:restriction base="xs:positiveInteger">
    <xs:enumeration value="46"/>
    <xs:enumeration value="52"/>
    <xs:enumeration value="55"/>
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="mountainbikesize">
  <xs:restriction base="xs:string">
    <xs:enumeration value="small"/>
    <xs:enumeration value="medium"/>
    <xs:enumeration value="large"/>
  </xs:restriction>
</xs:simpleType>
</xs:schema>

Vedere anche

Informazioni di riferimento sullo schema XML (XSD) | Elementi di uno schema XML

Per ulteriori informazioni, vedere il documento del W3C dal titolo XML Schema Part 1: Structures Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/\#element-simpleType/ (informazioni in lingua inglese).