RE: [xml-dev] XPath challenge: can you simplify this XPath expression?

From
Michael Kay <>
To
"'Costello, Roger L.'" <>,
Date
2009-05-11T16:18:46Z
ID
<BCAAF51859D14BF8B22C86BABC8F52FC@Sealion>
Thread
RE: [xml-dev] XPath challenge: can you simplify this XPath expression?
> Hi Folks,
> 
> I created an XPath expression and I am wondering if it can be 
> simplified.

What exactly is the objective? Readability? or something else?
> 
> 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.
> 

As John points out the second condition is always true.

What exactly does "nothing else" mean? Are you disallowing text nodes,
comments, processing instructions? Or do you just mean "no other elements"?

I think I would write

Title[1] and Date[1] and empty(* except (Title[1], Date[1], Author))

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay