HTML和XML的最大区别在于:HTML是一个定型的标记语言,它用固有的标记来描述,显示网页内容。比如< H1>表示首行标题,有固定的尺寸。相对的,XML则没有固定的标记,XML不能描述网页具体的外观,内容,它只是描述内容的数据形式和结构。网页是将数据和显示混在一起,而xml是将数据和显示分开,xml是数据的集合,用来存储数据、共享数据,数据的显示可以用xsl等来控制。
下面说说xml、xsl以及脚本各自特点:
l Xml(可扩展标识语言):描述数据类型,建立文档元素,即存储数据、共享数据。
l Xsl(可扩展样式语言):储存并各文档元素的显示样式,相对xml而言,它强调利用规则来完成数据的显示。
l 脚本(js):结合xml和xsl以及html,调用方法和事件控制元素如何动作。
二、xml数据文档转换的思想和步骤
1、转换思想:
数据格式转换的重要思想是要把XML文档视为一种树结构,转换的过程就是从源树生成结果树的过程。XSL样式单定义了源树和结果树中对应部分的转换规则,每条规则中包含了一个模板,并对应着一种模式。模板定义了转换的结果,而模式则规定了需要进行转换的元素或属性对象。
2、转换步骤:
(1)、首先是根据XML文档构造源树,然后根据XSL规则将源树转换为结果树。目前,这种转换协议已经日趋完善,并从XSL中独立出来,成为W
(2)、生成结果树后,就可以对其进行解释,产生一种适合显示、打印或是播放的格式,这一步称为格式化(Formatting)。
XSL处理器负责实现转换过程。首先,XML文档被解析成DOM树存放在内存中,接着对文档进行分析,每一个DOM树中的节点都会与一个模式相比较,当二者匹配时,就会按照模板中定义的规则进行转换,否则继续往下匹配。如此循环,直至整个文档处理完毕。
三、应用xml与js结合进行数据处理和呈现的步骤和代码
1、建立标识(定义标识),建好文档树结构。
2、建立xml文档,按照标识(文档树)建立所有相关数据。
3、建立相应的html文件和控制数据显示的xsl文件。
4、数据处理过程:利用脚本js导入xml数据、结合html绑定数据,并进行一系列动作操作。
利用js获得xml文档和节点数据的具体代码为:
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");//新建一个xml文档
xmlDoc.async=false;
xmlDoc.load("xml文件");//装载xml数据
在利用js获得xml数据文档后,就可以结合html以及js脚本对xml的节点数据进行处理.
具体获得xml节点数据的方法为:
Nodes = xmlDoc.selectNodes(“/root/item”);//获得所有item的节点
Text.value = Nodes[i].selectSingleNode(“name”).text ;//获得每个item中的name节点数据(其中i = 0,1,……,Nodes.length)
5、数据呈现:利用xsl进行数据显示。
利用xsl可以对xml数据进行显示控制,具体的方法为:
var styleDoc=new ActiveXObject("Microsoft.XMLDOM");
styleDoc.async=false;
styleDoc.load("xsl文件");
SpanHtml.innerHtml =xmlDoc.transformNode(styleDoc);
其中Spanhtml为html元素.最终数据结果将呈现在SpanHtml中,也可以是其他html元素。