Quelle est la différence entre un élément et un noeud en XML?

je travaille en Java avec XML et je me demande Quelle est la différence entre un élément et un noeud?

327
demandé sur hippietrail 2008-09-25 14:47:53

13 réponses

L'objet nodal est le type de données primaire pour L'ensemble du DOM.

un noeud peut être un noeud d'élément, un noeud d'attribut, un noeud de texte, ou tout autre des types de noeuds expliqués dans le chapitre" types de noeuds".

un élément XML est tout, depuis (incluant) la balise de début de l'élément jusqu'à (incluant) la balise de fin de l'élément.

235
répondu Benoit 2008-09-25 10:52:44

différentes spécifications W3C définissent différents ensembles de types de" noeuds".

ainsi, le DOM spec définit les types de noeuds suivants:

  • Document -- Element (maximum de l'un), ProcessingInstruction , Comment , DocumentType
  • DocumentFragment -- Element , ProcessingInstruction , Comment , Text , CDATASection , EntityReference
  • DocumentType -- pas d'enfants
  • EntityReference -- Element , ProcessingInstruction , Comment , Text , CDATASection , EntityReference
  • Element -- Element , Text , Comment , ProcessingInstruction , CDATASection , EntityReference
  • Attr -- Text , EntityReference
  • ProcessingInstruction -- aucun enfant
  • Comment -- Non. enfant
  • Text -- Non. enfant
  • CDATASection -- pas d'enfants
  • Entity -- Element , ProcessingInstruction , Comment , Text , CDATASection , EntityReference
  • Notation -- Non. enfants

The XML Infoset (utilisé par XPath) a un plus petit ensemble de noeuds:

  • Le Document Ou Élément D'Information
  • Élément D'Information
  • Attribut Information Items
  • Instruction De Traitement Des Éléments D'Information
  • Éléments D'Information De Référence D'Entité Non Agrandi
  • Information Sur Les Caractères
  • Commentaires Informations
  • Élément D'Information De La Déclaration Du Type De Document
  • Éléments D'Information D'Entité Sans Équivalent
  • Notation Éléments D'Information
  • Informations D'Espace De Noms Des Éléments
  • XPath a les types de noeuds suivants:

    • nœuds racine
    • nœuds d'élément
    • noeuds de texte
    • attribut nodes
    • espace de noms des nœuds
    • noeuds d'instruction de traitement
    • les nœuds de commentaires

    la réponse à votre question Quelle est la différence entre un élément et un noeud "est:

    An element is a type of node. Many other types of nodes exist and serve different purposes.

    63
    répondu Dimitre Novatchev 2012-12-12 10:24:52

    un noeud peut être un certain nombre de choses différentes: un texte, un commentaire, un élément, une entité, etc. Un élément est un type particulier de nœud.

    25
    répondu Greg Hewgill 2008-09-25 10:51:32

    un noeud est une partie de L'arbre DOM, un élément est un type particulier de Noeud

    p.ex. <foo> This is Text </foo>

    vous avez un élément foo, (qui est aussi un noeud, comme l'élément hérite de noeud) et un noeud de texte 'Ceci est du texte', c'est-à-dire un enfant de l'élément/noeud foo

    22
    répondu mmaibaum 2008-09-25 10:51:21

    un document xml est constitué d'éléments imbriqués. Un élément commence à son étiquette d'ouverture et se termine à son étiquette de fermeture . Vous êtes probablement vu <body> et </body> en html. Tout ce qui se trouve entre les étiquettes d'ouverture et de fermeture est le contenu de l'élément . Si un élément est défini par une étiquette à fermeture automatique (p. ex. <br/> ) alors son contenu est vide.

    Les étiquettes D'ouverture

    peuvent aussi spécifier attributs , par exemple. <p class="rant"> . Dans cet exemple, l'attribut nom est "class" et sa valeur "rant".

    le langage XML n'a pas de "node " . lire le spec , le mot ne se produit pas.

    certaines personnes utilisent le mot "noeud" de manière informelle pour signifier un élément, ce qui est déroutant parce que certains analyseurs donnent aussi le mot a signification technique (identification des "noeuds de texte" et des "noeuds d'éléments"). La signification exacte dépend de l'analyseur, de sorte que le mot est mal définie, sauf si vous indiquez quel analyseur vous utilisez. si vous voulez dire élément, dites "élément " .

    11
    répondu Colonel Panic 2013-10-02 23:32:27

    un noeud est la classe de base pour les éléments et les attributs (et essentiellement toutes les autres représentations XML aussi).

    9
    répondu Troels Thomsen 2008-09-25 10:50:52

    élément est le seul type de noeud qui peut avoir des noeuds enfant et des attributs.

    Document a également des noeuds enfant, mais

    pas d'attributs, pas de texte, exactement un élément enfant.

    7
    répondu eugensk00 2008-09-25 14:59:10

    un noeud est défini comme:

    la plus petite unité d'une structure valide et complète dans un document.

    ou as:

    Un objet dans la vue d'arbre qui sert de conteneur pour objets connexes.

    maintenant leur sont de nombreux types différents de noeuds comme un noeud d'éléments, un noeud d'attribut, etc.

    2
    répondu Robert Rocha 2015-03-09 23:40:13

    maintenant je sais ,l'élément est un de node

    tous les types de noeuds ici " http://www.w3schools.com/dom/dom_nodetype.asp "

    élément est entre la balise de début et de fin dans la balise de fin

    ainsi le noeud de texte est un noeud , mais pas un élément.

    1
    répondu 2010-02-26 06:05:19

    un élément est un type de noeud ainsi que des attributs, du texte, etc.

    0
    répondu Simon Keep 2008-09-25 10:51:47

    élément XML est un noeud XML mais avec des éléments supplémentaires comme des attributs.

    <a>Lorem Ipsum</a>  //This is a node
    
    <a id="sample">Lorem Ipsum</a>  //This is an element
    
    -1
    répondu Sabique A Khan 2016-09-02 05:51:39

    noeud et élément sont identiques. Chaque élément est un nœud , mais ce n'est pas que chaque nœud doit être un élément.

    -5
    répondu Purna 2014-07-23 10:27:17