Программа на C для фильтрации элементов типа anyURI из строки XML с использованием XSLT - PullRequest
1 голос
/ 23 сентября 2019

У меня есть строка XML, я хочу применить строку XSLT к этому XML для фильтрации элементов типа anyURI.

Мне интересно использовать libxslt.Но это преобразует XML, присутствующий в файле.Я хочу преобразовать xml string .

Как написать программу на C для преобразования этой xml-строки?

1 Ответ

4 голосов
/ 23 сентября 2019

С точки зрения XSLT libxslt - это процессор XSLT 1.0, поэтому он не поддерживает типы схем W3C, такие как xs:anyURI в XSLT, вам потребуется использовать процессор XSLT 2 или 3.Поэтому я не уверен, как вы ожидаете, что ваша программа XSLT, есть ли она в файле или в строке, отфильтровывает элементы типа xs:anyURI.

С точки зрения C, я думаю, в зависимости отваше «строковое» представление, вам нужно использовать http://www.xmlsoft.org/html/libxml-parser.html#xmlReadMemory или xmlReadDoc, чтобы получить http://www.xmlsoft.org/html/libxml-tree.html#xmlDocPtr как для ввода «строки» XML, так и для ввода «строки» XSLT, а затем API-интерфейсы libxslt позволяютиспользовать http://xmlsoft.org/XSLT/html/libxslt-xsltInternals.html#xsltParseStylesheetDoc, чтобы получить xsltStylesheetPtr, а затем запустить xsltApplyStylesheet.

...