Ask a questionAsk a question
 

Proposed AnswerOSLO and XPDL

  • Friday, October 23, 2009 3:33 AMjaime_olivares Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Dear all,
    We are researching about current technologies for BPM and other workflow applications.
    As we found that XPDL is one of the most mature standards for defining and storing process models, I would like to know how can we  relate this to Oslo capabilities.
    My understanding is that a closer equivalent of XPDL standard to define a process model would be the "M" programming language. Is this correct? If so, is there any tool announced to translate between both? maybe some MS-BPA vendor.
    Thanks in advance, hope to have a rapid answer.
    Best regards,
    Jaime.

All Replies

  • Tuesday, October 27, 2009 7:53 AMMiguel.LlopisMSFTUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Proposed Answer
    Hello Jaime,

    The M language is a declarative language that allows you to define data models. As you pointed, XPDL is a standardized process model. Therefore, the way both M and XPDL could fit together is creating an M data model to define the set of concepts and entities that XPDL requires.

    The XPDL model in M is an implementation that we are not currently providing. Fortunately, there is somebody "out there" that has already defined it. You can find it, among other 280 data models, in this page: http://www.emn.fr/z-info/atlanmod/index.php/MsOsloM#XPDL_0.1

    As I said, this is not a Microsoft implementation, so we can't guarantee it is free of errors.

    Kind regards,
    M.
  • Tuesday, October 27, 2009 5:03 PMjaime_olivares Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Dear Miguel,
    Thanks for your useful response.
    I have seen the source code file at: http://gforge.inria.fr/plugins/scmsvn/viewcvs.php/*checkout*/AtlanticOsloM/XPDL-1.14.m?root=atlantic-zoos
    It clearly defines the XPDL entities, but looks like not enough:
    how we can import the XPDL (xml) file into Oslo? Is it enough to have the .m file?
    how we can give "live" to the model? this is, a XPDL.Trigger being recognized as a trigger, even more, how a Timer Trigger will be recognized as a timer?

    Then intention is to run the model, this is, to import into Oslo and then generate the workflow engine with WF 4.0

    Thanks in advance,
    Jaime.

  • Wednesday, October 28, 2009 10:56 PMJaime AlvaMSFTUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    [From a Jaime to a Jaime :) ]

    Hello Jaime,

    Going over some end-to-end samples like the Spork (
    http://msdn.microsoft.com/en-us/oslo/dd576248.aspx) or the PhotoStore sample (http://msdn.microsoft.com/en-us/oslo/dd535406.aspx) or the many that are out in the wild, will help understand how to go about it better.

    In essence: you can choose to have your files anywhere (DB/file) it is more a matter of convenience (a file is easier to code against and play with but does not scale well, harder to version, keep secure...). Then you can leverage the APIs to create your XPDL file (which maybe store as a blog in your DB if you prefer), to do this you will need your XPDL DSL, that is the good part. The last part, will be to create the actual executables from The XPDL files, that will have to be coded by you, this is where we will like to see the community grow.
    The pay off at the end is that a simple change in a config file (which again, can be store as a blog in a DB if you like) will trigger your DSL to create a new XPDL file which in turn will make a change in your executables (or even graphical model)

    Hope this helps,
    -Jaime.