网页制作 
首页 > 网页制作 > 浏览文章

简单了解XML中的处理指令

(编辑:jimmy 日期: 2024/12/24 浏览:3 次 )

"处理指令(PIs)允许文档包含用于应用程序的指令。指令并不是文档字符数据的一部分,但是必须通过应用程序传递"。
处理指令可以用于将信息传递给应用程序。处理指令可以出现在文档任意位置的标记外部。可以出现在序言中,包括文档的类型定义(DTD),文本内容或者文档之后。

处理指令,允许文档中包含由应用程序来处理的指令。在XML文档中,有可能会包含一些非XML格式的数据,这些数据XML处理器无法处理,我们就可以通过处理指令来通知其它应用程序来处理这些数据。
处理指令(PI)的语法和XML声明类似,以<?开始,以?>结束。一个常见的使用样式表单的处理指令如下所示:

XML/HTML Code复制内容到剪贴板
  1. <?xml-styesheet herf=”hello.css” type=”text/css”?>  

在开始标记<?后的第一个字符串xml-styesheet 叫做处理指令的目标,它必须标识要用到的应用程序,要注意的是对于其它的非W3C定义的处理指令不能以字符串XML和xml开头,其余的部分是传递给应用程序的字符数据,应用程序从处理指令中取得目标和数据,执行要求的动作。
处理指令的目标可以是要使用的程序的名字,或者是一个类似于xml-stylesheet这样的很多程序可以识别的通过标识符。不同的应用程序支持不同的处理指令,对于不认识的处理指令,大多数应用程序采取忽略的方式进行处理。对于自定义的处理指令,它通常都是由选定的某个应用程序进行处理。因为你所定义的这个处理指令,对于其它应用程序来说并不能识别,这时就会忽略的方式来处理。
xml-stylesheet处理指令总是放在XML声明之后和,第一元素之前。其它的处理指令可以放在标记的内部和XML声明之前的任何位置。
要注意,虽然XML声明和处理指令的语法形式相似,但XML声明并不是处理指令,XML处理程序对XML声明和处理指令采取的是不同的处理方式


语法
下面是处理指令的语法:

XML/HTML Code复制内容到剪贴板
  1. <?target instructions?>  

其中:

target - 标识指令指向哪个应用程序。
instruction - 字符,描述了应用程序要处理的信息。
处理指令以特殊的 <? 标记开始,以 ?> 结尾。处理的内容在遇到字符串 ?> 时立即结束。

示例
处理指令很少被使用。主要用于链接 XML 文档到样式表。下面是一个例子:

XML/HTML Code复制内容到剪贴板
  1. <?xml-stylesheet href="tutorialspointstyle.css" type="text/css"?>  

这里,target 就是 xml-stylesheet。href="tutorialpointstyle.css" 和 type="text/css" 就是数据或者目标应用程序用将要用来处理给定 XML 文档的指令。

在这种情况下,浏览器通过标示识别目标,XML 应该在显示之间被转换;第一个属性状态说明转换类型是 XSL,第二个属性指向它的位置。

处理指令规则
处理指令可以包含除了 ?> 组合之外的任意数据,它被解释为闭合指令。下面是两个有效的处理指令示例:

XML/HTML Code复制内容到剪贴板
  1. <?welcome to pg=10 of tutorials point?>  
  2.   
  3. <?welcome?>  
上一篇:浅谈XML代码编写的编码与验证问题
下一篇:解析XML对代码中的空白处理
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?