xquery version "1.0"; declare namespace request="http://exist-db.org/xquery/request"; declare namespace xmldb="http://exist-db.org/xquery/xmldb"; let $name := request:get-parameter("name", "") (: The first time store the document holding the names :) let $collection := xmldb:collection("xmldb:exist:///db", "admin", "") let $dummy := if ( not ( doc( "/db/names.xml" )) ) then xmldb:store($collection, "names.xml", ) else (: Create an XUpdate document :) let $xupdate := {$name} let $dummy2 := if ( $name and not ( doc( "/db/names.xml" )/names/name = $name ) ) then xmldb:update($collection, $xupdate) else let $names-from-db := doc( "/db/names.xml" ) let $names := $names-from-db return XQuery-XUpdate Example
Please enter your name:
Hello { $names } !
See the XQuery source of this page