Quite productive coding weekend, Stian!

For me the early proposal looks fine. Let's evolve it and review a PR
whenever you feel it's ready.

On Mon, Mar 28, 2016 at 7:02 AM, Stian Soiland-Reyes <[email protected]>
wrote:

> My first attempt  to implement the RDFParserBuilder with Jena seems to
> work:
>
>
> https://github.com/stain/incubator-commonsrdf/blob/jena/jena/src/main/java/org/apache/commons/rdf/jena/JenaRDFParserBuilder.java
>
> https://github.com/stain/incubator-commonsrdf/blob/jena/simple/src/main/java/org/apache/commons/rdf/simple/AbstractRDFParserBuilder.java
>
> https://github.com/stain/incubator-commonsrdf/blob/jena/jena/src/test/java/org/apache/commons/rdf/jena/TestRDFParserBuilder.java#L33
>
> (I only tested that one variation in the end.. :)
>
> Based on Andy's https://github.com/afs/commonsrdf-jena
> but added as a 'commons-rdf-jena' integration module.
>
> If we were to add this to Commons RDF, I wonder if we would need an IP
> Clearance from Andy, as it's lived a while on GitHub alone - however
> it already have "Licensed to the Apache Software Foundation" headers.
>
>
>
> On 27 March 2016 at 20:27, Stian Soiland-Reyes <[email protected]> wrote:
> > .. RDFParserBuilder JavaDoc:
> >
> >
> https://cdn.rawgit.com/stain/b588d39742ff7ccb3568/raw/8d92f3cbb06500eadf9be2d08b50512f337c2f06/-.html
> >
> > On 27 March 2016 at 20:20, Stian Soiland-Reyes <[email protected]> wrote:
> >> Happy Easter!
> >>
> >> Time for some RDF hacking..
> >>
> >>
> >> I started a draft interface for preparing and running an RDF parser:
> >>
> >>
> >>
> https://github.com/apache/incubator-commonsrdf/blob/parser-writer-interface/api/src/main/java/org/apache/commons/rdf/api/RDFParserBuilder.java
> >>
> >> This builds on a previous idea I had at
> >> https://github.com/stain/commonsrdf-parser-jena
> >> and Andy's work at
> >> https://github.com/afs/commonsrdf-jena
> >>
> >>
> >> An equivalent interface for writers would be pretty much the same but
> >> with .write().
> >>
> >>
> >> The idea is that of a builder pattern - so you can set parameters like
> >> base() and contentType() if you want to - and must call
> >> one of the source() variants (or any third-party extensions like
> source(URL)).
> >>
> >> The parsing happens not until parse() -- which return a
> >> Future<Graph> -- allowing asynchronous parsing.
> >>
> >> If you don't specify intoGraph() or rdfTermFactory() the
> >> implementation is free to choose what kind of Graph it will return.
> >>
> >>
> >> Then we can try out integrations with Jena, Sesame, JSONLD-Java etc.
> >> that provide such builders.
> >>
> >> I've not thought too much about how you would discover those builders
> >> or find the right one depending on the format you may want to parse -
> >> would  through the RDFTermFactory.createParser() ?  (in which case
> >> RDFTermFActory -> RDFFactory )
> >>
> >>
> >> Thoughts?
> >>
> >>
> >> --
> >> Stian Soiland-Reyes
> >> Apache Taverna (incubating), Apache Commons RDF (incubating)
> >> http://orcid.org/0000-0001-9842-9718
> >
> >
> >
> > --
> > Stian Soiland-Reyes
> > Apache Taverna (incubating), Apache Commons RDF (incubating)
> > http://orcid.org/0000-0001-9842-9718
>
>
>
> --
> Stian Soiland-Reyes
> Apache Taverna (incubating), Apache Commons RDF (incubating)
> http://orcid.org/0000-0001-9842-9718
>



-- 
Sergio Fernández
Partner Technology Manager
Redlink GmbH
m: +43 6602747925
e: [email protected]
w: http://redlink.co

Reply via email to