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 :

[XML] lien entre tag


Sujet :

XML/XSL et SOAP

  1. #1
    Membre habitué Avatar de Mathieu.Nanoux
    Étudiant
    Inscrit en
    Février 2004
    Messages
    166
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 166
    Points : 137
    Points
    137
    Par défaut [XML] lien entre tag
    Bonjour tout le monde,

    mon problème se situe dans l'architecture dans un document XML. Je vais le montrer par un exemple, ce sera plus clair je pense

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <debut>
    <TagPrincipale ID="1">
       <Nom>test</Nom>
       <TagSecondaire>Lien vers TagPrincipale ID="2"</TagSecondaire>
       <TagSecondaire>Lien vers TagPrincipale ID="3"</TagSecondaire>
    </TagPrincipale>
     
    <TagPrincipale ID="2">
       <Nom>test</Nom>
       <TagSecondaire>Lien vers TagPrincipale ID="3"</TagSecondaire>
       <TagSecondaire>Lien vers TagPrincipale ID="4"</TagSecondaire>
    </TagPrincipale>
     
    <TagPrincipale ID="3">
       <Nom>test</Nom>
    </TagPrincipale>
     
    <TagPrincipale ID="4">
       <Nom>test</Nom>
    </TagPrincipale>
    Donc, j'ai un tag principale et dedans des tag secondaires qui vont pointer vers les autres tag principale. Ici, le schéma est simplifier et peu de donnée, mais dans l'application, il y a aura beaucoup plus de donnée.

    Je ne vois pas trop comment lui indiquer pour faire le lien directement. Parce que je vais utiliser certainement un parseur dessus.

    Si vous avez une idée ou des questions pour eclairir, n'hésitez pas

  2. #2
    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
    Bonjour,

    quand tu dis qu'ils vont pointer, cela veut dire qu'ils vont contenir l'ID de l'élément pointé ?
    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

  3. #3
    Membre habitué Avatar de Mathieu.Nanoux
    Étudiant
    Inscrit en
    Février 2004
    Messages
    166
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 166
    Points : 137
    Points
    137
    Par défaut
    oui, ils vont contenir l'ID qui se trouve comme parametre dans le tagprincipal.

  4. #4
    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 lemccain
    Je ne vois pas trop comment lui indiquer pour faire le lien directement. Parce que je vais utiliser certainement un parseur dessus.
    Je me doute bien que c'est pour le parser, un document XML non parsé n'a que peu d'intérêt...

    Dans ton document XML tu n'as pas la possibilité d'indiquer explicitement qu'il existe un lien logique entre le nombre contenu dans les <TagSecondaires> et celui contenu dans les attributs id des <TagPrincipale>. C'aurait été possible si un TagPrincipal ne pouvait être référencé que par un seul <TagSecondaire>, on aurait alors mis le premier comme fils du second, selon une structure arborescente, et le lien aurait été implicite.

    Par contre, tu peux le spécifier dans une DTD, ce qui te simplifiera la vie lorsque tu parcoureras ton document XML via DOM et te permettra de valider ton document. Pour cela, il faut respecter les conditions suivantes :
    • L'attribut ID des <TagPrincipale> doit être déclaré avec le type ID
    • Tu dois créer un attribut de type IDREF dans tes <TagSecondaire>, c'est cet attribut (nommé communément refid) qui va contenir l'ID du tag pointé.
    • Tu dois activer la validation lors du parsing
    • Pour des raisons liées à la spécification XML, les ID ne peuvent pas commencer par un chiffre ; tu dois mettre au minimum un caractère alphabétique avant un chiffre, ou un underscore.

    En respectant ces recommandations, tu pourras très facilement retrouver un <tagPrincipale> pointé par un <TagSecondaire> grâce à la fonction DOM getElementById(), et du fait que les liens IDREF->ID ont été validés lors du parsing, tu es sûr que la fonction renverra quelque chose.
    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

  5. #5
    Membre habitué Avatar de Mathieu.Nanoux
    Étudiant
    Inscrit en
    Février 2004
    Messages
    166
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 166
    Points : 137
    Points
    137
    Par défaut
    oki, merci pour ta réponse. Je vais regarder de ce coté la.

Discussions similaires

  1. Réponses: 5
    Dernier message: 06/10/2011, 14h43
  2. Lien entre les validators et le struts.xml
    Par piotrr dans le forum Struts 2
    Réponses: 1
    Dernier message: 06/06/2008, 12h58
  3. [CS3] Lien entre Spry et XML
    Par franckysnow91 dans le forum Dreamweaver
    Réponses: 3
    Dernier message: 28/03/2008, 16h38
  4. Lien entre JTree et texte XML parsé (DOM)
    Par bleast8 dans le forum Composants
    Réponses: 3
    Dernier message: 18/07/2007, 02h59
  5. [PDE] Lien entre menu dynamique et plugin.xml
    Par simsky dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 21/06/2005, 11h53

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