Re: [xsl] Tag movement in XML

Subject: Re: [xsl] Tag movement in XML
From: George Cristian Bina <george@xxxxxxxxxxxxx>
Date: Wed, 17 Sep 2008 10:18:06 +0300
Those elements are at different levels inside your document, not children of D. Only AB is a child of D and that is why you get only that in the output. Try for example:

<xsl:apply-templates select="BB/*[not(self::TG)], BB/TG, AB"/>

That should process first the not title part of BB, then the title and then the abstract.

Best Regards,
George
--
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com

Ganesh Babu N wrote:
Dear David,

I have used <xsl:apply-templates select="PN, FN, SN, TG, AB"/> in the
place of <xsl:apply-templates/>. This is the order in which I required
the output. But it producing only <AB> in the output. All other tags
are missing.

Please help me.

Regards,
Ganesh


On 9/15/08, David Carlisle <davidc@xxxxxxxxx> wrote:

Title and abstract are appearing as per the XML order and not
appearing as per the required output.
you don't really say what chanegs you need. (In your posted input, and
the desired output, titke came before the abstract)

Possibly you want to force that the BB element (containing title amongst
other things) is always processed before AB (containing the abstract)
in which case

changing the

<xsl:apply-templates/>

in the template for D to

<xsl:apply-templates select="AB,BB"/>

might do what you want.

Your input seems to have been corrupted by over-agressive commenting

the subtitle was presumably supposed to be
It's Time for a Rethink

but your input is

It<!-- &rsquo; -->s Time for a Rethink

which results in

Its Time for a Rethink

that is, a classic spelling error.

Similarly

"1 year"

is marked as 1<!-- &nbsp; -->year

so results in 1year with no word space.

Please let me know how to move these two tags into desired locations.
Remember XSLT works with a tree of nodes, it has no access to the tags
in the original document.

David

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________

Current Thread