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">&lt;<a href="mailto:tsurdilo@redhat.com" target="_blank">tsurdilo@redhat.com</a>&gt;</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&#39;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&#39;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">&lt;<a href="mailto:tsurdilo@redhat.com" target="_blank">tsurdilo@redhat.com</a>&gt;</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 -----&gt; Person.name ----
                      &lt;mapped to&gt; ----&gt; name</div>
                    <div><br>
                    </div>
                    <div>and the other way around</div>
                    <div> <br>
                    </div>
                    <div>Output Person.name &lt;----&lt;mapped to&gt;---
                      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">&lt;<a href="mailto:tsurdilo@redhat.com" target="_blank">tsurdilo@redhat.com</a>&gt;</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 &quot;copy&quot; 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&#39;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&#39;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">&lt;<a href="mailto:jean-jacques.borie@bluebe.com" target="_blank">jean-jacques.borie@bluebe.com</a>&gt;</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&#39;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">&lt;<a href="mailto:jean-jacques.borie@bluebe.com" target="_blank">jean-jacques.borie@bluebe.com</a>&gt;</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&#39;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&#39;s start to be
                                            very annoying.<br>
                                            <br>
                                            I&#39;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 &quot;Salaboy&quot; 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 &quot;Salaboy&quot; 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 &quot;Salaboy&quot; Mauricio -</div><br>
</div>