| 
 
Subject: Re: [xsl] Avoiding boneheaded mistakes in XSLT? From: Andrew Welch <andrew.j.welch@xxxxxxxxx> Date: Thu, 30 Dec 2010 17:47:23 +0000  | 
> As a use case I'm trying to catch typos and other 'man made' > errors. How might a transformatron catch those? Two defensive techniques are: 1. Use the as attribute on your template: <xsl:template match="foo" as="element(p)"> <xsl:apply-templates select="/foo/bar"/> </xsl:template> If the apply-templates call doesn't result in a <p> (for whatever reason) then you will get an error. 2. Use a variable with the as attribute: <xsl:variable name="bar" select="/foo/bar" as="element(bar)"/> If the variable doesn't select a bar element, then you'll get an error. Ultimately though, the best defense is result validation and a tight schema. -- Andrew Welch http://andrewjwelch.com
| Current Thread | 
|---|
  | 
| <- Previous | Index | Next -> | 
|---|---|---|
| Re: [xsl] Avoiding boneheaded mista, Dave Pawson | Thread | Re: [xsl] Avoiding boneheaded mista, Beck, Jeff (NIH/NLM/ | 
| Re: [xsl] Avoiding boneheaded mista, Graydon | Date | Re: [xsl] Avoiding boneheaded mista, Beck, Jeff (NIH/NLM/ | 
| Month |