设为首页
收藏本站
最近更新

文章搜索
本类热门

 

首页 >> 网络编程 >> XML >> XML教程 >> 新闻正文 [字体:  ] [打印文档
XML入门精解之结构与语法

文章作者:feng_sundy
责任编辑:大鱼 录入时间:2004-10-30 22:01:34 来源:feng_sundy的专栏
频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意. 

码。而在XML中,要实现这样的功能,就必须使用CDATA标记。在CDATA标记中的信息被解析器原封不动地传给应用程序,并且不解析该段信息中的任何控制标记。CDATA区域是由:“〈![CDATA[”为开始标记,以“]]〉”为结束标记。例如:例2中的源码,除了“〈![CDATA[”和“]]〉”符号,其余的内容解析器将原封不动地交给下游的应用程序,即使CDATA区域中的开始和结尾的空白以及换行字符等,都同样会被转交(注意CDATA是大写的字符)。 

  例2 

  〈![CDATA[飞翔的xml〉〉〉〉〉,:-) 

  oooo〈〈〈〈〈〈〈 

  ]]〉 

  第八,XML处理空白字符和HTML不一样。HTML标准规定,不管有多少个空白,都当作一个空白来处理;而在XML中规定,所有标记以外的空白,解析器都要忠实地交给下游的应用程序处理。这样,我们有时必须摒弃编写HTML文件时的缩排习惯,因为缩排的空格,解析器也要处理。如: 

   〈作者〉张三〈/作者〉 

  和 

   〈作者〉 

   张三 

   〈/作者〉 

  上述内容对于解析器来说是不同的(后者在〈作者〉〈/作者〉标记之内除了张三这个字符以外,还包括两个换行记号以及“张三”前的文字缩排符号)。所以解析器在去掉标记后将信息传给应用程序将有不同的处理结果。 

  如果我们想明确地告诉XML程序,标记中的空白有明确的含义,不要随便去掉(如在一些诗中,空格有它具体的意义),则可在标记中加入一个XML内置的属性——xml:space 。如(注意属性名称和值的大小写): 

  〈诗歌 xml:space="preserver"〉 

   祖国啊! 祖国! 

   我的祖国! 

   〈/诗歌〉 

  另外,在XML文件中,如果要用到表1的特殊字符,必须用相应符号代替。 
表1
特殊字符    替代符号
&&    &
<    &it;
>    &gt;
"    &quot;
'    &apos;

  在此做个小结:符合上述规定的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等。 

  如果一个XML文件是Well-Formed的,并且它是正确的依据某个DTD建立的,那么,这个XML文件就被称为:Validating XML文件。相应的解析器就称为:Validating Parser。

此新闻共有2页 上一页 1 2 下一页

推荐好友 | 频道收藏 | 打印文档 | 报告错误  
相关连接
·XML的四种解析器原理及性能比较
·xmlHTTP技术资料
·XML入门精解之结构与语法
·探索 XML 的替代语法 —— 阅读和思考
·XML与HTML的结合(下)
·XML与HTML的结合(上)
·如何建立一个 XML 的开发环境
·XML入门精解之结构与语法
同一专题
·无相关专题
发表评论 版权声明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有
转载
要求转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。
共有评论查看评论
姓名: