[
https://issues.apache.org/jira/browse/JENA-2190?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17437209#comment-17437209
]
Andy Seaborne edited comment on JENA-2190 at 11/2/21, 9:18 AM:
---------------------------------------------------------------
Thank for the report and details.
See JENA-2187. This is fixed in the development codebase. I checked your test
case now works.
In Jena 4.2.0, while the exception get printed, it is only a warning and the
JSON-LD 1.1 does get parsed correctly into RDF. Some of the implied prefixes
don't get placed in the model.
was (Author: andy.seaborne):
Thank for the report and details.
See JENA-2187. This is fixed in the development codebase. I checked your test
case now works.
> JSON-LD 1.1 Parsing Error: Cannot cast org.glassfish.json.JsonStringImpl to
> jakarta.json.JsonObject
> ---------------------------------------------------------------------------------------------------
>
> Key: JENA-2190
> URL: https://issues.apache.org/jira/browse/JENA-2190
> Project: Apache Jena
> Issue Type: Bug
> Components: JSON-LD
> Affects Versions: Jena 4.2.0
> Reporter: David Beaudet
> Priority: Major
> Fix For: Jena 4.3.0
>
> Attachments: linkedArtSampleData.jsonld11, pom.xml
>
>
> When attempting to load a dataset formatted in JSON-LD 1.1 with the following
> code and data, I'm encountering the following exception with version 4.2.0
>
> Data corresponding to contents of file path in Java snippet:
> {quote}see attachment
> {quote}
> and contents of the @context can be loaded from its URL.
>
> Java Snippet:
> {quote}InputStream in = Files.newInputStream(path);
> {quote}
> {quote}OntModel blankModel = ModelFactory.createOntologyModel(
> OntModelSpec.RDFS_MEM );
> {quote}
> {quote}RDFParser.source(in) .forceLang(Lang.JSONLD11)
> .parse(emptyModel.getGraph());
> {quote}
>
> Exception:
> {quote}{{2021-11-01 15:17:17 WARN LangJSONLD11:58 - Unexpected problem while
> extracting prefixes: Cannot cast org.glassfish.json.JsonStringImpl to
> jakarta.json.JsonObject2021-11-01 15:17:17 WARN LangJSONLD11:58 - Unexpected
> problem while extracting prefixes: Cannot cast
> org.glassfish.json.JsonStringImpl to
> jakarta.json.JsonObjectjava.lang.ClassCastException: Cannot cast
> org.glassfish.json.JsonStringImpl to jakarta.json.JsonObject at
> java.base/java.lang.Class.cast(Class.java:3818) at
> jakarta.json.JsonValue.asJsonObject(JsonValue.java:117) at
> org.apache.jena.riot.lang.LangJSONLD11.extractPrefixes(LangJSONLD11.java:97)
> at org.apache.jena.riot.lang.LangJSONLD11.read(LangJSONLD11.java:75) at
> org.apache.jena.riot.lang.LangJSONLD11.read(LangJSONLD11.java:55) at
> org.apache.jena.riot.RDFParser.read(RDFParser.java:358) at
> org.apache.jena.riot.RDFParser.parseNotUri(RDFParser.java:348) at
> org.apache.jena.riot.RDFParser.parse(RDFParser.java:295) at
> org.apache.jena.riot.RDFParser.parse(RDFParser.java:241) at
> org.apache.jena.riot.RDFParserBuilder.parse(RDFParserBuilder.java:562) at
> test.TestJena.main(TestJena.java:175)}}
> {quote}
>
> If I specify JSONLD rather than JSONLD11 to the RDFParser, a different
> exception is thrown which I assume is in response to the @version 1.1
> specified in the @context URI
> {quote}{{Exception in thread "main" org.apache.jena.riot.RiotException:
> invalid term definition: 1.1Exception in thread "main"
> org.apache.jena.riot.RiotException: invalid term definition: 1.1 at
> org.apache.jena.riot.system.ErrorHandlerFactory$ErrorHandlerStd.error(ErrorHandlerFactory.java:147)
> at org.apache.jena.riot.lang.JsonLDReader.read$(JsonLDReader.java:191) at
> org.apache.jena.riot.lang.JsonLDReader.readWithJsonLDCtxOptions(JsonLDReader.java:144)
> at org.apache.jena.riot.lang.JsonLDReader.read(JsonLDReader.java:118) at
> org.apache.jena.riot.RDFParser.read(RDFParser.java:358) at
> org.apache.jena.riot.RDFParser.parseNotUri(RDFParser.java:348) at
> org.apache.jena.riot.RDFParser.parse(RDFParser.java:295) at
> org.apache.jena.riot.RDFParser.parse(RDFParser.java:241) at
> org.apache.jena.riot.RDFParserBuilder.parse(RDFParserBuilder.java:562) at
> test.TestJena.main(TestJena.java:175)}}{quote}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)