From: Eric van der Vlist (vdv@dyomedea.com)
Date: 09/03/2004 - 18:08
Bonjour,
On Tue, 2004-03-09 at 19:00, Alexandre Arcouteil wrote:
> Je vous aurais bien proposé ceci :
>
> <xs:element name="phone">
> <xs:complexType>
> <xs:simpleContent>
> <xs:restriction base="xs:string">
> <xs:pattern value="\d{2}[.]{1}\d{2}[.]{1}\d{2}[.]{1}\d{2}[.]{1}\d{2}"/>
> <xs:attribute name="type" type="xs:string" use="optional"
> default="mobile"/>
> </xs:restriction>
> </xs:simpleContent>
> </xs:complexType>
> </xs:element>
>
> Mais le validateur de schéma en ligne
> (http://apps.gotdotnet.com/xmltools/xsdvalidator/Default.aspx) me dit
> que c'est faux :( L'utilisation de la base xs:string dans ce cas serait
> incorrecte ?
Non, même si je déconseille chaudement l'utilisation de xs:string dans
90% des cas les validateurs ne génèrent pas des erreurs pour cette seule
raison :) !
Ici, ce qui pose problème, c'est qu'en une seule opération tu cherches à
la fois à restreindre xs:string et à l'étendre en ajoutant un attribut.
C'est verbeux, mais il faut faire deux opérations :
<xs:element name="phone">
<xs:complexType>
<xs:simpleContent>
<xs:extension>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:pattern value="\d{2}[.]{1}\d{2}[.]{1}\d{2}[.]{1}\d{2}[.]{1}\d{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:attribute name="type" type="xs:token" use="optional" default="mobile"/>
<xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
(non testé)
En clair (si W3C XML Schema peut être clair), on étend en lui ajoutant
un attribut un type simple qui est lui même la restriction de xs:token.
Par ailleurs, peut-être pourrait-on donner la liste des valeurs de
l'attribut?
Cordialement,
Eric van der Vlist
--
Read me on Advogato.
http://advogato.org/person/vdv/
Upcoming XML schema languages tutorial:
- Santa Clara -half day- (15/03/2004) http://masl.to/?J24916E96
------------------------------------------------------------------------
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:05 UTC
webmaster@xmlfr.org
|