xsl-list
[Top] [All Lists]

RE: Need a programmic way to read xslt file, and determine the mappings defined.

2004-11-08 08:01:34
No, my desire is to get a xslt file and with java determine the mapping.
Then determine how to reverse eng the process to find my source. 

Background: My app uses xslt to translate data model A to data model B.
My user wishes to not to write certain attributes in a table in data
model B. 
He selects the attributes to mask. I would then like to inform him of
the source that was used to map to that target attribute, and inform him
of what other targets that same source was mapped to. 

So I need to something to parse the xslt file, and expose interfaces
that allow me to easily determine this mapping. 

Bill Riegel
LandMark Graphics
713-839-3388

-----Original Message-----
From: Jarno(_dot_)Elovirta(_at_)nokia(_dot_)com 
[mailto:Jarno(_dot_)Elovirta(_at_)nokia(_dot_)com] 
Sent: Monday, November 08, 2004 8:52 AM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Need a programmic way to read xslt file, and
determine the mappings defined. 

Hi,

Yes, I want to reverse engineer the logic in the xslt file. 

Umm... ok. If your stylesheet is more or less a 1:1 mapping, then write
a stylesheet that processes your stylesheet, going throught every
element in non-xslt namespace and all xsl:elements. For each, find the
first ancestor xsl:template or xsl:for-each, and make an educated guess
based on the match or select attribute. I suppose you didn't write the
original stylesheets yourself if you have to reverse engineer them?
Anyhow, I'd still recommend going throught the stylesheets manually, as
XSLT allows you to do all sort of funky things that make reversing the
logic less than trivial.

Cheers,

Jarno

--+------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--+--