These pages document the DCR Solutions Engine, C# API, v3.0.2
We assume a basic familiarity with DCR graphs; you may wish to refer to the dcrgraphs.net wiki for such background information.
The core Engine implements DCR graphs in the following sense:
- Core DCR semantics as described in:
T. Hildebrandt and R. R. Mukkamala, "Declarative Event-Based Workflow as Distributed Dynamic Condition Response Graphs," in Post-proceedings of PLACES 2010, 2010, vol. 69, pp. 59–73.
[Available on-line](http://www.itu.dk/ rao/pubs_submitted/dcrsjournalversionfinal.pdf)
- Nesting as described in:
T. Hildebrandt, R. R. Mukkamala, and T. Slaats, "Nested Dynamic Condition Response Graphs," in Fundamentals of Software Engineering - 4th IPM International Conference, FSEN 2011, Tehran, Iran, April 20-22, 2011, Revised Selected Papers, 2011, vol. 7141, pp. 343–350.
- Time as decribed in:
T. Hildebrandt, R. R. Mukkamala, T. Slaats, and F. Zanitti, "Contracts for cross-organizational workflows as timed Dynamic Condition Response Graphs," The Journal of Logic and Algebraic Programming, vol. 82, no. 5, pp. 164–185, Jul. 2013.
- Subprocesses as described in:
S. Debois, T. T. Hildebrandt, and T. Slaats, "Replication, refinement & reachability: complexity in dynamic condition-response graphs," Acta Informatica, Sep. 2017.
- Data as sketched in:
S. Debois and T. Hildebrandt, "The DCR Workbench: Declarative Choreographies for Collaborative Processes," in Behavioural Types: from Theory to Tools, S. Gay and A. Ravara, Eds. River Publishers, 2017, pp. 99–124.
In addition, the engine implements Containers, also known as "new groups" or "single instance subprocesses"; however, these have yet to appear in as research papers.