Rephrase RDF to avoid "factory" speak ..just "RDF" is more difficult in text than the obvious Java class name "RDFFactory", hence more <code> typigraphy and "RDF implementation" phrases is needed.
The good thing is that now we can think of instances of "RDF" as directly representing the implementation, e.g. "Jena". Project: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/commit/a1112a8f Tree: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/tree/a1112a8f Diff: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/diff/a1112a8f Branch: refs/heads/COMMONSRDF-7 Commit: a1112a8f1a8d2c48b344af0d8ee3fa62784fe875 Parents: 430bc4d Author: Stian Soiland-Reyes <st...@apache.org> Authored: Sun Oct 23 00:47:40 2016 +0100 Committer: Stian Soiland-Reyes <st...@apache.org> Committed: Sun Oct 23 00:47:40 2016 +0100 ---------------------------------------------------------------------- .../java/org/apache/commons/rdf/api/RDF.java | 27 ++++++++++++++------ 1 file changed, 19 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/blob/a1112a8f/api/src/main/java/org/apache/commons/rdf/api/RDF.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/org/apache/commons/rdf/api/RDF.java b/api/src/main/java/org/apache/commons/rdf/api/RDF.java index 4314568..bd405d0 100644 --- a/api/src/main/java/org/apache/commons/rdf/api/RDF.java +++ b/api/src/main/java/org/apache/commons/rdf/api/RDF.java @@ -21,16 +21,27 @@ import java.io.Serializable; import java.util.Locale; /** - * Factory for creating RDFTerm and Graph instances. + * A RDF implementation. * <p> - * If an implementation does not support a particular method (e.g. it requires - * additional parameters or can't create graphs), then it MAY throw - * {@link UnsupportedOperationException}, as provided by the <code>default</code> - * implementations in this interface. + * A <code>RDF</code> implementation can create instances of + * the {@link RDFTerm} types + * {@link IRI}, {@link BlankNode} and {@link Literal}, as well as creating + * instances of the types {@link Triple}, {@link Quad}, {@link Graph} or + * {@link Dataset}. * <p> - * If a factory method does not allow or support a provided parameter, e.g. - * because an IRI is considered invalid, then it SHOULD throw - * {@link IllegalArgumentException}. + * A <em>partial RDF implementation</em> + * should be clearly documented as such, and may throw + * {@link UnsupportedOperationException} where applicable, e.g. if it + * does not support creating {@link Dataset}s or {@link Quad}s. + * <p> + * Instances of <code>RDF</code> work like a factory for + * creating Commons RDF instances. + * spezializations of this interface may also provide methods + * for conversions from/to their underlying RDF framework. + * <p> + * If a factory method of a particular implementation does not allow or support + * a provided parameter, e.g. because an IRI is considered invalid, then it + * SHOULD throw {@link IllegalArgumentException}. * * @since 0.3.0-incubating * @see RDFTerm