0

我还没有找到如何在 Xerces-C 文档中从 XML 模式创建默认文档。我仍然尝试了以下方法:

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();

parser.getDocument回报NULL。我究竟做错了什么?是否可以使用 Xerces-C 为指定的 XML Schema 生成最小允许文档?

4

1 回答 1

0

文档是这样说的:

它应该由选择使用 DOM api 解析和处理 XML 文档的应用程序使用。

您正在使用解析器,因此它期望通过parse(...)函数解析一些输入。你什么都没有解析,所以什么都不会返回。

于 2011-09-08T09:12:55.667 回答