[解決済み】SAXとDOMの違いは何ですか?
質問
に関する記事をいくつか読みました。 XML パーサーに遭遇し SAX と DOM .
サックス はイベントベースであり DOM がツリーモデルであること -- これらのコンセプトの違いがわかりません。
私が理解したところでは、イベントベースとは、ノードに何らかのイベントが発生することを意味します。例えば、あるノードをクリックすると、すべてのノードを同時に読み込むのではなく、すべてのサブノードが表示されます。しかし DOM を解析すると、すべてのノードが読み込まれ、ツリーモデルが作成されます。
私の理解は正しいでしょうか?
また、イベントベースとツリーモデルについて、より分かりやすく説明してください。
どのように解決するのですか?
さて、あと少しです。
SAXでは、イベントが発生するのは、XMLが
パースされる
. パーサがXMLを解析しているときに、開始するタグ(例えば
<something>
を実行すると
tagStarted
というイベントが発生します(実際のイベント名は異なる場合があります)。同様に、パース中にタグの終端に出会ったとき(
</something>
をトリガーします。
tagEnded
. SAXパーサーを使うということは、これらのイベントを処理し、各イベントで返されるデータの意味を理解する必要があることを意味します。
DOMでは、パース中に発生するイベントはありません。XML 全体がパースされ、(XML 内のノードの)DOM ツリーが生成されて返されます。パースされると、ユーザーはツリーをナビゲートして、XML のさまざまなノードに以前から埋め込まれていたさまざまなデータにアクセスすることができます。
一般に、DOMは使いやすいのですが、XML全体をパースしてから使い始めるというオーバーヘッドがあります。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン