<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?action=history&amp;feed=atom&amp;title=JavaScriptRetriever</id>
	<title>JavaScriptRetriever - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?action=history&amp;feed=atom&amp;title=JavaScriptRetriever"/>
	<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=JavaScriptRetriever&amp;action=history"/>
	<updated>2026-04-17T11:00:07Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.7</generator>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=JavaScriptRetriever&amp;diff=3326&amp;oldid=prev</id>
		<title>G.dimaio: Created page with &quot;==Description==  The JavaScriptRetriever element allows you to define a helper to use into the XSL transformations.  We define the functions that run JavaScript code and return t...&quot;</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=JavaScriptRetriever&amp;diff=3326&amp;oldid=prev"/>
		<updated>2012-05-22T14:14:19Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==Description==  The JavaScriptRetriever element allows you to define a helper to use into the XSL transformations.  We define the functions that run JavaScript code and return t...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
The JavaScriptRetriever element allows you to define a helper to use into the XSL transformations.&lt;br /&gt;
&lt;br /&gt;
We define the functions that run JavaScript code and return the last assignment/function result.&lt;br /&gt;
&lt;br /&gt;
The script to be executed can contain metadata resolved at runtime.&lt;br /&gt;
&lt;br /&gt;
=={{GVESB}} configuration==&lt;br /&gt;
&lt;br /&gt;
JavaScriptRetriever element is used by [[Retriever_Config|RetrieverConfig]].&lt;br /&gt;
&lt;br /&gt;
The following table shows its attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| type || fixed || retriever (unmodifiable)&lt;br /&gt;
|-&lt;br /&gt;
| class || fixed || it.greenvulcano.gvesb.datahandling.utils.JavaScriptRetriever&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Might contain the sub-elements:&lt;br /&gt;
* [[Description]]&lt;br /&gt;
* [[DataRetriever]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===An example===&lt;br /&gt;
&lt;br /&gt;
Define the following JavaScriptRetriever:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;JavaScriptRetriever class=&amp;quot;it.greenvulcano.gvesb.datahandling.utils.JavaScriptRetriever&amp;quot; type=&amp;quot;retriever&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;DataRetriever method=&amp;quot;getElementMapping&amp;quot; signature=&amp;quot;ELEMENT&amp;quot;&amp;gt;&lt;br /&gt;
            var mapping = {&amp;quot;Cognome&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;Nome&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;Indirizzo&amp;quot;:&amp;quot;3&amp;quot;, &amp;quot;Cap&amp;quot;:&amp;quot;4&amp;quot;, &amp;quot;Citta&amp;quot;:&amp;quot;5&amp;quot;, &amp;quot;Provincia&amp;quot;:&amp;quot;6&amp;quot;, &amp;quot;Nazione&amp;quot;:&amp;quot;7&amp;quot;,&lt;br /&gt;
                        &amp;quot;Telefono&amp;quot;:&amp;quot;8&amp;quot;, &amp;quot;EMail&amp;quot;:&amp;quot;9&amp;quot;};&lt;br /&gt;
            var res = mapping[&amp;quot;@{{ELEMENT}}&amp;quot;];&lt;br /&gt;
            if (res === undefined) {&lt;br /&gt;
                res =  &amp;quot;-1&amp;quot;;&lt;br /&gt;
            } else {&lt;br /&gt;
                res;&lt;br /&gt;
            }&lt;br /&gt;
        &amp;lt;/DataRetriever&amp;gt;&lt;br /&gt;
        &amp;lt;DataRetriever method=&amp;quot;mustBeUpperCase&amp;quot; signature=&amp;quot;ELEMENT&amp;quot;&amp;gt;&lt;br /&gt;
            var mapping = {&amp;quot;Cognome&amp;quot;:&amp;quot;true&amp;quot;, &amp;quot;Nome&amp;quot;:&amp;quot;true&amp;quot;, &amp;quot;Indirizzo&amp;quot;:&amp;quot;true&amp;quot;, &amp;quot;Citta&amp;quot;:&amp;quot;true&amp;quot;, &amp;quot;Provincia&amp;quot;:&amp;quot;true&amp;quot;};&lt;br /&gt;
            var res = mapping[&amp;quot;@{{ELEMENT}}&amp;quot;];&lt;br /&gt;
            if (res === undefined) {&lt;br /&gt;
                res =  &amp;quot;false&amp;quot;;&lt;br /&gt;
            } else {&lt;br /&gt;
                res;&lt;br /&gt;
            }&lt;br /&gt;
        &amp;lt;/DataRetriever&amp;gt;&lt;br /&gt;
    &amp;lt;/JavaScriptRetriever&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to be applied to the transformation:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:variable name=&amp;quot;element&amp;quot;   select=&amp;quot;local-name(.)&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:variable name=&amp;quot;mapping&amp;quot;   select=&amp;quot;java:it.greenvulcano.gvesb.datahandling.utils.JavaScriptRetriever.getData('getElementMapping', $element)&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:variable name=&amp;quot;uppercase&amp;quot; select=&amp;quot;java:it.greenvulcano.gvesb.datahandling.utils.JavaScriptRetriever.getData('mustBeUpperCase', $element)&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.dimaio</name></author>
		
	</entry>
</feed>