Je ne trouve pas comment créer un document par défaut à partir de XML Schema dans la documentation Xerces-C. Cependant, je l'ai essayé ce qui suit:Comment générer un document autorisé minimal en utilisant Xerces-C?
const char XMLLinesSchema[] = /* some valid schema */;
MemBufInputSource schema_mem_buf(reinterpret_cast<const XMLByte*>(XMLLinesSchema),
sizeof(XMLLinesSchema), L"schema");
XercesDOMParser parser;
// enable schema processing
parser.setDoSchema(true);
parser.setDoNamespaces(true);
// Let's preparse the schema grammar (.xsd) and cache it.
parser.loadGrammar(schema_mem_buf, Grammar::SchemaGrammarType, true);
parser.useCachedGrammarInParse(true);
parser.setValidationScheme(XercesDOMParser::Val_Always);
DOMDocument* doc = parser.getDocument();
Mais parser.getDocument
retours NULL
. Qu'est-ce que je fais mal? Est-il possible de générer un document autorisé minimal pour le schéma XML spécifié en utilisant Xerces-C?
Que devrais-je utiliser à la place de 'XercesDOMParser'? –
Je pense que vous aurez besoin de regarder en utilisant 'DOMDOMImplementation :: createDocument()' pour créer un document par défaut, et IIRC, vous pouvez également y définir le schéma. –