[Home] [By Thread] [By Date] [Recent Entries]

  • From: Andrew Welch <andrew.j.welch@g...>
  • To: "Costello, Roger L." <costello@m...>
  • Date: Mon, 11 May 2009 16:58:51 +0100

2009/5/11 Costello, Roger L. <costello@m...>:
>
> Hi Folks,
>
> I created an XPath expression and I am wondering if it can be simplified.
>
> The XPath expresses this:
>
>   There must be one child Title element and
>   there must be zero or more child Author elements and
>   there must be one child Date element and
>   nothing else.
>
>
> Here's the XPath 2.0 expression I created:
>
>   count(Title) eq 1 and
>   count(Author) ge 0 and
>   count(Date) eq 1 and
>   count(*[not(name() = ('Title','Author','Date'))]) eq 0
>
>
> I think this is the simplest possible XPath, but perhaps you can see a simpler expression?

how about:

count(Title, Author, Date) eq count(Author) + 2 eq count(*)

or perhaps a bit nicer as:

  count(Title) eq 1 and
  count(Date) eq 1 and
  count(Title, Author, Date) eq count(*)

-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member