I have now moved the RIOT reader functionality into jena-arq. Sorry about the cascade of commits - there is something about deleting and moving directory trees in svn that I don't "get" svn and I end end with various fixups needed after a failed large modification to a code tree.

I went for the simplest option - the code is moved into ARQ and wired in when RIOT is initalized. That happens when ARQ is touched so it does not yet apply when jena-core only code is used. That can be short-term fixed by a reflection call in Jena runtime initialization and long-term but reorg of the code structure.

At present there is duplication/redundancy/replication of code across org.openjena.riot and org.apache.jena.riot (e.g. you can find classes with "2" in their name which are replacements). But with the code merged, it's a matter of going through in small tasks to clean-up.


The external effect is a lot of code to make:

   model.read("http://people.apache.org/~andy/RIOT-test/D.x";)

and

   model.read("http://people.apache.org/~andy/RIOT-test/D.ttl";)

work by content negotiation.

(my .htaccess has, for testing:
   AddType  text/turtle             .x
)

except at the moment .../D.ttl does not work when there is no MIME type declaration. There's a switch to make text/plain to instead look at the file name extension and, after some more testing, that will probably be better.

Getting the fine details of what to do when remote configurations are messier than what the standards describe will be needed but that's life on the web.

It is also a lot easier to add new languages to the reader system (JSON-LD? or converters like CSV->RDF) from code outside the Jena codebase.

        Andy

Reply via email to