其他
天天用XML,可你了解DTD吗?
The following article is from 程序员架构 Author 立体的萌
来源丨本文经授权转自程序员架构(ID:chengxuyuanjg)
作者丨立体的萌
引子
XML我们再熟悉不过了,我记得我上学的时候学习JSP时,就写过web.xml文件,学到Struts时,又写过struts-config.xml文件,以及如何用dom4j解析XML……可是我们每天都用就意味着我们很了解XML吗?别的不说,就说说XML领域中应用最广泛地三个技术:XML、XML名称空间和XSTL是怎么用的?还有XML的起源?XML与HTML又有什么区别?XML就像是一位变得熟悉而又陌生的老熟人,我们天天都跟他打交道,他天天为我们服务,然而我们真的很了解XML吗?XML真的不是HTML的兄弟!
XML与HTML从名字上看就好像一个爹生的兄弟俩(如果按照西方的规则,姓氏放在名字后面的话),HTML的全称叫做:Hypertext Markup Language(超文本标记语言),XML的全称叫做Extensible Markup Language(可扩展标记语言),都是标记语言不假,先别急,talk is cheap,show me your code;这是一段HTML代码示例:为了更好的使用,引入语义约束
1 DTD是什么?语义约束其实就相当于我们写java时候的编译,编辑器只能帮你检查语法错误,但是你写的程序能不能实现最优那是编译器说了算,语义约束就是在格式良好的XML文档的基础上来实现“有效性”,比如:元素之间的关系、元素与属性之间的关系、属性的取值是否正确等;DTD具体能做什么我通过一张表格来呈现
2 DTD文档的结构
一.元素类型声明
如果说又增加了一个元素:sex,非男即女的选项只能选一个,那么这里就要用到“或”:|
如何使用DTD
第一种:直接在文档中声明DTD,也叫内部DTD总结
以上就是XML中非常常见的DTD技术,以及区分了XML与HTML,我在学习的时候发现XML和HTML非常像,后来随着学习的深入,发现根本就不是一回事,了解了DTD技术,我们就能对XML的语义约束有了更深入的理解关于作者:
笔名立体的萌,是个工作还不到一年就辞职考研的的菜鸟,上学学习的是java,但是工作用的是C#,C#用途远远没有java范围广,再加上java是我的母语,所以很像回归java,不仅仅是提升技术能力,也有往大数据等高端领域发展的想法。请作者吃糖本文作者:立体的萌
个人网址:https://blog.csdn.net/weixin_46107282
声明:本文为 程序员架构 原创投稿,未经允许请勿转载。
3、12.8k Star!“神奇虫洞”,一条命令就能安全传送文件
点分享
点点赞
点在看