From: Eric van der Vlist (vdv@dyomedea.com)
Date: 18/05/2004 - 12:14
On Tue, 2004-05-18 at 14:01, mercano wrote:
> > Il y a deux autres contournements :
> (...)
> > * Remplacer votre attribut "TypeCode" par un attribut xsi:type qui
> > permet de spécifier des types de données dans les documents.
>
> Exemple supposé:
> <xs:complexType name="generique" abstract="true">
> <xs:sequence>
> <xs:element name="a" type="..." minOccurs="0"/>
> <xs:element name="b" type="..." minOccurs="0"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="type1">
> <xs:complexContent>
> <xs:restriction base="generique">
> <xs:sequence>
> <xs:element name="a" type="..."/>
> </xs:sequence>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
> <xs:complexType name="type2">
> <xs:complexContent>
> <xs:restriction base="generique">
> <xs:sequence>
> <xs:element name="b" type="..."/>
> </xs:sequence>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
> <xs:element name="enregistrement" type="generique"/>
>
> J'ai bien compris le fonctionnement de la chose, mais est-il possible
> de spécifier le champ au lieu de l'élément (dans ce cas a ou b) en
> fonction du type ?
Oui, les deux types peuvent être aussi similaires que vous le souhaitez
à condition d'être dérivés d'un même type abstrait comme vous le
montrez.
Eric van der Vlist
--
Have you ever thought about unit testing XSLT templates?
http://xsltunit.org
Upcoming XML schema languages tutorial:
- Portland -half day- (27/07/2004) http://masl.to/?E6ED13728
------------------------------------------------------------------------
Eric van der Vlist http://xmlfr.org http://dyomedea.com
(ISO) RELAX NG ISBN:0-596-00421-4 http://oreilly.com/catalog/relax
(W3C) XML Schema ISBN:0-596-00252-1 http://oreilly.com/catalog/xmlschema
------------------------------------------------------------------------
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|