2017-07-16 5 views
0

私は以下のXMLのDTDを書いていcode.However出力は要素型の内容「植物」は一致している必要があります(名前、気候、高さ、使用方法、画像)

は、「要素タイプの内容であります植物は、」ここで(名前、気候、高さ、使用方法、画像)

と一致している必要があり、私のXMLコードは、これは私のDTDである

<?xml version="1.0" encoding="UTF-8"?> 

<!DOCTYPE catalog SYSTEM "plantdtd.dtd"> 

<catalog> 

<title>Flowers of the week</title> 

<plant id="A1"> 

    <name>Aloe vera</name> 

    <climate>tropical</climate> 

    <height>60-100cm</height> 

    <usage>medicinal</usage> 

    <image>aloevera.jpg</image> 

</plant> 

<plant id="A2"> 

     <name>Orchidaceae</name> 

     <height>8-12in</height> 

     <usage>medicinal</usage> 

     <usage>decoration</usage> 

     <image>Orchidaceae.jpg</image> 

</plant> 

</catalog> 

です。

<?xml encoding="UTF-8"?> 
<!ELEMENT catalog (title,plant+)> 
<!ELEMENT title (#PCDATA)> 
<!ELEMENT plant (name,climate,height,usage,image)> 
<!ATTLIST plant id CDATA #REQUIRED> 
<!ELEMENT name (#PCDATA)> 
<!ELEMENT climate (#PCDATA)> 
<!ELEMENT height (#PCDATA)> 
<!ELEMENT usage (#PCDATA)> 
<!ELEMENT image (#PCDATA)> 

上記のDTDで何が問題なのか教えてください。

答えて

0

インスタンス文書が「正当」であり、DTDが「間違っている」と仮定して、気候を省略して(書き込みclimate?)、使用を繰り返すことができるようにDTDを変更する必要があります(書き込みusage+)。これらの2つの例はplant要素を有効にしますが、DTDを設計するには、有効なすべての有効な要素を考慮する必要があります。

+0

ありがとうございました –

関連する問題