3#include "xmlBase/Dom.h"
4#include "xmlBase/XmlParser.h"
5#include <xercesc/dom/DOMElement.hpp>
6#include <xercesc/dom/DOMNodeList.hpp>
13 "<!DOCTYPE TopElement ["
14 " <!ELEMENT TopElement (ChildElt*) >"
15 " <!ELEMENT ChildElt (ChildWithText | EmptyChild)* >"
16 " <!ATTLIST ChildElt anAttribute CDATA #REQUIRED >"
17 " <!ELEMENT ChildWithText (#PCDATA) >"
18 " <!ATTLIST ChildWithText attr CDATA #IMPLIED>"
19 " <!ELEMENT EmptyChild EMPTY> ]"
22 " <ChildElt anAttribute=\"I'm nested but empty\" />"
23 " <ChildElt anAttribute=\"I'm nested with content\">"
24 " <ChildWithText attr=\"text content\" >"
32 XERCES_CPP_NAMESPACE_USE
40 std::cout <<
"Document successfully parsed" << std::endl;
41 DOMElement* docElt = doc->getDocumentElement();
static void prettyPrintElement(DOMNode *elt, std::ostream &out, std::string prefix)
DOMDocument * parse(const char *const filename, const std::string &docType=std::string(""))
Parse an xml file, returning document node if successful.
std::string doc_string("<?xml version=\"1.0\" ?>" "<!DOCTYPE TopElement [" " <!ELEMENT TopElement (ChildElt*) >" " <!ELEMENT ChildElt (ChildWithText | EmptyChild)* >" " <!ATTLIST ChildElt anAttribute CDATA #REQUIRED >" " <!ELEMENT ChildWithText (#PCDATA) >" " <!ATTLIST ChildWithText attr CDATA #IMPLIED>" " <!ELEMENT EmptyChild EMPTY> ]" ">" "<TopElement>" " <ChildElt anAttribute=\"I'm nested but empty\" />" " <ChildElt anAttribute=\"I'm nested with content\">" " <ChildWithText attr=\"text content\" >" " Text content here." " </ChildWithText>" " <EmptyChild />" " </ChildElt>" "</TopElement>")
Test program for xml facility. Parse xml file and write it out to a stream.