Создание узлов XML с использованием XPath

0

Возможно ли создание узлов XML с использованием XPath?

Предположим, у меня есть следующий XML:

<data>
    <someValue1></someValue2>
    <someValue2></someValue2>
    <someArray>
        <val></val>
        <val></val>
        <val></val>
    </someArray>
</data>

Я пытаюсь сделать узел внутри XML с помощью XPath (например, /data/someValue1) и установить значение узла. Это, конечно, легко достичь с помощью любого языка и фреймворка, поддерживающего XML + XPath.

Но когда мое выражение XPath указывает на несуществующий узел, я хочу каким-то образом создать этот узел. Даже если выражение XPath более сложное (например, /data/someArray/val[5]).

В лучшем случае это автоматическое создание узлов должно поддерживаться некоторой библиотекой. Есть ли простой способ достичь того, чего я пытаюсь достичь? В настоящее время я использую C++ с Qt и классом QXmlQuery.

Теги:
xpath
qt

1 ответ

0
Лучший ответ

Возможно ли создание узлов XML с использованием XPath?

Нет, это не так. XPath может выбирать только существующие узлы.

Если вы хотите создавать новые узлы, вам нужны XSLT или XQuery.

Но даже тогда создание узла, удовлетворяющего заданному пути, как /a/b/c/foo[5], нетривиально, а не то, что языки могут делать автоматически.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню