ノードは、リンクリストやツリーデータ構造などのデータ構造の基本単位です。ノードはデータを保持し、他のノードにリンクすることもできます。ノード間のリンクは、多くの場合、ポインタによって実装されます。


ノードは多くの場合、ツリー構造に配置されます。ノードは、単一のデータ構造に含まれる情報を表します。これらのノードには、値または条件が含まれる場合があり、別の独立したデータ構造として機能することもあります。ノードは、単一の親ノードによって表されます。ツリー構造の最高点はルートノードと呼ばれ、親ノードを持たず、ツリー内でその下にあるすべてのノードの親または「祖父母」として機能します。ノードの高さは、そのノードから最も遠いリーフノードまでのパス上のエッジの総数によって決定され、ツリーの高さはルートノードの高さに等しくなります。[1]ノードの深さは、その特定のノードとルートノード間の距離によって決定されます。ルートノードの深さはゼロであると言われています。[2]データは、これらのネットワークパスに沿って検出できます。[3] IPアドレスは、この種のノードシステムを使用して、ネットワーク内の位置を定義します。
ノードツリーのもう一つの一般的な用途は、Web開発です。プログラミングにおいて、XMLはコンピュータプログラマーとコンピュータ間の情報伝達に用いられます。このため、XMLはオフィス生産性ソフトウェアで使用される共通の通信プロトコルの作成に用いられ、 XHTMLのような最新のWebマークアップ言語の開発基盤となっています。プログラマーによるアプローチはHTMLとCSSに似ていますが、ウェブサイトのテキストとデザインを開発する際には、一般的にHTMLとCSSが使用されます。XML、HTML、XHTMLが言語と表現を提供するのに対し、DOMは翻訳者として機能します。[4]
ツリー内の異なるタイプのノードは、特定のインターフェースによって表現されます。つまり、ノードタイプは、他のノードとの通信方法によって定義されます。各ノードには、兄弟ノードやリーフノードなど、ノードのタイプを指定するノードタイププロパティがあります。例えば、ノードタイププロパティがノードの定数プロパティである場合、このプロパティはノードのタイプを指定します。したがって、ノードタイププロパティが定数ノードである場合ELEMENT_NODE、このノードオブジェクトはオブジェクトであることがわかりますElement。このオブジェクトは、Elementインターフェースを使用して、その特定のノードのすべてのメソッドとプロパティを定義します。
さまざまな W3C World Wide Web Consortiumノード タイプと説明:
Documentドキュメント全体(DOMツリーのルートノード)を表しますDocumentFragmentDocument文書の一部を保持できる「軽量」オブジェクトを表しますDocumentType文書に定義されたエンティティへのインターフェースを提供するProcessingInstruction処理命令を表すEntityReference実体参照を表すElement要素を表すAttr属性を表すText要素または属性内のテキストコンテンツを表すCDATASection文書内のCDATAセクションを表します(パーサーによって解析されないテキスト)Commentコメントを表すEntity実体を表すNotationDTDで宣言された表記法を表すノードオブジェクトは、ツリー内の単一のノードによって表されます。ノードオブジェクトは、要素ノード、属性ノード、テキストノード、または「ノード型」セクションで説明されている任意の型になります。すべてのオブジェクトは親ノードと子ノードを扱うためのプロパティとメソッドを継承できますが、すべてのオブジェクトが親ノードまたは子ノードを持つわけではありません。例えば、子ノードを持つことができないテキストノードに子ノードを追加しようとすると、DOMエラーが発生します。
DOMツリー内のオブジェクトは、オブジェクトのメソッドを用いてアクセスおよび操作できます。DOMのパブリックインターフェースは、アプリケーションプログラミングインターフェース(API)で規定されます。ドキュメントオブジェクトモデルの歴史は、1990年代後半のNetscape NavigatorとMicrosoft Internet Explorerの間の「ブラウザ戦争」の歴史、そしてWebブラウザのレイアウトエンジンに広く実装された最初のスクリプト言語であるJavaScriptとJScriptの歴史と密接に絡み合っています。