Difference between revisions of "Virtual Graphs"
(Created page with "= Intro = The Simantics database client allows for defining memory-based and disk-based graph fragments which are applied on top of the server based semantic graph. A reading u...") |
|||
Line 20: | Line 20: | ||
* Value changes are applied into the given virtual graph | * Value changes are applied into the given virtual graph | ||
* For denied statements the location of the statement is determined and the statement is removed from that virtual graph. | * For denied statements the location of the statement is determined and the statement is removed from that virtual graph. | ||
+ | |||
+ | The user can perform modifications into multiple virtual graphs within a single transaction. This is accomplished by issuing a new synchronous modification (WriteGraph.sync) into a new virtual graph. |
Revision as of 11:38, 29 August 2011
Intro
The Simantics database client allows for defining memory-based and disk-based graph fragments which are applied on top of the server based semantic graph.
A reading user perceives the combined model and the virtual graph information can be specifically queried if necessary.
A modifying user needs to specify in which virtual graph the modifications are made.
Virtual graphs are manipulated via the following interfaces
- org.simantics.db.service.VirtualGraphSupport, for management
- org.simantics.db.request.WriteTraits, for identifying the graph to write into
Specification
A write request has a single graph into which it writes. This is determined by WriteTraits and usually as a parameter to WriteRequest. If null is provided, the client applies modifications into the persistent graph. The following rules apply
- New resources are created into the given virtual graph
- Claim statements are added into the given virtual graph
- Value changes are applied into the given virtual graph
- For denied statements the location of the statement is determined and the statement is removed from that virtual graph.
The user can perform modifications into multiple virtual graphs within a single transaction. This is accomplished by issuing a new synchronous modification (WriteGraph.sync) into a new virtual graph.