アプリ版:「スタンプのみでお礼する」機能のリリースについて

以下がxmlファイルです。
---------------------------------------------
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE 製品一覧 SYSTEM "s1.dtd">
<製品一覧>
<タイトル>製品リスト</タイトル>
<製品>
<名前>シューズ</名前>
<単価>10000</単価>
<カテゴリ>靴</カテゴリ>
<カテゴリ>カジュアル</カテゴリ>
<補足>注文は1 ダース単位</補足>
</製品>
<製品>
<名前>サンダル</名前>
<単価>5000</単価>
<カテゴリ>靴</カテゴリ>
</製品>
</製品一覧>
---------------------------------------------
上記のxml文書に文書型宣言を記述して、作成したDTDを外部サブセットとして適用して下さい。とのことです。

私が書いた外部サブセット(s1.dtd)
---------------------------------------------
<?xml version="1.0" encoding="Shift_JIS"?>
<!ELEMENT 製品一覧 (製品*)>
<!ELEMENT 製品 (タイトル,名前,単価,カテゴリ,補足)>
<!ELEMENT タイトル (#PCDATA)>
<!ELEMENT 名前 (#PCDATA)>
<!ELEMENT 単価 (#PCDATA)>
<!ELEMENT カテゴリ (#PCDATA)>
<!ELEMENT 補足 (#PCDATA)>
---------------------------------------------
この外部サブセットではダメでした。
勉強する気は、あるのですが、教科書見てもわからず、先生に聞いても理解出来ず、友達もさっぱりわかってないみたいで...
ヒントでも何でもお待ちしております。m(._.)m

A 回答 (1件)

ざっと見ただけですが……。



問題点は,
・タイトルの親は製品ではない
・カテゴリは1回と2回が出てきているのに1回となっている
・補足は0回と1回が出てきているのに1回となっている
あたりでしょうか。

要素型定義の内容部分には,「どの要素がどの順番で何回出てくるのか」を記述します。
> <!ELEMENT 製品 (タイトル,名前,単価,カテゴリ,補足)>
は,
・「製品」という要素の中に
・「タイトル」「名前」「単価」「カテゴリ」「補足」という要素が
 ・この順序で
 ・それぞれ1回のみ
 出てくる
ということを意味しています。
慣れないうちは,各要素の親子関係を樹形図に書いてみることをお勧めします。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
意味が理解できました!

お礼日時:2009/11/26 17:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!