XML入门精解之结构与语法(4)_Xml教程
推荐:XML入门的一些常见的问题总结(三)作者:AngelGavin 出处:CSDN 如何加载有外国和特殊字符的文档? 文档可以包含外国字符,例如: foreign characters (úóí?) 例如 磲 的外国字符必须在
〈作者〉张三〈/作者〉和
〈作者〉
张三
〈/作者〉
上述内容对于解析器来说是不同的(后者在〈作者〉〈/作者〉标记之内除了张三这个字符以外,还包括两个换行记号以及“张三”前的文字缩排符号)。所以解析器在去掉标记后将信息传给应用程序将有不同的处理结果。
如果我们想明确地告诉XML程序,标记中的空白有明确的含义,不要随便去掉(如在一些诗中,空格有它具体的意义),则可在标记中加入一个XML内置的属性——xml:space 。如(注意属性名称和值的大小写):
〈诗歌 xml:space="preserver"〉
祖国啊! 祖国!
我的祖国!
〈/诗歌〉
另外,在XML文件中,如果要用到表1的特殊字符,必须用相应符号代替。
表1
特殊字符 替代符号
&& &
< ⁢
> >
" "
' '
在此做个小结:符合上述规定的XML文件就是Well-Formed的XML文件。这是编写XML文件的最基本要求。可以看到XML文件的语法规定比HTML要严格多了。由于有这样的严格规定,软件工程师编写XML的解析器就容易多了,不像编写HTML语言的解析器,必须费尽心思去适应不同的网页写法,提高自己浏览器的适应能力。实际上,这对于我们初学者来说,也是一件好事。该怎样就怎样,不必像原来那样去疑惑各种HTML的写法。
我们看到,在XML文件中,用的大多都是自定义的标记。但是大家考虑一下,如果两个同行业的公司A和B要用XML文件相互交换数据,A公司用〈价格〉标记来表示他们产品的价格信息,而B公司可能用〈售价〉来表示价格信息。如果一个XML应用程序来读取他们各自的XML文件中的信息时,如果它只知道〈价格〉标记里表示的是价格信息,那么B公司的价格信息就读不出来,必将产生错误。显然,对于想利用XML文件来交换信息的实体来说,他们之间必须有一个约定——即编写XML文件可以用哪些标记,母元素中能够包括哪些子元素,各个元素出现的顺序,元素中的属性怎样定义等。这样他们在用XML交换数据时才能够畅通无阻。这种约定称为DTD(Document Type Definition,文档格式定义)。可以把DTD看作编写XML文件的模板。对于同行业之间的XML数据交换,有一个固定的DTD将会方便很多。比如说,如果网上的各大电子商场的XML网页都遵循同一个DTD时,那么我们就可以轻松地依据这个DTD 编写一个应用程序,去网上将我们感兴趣的东西自动抓回来。事实上已经有了好几个定义好的DTD,如前面所说的MathML、SMIL等。
分享:XSL-FO 初学者教程:XSL-FO 文档XSL-FO 文档是带有输出信息的XML文件。 XSL-FO 文档 XSL-FO 文档是带有输出信息的XML文件。它们含有有关输出布局以及输出内容的信息。 XSL-FO文档存储在以.fo或.fob为后缀的文件中。以.xm
- 相关链接:
- 教程说明:
Xml教程-XML入门精解之结构与语法(4)。