[Home] [By Thread] [By Date] [Recent Entries]

  • To: "Diana Castillo" <diana@h...>,<xml-dev@l...>
  • Subject: RE: cdata
  • From: "Joshua Allen" <joshuaa@m...>
  • Date: Wed, 9 Jun 2004 11:34:46 -0700
  • Thread-index: AcROQ8DLgSkqL7YZQSKvggbrbAY50QAC7BPg
  • Thread-topic: cdata

Well, if they wanted you to be able to get at the text within the CDATA node, they should have given you:

 

<AccomodationName><![CDATA[HOTEL AC MALAGA PALACIO]]></AccomodationName>

 

If they had, the text content of the node would be:

 

“HOTEL AC MALAGA PALACIO”

 

Instead, the double-escaped it so that the CDATA tag is part of the text:

 

“<![CDATA[HOTEL AC MALAGA PALACIO]]>”

 

Since you are getting an opaque text node which just happens to contain some CDATA syntax, you will need to re-parse the text node if you want to extract the text from within the CDATA brackets.  To do this, you would need to extract the string, then pass it back through another XML parser instance which is capable of handling fragments.  You could also theoretically just extract the inner part using string manipulation routines or RegExp.

 


From: Diana Castillo [mailto:diana@h...]
Sent: Wednesday, June 09, 2004 10:00 AM
To: xml-dev@l...
Subject: cdata

 

anyone know why my parser is not reading just the internal part of this tag?
Is the cdata in the correct format?
<AccommodationName>&lt;![CDATA[HOTEL AC MALAGA
PALACIO]]&gt;</AccommodationName>

(I cannot change how the xml comes to me, they send it to me like that)

Diana Castillo
Global Reservas, S.L.
C/Granvia 22 dcdo 4-dcha
28013 Madrid-Spain
Tel : 00-34-913604039
Fax : 00-34-915228673
email: diana@h...
Web : http://www.hotelkey.com
      http://www.destinia.com


  • Follow-Ups:
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member