W3C home > Mailing lists > Public > public-rdf-star@w3.org > May 2021

回复: rdf* to xml or rdf/xml

From: Joy lix <joylix4112@outlook.com>
Date: Tue, 25 May 2021 16:15:19 +0000
To: thomas lörtsch <tl@rat.io>
CC: "public-rdf-star@w3.org" <public-rdf-star@w3.org>
Message-ID: <OS0PR01MB5570FCE926C94E7914D130ECDB259@OS0PR01MB5570.jpnprd01.prod.outlook.com>
Hi, Thomas,  Thank you for your detailed reply.
I'm a beginner in semantic technology, so I don't know much about RDF.
But I've got a rough idea of what you mean, It can be expressed in a manner similar to the following:
x:( :John :meet :Sara ) :venue :HydePark ;
x  :date "2021-05-04" .            // here x is rdf:ID or named variable
Let's assume that this assertion of x is true, all I need to do now is record this data in a text file (RDF* is preferred),
then save it to a graph database.
  I used Neo4j before, but Neo4j does not support hyperGraph, So it can only save edge properties as numbers or characters, it cannot point an edge property to another node.
<< :John :meet :Sara >> :date "2021-05-04" .        // this can be imported into neo4j
<< :John :meet :Sara >> :venue :HydePark .          // this does’nt work
Maybe AnzoGraph or GraphDB will support hypergraphs.
So the thing that still puzzles me is, how do I store hypergraph data in a data format like XML (Because there is some other data that needs to be expressed and exchanged, it is more convenient to use XML or RDF /XML formats).
Thank you for your reply and suggestions.


发件人: thomas lörtsch<mailto:tl@rat.io>
发送时间: 2021年5月25日 23:00
收件人: Joy lix<mailto:joylix4112@outlook.com>
抄送: public-rdf-star@w3.org<mailto:public-rdf-star@w3.org>
主题: Re: rdf* to xml or rdf/xml

> On 25. May 2021, at 14:49, Joy lix <joylix4112@outlook.com> wrote:
> Hi, all, How can the following RDF* be expressed as XML or RDF/XML:
> @prefix :    <http://www.example.org/> .
> :HydePark :located  :London .
> << :John :meet :Sara >> :venue :HydePark ;
>    >
> Thanks.
> Joylix

The rdf:ID attribute [0] comes to mind as a very concise syntactic shortcut for reification. There are however a few subteties to keep in mind:

- RDF-star embedded triples represent the triple itself (as an abstract object that is the same wherever it occurs) whereas RDF standard reification and the rdf:ID attribute address a specific occurrence (although the RDF specification provides no way to point to a specific occurrence, the rdf:ID attribute could be interpreted as being pretty explicit about this)

- like with the standarad reification quadlet an RDF-star embedded triple in the pointy brackets syntax << … >> is not asserted which provides the opportunity to annotate statements without actually stating and thereby endorsing them. The rdf:ID attribute can only piggyback on asserted statements.

- as it is syntactic sugar to RDF standard reification the rdf:ID attribute operates in the interpreted space, like all of RDF. The proposed semantics of RDF-star however constrains embedded triples to their syntactic value - so co-denotations and entailments in asserted triples aren’t automatically reflected in their embedded counterparts.

- you can’t use the rdf:ID attribute on data that you don’t have write access to (if it isn’t provided already). That requires a more verbose solution like RDF standard reification or RDF-star embedded triples.

Hope this helps,

[0] https://www.w3.org/TR/rdf-syntax-grammar/#section-Syntax-reifying

Received on Tuesday, 25 May 2021 16:15:46 UTC

This archive was generated by hypermail 2.4.0 : Tuesday, 25 May 2021 16:15:48 UTC