Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

From: Eric van der Vlist (vdv@dyomedea.com)
Date: 10/10/2003 - 09:51


On Fri, 2003-10-10 at 11:42, Alexandre Arcouteil wrote:

> C'est donc a priori sans issue pour vous ; mais vous pouriez construire
> votre schéma "à l'envers", c'est à dire par restriction plutôt que par
> extension. Par exemple :
>
> <xs:complexType name="B">
> <xs:all>
> <xs:element name="name" />
> <xs:element name="description" minOccurs="0"/>
> <xs:element name="properties" />
> <xs:element name="strings" />
> </xs:all>
> </xs:complexType>
>
> <xs:complexType name="A">
> <xs:complexContent>
> <xs:restriction base="B">
> <xs:all>
> <xs:element name="properties" />
> <xs:element name="strings" />
> </xs:all>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>

Oui, c'est exact, mais il faut noter que la dérivation par restriction
n'apporte strictement rien à un schéma en terme de modularité : la
dérivation reprend toutes les définitions du type de base. Si vous
modifiez le type de base (B) vous devez donc modifier également la
dérivation (A)!

La dérivation par restriction est donc uniquement une déclaration
permettant aux applications utilisant le PSVI (Post Schema Validation
Infoset) de savoir que A est dérivée de B et donc implicitement qu'une
classe sachant traiter B saura aussi traiter A.

En dehors de cette utilisation (encore marginale à ma connaissance),
cette dérivation n'apporte aucune modularité supplémentaire par rapport
à :

<xs:complexType name="B">
        <xs:annotation>
          <xs:documentation>Sur ensemble de A </xs:documentation>
        </xs:annotation>
        <xs:all>
                <xs:element name="name" />
                <xs:element name="description" minOccurs="0"/>
                <xs:element name="properties" />
                <xs:element name="strings" />
        </xs:all>
  </xs:complexType>

<xs:complexType name="A">
        <xs:all>
                <xs:element name="properties" />
                <xs:element name="strings" />
        </xs:all>
  </xs:complexType>

La dérivation est même plutôt plus verbeuse et moins facile à lire...

Eric

-- 
Read me on XMLhack.
                                      http://xmlhack.com/author.php?id=8
Upcoming schema tutorial:
 - Philadelphia (7/12/2003)       http://makeashorterlink.com/?V28612FC5
Tutoriel XSLT:
 - Paris (25/11/2003)             http://makeashorterlink.com/?L2C623FC5
------------------------------------------------------------------------
Eric van der Vlist       http://xmlfr.org            http://dyomedea.com
(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

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement