RE: [xml] Inserting a DTD when creating a XML file



If I save the document (using xmlSaveFile or xmlSaveFileFormat), the DTD is
neither included nor referenced in the xml file. Any idea? 

Thanks for your help,
Yvan

-----Original Message-----
From: Daniel Veillard [mailto:veillard redhat com]
Sent: Thursday, January 24, 2002 7:36 AM
To: darrell
Cc: ypaitel sofamordanek com; xml gnome org
Subject: Re: [xml] Inserting a DTD when creating a XML file


On Tue, Jan 22, 2002 at 09:17:44PM -0700, darrell wrote:
i am unsure if anyone is alowed to reply,

  Of course !

but this is an exerpt from the 
faq, perhaps it is not what you are looking for?

It is also possible to simply add a Dtd to an existing document:

xmlDocPtr doc; /* your existing document */
        xmlDtdPtr dtd = xmlParseDTD(NULL, filename_of_dtd); /* parse the
DTD */
        dtd->name = xmlStrDup((xmlChar*)"root_name"); /* use the given
root */

        doc->intSubset = dtd;

  It can be a good idea to link the DTD as the first node in the doc
children list:
     if (doc->children == NULL)
         xmlAddChild((xmlNodePtr) doc, (xmlNodePtr) dtd);
     else
         xmlAddPrevSibling(doc->children, (xmlNodePtr) dtd);

Daniel

-- 
Daniel Veillard      | Red Hat Network https://rhn.redhat.com/
veillard redhat com  | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/



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