XSLT - సర్వర్ సైడ్

అన్ని బ్రౌజర్లు ఈసిఎల్ఎటి ని మద్దతు చేయలేదు కాబట్టి, మరొక పరిష్కారం సర్వర్లో XML నుండి XHTML కు మార్చడం పూర్తి చేయడం.

క్రాస్-బ్రౌజర్ పరిష్కారం

ముంది చాప్టర్లలో, మేము బ్రౌజర్లలో XSLT ఉపయోగించి XML నుండి XHTML కు మార్చడం చెప్పాము. మేము XML పరస్యాన్ని ఉపయోగించి మార్చడానికి జావాస్క్రిప్ట్ సంకలనం చేశాము. జావాస్క్రిప్ట్ పరిష్కారం ఎక్స్ఎమ్ఎల్ పరస్యాన్ని కలిగిన బ్రౌజర్లలో పని చేయలేదు. ఎక్స్ఎమ్ఎల్ డాటాను అన్ని రకాల బ్రౌజర్లకు అనువుగా చేయడానికి, మేము సర్వర్లో XML డాక్యుమెంట్ని మార్చి, అప్పటికే XHMTL గా పంపించాము.

ఈసిఎల్ఎటి యొక్క మరొక ప్రయోజనం ఇది. ఈసిఎల్ఎటి యొక్క డిజైన్ గోర్ఖలలో ఒకటి సర్వర్లో డాటాను ఒక ఫార్మాట్ నుండి మరొక ఫార్మాట్ కు మార్చడానికి అవకాశం కల్పించడం, మరియు అన్ని రకాల బ్రౌజర్లకు చదవగలిగే డాటాను అందించడం.

XML ఫైల్స్ మరియు XSL ఫైల్స్

ముంది చాప్టర్లలో చూపబడిన ఈ XML డాక్యుమెంట్ని చూడండి:

<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
.
.
.
</catalog>

ఈ XML ఫైల్ని చూడండి

మరియు అనుబంధ ఎక్స్ఎస్ఎల్ షేప్ట్స్:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0">
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2> 
    <table border="1">
      <tr bgcolor="#9acd32">
        <th align="left">Title</th> 
        <th align="left">Artist</th> 
      </tr>
      <xsl:for-each select="catalog/cd">
      <tr>
        <td><xsl:value-of select="title" /></td>
        <td><xsl:value-of select="artist" /></td>
      </tr>
      </xsl:for-each>
  </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

ఈ XSL ఫైల్ను చూడండి

ఈ XML ఫైల్ను ఎక్స్‌ఎస్ఎల్ ఫైల్ని సూచించలేదు అని చూడండి.

ముఖ్యమైన విషయం:ఈ పదం వారు, XML ఫైల్ను అనేక వివిధ XSL షేప్‌లతో మార్చవచ్చని చెప్పేది.

సర్వర్ పైన XML ను XHTML లో మార్చడం

ఇది సర్వర్ పైన ఎక్స్‌ఎమ్‌ఎల్ ఫైల్‌ను XHTML లో మార్చే సోర్స్ కోడ్ ఉంది:

<%
XML లోడ్
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("cdcatalog.xml"))
XSL లోడ్
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("cdcatalog.xsl"))
ఫైల్ ట్రాన్స్‌ఫార్మ్
Response.Write(xml.transformNode(xsl))
%>

అనురూపం:మీరు ASP రాయడానికి తెలియకపోతే, మా ఉపదేశాన్ని అభ్యసించవచ్చు అనిASP శిక్షణాలు》。

第一段代码创建了微软的 XML 解析器的一个实例,然后把 XML 文件载入了内存。第二段代码创建了解析器的另一个实例,然后把这个 XSL 文件载入了内存。最后一行代码使用 XSL 文档转换了 XML 文档,并把结果作为 XHTML 发送到您的浏览器。任务完成!

请看它如何工作