Re: RDF based messaging, negotiating, and dataset semantics

Hi Florian,

I assume that such a Jena port would be quite straightforward but still 
quite some work. But as I don't have any experience with Jena, I don't 
know how similar or different the underlying models are.

If there is broader interest in such a Jena-based nanopub library, I 
could look into it.

Regards,
Tobias


On 04.07.2017 10:10, Florian Kleedorfer wrote:
> Hi Tobias!
> 
> Thanks for your suggestion! I really like the concept - it solves the 
> problem of self-references that kept me from using the document hash as 
> part of the URI.
> 
> Since thinking about this, I gave up on strict immutability of 
> documents, but the idea may be worth revisiting, maybe using the memento 
> framework for managing versions.
> 
> I see your java implementation is using Sesame. Do you think it would be 
> much work to port it to jena?
> 
> Best
> 
> Florian
> 
> Am 03.07.2017 um 20:22 schrieb Tobias Kuhn:
>> Hi Florian,
>>
>> Though not complete solution to your problem, nanopublications 
>> (http://nanopub.org/wordpress/) with Trusty URIs 
>> (http://trustyuri.net/) could be the basis for the system you 
>> describe. They allow you to create immutable RDF snippets with 
>> metadata and to refer to these snippets in a verifiable manner.
>>
>> Regards,
>> Tobias
>>
>>
>> On 03.07.2017 16:17, Florian Kleedorfer wrote:
>>> Hi,
>>>
>>> Consider a communication channel between two agents who exchange 
>>> messages in the form of named RDF Graphs. The channel allows for 
>>> adding new messages but not for removing any data. The history of the 
>>> channel is unambiguous and always accessible to both agents. This 
>>> construct can be seen as an RDF dataset that both agents have 
>>> read/write but no replace or delete access to. Its use is that of a 
>>> negotiation device that allows for setting up terms of a contract.
>>>
>>> The way the system is built, the messages consist of any number of 
>>> 'content' RDF graphs (the message's payload), 'envlope' graphs with 
>>> address information (sender, recipient etc),  and graphs containing 
>>> cryptographic signatures.
>>>
>>> What's needed is an approach that allows these agents to make 
>>> assertions about earlier messages (their content graphs) in the 
>>> conversation dataset so as to modify the meaning of the dataset.
>>>
>>> The simplest example I can think of is that one agent might realize 
>>> they made a typing error in an earlier message and want to correct 
>>> the information by sending a message stating that the earlier graph 
>>> should be disregarded and another message containing the corrected 
>>> information.
>>>
>>> Similar situations occur when negotiating aspects of the agreement, 
>>> e.g. price.
>>>
>>> For both agents, at any point in the conversation, the meaning of the 
>>> conversation dataset must always be unambiguous and equal, and it 
>>> must be clear to both agents if they agree (both hold the same graphs 
>>> true) or if there is a conflict.
>>>
>>> I am contemplating defining a vocabulary that allows for making such 
>>> statements and defining dataset semantics that take these statements 
>>> into account, unless I find a suitable existing approach. I found the 
>>> SWP (Semantic Web Publishing) vocabulary, which is intended to do 
>>> something similar, but does not seem to have a negative property for 
>>> rejecting a graph, so I'm not convinced. Any Ideas, pointers, or 
>>> followup discussions are greatly appreciated!
>>>
>>> Thanks,
>>> Florian
>>>
>>>
>>>
>>>
> 

Received on Wednesday, 5 July 2017 05:06:55 UTC