xsl之xslt粗略认识

XSL由3部分组成:

XSLT - a language for transforming XML documents
XSLT - 转变XML文档的语言。
XPath - a language for navigating in XML documents
XPath-对XML文档进行操作的语言。
XSL-FO - a language for formatting XML documents
XSL-FO - 格式化XML文档的语言。

下边是一些常用xslt元素:

1,声明根据W3C XSLT参考标准的XSL样式表的正确的途径是:
<xsl:stylesheet version="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 


2,<xsl:value-of>元素用于选取选择节点值。

3,<xsl:for-each>元素允许在XSLT里使用循环语句。

4,<xsl:sort>元素用于对结果进行分类。

5,<xsl:if>元素的作用是:对XML文件的内容设置一个条件语句。
<xsl:if test="expression">
  ...  ...some output if the expression is true...  ...
</xsl:if>


6,<xsl:choose>元素通过<xsl:when>和<xsl:otherwise>一起配合是用来表达多种条件语句。
<xsl:choose>  
  <xsl:when test="expression1">   
     ... some output ...  
  </xsl:when>
  <xsl:when test="expression2">   <!-- 但暂时不明白,为什么小于符号使用抱错“<” -->
     ... some output ...  
  </xsl:when> 
  <xsl:otherwise>   
     ... some output ....  
  </xsl:otherwise>
</xsl:choose>



虽然目前各厂商浏览器基本都支持xslt,但还是存在一些浏览器兼容问题,为了解决这问题,我们可以在服务器完成xml转换为xhtml,然后在用户请求时候向用户直接返回xhtml。下边是一个asp转换例子,各语言有属于他们自己的转换模式google一下就能找到结果。我也尝试过通过客户端进行整合,也存在兼容问题,在说javascript对seo没什么好处。
<%
'Load XML
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("mysite.xml")) 'xml文件

'Load XSL
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("mysite.xsl")) 'xsl文件

'Transform file
Response.Write(xml.transformNode(xsl)) '将合并结果打印出来
%>

你可能感兴趣的:(xml,浏览器,Microsoft,asp,XSL)