DTDと名前空間の関係について質問します。
XMLの本を読みDTDと名前空間の大まかなイメージを下記のようにつかみました。
DTD: XML文書の妥当性を規定し、DTD宣言で指定。
名前空間: ひとつのXML内で要素名の衝突を避けるために、xmlnsで指定。
XHTMLのDTD宣言
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
XHTMLの名前空間(http://www.w3.org/1999/xhtml)
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
XHTML文書の場合、DTDと名前空間がそれぞれひとつです。
しかし、ひとつのXMLドキュメントで複数の名前空間を利用する場合は、それぞれの名前空間に対して、DTDを宣言するのでしょうか。つまり複数のDTD宣言があるXMLドキュメントになるのでしょうか。
DTDと名前空間の関係が良く分かりません。
XML自体を勉強し始めたばかりで、まとまりのない質問で申し訳ありませんが、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
英語がわからなくても
http://www.w3.org/TR/XHTMLplusMathMLplusSVG/
のソースコードを追ってみると
どういう仕組みになっているかわかると思います。
解説書こうとすると結構難しいので。
=============
●<![INCLUDE[]]> <![IGNORE[]]>
といった書式を取るマーク区間や
●<!ENTITY % hoge "hogefuga">
というように使われるパラメータ実体に関する知識
●外部解析対象実体に関する知識
●外部サブセットよりも内部サブセットの方が優先される
●同一サブセット内では先に書かれた宣言が優先される
ってことがわかっていれば読めるはずです。
外部解析対象実体に慣れてなければ
XHTML 1.1 DTDのFlat版が
http://www.w3.org/TR/xhtml11/DTD/xhtml11-flat.dtd
http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd
を展開したものだとわかれば良いと思う
========================
ああ,そうそう,DTDを使うときの名前空間接頭辞の制約の一つとして
途中で名前空間接頭辞を変更することはできないことを覚えておきましょう。
(XMLとしてはOKだが,DTDでの定義に一致しないから)
http://www.w3.org/TR/2001/REC-xhtml-modularizati …
=========================
お礼が遅くなり申し訳ございません。
詳しく説明をいただきありがとうございます。
>英語がわからなくても
>http://www.w3.org/TR/XHTMLplusMathMLplusSVG/
>のソースコードを追ってみると
>どういう仕組みになっているかわかると思います。
英語は苦手ですが、挑戦してみようと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ASP・SaaS FC2 BLOG <AUDIO TAGを入れプレビューはOk テーンプレートを更新すると ✖ 1 2023/08/14 11:40
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- XML XML同じ名前の要素を自動で集約するツール 1 2022/04/11 09:21
- HTML・CSS (Javascript)印刷するファイルに応じて印刷プレビュー画面で用紙を自動的に切り替えたい!! 2 2022/04/11 12:04
- HTML・CSS 疑似要素で背景画像に指定したSVG画像の色変更 2 2023/01/30 22:45
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
このエラー、何とかなりません...
-
競技プログラミングに関する質...
-
CPUの考え方を教えてください ...
-
XMLで要素が記述された順番に意...
-
バッチファイルでテキストファ...
-
昔Winnyってありましたけど、あ...
-
あせんうぶり言語
-
XSLで、XMLの空タグを制御したい。
-
VB6でXMLを作成しているのです...
-
SNMP リンクダウンとノードダ...
-
あるノードリストに、特定の名...
-
HTTPステータス 404 - There is...
-
コンテキストメニュークリック...
-
ノードの並び替え
-
Listからのnull要素を削除方法は?
-
ルート要素ノードが2個ある場合?
-
ノードとは
-
html→xmlの変換
-
xmlファイルが上手にHTMLに変換...
-
Excel-VBAでXMLの複数ノードの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
u_shortなどの省略した宣言につ...
-
VBでXMLファイルを作ると xmlns...
-
このエラー、何とかなりません...
-
ASPで型宣言
-
縁切りするとき
-
DTDファイルをクラスパスから読...
-
XMLで改行
-
質問
-
<?xml version="1.0" encording...
-
XHTML1.1でのXML宣言とDTD宣言...
-
XMLの素朴な疑問です。
-
PUblicについて
-
DTDと名前空間
-
Global.asaxでクラスを宣言?
-
Delphiでプログラムを分割するとき
-
文書型定義と文書型宣言について
-
XML文書の妥当性
-
XML Schemaの妥当性のチェック
-
変数宣言について
-
東芝のDynabookなのですがアン...
おすすめ情報