2013-06-08 3 views
1

Je veux créer un fichier DTD qui vérifie si le fichier XML est un arbre binaire qui chaque noeud a au plus 2 fils et chaque nœud doit avoir un pointeur sur le childern si elles quittecréer DTD pour arbre binaire

comment puis-je l'implémenter en XML?

merci à l'avance

+0

n'importe quel corps, s'il vous plaît! – flashdisk

Répondre

3

Il y a plusieurs façons d'écrire des arbres binaires en XML. En voici un. il suppose que la valeur de chaque noeud est véhiculée dans un attribut nommé 'value'.

<!ELEMENT node (node, node?) > 
<!ATTLIST node value CDATA #REQUIRED > 

Il est également possible d'exiger qu'un noeud soit ont deux enfants ou pas (Wikipedia dit ce qu'on appelle un arbre binaire complet):

<!ELEMENT node (node, node)? > 

La première DTD, mais pas la seconde acceptera une représentation XML d'un arbre binaire simple (de l'article de Wikipedia sur les arbres binaires):

<node value="2"> 
    <node value="7"> 
    <node value="2"/> 
    <node value="6"> 
     <node value="5"/> 
     <node value="11"/> 
    </node> 
    <node value="5"> 
    <node value="9"> 
     <node value="4"/> 
    </node> 
    </node> 
</node> 

[Oh, oui, une autre chose. Vous êtes beaucoup plus susceptible d'obtenir de bonnes réponses aux questions sur Stack Overflow si vous montrez ce que vous avez essayé, sous une forme qui permet aux autres de reproduire le problème (cela est bien sûr difficile si vous ne savez pas par où commencer). Ne pas montrer votre travail donne l'impression que vous n'en avez pas fait et que vous voulez simplement que les autres fassent votre travail pour vous. Il y a de bons conseils pour poser des questions efficaces dans le SO help files et dans la dissertation How to ask questions the smart way d'Eric Raymond et Rick Moen.]