|
Subject: RE: [xsl] Splitting multiple node occurrences into separate xmls From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Fri, 29 Apr 2005 09:20:24 +0100 |
> > > I need to do a transformation that will take an input xml
> > > string in a format
> > > that is something like
> > > ...<a>1</a><a>2</a><a>3</a><a>4</a>...
> > > and apart from transforming it, will split the multiple node
> > > occurrences for
> > > "a" into different xml's i.e.
> > > xml[1]=<a>1</a>
> > > xml[2]=<a>2</a>...
> >
> >XSLT 2.0 solution:
> >
> ><xsl:template match="a">
> > <xsl:result-document href="file{position()}.xml">
> > <xsl:copy-of select="."/>
> > </xsl:result-document>
> ></xsl:template>
> >
> >Some XSLT 1.0 processors have extensions that do similar things.
> >
>
> So here, I guess the multiple output xmls are created as
> files.
Just because it has a URI doesn't mean it's a file! (though that is the
default, of course).
> Is there
> anyway that the xml's can instead be returned to the java
> program that
> called the transformation, so that the program does not have
> to read them from disk?
This depends on the processor API. Saxon allows you to nominate an
OutputURIResolver which is called to process each result document as it is
written; for example it can supply a SAX ContentHandler which feeds the
output into another transformation.
Michael Kay
http://www.saxonica.com/
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] Splitting multiple node o, Vishwajit Pantvaidya | Thread | [xsl] Error compiling Docbook 1.67., William H. Williams |
| AW: [xsl] use preceding element or , Klocker Christoph | Date | Re: AW: [xsl] use preceding element, David Carlisle |
| Month |