|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Convert 2 xml with 1 xsl file
Hi Again! I did what you said but I can't make it
work. What am I doing wrong?
Here is my files:
cdcatalog.xsl
****************************************************
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:apply-templates select="document('teste.xml')"/>
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th align="left">Title</th>
<th align="left">Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title" /></td>
<td><xsl:value-of select="artist" /></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
****************************************************
cdcatalog.xml
****************************************************
<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
</catalog>
****************************************************
teste.xml
****************************************************
<?xml version="1.0" encoding="ISO-8859-1"?>
<cd>
<title>Hide your heart</title>
<artist>Bonnie Tyler</artist>
<country>UK</country>
<company>CBS Records</company>
<price>9.90</price>
<year>1988</year>
</cd>
****************************************************
transformador.htlm
****************************************************
<html>
<body>
<script type="text/javascript">
// Load XML
var xml = new ActiveXObject("Microsoft.XMLDOM");
xml.async = false;
xml.load("cdcatalog.xml");
// Load XSL
var xsl = new ActiveXObject("Microsoft.XMLDOM");
xsl.async = false;
xsl.load("cdcatalog.xsl");
// Transform
document.write(xml.transformNode(xsl));
</script>
</body>
</html>
****************************************************
--- JBryant@xxxxxxxxx escreveu:
> Make that:
>
> <xsl:apply-templates
> select="document('otherDocument.xml')"/>
>
> I was just looking at one of my own stylesheets that
> merges two documents
> (today's problem to solve) and noticed that I had
> forgotten the quotation
> marks in the message I sent to the list.
>
> Sorry about the extra traffic.
>
> Jay Bryant
> Bryant Communication Services
>
>
>
>
> JBryant@xxxxxxxxx
> 12/09/2004 05:44 PM
> Please respond to
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>
>
> To
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> cc
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject
> Re: Convert 2 xml with 1 xsl file
>
>
>
>
>
>
> I can't speak to the Java part of it, but the
> document function can solve
> the convert two (or n) files from a single
> stylesheet problem. The
> following instruction pulls in the content of
> another document and
> processes it:
>
> <xsl:apply-templates
> select="document(otherDocument)"/>
>
> Jay Bryant
> Bryant Communication Services
>
>
>
>
> Marcelo <marcelochyna@xxxxxxxxxxxx>
> 12/09/2004 08:30 PM
> Please respond to
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>
>
> To
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> cc
>
> Subject
> Convert 2 xml with 1 xsl file
>
>
>
>
>
>
> Hi! May anybody help me? I need to convert 2 xml
> with
> 1 xsl file to a XHTML file. How do I do that?
>
> Besides that. Does anybody knows Java? Because I
> need
> to do this convertion within it.
>
> My code converts 1 xml with 1 xsl file. But how can
> I
> do with 2 xml)
>
> Thanks.
>
> Marcelo.
>
>
> This is my code:
>
> ***************************************************
>
>
> public static void xsl(
> String xml1,
> String xml2,
> String outFilename,
> String xslFilename)
> {
> try {
> //
> Create transformer
> factory
>
> TransformerFactory
> factory =
> TransformerFactory.newInstance();
>
> //
> Use the factory to
> create a template containing
> the xsl file
>
> Templates template =
> factory.newTemplates(
> new StreamSource(new
> FileInputStream(xslFilename)));
>
> //
> Use the template to
> create a transformer
>
> Transformer xformer =
> template.newTransformer();
>
>
> InputStream in = new
> URL(xml1).openStream();
> //
> StringBuffer s = new
> StringBuffer();
>
> System.out.println(in.toString());
>
> Source source = new
> StreamSource(in);
>
> //Source source = new
> StreamSource(new
> FileInputStream(inFilename));
>
> Result result = new
> StreamResult(new
> FileOutputStream(outFilename));
>
> //
> Apply the xsl file to
> the source file and write
> the result to the output file
>
> xformer.transform(source,
>
> result);
> } catch
> (FileNotFoundException e) {
> System.out.println("FileNotFoundException ");
>
> e.printStackTrace();
> } catch
> (TransformerConfigurationException e) {
>
>
System.out.println("TransformerConfigurationException
> ");
>
> e.printStackTrace();
> //
> An error occurred in
> the XSL file
> } catch
> (TransformerException e) {
> System.out.println("TransformerException ");
> //
> An error occurred
> while applying the XSL file
> //
> Get location of error
> in input file
>
> SourceLocator locator =
> e.getLocator();
> int
> col =
> locator.getColumnNumber();
> int
> line =
> locator.getLineNumber();
>
> String publicId =
> locator.getPublicId();
>
> String systemId =
> locator.getSystemId();
>
> e.printStackTrace();
> } catch
> (MalformedURLException e) {
> //
> TODO Auto-generated
> catch block
>
> e.printStackTrace();
>
=== message truncated ===
__________________________________________________
Converse com seus amigos em tempo real com o Yahoo! Messenger
http://br.download.yahoo.com/messenger/
|
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
|

Cart








