-
Notifications
You must be signed in to change notification settings - Fork 659
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Disable automatic string datatype - possible? #2973
Comments
Could it be an option to change the code to be able to set an alternative default data-type? |
In RDF 1.1, all literals have a datatype.
The old RDF 1.0 "plain literal" concept no longer exists.
In RDF 1.1, they are the same model. As of Jena 3, Jena supports RDF 1.1. Jena no longer has an RDF 1.0 mode. This runs quite deep - code assumes there is a datatype. Good to see Eyeball continues! |
Thank you @asf! :-) I guess the fundamental issue here is once more, what I saw quite a few times already now, that linters really should not use production oriented parsers and libraries, as it makes detecting a hole range of issues impossible. |
The last Jena2 was 2015-03-13. There is little to no RDF 1.0 data anymore. The transition went very smoothly. For Jena maybe one or two questions, and the answers seem to satisfy. No "this total breaks my system". It must have been because people either use The issues to detect will fall into "ill advised" ways of writing the data where a custom parser will help, and higher level anti-patterns, right through to incorrect use of ontologies. Th e trouble with RDF is there are multiple syntaxes. For "Eyebball-NG", who are the users? What data do they check? For checking IRIs, the new jena-iri3986 system will be much easier to use and tune wranings/errors. Its not currently flexible to add new checks though (doable, hasn't been a need) or to add custom URI schemes (again, doable). |
FYI: The Data Shapes Working Group (SHACL 1.2 ) is just getting started. SHACL does data validation above the level of parsing. If there are tasks that you think are useful that aren't covered, please do raise an issue. |
Hmm.... I know about SHACL, and used it a tiny bit, but I am nowhere deep enough into that stuff to be able to raise issues yet. I wrote a small tool to convert OWL ontologies to SHACL shapes. I know that is not logically valid and people like you that know al the ins and outs of the two, will pull out their hair, but for people like me, who use a sub-set of OWL to write kind of data schemas for distributed databases, the two encode mostly the same data, just using different terms. I only use a hand full of properties (range, domain, sub-class, sub-property, type, cardinalities). Eyeball-NG ... I am mostly a software dev, and not so much an academic. for me, RDF OWL are IT tools, not so much what Biologists, philosophy people, pharma/medical people and what not, see in it. I don't write papers and such ... you get the idea. I would love for them and me to be able to work together on this stuff, as I think we would be much better off this way, as I am weak on the theory, specs and deep intrinsics, but could improve their code quality (they are acedemics, foremost) some, I think. I plan to actively use eyeball myself, regularly (CI), for all of our ontologies and at least one of a friend. |
Version
5.4.0-SNAPSHOT
Question
I am maintaining an open source RDF/OWL linter based on Jena.
One of the things it checks, is whether all literals have types explicitly set.
Until now it was based on Jena 2, but now I am updating it to Jena 5, which automatically adds
xsd:string
as the datatype, if none is explicitly given (where Jena 2 storednull
). I am usingorg.apache.jena.rdf.model.test.ModelTestBase.statement( final Model m, final String fact )
to create the model like so:The above now both result in the same model.
Any ideas how I could detect the difference in these two, without re-implementing all of the parsing?
The text was updated successfully, but these errors were encountered: