Re: [xsl] bad match expression

Subject: Re: [xsl] bad match expression
From: António Mota <amsmota@xxxxxxxxx>
Date: Thu, 2 Feb 2006 08:51:41 +0000
If i understand correctly, you are saying

type='text' and type='password'

and you want

type='text' or type='password'

so it should be something like

FormElement[@type='text' or @type='password']

or

FormElement[@type='text' | @type='password']

They mean diferent things but the resulkt is the same, i think.

Also, the expression you used is not exactly

type='text' and type='password'

i think these i calles "steps", so what you4re sayimg really with

FormElement[@type='text' | @type='password']

is

give me all FormElement filtered by type='text' (thus you get only
type='text') and from the resulting set give me all the FormElements
filtered by type='password'

That will give you nothing, ofcourse...

On 02/02/06, Terence Kearns <terence.kearns@xxxxxxxxxxxxxxx> wrote:
> I don't know why but the following template match expression never
> gets matched :(
>
> <xsl:template
>
match="FormElement[@type='text'][@type='password'][@type='submit'][@type='res
et']">
> ...
> </xsl:template>
>
> The calling directive is simply  <xsl:apply-templates select="FormElement"
/>
>
> And the source is
>
> <XaoForm id="Category_Add" action="category.php?cat_id=4"
> method="post" caption="Add a new Category">
>    <FormElement type="text" name="CatName" caption="New Category"
> css="width: 100%">
>      <FormElement type="hidden" name="VLD_NotNull_CatName">
>        <Default>You must enter the category's name'</Default>
>      </FormElement>
>    </FormElement>
>    <FormElement type="submit" name="Add">
>      <Default>Save Changes</Default>
>    </FormElement>
>    <FormElement type="reset" name="Add">
>      <Default>Reset Form</Default>
>    </FormElement>
>  </XaoForm>
>
> If I remove all the contions or just leave one condition, then it
> matches. As soon as I put the rest of them back in, it stops matching.
> I also had to suppress the text() node using
> <xsl:template match="text()" /> even though I never used the generic
> <xsl:apply-templates /> anywhere

Current Thread