Subject: Could XPath identify markup generated in XSL?
From: "Khan, Noel" <Noel.Khan@xxxxxxxxxxxxxx>
Date: Tue, 12 Apr 2011 15:51:12 -0700
|
XSL version: 1
Vendor: Microsoft
Vendor URL: http://www.microsoft.com
Upgrade to XSLT 2 not viable
================================
Suppose an XML file ("A") references an XSL file.
That XSL file copies a node-list from another XML file ("B").
Among other things, B contains the element "<that>".
Within the XSL, can I now target <that> for XSLT?
If XSL can't identify/query for markup that it itself generated, are
there alternative approaches to solving this problem?
========= SAMPLE DATA ===========
ENTRY.XML (aka, "A")
{
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="bind.xsl"?>
<root/>
}
GUI.XML {aka, "B")
{
<html>
<head>
<link rel="stylesheet" href="style.css" type="text/css"
/> </head>
<frameset rows="50,*">
<frame name="header" src="img/hdr.jpg" />
<frame name="body"><app/></frame>
<!-- ^^^^^ -->
</frameset>
</html>
}
BIND.XSL
{
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:copy-of select="document('gui.xml')" />
<xsl:apply-templates />
</xsl:template>
<!-- THE APP ELEMENT (BELOW) WAS JUST
COPIED FROM THE ABOVE "COPY-OF" -->
<xsl:template match="//app">
<xsl:copy-of select="document('app.aspx)" />
</xsl:template>
</xsl:stylesheet>
}
|