Chapter 18 Travailler avec XML


Dérivation de types

XML-Schema permet de dériver de nouveaux types en étendant ou en restreignant un type existant.

Dans PowerAMC, vous concevez le mécanisme d'extension en utilisant une généralisation entre deux classes. L'attribut étendu contentDerivation de la généralisation permet de définir le type de dérivation : extension ou restriction.


<xsd:complexType name="A">
 <xsd:simpleContent>
  <xsd:extension base="B">
 
  </xsd:extension>
 </xsd:simpleContent>
</xsd:complexType>

Pour concevoir la dérivation de type à partir d'un type de base (défini dans Settings\DataTypes\BasicDataTypes dans l'éditeur de langage objet) vous ne pouvez pas utiliser les classes et généralisations, vous devez pour ce faire utiliser les attributs étendus simpleContentBase et simpleContentDerivation. Par exemple, classe A dérive du type de données de base xsd:string. Vous définissez cette dérivation en spécifiant les valeurs suivantes pour la classe A :


<xsd:complexType name="A">
 <xsd:simpleContent>
  <xsd:extension base="xsd:string">
 
  </xsd:extension>
 </xsd:simpleContent>
</xsd:complexType>

<xsd:complexType name="A">
 <xsd:complexContent>
  <xsd:restriction base="B">
 
  </xsd:restriction>
 </xsd:complexContent>
</xsd:complexType>

 


Copyright (C) 2005. Sybase Inc. All rights reserved.