# Lees Update Graph Model

From SPARQL Working Group

- A GraphStore is the universe of graphs available to a SPARQL Update processor. It includes an unnamed (default) graph and zero or more named graphs.
- A SPARQL Update operation is a function from GraphStore to GraphStore
- A SPARQL Update operation is performed in the context of an RDF Dataset, but its mutations affect the GraphStore (see above)
- Graphs can be empty.
- The CREATE statement mutates the GraphStore by adding an empty graph with the given name to the GraphStore.
- The DROP statement mutates the GraphStore by removing a graph (including its contents) entirely from the GraphStore.
- The INSERT statement generates a set of (triple, graph) pairs (by applying solutions to the INSERT template). The GraphStore is changed in two ways:
- Any graphs in this set that don't exist are created.
- All of the triples in the set are added to the corresponding graph.

- The DELETE statement generates a set of (triple, graph) pairs (by applying solutions to the DELETE template). All of the triples in the set are removed from the corresponding graph.
- An implementation may at any time (between operations) remove an empty graph