2012-04-11 1 views
1

Я работаю с библиотекой, которая использует XSD для создания объектов из своего XML-формата в C++.Как написать XML-файл из дерева объектов XSD cxx?

В принципе, схема наследования выглядит примерно так:

class BaseClass: public xsd::cxx::tree::type; 
class MainXmlObject: public BaseClass; 

Я думаю, что мне нужно, чтобы преобразовать мой MainXmlObject в xerces::DOMDocument, а затем использовать DOMWriter писать сам файл XML, но я не мог найти правильные подпрограммы до сих пор.

Каков наилучший способ для этого?

ответ

0

Похоже, добавив --add-serialization флаг поколения XSD код, а затем использовать что-то вроде:

xml_schema::namespace_infomap map; 
// map[""].name = "test"; // xmlns 
// map[""].schema = "http://sbgn.org/libsbgn/0.2"; // xsi:noNamespaceSchemaLocation 
ofstream ofs(fname.c_str()); 
sbgn_(ofs, s, map); // invoking the stream here 
ofs.close(); 

работ. Ссылки: Adding serialization и details от XSD guide.

Смежные вопросы