一、基本概念:

    HTMLXML的最大区别在于:HTML是一个定型的标记语言,它用固有的标记来描述,显示网页内容。比如< H1>表示首行标题,有固定的尺寸。相对的,XML则没有固定的标记,XML不能描述网页具体的外观,内容,它只是描述内容的数据形式和结构。网页是将数据和显示混在一起,而xml是将数据和显示分开,xml是数据的集合,用来存储数据、共享数据,数据的显示可以用xsl等来控制。

下面说说xmlxsl以及脚本各自特点:

l          Xml(可扩展标识语言):描述数据类型,建立文档元素,即存储数据、共享数据。

l          Xsl(可扩展样式语言):储存并各文档元素的显示样式,相对xml而言,它强调利用规则来完成数据的显示。

l          脚本(js):结合xmlxsl以及html,调用方法和事件控制元素如何动作。

二、xml数据文档转换的思想和步骤

1、转换思想:

  数据格式转换的重要思想是要把XML文档视为一种树结构,转换的过程就是从源树生成结果树的过程。XSL样式单定义了源树和结果树中对应部分的转换规则,每条规则中包含了一个模板,并对应着一种模式。模板定义了转换的结果,而模式则规定了需要进行转换的元素或属性对象。

2、转换步骤:

(1)、首先是根据XML文档构造源树,然后根据XSL规则将源树转换为结果树。目前,这种转换协议已经日趋完善,并从XSL中独立出来,成为W3C正式推荐的标准,称为XSLTXSL Transformations);

(2)、生成结果树后,就可以对其进行解释,产生一种适合显示、打印或是播放的格式,这一步称为格式化(Formatting)。

    XSL处理器负责实现转换过程。首先,XML文档被解析成DOM树存放在内存中,接着对文档进行分析,每一个DOM树中的节点都会与一个模式相比较,当二者匹配时,就会按照模板中定义的规则进行转换,否则继续往下匹配。如此循环,直至整个文档处理完毕。

三、应用xmljs结合进行数据处理和呈现的步骤和代码

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);

其中Spanhtmlhtml元素.最终数据结果将呈现在SpanHtml中,也可以是其他html元素。