Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Candidat au titre de Membre du Club
    Inscrit en
    avril 2005
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : avril 2005
    Messages : 43
    Points : 12
    Points
    12

    Par défaut Le recours systématique aux types

    Bonjour,

    Je voulais avoir l'avis d'experts du XSD pour m'indiquer si le recours systématique aux types était une bonne pratique ou non.

    Plus précisément, lorsque l'on veux restreindre la taille d'un xs:string par un maxlength=10 par exemple, est-il plus propre de coder cela :

    Code :
    1
    2
    3
    4
    5
    <xs:element name="myElement" type="ns0:threeCharString">
        <xs:annotation>
            <xs:documentation>Bla bla.</xs:documentation>
        </xs:annotation>
    </xs:element>
    Avec :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    <xs:simpleType name="threeCharString">
        <xs:annotation>
            <xs:documentation>3-char strings maximum</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:maxLength value="3"/>
        </xs:restriction>
    </xs:simpleType>
    Plutôt que de faire directement :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    <xs:element name="myElement">
        <xs:annotation>
            <xs:documentation>Bla bla.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:maxLength value="3"/>
        </xs:restriction>
    </xs:element>
    J'ai l'impression que même si c'est plus modulaire, cela me parraît extrêmement lourd compte tenu de la prolifération de type possible (pour chaque longueur max différente dans ce cas précis).

    Quel est votre avis ?

    Merci.

  2. #2
    Membre Expert
    Inscrit en
    octobre 2011
    Messages
    671
    Détails du profil
    Informations forums :
    Inscription : octobre 2011
    Messages : 671
    Points : 1 173
    Points
    1 173

    Par défaut

    [0] Si un type ne s'applique qu'anecdotiquement, et qu'il ne fasse pas sujet de référence nulle part ailleur, il est bien entendu prête à rester anonyme, souhaitable ou non: chaqu'un à sa préférence; sinon, un type nommé peut vous aider et même parfois nécessaire en raison multiple: de réutilisable, prête à être référencié dans le schéma ou dehors - dans xquery ou xslt 2.0 -, de faire encore d'extension ou de restriction, de lisibilité et de clarté structurales.

    [1] Pour la deuxième construction, il faut tout de même mettre xs:simpleType là.
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <xs:element name="myElement">
        <xs:annotation>
            <xs:documentation>Bla bla.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
            <xs:restriction base="xs:string">
                <xs:maxLength value="3"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:element>

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •