diff software/eXist/webapp/mpdl/_stuff/testDev/test-trigger.xql @ 7:5589d865af7a

Erstellung XQL/XSL Applikation
author Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
date Tue, 08 Feb 2011 15:16:46 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/software/eXist/webapp/mpdl/_stuff/testDev/test-trigger.xql	Tue Feb 08 15:16:46 2011 +0100
@@ -0,0 +1,25 @@
+xquery version "1.0";  
+  
+(:  
+    A simple XQuery for an XQueryTrigger that  
+    logs all trigger events for which it is executed  
+    in the file /db/triggersLogs.xml  
+:)  
+  
+declare namespace  xmldb="http://exist-db.org/xquery/xmldb";  
+  
+declare variable $local:triggerEvent external;  
+declare variable $local:eventType external;  
+declare variable $local:collectionName external;  
+declare variable $local:documentName external;  
+declare variable $local:document external;  
+  
+declare variable $local:triggersLogFile := "test-trigger-log.xml";  
+
+(: create the log file if it does not exist :)  
+if(not(doc-available($local:triggersLogFile)))
+then (xmldb:store("/db/test", $local:triggersLogFile, <triggers/>))  
+else ()  
+   
+(: log the trigger details to the log file :)  
+update insert <trigger event="{$local:triggerEvent}" eventType="{$local:eventType}" collectionName="{$local:collectionName}" documentName="{$local:documentName}" timestamp="{current-dateTime()}">{$local:document}</trigger>  into doc("/db/test/test-trigger-log.xml")/triggers