It can be used for every data mapping that we need to do, for example to map the Person fields (age, name, address) to different fields in a form. <div><br></div><div>This is not about using expressions to resolve values at runtime, you can consider a data mapper a tool to create those expressions based on the data available. This kind of tools can be also used for Rules as well, so the process designer is just one component that can use that. </div>
<div><br></div><div>The idea is </div><div>1) recognize that we have a Person (Person object and person input to the task for example)</div><div>2) look for its fields (age, name, address)</div><div>3) look for the already defined variables in the scope where we want to map things (name inside the task scope)</div>
<div><br></div><div>Cheers</div><div><br></div><div><br><br><div class="gmail_quote">On Thu, Aug 16, 2012 at 12:39 PM, Tihomir Surdilovic <span dir="ltr"><<a href="mailto:tsurdilo@redhat.com" target="_blank">tsurdilo@redhat.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Transformation expressions are part of
the BPMN2 specification. For example Person.name assignment would
have a transformation expression defined which evaluates this
expression and its result is copied to the target reference.<br>
<br>
Can't think right now why it would be useful to have data
association abilities as stand-alone outside of the process
modelling environment but maybe I don't understand what you mean.<br>
<br>
Thanks.<div><div class="h5"><br>
<br>
<br>
On 8/16/12 7:12 AM, Mauricio Salatino wrote:<br>
</div></div></div><div><div class="h5">
<blockquote type="cite">And we should think about having a component that can
be used outside the process designer as well.
<div><br>
</div>
<div>When you say transformations what do you mean? </div>
<div><br>
<br>
<div class="gmail_quote">On Thu, Aug 16, 2012 at 12:11 PM,
Tihomir Surdilovic <span dir="ltr"><<a href="mailto:tsurdilo@redhat.com" target="_blank">tsurdilo@redhat.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Agreed, Designer already supports transformations to
do what you are asking for, but the data editors should
allow users to use this feature better. Will look at it.<br>
<br>
Thanks
<div>
<div><br>
On 8/16/12 7:06 AM, Mauricio Salatino wrote:<br>
</div>
</div>
</div>
<div>
<div>
<blockquote type="cite">Just a quick comment about
mapping data,
<div>I think that we need a specialized component to
do that, because is a cross cutting concern. </div>
<div>No matter if we are mapping task inputs and
task outputs or a form field, we need a graphical
mapping component to take care of that.</div>
<div><br>
</div>
<div>We need a graphical way to do something like</div>
<div><br>
</div>
<div>Input: Person -----> Person.name ----
<mapped to> ----> name</div>
<div><br>
</div>
<div>and the other way around</div>
<div> <br>
</div>
<div>Output Person.name <----<mapped to>---
name</div>
<div><br>
</div>
<div><br>
<br>
<div class="gmail_quote">On Thu, Aug 16, 2012 at
11:20 AM, Tihomir Surdilovic <span dir="ltr"><<a href="mailto:tsurdilo@redhat.com" target="_blank">tsurdilo@redhat.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>There are a number of ideas floating
around on this - and yes data mapping
within a BPMN2 process is probably now one
of the hardest things to set up and
maintain. <br>
<br>
a) Have ability to map data outputs of a
task to data inputs of the connected
tasks(s) with a single button click<br>
b) Ability to visualize the data flow of
the process<br>
c) Notifications of dependency errors when
users decide to remove a process var,
globals, imports, etc<br>
d) Ability to "copy" existing data
elements such as
variables/globals/imports/etc from an
already existing process or a process
template..this has been asked in the
community already and we are looking at
it.<br>
<br>
jBPM follows the BPMN2 specification for
data setup and mapping closely which is a
good thing as it does not introduce any
wrappers around it (you might see other
tools use extensions elements for this
heavily). I don't think writing wrappers
is a good idea, however making working
with data as simple and intuitive as
possible for users is very important so
any ideas/thoughts/contributions are very
welcome :)<br>
<br>
Jean-Jacques, If you want to jump on IRC
and I'd be happy to talk to you in detail
about all of this as well.<br>
<br>
Thanks.<br>
Tihomir<br>
<br>
On 8/16/12 3:38 AM, Esteban Aliverti
wrote:<br>
</div>
<blockquote type="cite">The problem is that
BPMN2 specification requires the variables
to be defined.
<div>What you will need to do is to modify
Designer to automatically create the
required variables according to the IO
specification of the tasks you have.
Unfortunately this is not as easy as it
sounds ;).</div>
<div>Designer keeps a representation of
the process in JSON format. That JSON is
then converted into BPMN2 when it is
saved. When you open a process Designer
first converts it from BPMN2 to JSNO
back again. </div>
<div>You will need to tweak the
Marshalling/Unmarshalling process..</div>
<div>The classes in charge of this are:
org/jbpm/designer/bpmn2/impl/Bpmn2JsonMarshaller.java
and
java/org/jbpm/designer/bpmn2/impl/Bpmn2JsonUnmarshaller.java<br clear="all">
<br>
@Tiho, do you see a better solution?</div>
<div><br>
</div>
<div>Best Regards,<br>
<br>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<br>
<br>
Esteban Aliverti<br>
- Blog @ <a href="http://ilesteban.wordpress.com" target="_blank">http://ilesteban.wordpress.com</a><br>
<br>
<br>
<div class="gmail_quote">On Thu, Aug 16,
2012 at 5:10 AM, Jean-Jacques Borie <span dir="ltr"><<a href="mailto:jean-jacques.borie@bluebe.com" target="_blank">jean-jacques.borie@bluebe.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I need to
add that we plan to use work item
definition file to declare
parameters of work item and we don't
want to do it again on the workflow.<span><font color="#888888"><br>
<br>
Jean-Jacques</font></span>
<div>
<div><br>
<br>
<div class="gmail_quote">On Thu,
Aug 16, 2012 at 10:06 AM,
Jean-Jacques Borie <span dir="ltr"><<a href="mailto:jean-jacques.borie@bluebe.com" target="_blank">jean-jacques.borie@bluebe.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I want to simplify Oryx
designer in order to don't
have to map every variables
with input/output of task.<br>
<br>
I want to remove the need of
declaring global variable
and the mapping with
parameter of task.<br>
<br>
When you have lots of
workflow, it's start to be
very annoying.<br>
<br>
I'm thinking of moving this
declaration of mapping to do
it at runtime.<br>
<br>
Like having a spring
configuration file to
declare all variables needed
for a series of workflow.<br>
<br>
And next do the mapping of
variable by IOC with work
item or something like that.<br>
<br>
I want to keep the scope
variable between process and
work item.<br>
<br>
I want to make easier the
work of people doing the
workflow in order to give
the tool for non developer.<br>
<br>
Any idea ?<br>
<br>
Thanks<span><font color="#888888"><br>
Jean-Jacques Borie<br>
</font></span></blockquote>
</div>
<br>
</div>
</div>
<br>
_______________________________________________<br>
jbpm-dev mailing list<br>
<a href="mailto:jbpm-dev@lists.jboss.org" target="_blank">jbpm-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/jbpm-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/jbpm-dev</a><br>
<br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
jbpm-dev mailing list
<a href="mailto:jbpm-dev@lists.jboss.org" target="_blank">jbpm-dev@lists.jboss.org</a>
<a href="https://lists.jboss.org/mailman/listinfo/jbpm-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/jbpm-dev</a>
</pre>
</blockquote>
<br>
</div>
<br>
_______________________________________________<br>
jbpm-dev mailing list<br>
<a href="mailto:jbpm-dev@lists.jboss.org" target="_blank">jbpm-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/jbpm-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/jbpm-dev</a><br>
<br>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
- MyJourney @ <a href="http://salaboy.wordpress.com" target="_blank">http://salaboy.wordpress.com</a>
<div> - Co-Founder @ <a href="http://www.jugargentina.org" target="_blank">http://www.jugargentina.org</a><br>
- Co-Founder @ <a href="http://www.jbug.com.ar" target="_blank">http://www.jbug.com.ar</a><br>
<br>
- Salatino "Salaboy" Mauricio -</div>
<br>
</div>
</blockquote>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
- MyJourney @ <a href="http://salaboy.wordpress.com" target="_blank">http://salaboy.wordpress.com</a>
<div> - Co-Founder @ <a href="http://www.jugargentina.org" target="_blank">http://www.jugargentina.org</a><br>
- Co-Founder @ <a href="http://www.jbug.com.ar" target="_blank">http://www.jbug.com.ar</a><br>
<br>
- Salatino "Salaboy" Mauricio -</div>
<br>
</div>
</blockquote>
<br>
</div></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br> - MyJourney @ <a href="http://salaboy.wordpress.com" target="_blank">http://salaboy.wordpress.com</a><div> - Co-Founder @ <a href="http://www.jugargentina.org" target="_blank">http://www.jugargentina.org</a><br>
- Co-Founder @ <a href="http://www.jbug.com.ar" target="_blank">http://www.jbug.com.ar</a><br> <br> - Salatino "Salaboy" Mauricio -</div><br>
</div>