以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 DTD/XML Schema 』  (http://bbs.xml.org.cn/list.asp?boardid=23)
----  有关DTD中属性定义的ID  (http://bbs.xml.org.cn/dispbbs.asp?boardid=23&rootid=&id=29390)


--  作者:一路逍遥
--  发布时间:3/27/2006 3:03:00 PM

--  有关DTD中属性定义的ID
在XML的规范中有没有定义说属性为ID类型的必须要以字母开头,
因为我使用XMLSpy如果将ID类型的属性值设定为纯数值型的,验证无法通过
--  作者:hgpimac
--  发布时间:3/27/2006 3:10:00 PM

--  
要符合xml命名规范
--  作者:一路逍遥
--  发布时间:3/27/2006 3:15:00 PM

--  
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT 学生 (姓名,年龄,地址,电话 ,邮箱)>
<!ELEMENT 姓名 (#PCDATA)>
<!ELEMENT 年龄 (#PCDATA)>
<!ELEMENT 地址 (#PCDATA)>
<!ELEMENT 电话 (#PCDATA)>
<!ELEMENT 邮箱 (#PCDATA)>

<!ATTLIST 学生 学号 ID #REQUIRED >

-----------------------------
上面是DTD的定义

-----------------------------

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE 学生 SYSTEM "aaa.dtd">
<学生 学号="a0001" >
 <姓名></姓名>
 <年龄></年龄>
 <地址></地址>
 <电话></电话>
 <邮箱></邮箱>
</学生>
-------------------------------
下面是依据DTD构造的XML,
请问可以将学号的值“a0001”改成“0001”吗


--  作者:0818wang
--  发布时间:3/27/2006 6:07:00 PM

--  
。。。惭愧``不知道
--  作者:kinzeynew
--  发布时间:2/10/2009 5:35:00 PM

--  
ID类型的话,需要以  字母、下划线或冒号(半角的)开头,名称中可以使用字母、数字、下划线及其他XML允许的字符,否则当然无法通过验证,会提示错误:    
must obey the syntactical naming convention.(必须符合命名约定)


--  作者:hexun831012
--  发布时间:2/12/2009 9:11:00 PM

--  
惭愧too,貌似DTD不再是XML组成部分,还是XSD去吧
--  作者:cdmazte2009
--  发布时间:3/18/2009 4:07:00 PM

--  
DTD 中没有要求必须用字母开头,但是XML文档的对命名是有这个要求的。ID属性值将体现到一个XML文档中去了,所以你不写当然错了
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
60.547ms