Благодаря jmbr в Stack Overflow я наконец нашел способ проверить xml на RELAX NG через программу на Си.Программа выглядит следующим образом ...
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <libxml/xmlmemory.h>
#include <libxml/parser.h>
#include <libxml/relaxng.h>
int main(int argc, char *argv[])
{
int status;
xmlDoc *doc;
xmlRelaxNGPtr schema;
xmlRelaxNGValidCtxtPtr validctxt;
xmlRelaxNGParserCtxtPtr rngparser;
doc = xmlParseFile(argv[1]);
rngparser = xmlRelaxNGNewParserCtxt(argv[2]);
schema = xmlRelaxNGParse(rngparser);
validctxt = xmlRelaxNGNewValidCtxt(schema);
status = xmlRelaxNGValidateDoc(validctxt, doc);
printf("status == %d\n", status);
xmlRelaxNGFree(schema);
xmlRelaxNGFreeValidCtxt(validctxt);
xmlRelaxNGFreeParserCtxt(rngparser);
xmlFreeDoc(doc);
exit(EXIT_SUCCESS);
}
С тех пор я значительно улучшил программу, чтобы выяснить «время обработки» для анализа и проверки XMLфайл.Есть ли способ узнать лучший и худший случай для этой программы.В худшем случае, затрачиваемое время всегда самое высокое для любого XML-файла в качестве входного.И, в лучшем случае, время всегда самое низкое.Я действительно застрял в этом.Буду очень признателен, если вы, ребята, сможете мне помочь.