xsl-list
[Top] [All Lists]

Re: [xsl] Match nodes searching for attributes in children

2010-01-17 20:11:54


On 18.01.2010 02:10, G. Ken Holman wrote:
You say "it didn't work" but you don't say how or why you think so. I
suspect you have something else wrong in your stylesheet.

Or in the data. "My template doesn't match" is a classic. Typical reasons include:
- not including the namespace prefix
- typo in the namespace URI
- processing the document in a different mode than the template is supposed to match in
- other typos (in predicates, element names, modes)
- skipping intermediate elements, e.g., formulating predicates for <td>s when the template is supposed to match <tr>
- other templates have higher priority
- this template is an imported one, and there is a matching template of whatever priority in the importing stylesheet - logical misconceptions in the predicates (ok, this shouldn't apply here when just comparing an attribute value) - if the template is supposed to match a result of a previous transformation: the output of the previous tranformation is not as expected
- ...

My way of debugging is
- to make the non-matching template increasingly less specific (dropping terms in the predicate),
- increase the priority to insane values,
- make the template output debugging info such as "I'm here", or count(*) and count(B) in the context of A (first make sure that the template matches A -- 'I'm A'), - output intermediate processing steps to a file (<xsl:result-document href="_debug.35.fooify-bar.xml"><xsl:copy-of select="$foo"/></xsl:result-document>)

I'm sure that other people will contribute to this non-matching top ten or will share their debugging tricks, such as "always transform Schema-aware"...

-Gerrit

--~------------------------------------------------------------------
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>
--~--