2012-03-06 2 views
1

У меня есть xml и xsl-файл. Вывод из xsl - это просто текст i.e, если некоторые условия терпят неудачу, результатом является просто описание отказа. Если все условия пройдены, результат равен нулю. Если я запустил это в xsltproc, он отлично работает.XSLT: xsltApplyStylesheet возвращает null

Однако, если я запустил это с помощью libxslt, используя функцию xsltApplyStylesheet, я вижу пустой результат. Входной файл xml в xsltApplyStylesheet динамически создается в коде. Файл xsl читается с помощью xsltParseStylesheetFile. (Я использовал xmlDocDumpFormatMemory как xml, так и вывод xsltParseStylesheetFile-> doc, оба кажутся прекрасными). Я попробовал xsltSaveResultToString после ApplyStylesheet, это тоже не работает.

В чем может быть проблема?

Код сниппета:

xmldoc = xmlNewDoc(BAD_CAST "1.0"); 
    c = xmlNewNode(NULL, BAD_CAST "Company"); 
    xmlAddChild(c, node); //node is another child in XML 
    xmlAddChild(c, d); //d is another child in xml 
    xmlDocSetRootElement(xmldoc, c); 
    ..... 

    xsl = xsltParseStylesheetFile("xsl.file"); 
    .... 
    output = xsltApplyStylesheet(xsl, xmldoc, NULL); 
    .... 
    //output has just "<?xml version="1.0"?>" 

ТИА и ценим вашу помощь!

ответ

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