https://github.com/apache/jena/pull/804
"G" is a set of functions for working with Graph at the detail triple level.
"Graph" is both a low-level internal API and also the abstract for
implementation of a graph.
Actually changing "Graph" does not seem a good idea.
So G is a library that packages up little patterns of use of graph
objects e.g. "getOne*", "getZeroOrOne*" or "all*" (get a set of nodes) -
the handling of ExtendedIterator is hidden and the function name says
what does better than a longer line of code using Graph/ExtendedIterator
directly.
This has worked well in jena-shacl, so the PR moves it to a more general
place, and collects up a few other small operations.
It is still in a package that isn't API so for a bit, it can change more
freely.
Comments etc.
Andy