[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Testing for text before an element
Ken, It seems to me that you want to output a <LineBreak/> if the first child node of the current node is not a para element. For example, if the first child node of the current node is a text node or an element named abc, then you would want to output a <LineBreak/>. The following is true if the first child node of the current node is not a para element: child::node()[1][not( self::para )] If you don't want to output a <LineBreak/> when the first child element of the current node is a para element that is preceded by ignorable whitespace, then you can include the following instruction in your stylesheet: <xsl:strip-space elements="*"/> Hope this helps. Bob <sig name = 'Bob Lyons' title = 'XML Consultant' company = 'Unidex, Inc.' phone = '+1-732-975-9877' email = 'boblyons@xxxxxxxxxx' url = 'http://www.unidex.com/' product = 'XML Convert: transforms flat files to XML and vice versa' /> -----Original Message----- Hi, I'm trying to detect if either: the first child of the current node is not a <para> or text appears before a first child <para> node I'm using a <xsl:if test="not(child::*[1][self::para])"><LineBreak/></xsl:if> test. How do I modify this expression to evaluate false if text preceeds a <para> child? Thanks! Ken Barnett Medifor Inc., a division of Allscripts Healthcare Solutions 647 Washington Street, Port Townsend, WA 98368 kenb@xxxxxxxxxxx Voice: 360-385-0722 Fax: 360-385-4402 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|