Коллекции XQUery: удаление? - PullRequest
       12

Коллекции XQUery: удаление?

2 голосов
/ 06 февраля 2012

Я новичок в xquery, и я пытаюсь использовать коллекцию, чтобы перезагрузить мою веб-страницу и сохранить некоторую информацию. Моя проблема заключается в том, что после создания коллекции и сохранения своего узла с помощью (sausalito) коллекция остается активной даже после закрытия программы. В следующий раз, когда я использую коллекцию, в ней уже есть узлы. Мне нужна только коллекция, чтобы сохранить узел, затем перезагрузить сайт и удалить узел. Проблема в том, что я не могу удалить коллекцию или узлы. Я пытался использовать delete-node () и другие методы из http://www.zorba -xquery.com / doc / zorba-1.4.0 / zorba / xqdoc / xhtml / www.zorba-xquery.com_modules_xqddf.html # delete-index -1

Что у меня есть

declare collection resultview:collection as node()*;
declare variable $resultview:collection as xs:QName := xs:QName("resultview:collection");
declare sequential function resultview:add($allMovies as element(movies))
{
for $movie in $allMovies
return xqddf:insert-nodes($resultview:collection, $allMovies);
fn:trace(xqddf:collection($resultview:collection), "Collection data: "),
exit returning resultview:list();
};
declare sequential function resultview:deleteList() {
    let $a := ""
    return  xqddf:delete-index($resultview:collection);
    exit returning resultview:list();
};

1 Ответ

2 голосов
/ 06 февраля 2012

если я вас правильно понимаю, это должно сработать:

declare collection resultview:collection as node()*;
declare variable $resultview:collection as xs:QName := xs:QName("resultview:collection");

declare sequential function resultview:add($allMovies as element(movies))
{
  xqddf:insert-nodes($resultview:collection, $allMovies);
  resultview:list();
};

declare sequential function resultview:deleteList() {
  xqddf:delete-nodes(
    $resultview:collection,
    xqddf:collection($resultview:collection));
  resultview:list();
};

использовать delete-node вместо delete-index (последний удаляет полный индекс, а не узел в определенной позиции индекса).

это помогает?

...