A discussion of the design and implementation of an RDF API.
"updates" may be a better term.
There's more room for intelligence in the committal stage. For example: if a semantics-adding layer knows that "someNS:primaryEmailAddress" is a single-valued property, it is at the committal stage that resolution can be done (removing any other matching Triple). Although the semantics outlined in this example could just as easily be handled at the assert() stage, more complex resolution might involve looking at more of the graph structure that is being changed.
Forward reference to virtual nodes, legacy data
Efficient storage with arbitrary assertion patterns may be hidden from the user by the use of an "as and when able" approach to committing updates.