Re: [xsl] XPath which tests that an element does not have mixed content?

Subject: Re: [xsl] XPath which tests that an element does not have mixed content?
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Fri, 04 Nov 2011 11:57:39 -0400
Hi,

My version:

empty(node() except (Person[1]|text()[not(normalize-space())]))

Cheers,
Wendell

On 11/3/2011 3:08 PM, Brandon Ibach wrote:
I may be misinterpreting your requirement, but based on my initial
read, I'd go with something like the following, which should work with
any version of XPath/XSLT.  It is written to be evaluated in the
context of<author>.

count(Person) = 1 and not(text()[normalize-space(.)])

-Brandon :)


On Thu, Nov 3, 2011 at 2:44 PM, Costello, Roger L.<costello@xxxxxxxxx> wrote:
Hi Folks,

Would you please recommend an XPath expression which ensures that the content of<author> is optional whitespace,<Person>, optional whitespace, and nothing else:

    <author>
        <Person>
            <name>Simon L. Peyton Jones</name>
        </Person>
    </author>

The result of the XPath expression is true if the content is as desired and false otherwise. The XPath should return true for the above example and false for the below example:

    <author>
       The person is:
        <Person>
            <name>Simon L. Peyton Jones</name>
        </Person>
    </author>


/Roger



-- ====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================

Current Thread