Subject: Re: [xsl] Defensive programming in XSLT using asserts and as="..." From: "Dimitre Novatchev dnovatchev@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Fri, 6 May 2022 16:06:16 -0000 |
> What other ways do you do defensive programming in XSLT? Didn't I already mention "catch-all" templates? Thanks, Dimitre On Fri, May 6, 2022 at 7:16 AM Roger L Costello costello@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Hi Folks, > > I just love the xsl:assert statement! > > I am going wild with it. > > I am peppering asserts through my XSLT program. Already I have caught a > bunch of errors that would otherwise have been missed. > > It dawned on me that there are other mechanisms in XSLT that perform > "implicit asserts": > > <xsl:param name="item" as="element(author)"/> > > is equivalent to: > > <xsl:param name="item"/> > <xsl:assert test="name($item) eq 'author'"/> > > And this: > > <xsl:variable name="item" select="..." as="element(author)+" /> > > is equivalent to: > > <xsl:variable name="item" select="..." /> > <xsl:assert test="count($item) ge 1" /> > > What other mechanisms are there in XSLT that effectively perform implicit > asserts? > > What other ways do you do defensive programming in XSLT? > > /Roger > > > -- Cheers, Dimitre Novatchev --------------------------------------- Truly great madness cannot be achieved without significant intelligence. --------------------------------------- To invent, you need a good imagination and a pile of junk ------------------------------------- Never fight an inanimate object ------------------------------------- To avoid situations in which you might make mistakes may be the biggest mistake of all ------------------------------------ Quality means doing it right when no one is looking. ------------------------------------- You've achieved success in your field when you don't know whether what you're doing is work or play ------------------------------------- To achieve the impossible dream, try going to sleep. ------------------------------------- Facts do not cease to exist because they are ignored. ------------------------------------- Typing monkeys will write all Shakespeare's works in 200yrs.Will they write all patents, too? :) ------------------------------------- Sanity is madness put to good use. ------------------------------------- I finally figured out the only reason to be alive is to enjoy it.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Re: Defensive programming in , Eliot Kimber eliot.k | Thread | Re: [xsl] Defensive programming in , Michael Kay mike@xxx |
[xsl] Re: Defensive programming in , Eliot Kimber eliot.k | Date | Re: [xsl] Defensive programming in , Michael Kay mike@xxx |
Month |