[
https://issues.apache.org/jira/browse/JENA-2099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17338132#comment-17338132
]
Chris Mungall commented on JENA-2099:
-------------------------------------
Apologies for the version confusion, homebrew fail on my part. I am now using
4.0.0
I think this issue can be closed in favor of
https://issues.apache.org/jira/browse/JENA-1903
I'm a little confused by your answer. From the thread, one of the responses
says that in fact RDF-star is syntactic sugar for reification. The current spec
seems uncommitted on this however.
An interesting thread though. I have the same use case as the original poster,
and it's annoying that the syntax doesn't accommodate directly naming the
statement. But that doesn't have any bearing on my current use case.
My use case is that I want to be able to convert between my rdfstar
representations to a concrete form that can be used by non-rdfstar aware
toolchains. I have many rdfstar use cases, all of which revolve around property
graphs being a superior modeling framework for our modeling needs.
> Converting rdfstar to plain rdf formats do not work
> ---------------------------------------------------
>
> Key: JENA-2099
> URL: https://issues.apache.org/jira/browse/JENA-2099
> Project: Apache Jena
> Issue Type: Question
> Components: RIOT
> Affects Versions: Jena 3.17.0
> Reporter: Chris Mungall
> Priority: Major
>
> Given a file ex1.ttl
>
> {code:java}
> @prefix : <http://www.example.org/> .
> :employee38 :familyName "Smith" .
> << :employee38 :jobTitle "Assistant Designer" >> :accordingTo :employee22 .
> {code}
>
> my expectation is that I should be able to use riot to serialize as plain
> rdf, ttl, ntriples, rdf-xml, and json-ld, with reification used (I cannot
> find a normative statement in the spec to support this but I hold it's a
> reasonably user expectation given what has been written about rdfstar by the
> authors of the spec).
> This doesn't work however:
>
> {code:java}
> $ riot --out=jsonld ex1.ttl
> org.apache.jena.riot.RiotException: Subject node is not a URI or a blank node
> at
> org.apache.jena.riot.writer.JenaRDF2JSONLD.parse(JenaRDF2JSONLD.java:64)
> at
> org.apache.jena.riot.writer.JsonLDWriter.toJsonLDJavaAPI(JsonLDWriter.java:200)
> at
> org.apache.jena.riot.writer.JsonLDWriter.serialize(JsonLDWriter.java:174)
> at
> org.apache.jena.riot.writer.JsonLDWriter.write(JsonLDWriter.java:135)
> at
> org.apache.jena.riot.writer.JsonLDWriter.write(JsonLDWriter.java:141)
> at org.apache.jena.riot.RDFWriter.write$(RDFWriter.java:208)
> at org.apache.jena.riot.RDFWriter.output(RDFWriter.java:166)
> at org.apache.jena.riot.RDFWriter.output(RDFWriter.java:113)
> at
> org.apache.jena.riot.RDFWriterBuilder.output(RDFWriterBuilder.java:204)
> at
> riotcmd.CmdLangParse.lambda$createAccumulateSink$0(CmdLangParse.java:348)
> at riotcmd.CmdLangParse.exec$(CmdLangParse.java:172)
> at riotcmd.CmdLangParse.exec(CmdLangParse.java:130)
> at jena.cmd.CmdMain.mainMethod(CmdMain.java:92)
> at jena.cmd.CmdMain.mainRun(CmdMain.java:58)
> at jena.cmd.CmdMain.mainRun(CmdMain.java:45)
> at riotcmd.riot.main(riot.java:29)
> {code}
>
> similarly for export to rdfxml
> When I convert to turtle, the syntax remains turtlestar:
>
> {code:java}
> $ riot --out=ttl ex1.ttl
> @prefix : <http://www.example.org/> .
> :employee38 :familyName "Smith" .
> << :employee38 :jobTitle "Assistant Designer" >>
> :accordingTo :employee22 .{code}
>
> I'm not totally sure if this is what should happen. I'm not totally sure of
> what the different file format options are, and if there is a distinct
> "turtlestar" and "ntriplesstar" (as an aside, it would be useful to have more
> command line help on permissible values for input and output formats in riot).
> My expectation is that parsing should be lenient as should accept *star
> syntaxes, but allow fine-grained control in output as to whether plain rdf
> syntax or *star syntaxes are used (with expansion to reification happening in
> the latter), but I may be using riot incorrectly.
> FWIW, explicitly using reification doesn't syntactically convert to rdfstar,
> e.g. with ex1r.ttl:
>
> {code:java}
> @prefix : <http://www.example.org/> .
> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
> :employee38 :jobTitle "Assistant Designer" .
> [a rdf:Statement ;
> rdf:subject :employee38 ;
> rdf:predicate :jobTitle ;
> rdf:object "Assistant Designer" ;
> :accordingTo :employee22
> ] .
> {code}
>
> I can't seem to convert this into rdfstar syntax using riot
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)