Sounds good, so I guess a generic tool
that can help resolve the fact models across rules/processes.
The UI can then utilize this tool when needed.
When you gonna work on that? :)
Thanks.
On 8/16/12 7:52 AM, Mauricio Salatino wrote:
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.
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.
The idea is
1) recognize that we have a Person (Person object and person
input to the task for example)
2) look for its fields (age, name, address)
3) look for the already defined variables in the scope where
we want to map things (name inside the task scope)
Cheers
On Thu, Aug 16, 2012 at 12:39 PM,
Tihomir Surdilovic <tsurdilo@redhat.com> wrote:
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.
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.
Thanks.
On 8/16/12 7:12 AM, Mauricio Salatino wrote:
And we should think about
having a component that can be used outside the
process designer as well.
When you say transformations what do you mean?
On Thu, Aug 16, 2012 at
12:11 PM, Tihomir Surdilovic <tsurdilo@redhat.com>
wrote:
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.
Thanks
On 8/16/12 7:06 AM, Mauricio Salatino
wrote:
Just a quick
comment about mapping data,
I think that we need a
specialized component to do that,
because is a cross cutting concern.
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.
We need a graphical way to do
something like
Input: Person ----->
Person.name ---- <mapped to>
----> name
and the other way around
Output Person.name
<----<mapped to>--- name
On Thu, Aug
16, 2012 at 11:20 AM, Tihomir
Surdilovic <tsurdilo@redhat.com>
wrote:
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.
a) Have ability to map data
outputs of a task to data
inputs of the connected
tasks(s) with a single
button click
b) Ability to visualize the
data flow of the process
c) Notifications of
dependency errors when users
decide to remove a process
var, globals, imports, etc
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.
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 :)
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.
Thanks.
Tihomir
On 8/16/12 3:38 AM, Esteban
Aliverti wrote:
The
problem is that BPMN2
specification requires the
variables to be defined.
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 ;).
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.
You will need to tweak
the
Marshalling/Unmarshalling
process..
The classes in charge
of this are:
org/jbpm/designer/bpmn2/impl/Bpmn2JsonMarshaller.java
and
java/org/jbpm/designer/bpmn2/impl/Bpmn2JsonUnmarshaller.java