Ich arbeite in Java mit XML und frage mich: Was ist der Unterschied zwischen einem Element und einem Knoten?
Antworten
Zu viele Anzeigen?Das Node-Objekt ist der primäre Datentyp für das gesamte DOM.
Ein Knoten kann ein Elementknoten, ein Attributknoten, ein Textknoten oder ein anderer der im Kapitel "Knotentypen" beschriebenen Knotentypen sein.
Ein XML-Element ist alles vom Start-Tag (einschließlich) bis zum End-Tag (einschließlich) des Elements.
Die verschiedenen W3C-Spezifikationen definieren unterschiedliche "Node"-Typen.
Daher ist die DOM-Spezifikation definiert die folgenden Knotentypen:
Document
--Element
(maximal einer),ProcessingInstruction
,Comment
,DocumentType
DocumentFragment
--Element
,ProcessingInstruction
,Comment
,Text
,CDATASection
,EntityReference
DocumentType
-- keine KinderEntityReference
--Element
,ProcessingInstruction
,Comment
,Text
,CDATASection
,EntityReference
Element
--Element
,Text
,Comment
,ProcessingInstruction
,CDATASection
,EntityReference
Attr
--Text
,EntityReference
ProcessingInstruction
-- keine KinderComment
-- nein KinderText
-- nein KinderCDATASection
-- keine KinderEntity
--Element
,ProcessingInstruction
,Comment
,Text
,CDATASection
,EntityReference
Notation
-- nein Kinder
En XML-Infosatz (von XPath verwendet) hat eine kleinere Menge von Knoten:
- Das Dokument Information Item
- Element Informationspunkte
- Attribut Informationspunkte
- Informationen zu den Verarbeitungsanweisungen
- Unerweiterte Entitätsreferenz-Informationselemente
- Charakter-Informationspunkte
- Kommentar Informationspunkte
- Das Informationselement "Dokumententyperklärung
- Unparsed Entity Information Items
- Notation Informationselemente
- Namespace-Informationselemente
XPath hat die folgenden Knotentypen:
- Wurzelknoten
- Elementknoten
- Textknoten
- Attributknoten
- Namensraumknoten
- Knoten der Verarbeitungsanweisungen
- Kommentar-Knoten
Die Antwort auf Ihre Frage " Was ist der Unterschied zwischen einem Element und einem Knoten? " ist:
An element is a type of node. Many other types of nodes exist and serve different purposes.
Wie in den verschiedenen XML Spezifikationen , an element
ist ein Element, das aus einem Start-Tag, einem End-Tag und dem dazwischen liegenden Inhalt besteht, oder ein leeres Element-Tag (das keinen Inhalt oder End-Tag hat). Mit anderen Worten, dies sind alle Elemente:
<foo> stuff </foo>
<foo bar="baz"></foo>
<foo baz="qux" />
Obwohl der Begriff "Node" in etwa die gleiche Bedeutung hat, ist er in den XML-Spezifikationen nicht genau definiert. Normalerweise wird er für Knoten von Dingen wie DOMs verwendet, die eng mit XML verwandt sind oder XML für ihre Darstellung verwenden.
- See previous answers
- Weitere Antworten anzeigen