--
You received this message because you are subscribed to the Google Groups "vocbench-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vocbench-user+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vocbench-user.
To view this discussion on the web visit https://groups.google.com/d/msgid/vocbench-user/582eba8b-dc15-4a3a-af2a-60e583a26804%40googlegroups.com.
ManuelDear Roland, AllI recently encountered the error "datatype rdf:langString requires a language tag", and noticed that it doesn't always occur: there are some DBpedia resources that cause this exception and others that are displayed without problems. Looking at the exception more closely, I observed that it is thrown by Rio, the subsystem of RF4J dealing with parsing/serialization (input/output) of RDF data. My preliminary hypothesis was that when the exception is thrown, the serialization of the resource description contains some constructs that Rio considers illegal. However, I haven't already investigated further, in order to: i) identify such problematic constructs, ii) verify if it is possible to make Rio accept them.Best Regards
2018-04-06 16:11 GMT+02:00 Roland Wingerter <chun...@gmail.com>:
Here are two more. examples. Both work in a browser and from a text editor, but only the second one works in VocBench:--
http://dbpedia.org/resource/Semantic_Web
http://live.dbpedia.org/resource/Semantic_Web
Clicking on the first URI in VB3 leads to an error message "datatype rdf:langString requires a language tag". This one really puzzles me.
Kind regards
Roland
Am Freitag, 6. April 2018 12:01:55 UTC+2 schrieb Roland Wingerter:The example URIs are taken form this page: http://wiki.dbpedia.org/services-resources/interlinking#3%20Linking%20to%20DBpedia%20from%20Your%20FOAF%20Profile.
You received this message because you are subscribed to the Google Groups "vocbench-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vocbench-use...@googlegroups.com.
Visit this group at https://groups.google.com/group/vocbench-user.
To view this discussion on the web visit https://groups.google.com/d/msgid/vocbench-user/582eba8b-dc15-4a3a-af2a-60e583a26804%40googlegroups.com.
--Manuel Fiorelli
Dear Roland,
It seems to be an issue in the dbpedia source. The RIO component mentioned by Manuel is not developed by us but is part of the RDF4J suite, and it is reporting a syntax error in that there is a non-legal literal value. We would in any case file a bug or provide the fix to the RDF4J team, but RIO seems to be just doing well its job.
I give you some more background to clarify what you experienced:
You said you had no problem on browsers, but if you access the dbpedia page from a web browser, which is normally configured for getting HTML, you will just get what the browser asked: a web page.
If you configure the browser to get RDF (in any serialization format), the browser won’t complain about its content, as it will just render its content in the best way it knows (which might be not that much “RDF-aware”).
For instance, if the browser is configured to accept RDFXML as a priority over HTML, you will get an RDFXML file, but the browser will just parse it as an XML file (that is, the serialization format carrying the content) in order to provide a rendering for it, and will mostly not bother about its content being legal RDF.
Now, some background on RDF:
In RDF 1.0 there were those so called “plain literal”, as opposed to “typed literals”. They were literals without a datatype. They might be simple strings (e.g. “person”) or have an optional language tag (e.g. “person”@en)
In RDF1.1 all literals are assumed to have a datatype, and a literal simply serialized as
“a literal”
Would be assumed to be:
“a literal”^^xsd:string
While a literal with a language tag would be assumed to have the newly introduced rdf:langString as its datatype.
rdf:langString typed literals mandatorily have a language tag
Let’s move now to your examples: by resolving the first URI you reported (http://dbpedia.org/resource/Semantic_Web) on a browser configured for retrieving RDFXML, I found this entry:
<dbp:b rdf:datatype="http://www.w3.org/1999/02/22-rdf-syntax-ns#langString">no</dbp:b>
That is: an rdf:langString typed literal without a language tag.
This is the data that RIO didn’t digest that well ;-)
Maybe we can do something about that: as much as I remember, RIO can be configured to be less picky about the RDF format when parsing, and just get plain triples without validating the nature of literals with respect to known datatypes.
I see http://docs.rdf4j.org/javadoc/latest/?org/eclipse/rdf4j/rio/ParseErrorListener.html provides these configuration options.
We’ll look into it, we can probably instruct the RIO parser to just get all triples. How VB should deal with this inconsistent content is then another matter…
Kind Regards,
Armando
To view this discussion on the web visit https://groups.google.com/d/msgid/vocbench-user/f7e0b27f-4a8d-4c42-9c10-3686acbcc3fd%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to vocbench-user+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vocbench-user.
To view this discussion on the web visit https://groups.google.com/d/msgid/vocbench-user/76783238-bcde-4be0-a4e8-71ef65b4e1df%40googlegroups.com.
Dear Roland and Armando,I add further background. In VocBench3, HTTP lookup of Linked Data resources is implemented using the component RDFLoader provided by RDF4J. VocBench3 uses this component with its default configuration, in a manner similar to the following:
[snip]
To view this discussion on the web visit https://groups.google.com/d/msgid/vocbench-user/76783238-bcde-4be0-a4e8-71ef65b4e1df%40googlegroups.com.
--Manuel Fiorelli