Bonjour,
Le vendredi 25 février 2005 à 09:38 +0100, Portier Jean-Pierre a écrit :
.../...
> Avec cet exemple, est-il possible:
> 1) de pouvoir décrire dans un schéma que si 'key' vaut "classe", alors
> list DOIT avoir l'attribute 'niveau', par contre si 'key' vaut "ecole",
> alors list DOIT avoir les attributs 'cycle' ET 'quartier'
> 2) si l'on a une list qui contient les attributs "cycle" et "quartier"
> decrire la stat qui lui est associée, et si list contient l'attribut
> "niveau" l'autre 'stat' qui lui est associée
>
> J'ai essayé au travers des 'choice', mais mes connaissances en xml/schema
> ne me permettent pas d'aller bien loi.
>
> Auriez-vous une piste à suivre pour écrire le schema correspondant à
> ce problème ?
Ce type de schéma est impossible à décrire avec W3C XML Schema (cf
http://xmlfr.org/documentations/faq/020913-0003).
Les seules pistes sont donc :
* Modifier votre vocabulaire XML pour que vos éléments "list"
portent des nome différents (listClasse et listEcole par
exemple).
* Ecrire un schéma plus laxiste que ce que vous souhaitez qui
accepte toutes les combinaisons (y compris celles que vous
considérez comme invalides). Ajouter éventuellement des règles
Schematron à ce schéma.
* Utiliser RELAX NG au lieu de W3C XML Schema
Cordialement,
Eric van der Vlist
--
Did you know it? Python has now a Relax NG (partial) implementation.
http://advogato.org/proj/xvif/
------------------------------------------------------------------------
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)
Received on Fri Feb 25 10:10:54 2005