MarkLogic 10 Product Documentation
temporal:node-insert-after

temporal:node-insert-after(
   $temporal-collection as xs:string,
   $sibling as node(),
   $new as node(),
   [$temporal-doc-uri as xs:string]
) as empty-sequence()

Summary

Adds an immediately following sibling to a node in a temporal document.

Parameters
temporal-collection The URI for the protected temporal collection in which the document is to belong. This must have been previously created by the temporal:collection-create function. All versions of the temporal document will be associated with this temporal collection.
sibling The sibling node to be followed by the new node.
new The new node to be inserted.
temporal-doc-uri The URI of the temporal document to be updated.

Usage Notes

The fourth argument "temporal-doc-uri" is not required for documents inserted with MarkLogic 9.0 version of temporal:document-insert or later.

Attribute nodes cannot be followed by non-attribute nodes. Non-attribute nodes cannot be followed by attribute nodes. Element nodes cannot have document node children. Document nodes cannot have multiple roots. On-the-fly constructed nodes cannot be updated.

Example

(: create a document :)
let $options :=  
<options xmlns="xdmp:document-insert">
    <metadata>
       <map:map xmlns:map="http://marklogic.com/xdmp/map">
         <map:entry key="validStart">
           <map:value>2014-04-03T11:00:00</map:value>
         </map:entry>
         <map:entry key="validEnd">
           <map:value>2014-04-03T16:00:00</map:value>
         </map:entry> 
       </map:map>
    </metadata> 
</options> 
return 
temporal:document-insert("tempcol","/example.xml",
    <a><b>bbb</b></a>, $options);

(: add a c node after the b node :)
temporal:node-insert-after("tempcol",fn:doc("/example.xml")/a/b,
    <c>ccc</c>);

(: look at the new document :)
fn:doc("/example.xml")
 =>
<?xml version="1.0" encoding="UTF-8"?>
<a><b>bbb</b><c>ccc</c></a>
Powered by MarkLogic Server | Terms of Use | Privacy Policy