  | |  | entity-encoded XML | entity-encoded XML 2007-02-28 - By Erin Harris
Hi,
You might want to post this to the xerces mailing list: j-users@(protected), as they might have some other ideas.
One suggestion is to wrapper the xml file with a start and end tag and then parse it, providing your own ContentHandler which has the following:
StringBuffer buffer = new StringBuffer(); public void characters(char[] arg0, int arg1, int arg2) throws SAXException { buffer.append(arg0, arg1, arg2); }
When I ran this against the following input:
<root> <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet href="SalesToHTML.xsl" type="text/xsl" ?> <!-- SalesReport.xml --> <SalesReport> <Company>XMML.com</Company> <Period>2001-2002</Period> <Sales Region="EU">50,000</Sales> <Sales Region="NA">150,000</Sales> <Sales Region="AU">10,000</Sales> </SalesReport> </root>
My string buffer contained:
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet href="SalesToHTML.xsl" type="text/xsl" ?> <!-- SalesReport.xml --> <SalesReport> <Company>XMML.com</Company> <Period>2001-2002</Period> <Sales Region="EU">50,000</Sales> <Sales Region="NA">150,000</Sales> <Sales Region="AU">10,000</Sales> </SalesReport>
The value of the string buffer can then itself be parsed.
Erin Harris
rbaxter <rbaxter@(protected)> 27/02/2007 11:44 AM
To xalan-j-users@(protected) cc
Subject entity-encoded XML
Hi, there may be a simple answer to this but I have not found anything.
I have an XML file that is entity-encoded (see below) which I want to transform into an HTML file using Xalan. What would be the best way to make Xalan read the XML file?
Sample XML file:
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet href="SalesToHTML.xsl" type="text/xsl" ?> <!-- SalesReport.xml --> <SalesReport> <Company>XMML.com</Company> <Period>2001-2002</Period> <Sales Region="EU">50,000</Sales> <Sales Region="NA">150,000</Sales> <Sales Region="AU">10,000</Sales> </SalesReport> -- View this message in context: http://www.nabble.com/entity-encoded-XML-tf3302404.html#a9186221 Sent from the Xalan - J - Users mailing list archive at Nabble.com.
<br><font size=2 face="sans-serif">Hi,</font> <br> <br><font size=2 face="sans-serif">You might want to post this to the xerces mailing list: j-users@(protected), as they might have some other ideas.</font> <br> <br><font size=2 face="sans-serif">One suggestion is to wrapper the xml file with a start and end tag and then parse it, providing your own ContentHandler which has the following:</font> <br> <br><font size=2 face="Courier New">StringBuffer </font><font size=2 color= #0021bf face="Courier New">buffer</font><font size=2 face="Courier New"> = </font><font size=2 color=#820040 face="Courier New"><b>new</b></font><font size=2 face="Courier New"> StringBuffer();</font> <br><font size=2 face="Courier New"> </font> <br><font size=2 color=#820040 face="Courier New"><b>public</b></font><font size=2 face="Courier New"> </font><font size=2 color=#820040 face="Courier New"><b>void</b></font><font size=2 face="Courier New"> characters(</font><font size=2 color=#820040 face="Courier New"><b>char</b>< /font><font size=2 face="Courier New">[] arg0, </font><font size=2 color=#820040 face="Courier New"><b>int</b></font> <font size=2 face="Courier New"> arg1, </font><font size=2 color=#820040 face="Courier New"><b>int</b></font> <font size=2 face="Courier New"> arg2) </font><font size=2 color=#820040 face="Courier New"><b>throws</b></font> <font size=2 face="Courier New"> SAXException {</font> <br><font size=2 face="Courier New"> </font><font size=2 color=#0021bf face="Courier New">buffer</font><font size=2 face="Courier New">.append(arg0, arg1, arg2);</font> <br><font size=2 face="Courier New">}</font> <br> <br><font size=2 face="sans-serif">When I ran this against the following input:</font> <br> <br><font size=2 face="Courier New"><root></font> <br><font size=2 face="Courier New">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</font> <br><font size=2 face="Courier New">&lt;?xml-stylesheet href=&quot ;SalesToHTML.xsl&quot;</font> <br><font size=2 face="Courier New">type=&quot;text/xsl&quot; ?&gt; </font> <br><font size=2 face="Courier New">&lt;!-- SalesReport.xml --&gt;< /font> <br><font size=2 face="Courier New">&lt;SalesReport&gt;</font> <br><font size=2 face="Courier New"> &lt;Company&gt;XMML.com&lt;/Company& ;gt;</font> <br><font size=2 face="Courier New"> &lt;Period&gt;2001-2002&lt;/Period& ;gt;</font> <br><font size=2 face="Courier New"> &lt;Sales Region=&quot;EU&quot;&gt ;50,000&lt;/Sales&gt;</font> <br><font size=2 face="Courier New"> &lt;Sales Region=&quot;NA&quot;&gt ;150,000&lt;/Sales&gt;</font> <br><font size=2 face="Courier New"> &lt;Sales Region=&quot;AU&quot;&gt ;10,000&lt;/Sales&gt;</font> <br><font size=2 face="Courier New">&lt;/SalesReport&gt;</font> <br><font size=2 face="Courier New"></root></font> <br> <br><font size=2 face="sans-serif">My string buffer contained:</font> <br> <br><font size=2 face="Courier New"><?xml version="1.0" encoding= "utf-8"?></font> <br><font size=2 face="Courier New"><?xml-stylesheet href="SalesToHTML .xsl"</font> <br><font size=2 face="Courier New">type="text/xsl" ?></font> <br><font size=2 face="Courier New"><!-- SalesReport.xml --></font> <br><font size=2 face="Courier New"><SalesReport></font> <br><font size=2 face="Courier New"> <Company>XMML.com</Company></font> <br><font size=2 face="Courier New"> <Period>2001-2002</Period></font> <br><font size=2 face="Courier New"> <Sales Region="EU">50,000</Sales ></font> <br><font size=2 face="Courier New"> <Sales Region="NA">150,000</Sales ></font> <br><font size=2 face="Courier New"> <Sales Region="AU">10,000</Sales ></font> <br><font size=2 face="Courier New"></SalesReport></font> <br> <br><font size=2 face="sans-serif">The value of the string buffer can then itself be parsed.<br> <br> Erin Harris<br> <br> </font> <br> <br> <br> <table width=100%> <tr valign=top> <td width=40%><font size=1 face="sans-serif"><b>rbaxter <rbaxter@(protected) .com></b> </font> <p><font size=1 face="sans-serif">27/02/2007 11:44 AM</font> <td width=59%> <table width=100%> <tr valign=top> <td> <div align=right><font size=1 face="sans-serif">To</font></div> <td><font size=1 face="sans-serif">xalan-j-users@(protected)</font> <tr valign=top> <td> <div align=right><font size=1 face="sans-serif">cc</font></div> <td> <tr valign=top> <td> <div align=right><font size=1 face="sans-serif">Subject</font></div> <td><font size=1 face="sans-serif">entity-encoded XML</font></table> <br> <table> <tr valign=top> <td> <td></table> <br></table> <br> <br> <br><tt><font size=2><br> Hi, there may be a simple answer to this but I have not found anything.<br> <br> I have an XML file that is entity-encoded (see below) which I want to<br> transform into an HTML file using Xalan. What would be the best way to make<br> Xalan read the XML file?<br> <br> Sample XML file:<br> <br> &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;<br> &lt;?xml-stylesheet href=&quot;SalesToHTML.xsl&quot;<br> type=&quot;text/xsl&quot; ?&gt;<br> &lt;!-- SalesReport.xml --&gt;<br> &lt;SalesReport&gt;<br> &lt;Company&gt;XMML.com&lt;/Company&gt;<br> &lt;Period&gt;2001-2002&lt;/Period&gt;<br> &lt;Sales Region=&quot;EU&quot;&gt;50,000&lt;/Sales&gt; <br> &lt;Sales Region=&quot;NA&quot;&gt;150,000&lt;/Sales&gt ;<br> &lt;Sales Region=&quot;AU&quot;&gt;10,000&lt;/Sales&gt; <br> &lt;/SalesReport&gt;<br> -- <br> View this message in context: http://www.nabble.com/entity-encoded-XML -tf3302404.html#a9186221<br> Sent from the Xalan - J - Users mailing list archive at Nabble.com.<br> <br> </font></tt> <br>
|
|
 |