DTD,#REQUIRED,#IMPLIED,示例
DTD, #REQUIRED, #IMPLIED, Example
我有一个 DTD 文件,这是 it.It 编写的 lv id ID #IMPLIED 的一部分。
由于#REQUIRED 的定义保持不变:"Elements can have zero or more attributes."这使得代码自动正确,但是#IMPLIED 是否可以替换为#REQUIRED,因为这里的元素已经有一个属性并且没有零个属性,或者我错过了什么?
<!ELEMENT lv (title, subtitle?, length, content, abstract)>
<!ATTLIST lv id ID #IMPLIED>
<!ELEMENT title (#PCDATA)>
<!ELEMENT subtitle (#PCDATA)>
<!ELEMENT abstract (#PCDATA)>
<!ELEMENT length EMPTY>
<!ATTLIST length value CDATA #REQUIRED
unit (sws| h| min) "sws">
这是关联的 XML-文件:
<?xml version="1.0"?>
<?xml-stylesheet href="lv.xsl" type="text/xsl"?>
<!DOCTYPE lv SYSTEM "lehre.dtd">
<lv id="wip2">
<title>WI-Praktikum 2</title>
<subtitle>Verarbeitung strukturierter Daten</subtitle>
<length value="2" unit="sws"/>
<content>
<topic>Grundlagen</topic>
<topic>Grammatiken</topic>
<topic>SAX</topic>
</content>
<abstract>
Der Kurs vermittelt den Aufbau und die Verarbeitung von XML-Dokumenten.
Als Programmiersprachen kommen Java, Python und XSLT zum Einsatz.
</abstract>
</lv>
我不确定我是否完全理解您的问题,但是您可以在元素 [=13] 上的属性 id
的属性声明中将 #IMPLIED
更改为 #REQUIRED
=].
属性 id
是类型 ID
,因此它的默认值必须为 #IMPLIED
或 #REQUIRED
。哪一个由你决定。
您还必须只为一个元素声明一个 ID
类型属性,但您的 DTD 已经满足该要求,因此无需担心。
有关详细信息,请参阅规范 (3.3 Attribute-List Declarations)。
我有一个 DTD 文件,这是 it.It 编写的 lv id ID #IMPLIED 的一部分。 由于#REQUIRED 的定义保持不变:"Elements can have zero or more attributes."这使得代码自动正确,但是#IMPLIED 是否可以替换为#REQUIRED,因为这里的元素已经有一个属性并且没有零个属性,或者我错过了什么?
<!ELEMENT lv (title, subtitle?, length, content, abstract)>
<!ATTLIST lv id ID #IMPLIED>
<!ELEMENT title (#PCDATA)>
<!ELEMENT subtitle (#PCDATA)>
<!ELEMENT abstract (#PCDATA)>
<!ELEMENT length EMPTY>
<!ATTLIST length value CDATA #REQUIRED
unit (sws| h| min) "sws">
这是关联的 XML-文件:
<?xml version="1.0"?>
<?xml-stylesheet href="lv.xsl" type="text/xsl"?>
<!DOCTYPE lv SYSTEM "lehre.dtd">
<lv id="wip2">
<title>WI-Praktikum 2</title>
<subtitle>Verarbeitung strukturierter Daten</subtitle>
<length value="2" unit="sws"/>
<content>
<topic>Grundlagen</topic>
<topic>Grammatiken</topic>
<topic>SAX</topic>
</content>
<abstract>
Der Kurs vermittelt den Aufbau und die Verarbeitung von XML-Dokumenten.
Als Programmiersprachen kommen Java, Python und XSLT zum Einsatz.
</abstract>
</lv>
我不确定我是否完全理解您的问题,但是您可以在元素 [=13] 上的属性 id
的属性声明中将 #IMPLIED
更改为 #REQUIRED
=].
属性 id
是类型 ID
,因此它的默认值必须为 #IMPLIED
或 #REQUIRED
。哪一个由你决定。
您还必须只为一个元素声明一个 ID
类型属性,但您的 DTD 已经满足该要求,因此无需担心。
有关详细信息,请参阅规范 (3.3 Attribute-List Declarations)。