Xerces-C: Migration from v2.x to v3.x?
Asked Answered
S

1

8

I would like to migrate a project (legacy code which I am not quite familiar with) from Xerces-C v2.x to v3.x.

It turns out that Xerces-C v3 dropped the DOMBuilder class. The migration archive tells me this:

...a number of DOM interfaces (DOMBuilder, DOMWriter, DOMInputSource, etc.) were replaced as part of the the final DOM Level 3 specification conformance work.

That's nice. But is there any guide on how to migrate code that relies on these classes to the new API?

Schaaf answered 9/9, 2010 at 16:9 Comment(0)
E
12

Replacements for removed APIs:

  • Use XercesDOMParser or DOMLSParser instead of DOMBuilder (more info):

    xercesDOMParser->setCreateCommentNodes(true);

  • Use DOMLSSerializer instead of DOMWriter:

    DOMLSSerializer* writer = ((DOMImplementationLS*)impl)->createLSSerializer(); DOMConfiguration* dc = writer->getDomConfig(); dc->setParameter(XMLUni::fgDOMErrorHandler,errorHandler); dc->setParameter(XMLUni::fgDOMWRTDiscardDefaultContent,true);

  • Use DOMLSInput instead of DOMInputSource.

See also:

Eagre answered 28/1, 2011 at 12:2 Comment(1)
An illustrative example of how to convert DOMWriter to DOMLSSerializer can be found here: trac.osgeo.org/mapguide/ticket/1399Kennet

© 2022 - 2024 — McMap. All rights reserved.