IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: Pour ou contre XML Schema?

Votants
145. Vous ne pouvez pas participer à ce sondage.
  • pour

    120 82,76%
  • contre

    2 1,38%
  • indifférent

    23 15,86%
Valider XML Discussion :

A quoi sert XML-Schema


Sujet :

Valider XML

  1. #1
    Community Manager

    Profil pro
    Inscrit en
    Avril 2014
    Messages
    4 207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2014
    Messages : 4 207
    Points : 13 061
    Points
    13 061
    Par défaut A quoi sert XML-Schema
    Les schémas XML (xsd) sont une évolution des DTD pour la validation des documents XML. Ils sont plus structurés car sous format xml, plus formels, spécifient des contraintes de typage sur les données, etc... au prix d'une plus grande complexité, selon certains.

    Qu'apporte réellement les xsd comparé au coût de mise en oeuvre, y'a-t-il d'autres solutions moins complexes? (Relax NG), des méthodes pour faciliter leur élaboration? Bref pourquoi utilisez-vous les XSD?
    Pour contacter les différents services du club (publications, partenariats, publicité, ...) : Contacts

  2. #2
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    pour
    ne serait que pour une chose(par rapport au dtd),etant au format xml je peux les utiliser dans un xslt;or pour dela generation de controle(je pense saisie) ou de la completion de zone(5 caractere 00111 au lieu de 111),c'est deja un sacre plus.C'est aussi plus facile je pense de la generer a partir d'un xml et d'un xslt

  3. #3
    Membre régulier Avatar de Blowih
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 122
    Points : 115
    Points
    115
    Par défaut
    Salut,
    Selon moi , le XSD apporte un bon moyen de controle l'information, notament avec un controle sur le type de donnée, ainsi qu'un controle de l'integrité referencielle ( que l'on peu trouver dans des modèles de données comme Merise ou UML).

  4. #4
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Août 2004
    Messages : 60
    Points : 88
    Points
    88
    Par défaut
    Le XSD n'est pas si compliqué à maitriser, il suffit de bien lire la doc !

    Maintenant, l'apprentissage est peut-être plus long qu'avec d'autres normes de schéma propriétaire, mais je trouve plus intéressant d'utiliser un format universel qu'un format spécifique à un outil.

    Sinon, il faut signaler que VS.NET intégre un outil pour éditer de façon graphique un schéma, j'ai entendu parler de XMLSpy qui fait la même chose.

    Avec le .NET framework, il y a aussi un outil qui te génère un schéma de base (peu contraint donc à retoucher) à partir d'un document XML exemple.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 81
    Points : 96
    Points
    96
    Par défaut
    Je rejoins Erwy et frecil dans certaines idées. XML Schema c'est du XML donc un langage très facile à appréhender quand on connait déjà XML, contrairement à DTD qui est langage complètement cryptique et difficile à aborder. Pour résumer Schema rentre dans la famille XML alors que DTD en est exclu. De plus les références sur Schema sont nombreuses et il suffit de consulter rapidement les 3 recommandations du W3C pour se rendre compte du travail formidable qui a été effectué. On peut aussi parler des outils qui se sont très rapidement adaptés au phénomène Schema, XML oblige.

    J'ai découvert Schema alors que je cherchais justement un langage, une norme, pour définir la structure de mes données, j'ai été comblé. Sans compter qu'il est très proche de langages OO que j'affectionne tout particulièrement comme C++, Java et PHP5. Ce dernier en particulier. Il apporte aussi un réel plus à l'échange de données révolutionné par l'arrivée de XML. On peut aussi parler des outils de documentation qui permettent de documenter un schéma comme Javadoc pour Java ou PHPDoc pour PHP5, sans parler de Doxygen pour la majorité des langages, donc C++.

    Donc il a tout pour plaire et je ne vois vraiment pas comment on pourrait voter contre . Après je ne peux pas comparer Schema à Relax NG et autre Schematron car je ne les connais pas du tout, je passe déjà assez de temps à appréhender la bête Schema .

    J'allais oublié, ce qui m'a aussi séduit c'est l'approche W3C, à savoir un site qui regroupe l'ensemble des ressources dont a besoin pour architecturer un système d'information. Plus besoin de piocher à droite et à gauche dans des solutions propriétaires qui disparaissent du jour au lendemain.

  6. #6
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Bonjour,

    L'intêret des schémas XML par rapport aux DTD est plus subtil :
    Vous avez surement entendu parler de l'approche MDA (ingénierie des modèles) de l'OMG où un modèle (notation UML) se conforme à son méta-modèle, lui-même se conformant à son méta-méta-modèle (le MOF) qui se conforme à lui-même (reflection). Ce raisonnement est valable dans différents espace techniques; mon exemple se réfèrre à l'espace technique des modèles. Mais l'équivalent existe dans d'autres espaces techniques comme celui des langages : un langage se conforme à sa grammaire, elle même se conformant à sa méta-grammaire, cette dernière se conformant à elle même (reflection). Les espaces techniques sont différents : modèle / langages, mais les concepts sont les mêmes.
    Et pour XML alors ?
    Un document XML se conforme à sa DTD, certes, mais une DTD ne se conforme pas à une DTD (puisque qu'une DTD décrit du XML mais que la DTD n'est pas elle même décrite en XML). Du coup, impossible de passer à la méta-DTD.
    Solution : le XML-Schema, il décrit du XML et est décrit lui même en XML; la reflection devient donc possible. On peu désormais utiliser un méta-Schéma. Le XML devient ainsi un espace technique au même titre que les modèles et les langages.

    Voilà pourquoi les DTDs ont été remplacé par les XML Schemas.

    Cordialement,
    Hephaistos007
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  7. #7
    Membre régulier
    Inscrit en
    Décembre 2004
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 63
    Points : 74
    Points
    74
    Par défaut
    Bonjour,

    Les shemas XML apprortent une grande richesse par rapport aux DTD notament pour les types, mais je crois pas que c'est aussi simple et c'est trés verbeux et quand le shema devient trés grand ça devient tres difficile a comprendre par un humain, personellement je prefere RELAX NG qui est aussi simple que les DTD et aussi riche que les shémas vu qu'il importe des types xsd et donne une description detaillée du document.

  8. #8
    Membre expérimenté
    Avatar de virgul
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 625
    Points : 1 666
    Points
    1 666
    Par défaut
    Salut,

    Citation Envoyé par guemairm
    personellement je prefere RELAX NG qui est aussi simple que les DTD et aussi riche que les shémas vu qu'il importe des types xsd et donne une description detaillée du document.
    T'a remarque a soucié mon imtérêt et j'ai été voir sur le net mais j'ai encore quelque question si tu peux y répondre?

    Y a t'il un vrai avantage par rapport au XMLschéma a part que c'est plus simple à écrire?

    Y a t'il une chance pour que ca soit un jour "W3C Compliant"?

    Toi quelle son tes avantages à utiliser RELAX NG plutot que XMLSchema?


    Merci de tes réponse
    "Life is short don't forget to inhale"
    Mais: "Mieux vaux arriver en retard dans ce monde... qu'en avance à l'autre."

  9. #9
    Membre régulier
    Inscrit en
    Décembre 2004
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 63
    Points : 74
    Points
    74
    Par défaut
    Y a t'il un vrai avantage par rapport au XMLschéma a part que c'est plus simple à écrire?
    n'ayant pas trop pratiquer XMLShema je dirai que deja la simplicite apporter par RELAX NG et un vrai plus, et il existe meme des outils comme TRANG ou JING qui permette de transformer des shema RELAX NG en syntaxe XML similaire a XMLShema,et RELAX NG comporte de nombreux mecanisme important comme les co-occurence l'inclusion d'autres shema l'embarquement de shema externe ce qui est pratique pour realiser des references externes et aussi l'utilisation de librairies de types externes notamment ceux des XMLshema pour ne citer que ça

    Y a t'il une chance pour que ca soit un jour "W3C Compliant"?
    RELAXNG est normaliser OASIS http://www.oasis-open.org/committees/relax-ng/
    et je ne crois pas que la normalisation par le W3C soit a l'ordre du jour

    quelques lien:
    http://books.xmlschemata.org/relaxng/
    http://www.thaiopensource.com/ site d'outils
    http://www.infop6.jussieu.fr/lmd/200...l-20011203.pdf
    http://www.infop6.jussieu.fr/lmd/200...t-20021121.pdf

  10. #10
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    RELAX NG est effectivement plus simple à apprendre que les W3C XML Schema (WXS), et n'a pas certaines limitations de ces derniers, comme l'obligation d'une écriture déterministe du schéma par exemple (un validateur de schéma WXS doit savoir à tout moment quel modèle il est en train d'évaluer, il ne peut pas y avoir d'essais et de retour arrière, contrairement à un validateur de schéma axé RELAX NG).

    Par contre, l'absence de PSVI (Post Schema Validation Infoset) dans les RELAX NG les cantonne à la validation pure. Le PSVI, qui permet d'obtenir des informations de type pour chacun des éléments de l'Infoset après la validation, rend l'instance XML exploitable par des langages comme XQuery, XPath 2.0 et XSLT 2.0, ce que RELAX NG ne permet pas.

    D'autre part, les WXS sont intégrés à la norme WSDL, et sont donc au centre de la technologie des Web Services. Les RELAX NG, bien qu'utilisables à partir de WSDL 1.2, ne garantissent pas la même inter-opérabilité.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  11. #11
    Membre expérimenté
    Avatar de virgul
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 625
    Points : 1 666
    Points
    1 666
    Par défaut
    Ok merci à vous deux maintenant j'y vois plus claire en RELAX NG et je constate que même si ce produit est très bien il n'est pas trop adapter à ce qu'on fait (webservice et infopath(qui aime bien les WSDL mais sans complexe type et qui est un peux pointillieux parfois avec ce dernier))!


    Merci encore et a une prochaine

    ++

    Thierry
    "Life is short don't forget to inhale"
    Mais: "Mieux vaux arriver en retard dans ce monde... qu'en avance à l'autre."

  12. #12
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut POUR
    pour deux raison
    la première est que xsd est plus complet et précis que dtd

    la deuxième c'est du xml. (je me suis amusé à écrire une xsd de xsd juste pour me familiariser avec la chose.

    l'avantage d'être de XML est que l'on peut l'utiliser (c'est d'ailleurs sa raison d'exister, ce qui lui a donné naissance) les Outils xml le lire et le transformer.

    une XSLT qui prend un morceau de XSLT et en fait une (des) classe Objective C capable de lire et écrire les morceaux de XML correspondants c'est bien plus facile à faire qu'un analyseur syntaxique qui va faire la même chose à partir de DTD.

    A+JYT

  13. #13
    Nouveau Candidat au Club
    Inscrit en
    Février 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Quel est le principal but d'utiliser XML?
    XML permet de stocker les données sous la forme d'un arbre.
    Le XSD est un langage qui permet de donner la structure d'un document XML, il est efficace car il écrit en XML.
    En plus le XSD est simple, en effet il utilise un syntaxe clair (xs:string, xs:int, complextype, simpletype, sequence, choice …).

  14. #14
    Membre éclairé Avatar de luta
    Inscrit en
    Novembre 2003
    Messages
    1 038
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 038
    Points : 786
    Points
    786
    Par défaut
    Personnelement je n ecris pas de shema mais je mù en sert,et pour rire j ai ecris une page html qui reprenait un doc xml et allait chercher la documentation correspondante dans le shema...
    étant su xml c etait faisable...imposssible a faire avec une DTD donc pour le schema c clair!

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 83
    Points : 100
    Points
    100
    Par défaut
    En plus du formalisme XML et du typage fort, je pense à leur pérennité, normé W3C, les schémas espèrent répondre aux besoins de l'informatique sur le long terme.

    RelaxNG et de façon plus générale, le travail de Oasis répond aux besoins actuels de l'industrie, j'en veux pour preuve la forme compact des schémas relaxNG qui ne sont pas en XML.

    Utiliser les schémas de ce que j'en comprends, c'est prendre un peu plus de temps au départ pour en gagner plus tard.

    Je comparerais un peu ça aux phases d'analyse que certains sautent ou réduisent pour gagner du temps, et finalement en perde plus au développement.

    @+

    Xavier

  16. #16
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 41
    Points : 29
    Points
    29
    Par défaut
    Selon moi, XML Schema est un "langage" dont les bases soint simples mais qui peut devenir extremement complexe si on a des schemas tres ouverts.

    Il permet une validation complete pour les schemas simples, mais pour les schemas complexes ou ouverts, on peut utiliser Schematron ou XQuery donc on s'en sort a chaque fois.

    En tout cas, dans mon domaine-metier (l'aerospatiale) XML prend de plus en plus de place (donc Schema aussi).

    A+

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 760
    Points : 626
    Points
    626
    Par défaut
    Bien que je suis favorable au x schema pour de nombreuses raisons déjà évoquées, je tenais juste à préciser qu'un avantage des DTD était leur taille... (bon c'est sur que c'était pas évident à comprendre tout le temps mais bon... )

  18. #18
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Citation Envoyé par TabrisLeFol
    Bien que je suis favorable au x schema pour de nombreuses raisons déjà évoquées, je tenais juste à préciser qu'un avantage des DTD était leur taille... (bon c'est sur que c'était pas évident à comprendre tout le temps mais bon... )
    C'est normal que les DTD soient plus légères que leur équivalent en WXS, parce que ce n'est pas du XML...
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  19. #19
    Membre habitué
    Inscrit en
    Juin 2004
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 165
    Points : 136
    Points
    136
    Par défaut
    Pour ma part je trouve les schéma XSD facile d'apprentissage au niveau de la syntaxe.

    Ils sont bien pratique pour avoir une description d'une base de données INDEPENDAMMENT de la technologie de stockage utilisée. On obtient ainsi un schéma réutilisable a souhait. Efficace quand on ne sait pas encore vers quelle techno s'orienter ou si on souhaite garder une certaine flexibilité.

    Cependant on manque encore d'outil fiables pour générer une BD Relationnelle à partir d'un schéma XSD.

  20. #20
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 75
    Points : 39
    Points
    39
    Par défaut la question est "a quoi s'ert l'xml shema? et pas une comparaison avec la dtd
    la question ete simple sur l'xml shema pas une comparaison avec les dtd
    on voulait savoir la raison sur la quelle qui a pousse a la creaion reel des xsd
    -sur la validation des documents xml es que on pouvait pas valide les doc xml avec un autre outil. ce que j'ai trouve au forum que l'xml est un metalangage[COLOR] c'est adire on peut faire avec lui bcp de chose

Discussions similaires

  1. a quoi sert Sitemap.xml
    Par teramp3 dans le forum Référencement
    Réponses: 4
    Dernier message: 04/12/2008, 21h28
  2. À quoi sert XML ?
    Par AsmCode dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 20/04/2006, 09h01
  3. à quoi sert concrêtement XML ?
    Par osscour dans le forum XQUERY/SGBD
    Réponses: 13
    Dernier message: 16/03/2006, 13h35
  4. A quoi sert vraiment le XML ?
    Par maxstilde dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 24/08/2005, 10h19
  5. a quoi sert le schema dans postgres ??
    Par champion dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 13/09/2004, 10h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo