XML——DTD

很多关于XML的书都讲解了如何写DTD文件

我自己学习的时候,边看书边动手写,但是遇到了一些问题。

在这里写出来


1、DTD写的是正确的(我当时是照着书抄了一些),然后在XML文档中故意写了些违法DTD文档要求的代码,但是,浏览器依然可以正常显示。

要是你也遇到这问题,就不要再用简单的记事本写DTD和XML文档了,用专业的XML编辑软件,如XML Spy。

据网上有人说,这是因为浏览器没有DTD解析器。

我也不管是不是真是这样,这也不是关键问题,我就直接下载了个XML Spy,然后就完全可以照着书折腾来折腾去了。



2、如何在DTD中声明中顺序任意的元素?

我自己拿的一本书,直接告诉我是用“|”符号来实现的,如下面的代码

<!ELEMENT book (author|price)*>

如果你看过XML书籍中讲解如何规定元素出现的次数时,就会遇到“|”、“*”、“?”、“+”符号

然后,你的大脑可能就要打架了

经过我的思考,我终于明白 "*" 符号的真正作用是什么了?

它的作用就是循环

在上面的例子中,就是将 (author|price)循环,每次从author和price中任选选择一个,再重复N次,不就实现了顺序的任意性,且数量不限么?


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值