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

XML/XSL et SOAP Discussion :

Introduction au monde XML [Tutoriel]


Sujet :

XML/XSL et SOAP

  1. #1
    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 Introduction au monde XML
    Une simple introduction au monde XML qui sera très prochainement complétée par un article portant sur les choix de structure de XML.

    Vos commentaires peuvent permettre d'améliorer ces articles donc n'hésitez pas !

  2. #2
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 845
    Points
    4 845
    Par défaut
    Je trouve qu'il est relativement synthétique et complet pour une introduction.

    J'ai cependant relevé ça :

    Les coquilles :
    • 1-A-3. Usages :
      "opendDocument"
    • 1-B-4. namespace :
      La balise ou il est déclaré
    • 2-A-2. SAX et 2-A-3. Autres :
      Il y'a des sauts de lignes dans une même phrase.
    • 2-B. La validation :
      "C'est le parseur ,"
    • 2-E. Echanges XML :
      interface d'utilisateur*


    Des compléments possibles d'information :
    • 1-B-1. L'en-tête :
      Dire que l'attribut encoding correspond à l'encodage actuel du document (c'est pas forcément évident ). Peut-être ajouter comment changer cet encodage.
    • 1-B-2. Les balises, appelées éléments :
      Peut-être préciser dans quel cas il faut ajouter une balise fermante et dans quel cas la balise est autosuffisante (<a>...</a>, <b/>). (d'après ce que je crois avoir compris il est obligatoire d'avoir la notation <b/> quand <b> n'a pas de contenu mais l'HTML en est un beau contre exemple, alors du coup j'ai un doute)
    • 1-C. Récapitulatif sur la construction d'un XML :
      Si j'ai bon en disant qu'une balise sans contenu doit être auto-fermante, le rajouter ici aussi.


    Mes questions :
    • 1-B-4. namespace :
      C'est possible d'avoir des balises d'un namespace différent à l'intérieur d'une balise avec un namespace donné ?
      Exemple 1 :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      <n1:a>
        <b>
          <n1:c/>
        </b>
      </n1:a>
      Exemple 2 :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      <n1:a>
        <n2:b>
          <n1:c/>
        </n2:b>
      </n1:a>
    • 1-B-8. Les entités :
      Perso j'utilise souvent le DTD externe, j'ai jamais mis l'attribut "standalone" à "no" (je connaissais pas son existence) et pourtant ça a toujours fonctionné, c'est normal ?


    Voilà voilà.
    Loceka.

  3. #3
    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
    Citation Envoyé par Loceka Voir le message

    Des compléments possibles d'information :
    • [..] (d'après ce que je crois avoir compris il est obligatoire d'avoir la notation <b/> quand <b> n'a pas de contenu mais l'HTML en est un beau contre exemple, alors du coup j'ai un doute)
    • 1-C. Récapitulatif sur la construction d'un XML :
      Si j'ai bon en disant qu'une balise sans contenu doit être auto-fermante, le rajouter ici aussi.
    Comme tu as mauvais je ne vais pas faire la modif
    les deux écritures sont parfaitement valide
    Citation Envoyé par Loceka Voir le message
    Mes questions :

    1-B-4. namespace :
    C'est possible d'avoir des balises d'un namespace différent à l'intérieur d'une balise avec un namespace donné ?
    Exemple 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <n1:a>
      <b>
        <n1:c/>
      </b>
    </n1:a>
    Exemple 2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <n1:a>
      <n2:b>
        <n1:c/>
      </n2:b>
    </n1:a>
    Je reconnais ne pas avoir eu trop envie de m'étendre sur les namespaces, les possibilités d'imbrication étant énormes...mais oui, surtout si tu utilises les préfixes ont peut imbriquer les namespaces.
    Citation Envoyé par Loceka Voir le message
    1-B-8. Les entités :
    Perso j'utilise souvent le DTD externe, j'ai jamais mis l'attribut "standalone" à "no" (je connaissais pas son existence) et pourtant ça a toujours fonctionné, c'est normal ?
    J'évite les DTD autant que je peux, je ne pouvais néanmoins en faire l'impasse ici.
    Le standalone a à voir avec les entités pas nécessairement avec les DTD si elles n'en contiennent pas.

    Merci pour les commentaires, il me permettront de faire évoluer cet article dans le futur (pas immédiat j'ai plusieurs autres articles à venir)

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par Loceka Voir le message
    1-B-4. namespace :
    C'est possible d'avoir des balises d'un namespace différent à l'intérieur d'une balise avec un namespace donné ?
    Oui.
    Les deux exemples que tu donnes sont possibles, et arrivent assez souvent dans certains formats en pratique.

    Citation Envoyé par Loceka Voir le message
    1-B-8. Les entités :
    Perso j'utilise souvent le DTD externe, j'ai jamais mis l'attribut "standalone" à "no" (je connaissais pas son existence) et pourtant ça a toujours fonctionné, c'est normal ?
    C'est normal, car la présence d'une DTD permettant de valider le document n'est pas forcément indispensable à son exploitation, même si elle existe.

    Par contre, si cette DTD définissait des ENTITY pour ce document, et que tu utilisais ces ENTITY à l'intérieur du document, ne pas avoir déclaré standalone="no" le rendrait mal formé. En effet, l'entité n'est pas définie à l'intérieur du document, donc le document ne peut pas être exploité sans sa DTD.

    Autre exemple : les DTDs qui définissent une valeur par défaut aux attributs s'ils sont absents. Le document seul sans DTD ne fournit pas ces valeurs par défaut, standalone doit donc être à "no". (Mais amusément, ça ne peut être vérifié que si une DTD est bien fournie et vérifiée pour validité.)
    => De manière générale, si la DTD modifie les données qui seraient obtenues par la seule lecture du document, standalone doit être à "no"... Mais pareil, à part la question des ENTITY, une erreur ne se voit que si on cherche à vérifier la validité du document par rapport à cette DTD.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/11/2009, 01h57
  2. Réponses: 2
    Dernier message: 04/11/2009, 01h57
  3. Débutant XML
    Par viny dans le forum XML/XSL et SOAP
    Réponses: 8
    Dernier message: 25/07/2002, 12h07

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