• 締切済み

木構造の最底辺にあるノード?

表題から、 (htmlでの質問ではないのですが…) 例えば「xhtml」文書の中に「<em>強調</em>」とある場合、 ・「em」要素の内容 ・「em」要素の全体 どちらが最底辺(葉ノード)なのでしょうか? 木構造内の全てのノードは、 そのノードを頂点とする部分木の根ノードと見なすことができる。 http://ja.wikipedia.org/wiki/%E6%9C%A8%E6%A7%8B%E9%80%A0_(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0) から引用。 と書いてあるのですが、私には、(上の例えを使うと) 「em」を頂点とする部分木の下方に最底辺「強調」がある。 と読めます(なので、要素の内容が葉ノード?)。 「<p>開始<em>強調</em>終了</p>」とある場合、 開始(葉ノード)と、 「em」要素(部分木の根ノード)は、 兄弟? …よろしくお願いします…

みんなの回答

  • OKbokuzyo
  • ベストアンサー率43% (130/296)
回答No.1

質問者様の理解で正しいと思います。 xmlに限った質問ではないでしょうが、 xmlではテキスト値も「テキストノード」というノードの種類に分類されます。 従って、 > 例えば「xhtml」文書の中に「<em>強調</em>」とある場合、 これは「em」要素の内容が葉ノードと言えます。 同様に > 「<p>開始<em>強調</em>終了</p>」とある場合、 > 開始(葉ノード)と、 > 「em」要素(部分木の根ノード)は、 > 兄弟? 「開始」ノードと兄弟であるノードは 「em」ノード、「終了」ノードと言えます。

juri_a
質問者

補足

追加の質問かもしれませんが… 葉ノードは、 ・「空要素」 ・「文字列(内容に要素が含まれてない内容という意味で)」 でしょうか? それ以外にも、あるのでしょうか?