[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: CDATA to XML - work with transformed Nodes - how d

Subject: Re: CDATA to XML - work with transformed Nodes - how does it work?
From: "Imsieke, Gerrit, le-tex" <gerrit.imsieke@xxxxxxxxx>
Date: Sun, 21 Mar 2010 00:13:33 +0100
Re:  CDATA to XML - work with transformed Nodes - how d
It has been on this list just a couple of hours ago, accidentally: You might apply saxon:parse to the CDATA content (http://www.saxonica.com/documentation/extensions/functions/parse.html). Please note that you need at least Saxon PE to use this extension function (or Saxon 9.1). But if you can control how your XML input is generated: maybe it's a better approach to use namespaces, putting proper XHTML content where there is CDATA now. Then you'll be able to process it without extension functions and without serializing it first.

Gerrit

On 20.03.2010 23:58, [x] cross solution wrote:
Hi All,

i need help in working with a transformed CDATA to XML nodes.
The idea / the process
- The CDATA of the node includes the XHTML text (comes from the database)
- Transform the XHMTL text to XML nodes
- work with the transformed nodes with<xsl:choose>  <xsl:when>  and create new nodes.
The result should be a Textfile, based on Word/OpenOffice.

My Problem is now to work with the transformed XML nodes. I can't work with it. I can create an XML file output with the XHTML as XML nodes, but I can't get it in the XSLT file, before an output is created.

So my question is:
Is it possible to get the XHTML nodes in the XSLT file to work with it?
Maybe i need another process to realize it - other ideas?

thanks for your help and ideas.

armin


XML File <?xml version="1.0" encoding="UTF-8"?> <ROW> <COL> <DATA>&lt;/SPAN&gt;&lt;SPAN STYLE=&quot;font-size: 10px;&quot;&gt;(1)&amp;#9;Das Angebot auf Abschluss dieser Vereinbarung besitzt eine G&amp;uuml;ltigkeit von sechs Monaten nach Versand (Datum des Poststempels). Nach Annahme durch den Vermittler durch Unterschrift und R&amp;uuml;cksendung gelten die K&amp;uuml;ndigungsregelungen gem&amp;auml;&amp;szlig;&amp;sect; 7 dieser Vereinbarung.</DATA> </COL> <COL> <DATA/> </COL> <COL> <DATA>(2)&amp;#9;Die Vertragsabwicklung erfolgt ausschlie&amp;szlig;lich&amp;uuml;ber die Firma in Vertretung bzw. als Empfangsbotin der Gesellschaft.</DATA> </COL> <COL> <DATA/> </COL> <COL> <DATA>(3)&amp;#9;Es gilt das Recht der Bundesrepublik Deutschland. Erf&amp;uuml;llungsort und Gerichtsstand sind M&amp;uuml;n-chen.</DATA> </COL> <COL> <DATA/> </COL> <COL> <DATA>(4)&amp;#9;M&amp;uuml;ndliche Nebenabreden sind nicht getroffen.&amp;Auml;nderungen und Erg&amp;auml;nzungen dieses Vertrages bed&amp;uuml;rfen der Schriftform. Dies gilt auch f&amp;uuml;r eine&amp;Auml;nderung dieser Schriftformklausel.</DATA> </COL> <COL> <DATA/> </COL> <COL> <DATA>(5)&amp;#9;Sollten eine oder mehrere Bestimmungen dieses Vertrages ganz oder teilweise unwirksam sein oder sich als undurchf&amp;uuml;hrbar erweisen, so wird die Wirksamkeit des Vertrages im&amp;Uuml;brigen hier-von nicht ber&amp;uuml;hrt. Die Parteien werden die ganz oder teilweise unwirksamen oder undurchf&amp;uuml;hr-baren Bestimmungen durch eine wirksame Bestimmung ersetzen, die dem wirtschaftlich gewoll-ten Zweck entspricht und dem Inhalt der zu ersetzenden Bestimmung m&amp;ouml;glichst nahe kommt. Dies gilt entsprechend, wenn sich herausstellt, dass der Vertrag Regelungsl&amp;uuml;cken enth&amp;auml;lt.</DATA> </COL> </ROW>



XSLT File
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xd="http://www.oxygenxml.com/ns/doc/xsl" version="1.0"
xmlns:my="http://www.myhome.com/xmlresult">
<xd:doc scope="stylesheet">
<xd:desc>
<xd:p><xd:b>Created on:</xd:b>  Mar 20, 2010</xd:p>
<xd:p><xd:b>Author:</xd:b>  myname</xd:p>
<xd:p/>
</xd:desc>
</xd:doc>
<xsl:output method="xml" version="1.0" encoding="ISO-8859-1" indent="yes"/>
<xsl:template match="/">
<MyText>
<xsl:for-each select="my:ROW/my:COL/my:DATA">
<xsl:call-template name="xOutput">
<xsl:with-param name="xString" select="." />
</xsl:call-template>
</xsl:for-each>
</MyText>
</xsl:template>

<xsl:template name="xOutput">
<xsl:param name="xString"/>
<xsl:value-of select="$xString" disable-output-escaping="yes"/>
</xsl:template>

</xsl:stylesheet>



NEEDED
After the xsl:template xOutput should be a check<xsl:choose>  and create new nodes as needed.
(Idea only)
<xsl:template name="xNewNodes">
<xsl:param name="xString"/>
<xsl:for-each select="/SPAN">
<xsl:choose>
<xsl:when test="contains($xString, 'color:')">
<NewNote>
<Color/>  <!-- spec of color -->
</NewNote>
</xsl:when>
</xsl:choose>
<xsl:choose>
<xsl:when test="contains($xString, 'font-weight:')">
<NewNote>
<FontWeight/>  <!-- spec of Font -->
</NewNote>
</xsl:when>
</xsl:choose>
</xsl:for-each>
</xsl:template>


PS.: This is also posted at http://www.stylusstudio.com/SSDN/default.asp?action=9&read=9002&fid=48, because i thougth it is this xsl list.



-- Gerrit Imsieke Geschdftsf|hrer / Managing Director le-tex publishing services GmbH Weissenfelser Str. 84, 04229 Leipzig, Germany Phone +49 341 355356 110, Fax +49 341 355356 510 gerrit.imsieke@xxxxxxxxx, http://www.le-tex.de

Registergericht / Commercial Register: Amtsgericht Leipzig
Registernummer / Registration Number: HRB 24930

Geschdftsf|hrer: Gerrit Imsieke, Svea Jelonek,
Thomas Schmidt, Dr. Reinhard Vvckler

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.