[eml-dev] [Bug 3465] - Change InlineType to CDATA

bugzilla-daemon at ecoinformatics.org bugzilla-daemon at ecoinformatics.org
Wed Aug 20 15:45:35 PDT 2008


http://bugzilla.ecoinformatics.org/show_bug.cgi?id=3465





------- Comment #2 from mob at icess.ucsb.edu  2008-08-20 15:45 -------
This document 
http://dev.nceas.ucsb.edu/knb/metacat/mobrien.1.4/xml
was inserted to metacat with the script wrapped in a cdata section, as in:
 <inline>
          <script>
              <![CDATA[ 
              function matchwo(a,b)
              {
              if (a < b && a < 0) then
                {
                  return 1;
                }
              else
                {
                return 0;
                }
              }
               ]]> 
          </script>
  </inline>

When metacat returns the doc, the CDATA wrapper is no longer there, the &lt;
etc get resolved and result is no longer valid xml. As expected, if I replaced
the < and & with references AND wrapped the script in CDATA, metacat had no
problem returning the whole doc, since now it has escaped characters to
replace, too(see docid=mobrien.1.5).

So it seems that metacat is altering the incoming doc by removing the CDATA
delimiters before it stores the content. Does this mean that this is not an EML
problem, but a metacat behavioral problem instead?



More information about the Eml-dev mailing list