Export (0) Print
Expand All

Stylesheet (XSL) web resources

Applies To: Microsoft Dynamics CRM 2013, Microsoft Dynamics CRM Online

Use Stylesheet (XSL) Web resources to transform XML data.

Use XSL Web resources to transform XML data used by your solution.

The following Web resources work together to render a page that displays a table using the data in the XML Web resource. The source files for these Web resources are part of the Import Web Resources sample included with the SDK Download the Microsoft Dynamics CRM SDK package. at sdk\samplecode\cs\client\webresources\importwebresources\importwebresources\filestoimport.

HTML Web resource: sample_/ImportWebResources/Content/ShowData.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title></title>
 <script src="Script/Script.js" type="text/javascript"></script>
 <link href="CSS/Styles.css" rel="stylesheet" type="text/css" />
</head>
<body onload="SDK.ImportWebResources.showData()">
 <div id="results" />
</body>
</html>
XSL Web resource: sample_/ImportWebResources/XSL/Transform.xslt
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:msxsl="urn:schemas-microsoft-com:xslt"
                exclude-result-prefixes="msxsl"
>
 <xsl:output method="xml"
             indent="yes"/>

 <xsl:template match="@* | node()">
  <xsl:copy>
   <xsl:apply-templates select="@* | node()"/>
  </xsl:copy>
 </xsl:template>


 <xsl:template match="people">
  <xsl:element name="table">
   <xsl:element name="thead">
    <xsl:element name="tr">
     <xsl:element name="th">
      <xsl:text>First Name</xsl:text>
     </xsl:element>
     <xsl:element name="th">
      <xsl:text>Last Name</xsl:text>
     </xsl:element>
    </xsl:element>
   </xsl:element>
   <xsl:element name="tbody">
    <xsl:apply-templates />
   </xsl:element>
  </xsl:element>

 </xsl:template>

 <xsl:template match="person">
  <xsl:element name="tr">
   <xsl:element name="td">
    <xsl:value-of select="@firstName"/>
   </xsl:element>
   <xsl:element name="td">
    <xsl:value-of select="@lastName"/>
   </xsl:element>
  </xsl:element>

 </xsl:template>

</xsl:stylesheet>

XML Web resource: sample_/ImportWebResources/Data/Data.xml
<?xml version="1.0" encoding="utf-8" ?>
<people>
 <person firstName="Apurva"
         lastName="Dalia" />
 <person firstName="Ofer"
         lastName="Daliot" />
 <person firstName="Jim"
         lastName="Daly" />
 <person firstName="Ryan"
         lastName="Danner" />
 <person firstName="Mike"
         lastName="Danseglio" />
 <person firstName="Alex"
         lastName="Darrow" />
</people>
Script Web resource: sample_/ImportWebResources/Script/Script.js
//If the SDK namespace object is not defined, create it.
if (typeof (SDK) == "undefined")
{ SDK = {}; }
// Create Namespace container for functions in this library;
SDK.ImportWebResources = {
 dataFile: "Data/Data.xml",
 transformFile: "XSL/Transform.xslt",
 showData: function () {

  //Create an XML document from the Data.xml file
  var dataXml = new ActiveXObject("Msxml2.DOMDocument.6.0");
  dataXml.async = false;
  dataXml.load(this.dataFile);

  //Create an XML document from the Transform.xslt file
  var transformXSLT = new ActiveXObject("Msxml2.DOMDocument.6.0");
  transformXSLT.async = false;
  transformXSLT.load(this.transformFile);

  // Set the innerHTML of the results area to the output of the transformation.
  var resultsArea = document.getElementById("results");
  resultsArea.innerHTML = dataXml.transformNode(transformXSLT);
 }

}
CSS Web resource: sample_/ImportWebResources/CSS/Styles.css
body
{
    font-family: Calibri;
}
table
{
    border: 1px solid gray;
    border-collapse: collapse;
}
th
{
    text-align: left;
    border: 1px solid gray;
}
td
{
    border: 1px solid gray;
}

See Also

Microsoft Dynamics CRM 2013 and Microsoft Dynamics CRM Online
Send comments about this topic to Microsoft.
© 2014 Microsoft Corporation. All rights reserved.
Show:
© 2014 Microsoft