This is probably a rough approximation of what dominic's component does
under the hood (probably different xsl, but it's probably xsl)
<cfsavecontent variable="xsl">
<xsl:stylesheet version="1.0">
<xsl:output method="xml" />
<xsl:template match="*">
<xsl:copy>
<xsl:copy-of select="@*" />
<xsl:choose>
<cfloop index="i" list="#argID#">
<xsl:when test="@id='#i#'">
<xsl:attribute name="live">true</xsl:attribute>
</xsl:when>
</cfloop>
</xsl:choose>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="text()">
<xsl:copy-of select="." />
</xsl:template>
</xsl:stylesheet>
</cfsavecontent>
<cfset updatedXML = XMLTransform(xmlDoc,xsl) />
That will apply to every node in the document irrespective of its type.
To limit it to just the facets, use this:
<xsl:when test="name()='facet' and @id='#i#'">
Or to limit it to just the facets & taxons,
<xsl:when test="(name()='facet' or name()='taxon') and @id='#i#'">
What you'll get back out of the XMLTransform() will be a string which
you can then write to the file -- though you probably want to parse &
dump it first to make sure the result is what you want.
hth,
ike
--
s. isaac dealey ^ new epoch
isn't it time for a change?
ph: 503.236.3691
http://onTap.riaforge.org
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to
date
Get the Free Trial
http://ad.doubleclick.net/clk;160198600;22374440;w
Archive:
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:295311
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4