请问<!ATTLIST>约束实际含义是什么呢?

请问<!ATTLIST>约束实际含义是什么呢?

hr.dtd:

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

<!ELEMENT hr (employee+)>

<!ELEMENT employee (name,age,salary,department)>

<!ATTLIST employee no CDATA "">

<!ELEMENT name (#PCDATA)>

<!ELEMENT age (#PCDATA)>

<!ELEMENT salary (#PCDATA)>

<!ELEMENT department (dname,address)>

<!ELEMENT dname (#PCDATA)>

<!ELEMENT address (#PCDATA)>

hr.xml:

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

<!DOCTYPE hr SYSTEM "hr.dtd">

<!-- 人力资源管理系统  -->

<hr>

<employee no="3309">

<name>张三</name>

<age>31</age>

<salary>4000</salary>

<department>

<dname>会计部</dname>

<address>编程大厦-B103</address>

</department>

</employee>

<employee no="3310">

<name>李四</name>

<age>23</age>

<salary>3000</salary>

<department>

<dname>工程部</dname>

<address>编程大厦-B104</address>

</department>

</employee>

</hr>

如下代码:

<!ATTLIST employee no CDATA "">

比如上面这段,employee元素后面的“no”、"CDATA"和""这三个属性代表什么意思呢。我在esclipse里测试了一下,

  1. 把这行改为<!ATTLIST employee no>,ht.xml文件也不会报错。

  2. 把这行改为<!ATTLIST employee abc>,ht.xml文件也不会报错。

  3. 把ht.xml文件employee元素的属性删光,ht.xml也不会报错。

  4. 在ht.xml文件employee元素中随便添加一个例如 【abc="test"】,ht.xml也不会报错。

所以,这个语法到底代表啥意思呢?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

属性通过 ATTLIST 声明来进行声明。

属性声明使用下列语法:

<!ATTLIST 元素名称 属性名称 属性类型 默认值>

同学修改文件以后,可以对文件重新编译,编译以后再尝试~~

另外 同学可以看一下W3C中对于属性声明的解释:

http://www.w3school.com.cn/dtd/dtd_attributes.asp 

如果还有疑问,可以继续提问,祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
从网页搭建入门Java Web2018版
  • 参与学习           人
  • 提交作业       1088    份
  • 解答问题       10204    个

如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师