I spent a bulk of my programming career modelling business processes in a graph database with strong schema, lifecycle control (state machines) and formal change control (revisioning).
I was always blown away with how easy it was to turn around a very stable and useful system where the customers could actually understand the data model and refactoring was easy to reason through.
It's not commercially available unfortunately when I last checked. You have to buy business software and licences to get access to the DB kernel and api's. The main product is called Enovia, formerly called eMatrix by matrix one. Dassault Systemes in France.
Would be sweet to have a similar system in FOSS middleware on top of Neo4J or OrientDB.
[update] Dassault Systemes purchased Matrix One about 10 years ago. They still use their Graph based DB kernel in many of their products. From my understanding, this DB kernel was written in the early 90's and targeted PDM (Product Data Mangement). They now target a broader category of PLM (Product Lifecycle Management). Again, there is no way to purchase their Graph DB Kernel last time I checked which is a shame because its so awesome to develop with :(
Took a look. Interesting project. The abstraction model available to declaring relationships/vertices was hard to grasp at first glance but as I thought about it further, I can see some interesting benefits for pattern matching grammar. eMatrix did not have abstraction for relationships/vertices types but did for object/edge types.
I was always blown away with how easy it was to turn around a very stable and useful system where the customers could actually understand the data model and refactoring was easy to reason through.
Graph databases FTW.