Мне нужно вставить новый элемент в документ XML, используя выражение вставки XQuery. Я использую saxon
в качестве java API. Я новичок в XQuery, поэтому я не уверен в точной структуре выражения вставки. Может ли кто-нибудь помочь мне в этом, пожалуйста.
Мой файл XML выглядит следующим образом:
<?xml version="1.0" encoding="ISO-8859-1"?>
<breakfast_menu>
<food>
<name>Belgian Waffles</name>
<price>$5.95</price>
<description>two of our famous Belgian Waffles with plenty of real maple syrup<description>
<calories>650</calories>
</food>
</breakfast_menu>
и код Java, который у меня есть для выполнения вставки,
public void insert() throws XQException{
String queryString =
//"declare variable $docName as xs:string external;" + sep +
"variable $stores := doc("+"food.xml"+")/*;"+
"insert node element food {"+
"element name { \"brnj\" },"+
"element price { \"$20\" },"+
"element description { \"whatever\" },"+
"element calories { 300 },"+
"} into $stores;";
XQPreparedExpression expr = conn.prepareExpression(queryString);
expr.bindObject(new QName("stores"), "food.xml", null);
XQResultSequence rs = expr.executeQuery();
}
ошибка, которую я получаю, связана с синтаксисом строки запроса. Пожалуйста помоги.