[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
|