
以下のXMLをDTDに使用としています。
B以降の設定の方法が分かりません。
よろしくお願い致します。
XML
- <Aブロック>
- <A a番号="01" b="xxxx" c="x">
<B 番号="1" d="xxxx" />
<B 番号="2" d="xxxx" />
<B 番号="3" d="xxxx" />
</A>
DTD
<!ELEMENT Aブロック (A*)>
<!ELEMENT A EMPTY>
<!ATTLIST A a CDATA #REQUIRED>
<!ATTLIST A b CDATA #REQUIRED>
<!ATTLIST A c CDATA #REQUIRED>
No.2ベストアンサー
- 回答日時:
#1>「名前トークンを使用」とはなんですか?
名前に使用できる文字のことです。
「名前」には先頭に使えない文字があります。
例えば、数字がそうです。
「名前」の先頭には使えないが名前に使える文字を含めて
「名前」の構成文字という意味で「名前トークン」といいます。
つまり
NMTOKEN は"NAME TOKEN"というということですね。
"番号" は、数字を意味するようにしたいのですが、
SGMLでは NUMBER というのがあるのですが、XMLではこれがありません(スキーマはまた別の話として)。
それで他のモノを使う必要があるのですが
CDATA だと何でもいいということになり
ID (「名前」)だと数字で始めることができないので
NMTOKEN ということにしました。
こうしておけば、先頭が数字から始められてある程度限定することができます。
No.1
- 回答日時:
以下のような感じでいいかと思います。
細部は修正下さい。全角英字は、名前に使えなかったと思うので修正してあります。
また、ATTLIST は、まとめることができます。
----------------------------------------------------------------
<!ELEMENT ABlock (A*)>
<!ELEMENT A (B*)>
<!ATTLIST A a CDATA #REQUIRED>
<!ATTLIST A b CDATA #REQUIRED>
<!ATTLIST A c CDATA #REQUIRED>
<!ELEMENT B EMPTY>
<!ATTLIST B 番号 NMTOKEN #REQUIRED
d CDATA #REQUIRED>
ありがとうございます。
NMTOKENは「名前トークンを使用」と書いてありますが、実際はどのように使用するのかわかりません。「名前トークンを使用」とはなんですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
複雑なシフト表から1日ごとの...
-
名前を呼ばずに「すみません」...
-
息子が名前が原因でいじめられ...
-
えっち中・名前
-
彼氏が良く、「◯◯(私の名前)」...
-
LINEの名前をちょこちょこ変え...
-
ESTA
-
男で一人称が自分の名前って珍...
-
性行為中に
-
「○○Jr.」という名前の人はもう...
-
Hの最中に違う女の名前を言わ...
-
エクセルで外部データの取り込...
-
みなさん、恋人のLINEの名前は...
-
急に名前を呼ばれなくなった 職...
-
彼氏が「君」っていいます
-
自分の名前について。 私の名前...
-
リトルツインスターズ
-
電話をかけてきて、社名だけで...
-
私が「なんて呼んだらいい?」と...
-
ふりがなの書き方についてです。
おすすめ情報