[xml] Problems with libxml2 and OSD files.



Hello All,

I am trying to parse the Open Software Distribution (OSD) file created
with DUBuild utility from Microsoft SDK for Java 4.0. The file is
parsed OK when using libxml-1.8.9 and failed with libxml2-2.6.7.

The content of the OSD file:

<?XML version="1.0"?>
<!DOCTYPE SOFTPKG SYSTEM "http://www.microsoft.com/standards/osd/osd.dtd";>
<?XML::namespace href="http://www.microsoft.com/standards/osd/msicd.dtd"; as="MSICD"?>

<SOFTPKG NAME="Hello World" VERSION="2,1,1,1">
<!-- created by DUBuild version 5.00.3229 -->

    <TITLE>Hello World</TITLE>

    <MSICD::JAVA>

        <NAMESPACE>JARM Rewritten Applet</NAMESPACE>

        <PACKAGE NAME="hello" VERSION="2,1,1,1">
            <IMPLEMENTATION/>
        </PACKAGE>

    </MSICD::JAVA>

</SOFTPKG>

The first problem is that the prologue in this XML code is started
from the 'XML', not the 'xml'. It seems that the parser in libxml-1.8.9
supports such the prologue, but the libxml2-2.6.7 erroneously does
not. Isn't it a bug in libxml2-2.6.7?

The second problem with libxml2-2.6.7 is that (after changing 'XML' to 'xml' in prologue
manually) the line  with <MSICD::JAVA> tag is considered erroneously
by libxml2-2.6.7 with several error messages appeared. I guess that
this is because the OSD files has come from the times when XML
language has not namespaces and this ancient syntax is not supported in
libxml2 anymore.

So, is there any way to use libxml2 to parse OSD files?

-- 
Best regards,
 Stanislav Tihohod                         mailto:tihohod mail ru




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]