Author: buildbot
Date: Mon Dec 31 10:27:52 2012
New Revision: 844382
Log:
Staging update by buildbot for ode
Modified:
websites/staging/ode/trunk/content/ (props changed)
websites/staging/ode/trunk/content/extensions/external-variables.html
Propchange: websites/staging/ode/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Mon Dec 31 10:27:52 2012
@@ -1 +1 @@
-1427069
+1427070
Modified: websites/staging/ode/trunk/content/extensions/external-variables.html
==============================================================================
--- websites/staging/ode/trunk/content/extensions/external-variables.html
(original)
+++ websites/staging/ode/trunk/content/extensions/external-variables.html Mon
Dec 31 10:27:52 2012
@@ -28,7 +28,7 @@
<li class="">
<a href="/getting-ode.html">Getting ODE</a>
</li>
- <li class=" dropdown">
+ <li class="active dropdown">
<a href="/user-guide.html" class="dropdown-toggle"
data-toggle="dropdown" data-target="#">Documentation<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/userguide/">User Guide</a></li>
@@ -85,13 +85,12 @@
<div class="span12">
<p><a name="ExternalVariables-ExternalVariables"></a></p>
<h2 id="external-variables">External Variables</h2>
-<div class="codehilite"><pre> <span class="o">*</span> <span
class="p">[</span><span class="n">Declaring</span> <span
class="n">External</span> <span class="n">Variables</span> <span
class="n">in</span> <span class="n">the</span> <span class="n">Process</span>
<span class="n">Definition</span><span class="p">](</span><span
class="c1">#ExternalVariables-DeclaringExternalVariablesintheProcessDefinition)</span>
- <span class="o">*</span> <span class="p">[</span><span
class="n">Incomplete</span> <span class="n">Keys</span><span
class="p">](</span><span class="c1">#ExternalVariables-IncompleteKeys)</span>
- <span class="o">*</span> <span class="p">[</span><span class="n">JDBC</span>
<span class="n">Mapping</span><span class="p">](</span><span
class="c1">#ExternalVariables-JDBCMapping)</span>
- <span class="o">*</span> <span class="p">[</span><span class="n">REST</span>
<span class="n">Mapping</span><span class="p">](</span><span
class="c1">#ExternalVariables-RESTMapping)</span>
-</pre></div>
-
-
+<ul>
+<li><a
href="#ExternalVariables-DeclaringExternalVariablesintheProcessDefinition">Declaring
External Variables in the Process Definition</a></li>
+<li><a href="#ExternalVariables-IncompleteKeys">Incomplete Keys</a></li>
+<li><a href="#ExternalVariables-JDBCMapping">JDBC Mapping</a></li>
+<li><a href="#ExternalVariables-RESTMapping">REST Mapping</a></li>
+</ul>
<p><a
name="ExternalVariables-DeclaringExternalVariablesintheProcessDefinition"></a></p>
<h3 id="declaring-external-variables-in-the-process-definition">Declaring
External Variables in the Process Definition</h3>
<div class="alert alert-warning">
@@ -115,21 +114,22 @@
<p>In addition to this attribute, an external variable may also define a set
of key mappings by nesting <code>xvar:key-map</code> elements within the
declaration. The key mappings are a collection of name-expression pairs that is
used to create a composite key (identity) for the external variable. This
composite key is used to retrieve the correct "instance" of the variable from
the underlying storage. The key mappings are BPEL expressions ( i.e. XPath
expressions) that are evaluated once, at the time that the scope is
instantiated. Therefore, the "identity" of an external variable is determined
during scope creation, and cannot be changed by the process (for qualifications
see Incomplete Keys below).</p>
<p>Finally, any external variables must be of an "element" type, with a schema
conforming to the requirements of the underlying storage mechanism.</p>
<p>Consider the following example:</p>
-<p><DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV
class="codeHeader panelHeader" style="border-bottom-width:
1px;border-bottom-style: solid;"><B>process.bpel</B></DIV><DIV
class="codeContent panelContent">
- .
- .
- .
- <scope>
- <variables>
- <variable name="customer" element="myns:CustomerElement"
xvar:id="customer1" >
- <xvar:key-map key="customer-id">
- <expression>$order/customerid</expression>
- </xvar:key-map>
- </variables>
- </scope>
- .
- .
- .</p>
+<div class="caption">process.bpel</div>
+
+<div class="codehilite"><pre>...
+<span class="nt"><scope></span>
+ <span class="nt"><variables></span>
+ <span class="nt"><variable</span> <span class="na">name=</span><span
class="s">"customer"</span> <span class="na">element=</span><span
class="s">"myns:CustomerElement"</span> <span
class="na">xvar:id=</span><span class="s">"customer1"</span> <span
class="nt">></span>
+ <span class="nt"><xvar:key-map</span> <span
class="na">key=</span><span class="s">"customer-id"</span><span
class="nt">></span>
+ <span class="nt"><expression></span>$order/customerid<span
class="nt"></expression></span>
+ <span class="nt"></xvar:key-map></span>
+ <span class="nt"></variable></span>
+ <span class="nt"></variables></span>
+<span class="nt"></scope></span>
+...
+</pre></div>
+
+
<p>In the above, the "customer" variable is an external variable. The key for
the external variable is derived from the value of the <code>customerid</code>
element in the "order" variable. Note that the "order" variable must be
declared in a scope above the scope declaring the "customer" external variable,
otherwise it would not be possible to resolve the identify of the "customer"
variable. In this scenario, the external variable can be "read" even if it was
never assigned to in the process.</p>
<p><a name="ExternalVariables-IncompleteKeys"></a></p>
<h3 id="incomplete-keys">Incomplete Keys</h3>