Subject: Re: [xsl] XPath which tests that an element does not have mixed content? From: Hermann Stamm-Wilbrandt <STAMMW@xxxxxxxxxx> Date: Thu, 3 Nov 2011 20:02:12 +0100 |
With xpath++ based on xsltproc and EXSLT this can be done similar: $ xpath++ "normalize-space(str:concat((//author|//person)/text()))!=''" author.xml true $ Mit besten Gruessen / Best wishes, Hermann Stamm-Wilbrandt Level 3 support for XML Compiler team, Fixpack team lead WebSphere DataPower SOA Appliances https://www.ibm.com/developerworks/mydeveloperworks/blogs/HermannSW/ ---------------------------------------------------------------------- IBM Deutschland Research & Development GmbH Vorsitzender des Aufsichtsrats: Martin Jetter Geschaeftsfuehrung: Dirk Wittkopp Sitz der Gesellschaft: Boeblingen Registergericht: Amtsgericht Stuttgart, HRB 243294 From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx, Date: 11/03/2011 07:53 PM Subject: Re: [xsl] XPath which tests that an element does not have mixed content? At 2011-11-03 18:44 +0000, Costello, Roger L. wrote: >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> In XSLT 2.0 you could test the join of text() children of the cited elements along the lines of: not(normalize-space( string-join( (author,Person)/text() ),''))) I hope this helps. . . . . . . . . . . Ken -- Contact us for world-wide XML consulting and instructor-led training Free 5-hour video lecture: XSLT/XPath 1.0 & 2.0 http://ude.my/t37DVX Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Google+ profile: https://plus.google.com/116832879756988317389/about Legal business disclaimers: http://www.CraneSoftwrights.com/legal
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] XPath which tests that an, G. Ken Holman | Thread | Re: [xsl] XPath which tests that an, Brandon Ibach |
Re: [xsl] XPath which tests that an, G. Ken Holman | Date | Re: [xsl] XPath which tests that an, Brandon Ibach |
Month |