[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Positional tests
Hi Wendell, Thanks for your reply, I'm afraid I over-simplified things and I don't think your suggestion will work. Here's a true representation of my data. When processing font in block (3) or font in (4) I need to check back to see if block(2) exists. The structure is not the same in all cases as this XML originates from a convertor. <book> <Section1> <inline> <block>Anexo</block> (1) </inline> <Section2> <block>Abreviaturas</block> (2) <body> <table> <thead> <tr> <td> <p> <block> (3) <font font-weight="bold">Abbreviation</font> </block> </p> </td> <td> <p> <block> (4) <font font-weight="bold">Description</font> </block> </p> </td> </tr> </thead> <tbody> . . . </tbody> </table> </body> </Section2> </Section1> </book> Thanks Paul -----Original Message----- From: Wendell Piez [mailto:wapiez@xxxxxxxxxxxxxxxx] Sent: 02 March 2005 18:47 To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: Positional tests Hi Paul, At 01:17 PM 3/2/2005, you wrote: >I need to find out if a block element that I process is the first one >with respect to its ancester S1, S2 or S3 elements. The hierarchy looks >something like this: > > <root> > <S1> > <block> << > <S2> > <block> << > <block> > <S3> > <body> > <block> << > <p> > <block> > </body> > </S3> > </S2> > </S1> > </root> > >I have tried: > > test=". = ancestor::S3//block[1] or . = ancestor::S2//block[1] or . >= ancestor::S1//block[1]" > >But this slows down processing enormously. Yes, it'll be slow (it does some heavy-duty tree traversal) -- and it won't work, either. You can't test node identity with the "=" operator: it compares string values. "not(preceding-sibling::block)" will return true if the current node has no preceding sibling blocks. Is your requirement different from this, and if so, how? For example, when you have <S3> <block/> <body> <block/> </body> </S3> both blocks here pass the test I offered. Should they? (The second is not "first with respect to its S3 ancestor".) Is your data constrained such that this isn't a problem? Cheers, Wendell ====================================================================== 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 ======================================================================
|
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
|