W3C home > Mailing lists > Public > public-lod@w3.org > March 2020

Re: blank predicates

From: Patrick J Hayes <phayes@ihmc.us>
Date: Sun, 29 Mar 2020 11:52:08 -0500
Message-ID: <36526A00-827A-4827-82D1-D6CE6F2B2AD8@ihmc.us>
CC: Linked Data community <public-lod@w3.org>
To: Melvin Carvalho <melvincarvalho@gmail.com>
Well, no, even crap URIs don’t change, which is why you gotta be careful. It depends on what you want to be able to do. If you want to be able to do (RDFS or OWL-style) reasoning with the ‘blank’ relations and still add information later about the relation, you should either find a way to use generalized syntax or, probably more practical, use a recommended form for skolem identifiers, cf https://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/#section-skolemization <https://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/#section-skolemization>.  If on the other hand you just want to keep this data on hold until a real relation comes along, then using a single crap URI (like the lio:IsRelatedTo that ImageSnippets uses) as a placeholder should work fine. But you won’t change it, just replace it with a real one :-)

Reification does not cut it, by the way, since as pointed out in this thread, it doesn't have the same meaning. 

Good luck

Pat


> On Mar 29, 2020, at 11:07 AM, Melvin Carvalho <melvincarvalho@gmail.com> wrote:
> 
> 
> 
> On Sun, 29 Mar 2020 at 08:43, Patrick J Hayes <phayes@ihmc.us <mailto:phayes@ihmc.us>> wrote:
> Generalized RDF allows blank nodes in relation position, so does N3 and also ISO Common Logic (all with the same semantics). The various suggestions to use a ’crap’ URI such as lio:relation can be seen as skolemizations of these bnodes in predicate position. There are independent reasons for using generalized RDF syntax in any case, since reasoning is incomplete without it. And it is pretty trivial to implement: it amounts to not performing some syntax checks that RDF requires. 
> 
> Thanks Pat, so we could perhaps say 'crap URIs DO change' :P
> 
> So I like turtle and N3 alot.  I'd like to use this feature of N3, but am probably going to serialize in turtle in the short term
> 
> This is exactly the information I wanted
> 
> If I have to use a 'crap' URI in turtle, I would want it to say "this is a place holder for the equivalent N3 construct".  Could we make that in the N3 community group perhaps?
> 
> I suppose nothing like that exists right now.  Would it maybe be a good idea to collect the different suggestions and see which has mind share at the moment?  Perhaps a straw poll.
> 
> Regarding reification, that's a nice idea.  I worry about (perhaps perceived) added compleity in serialization and querying.  
> 
> Seems a paradoxical problem.  There are too many ways to name the nameless thing! :)
>  
> 
> Pat Hayes
> 
> > On Mar 28, 2020, at 3:52 AM, Melvin Carvalho <melvincarvalho@gmail.com <mailto:melvincarvalho@gmail.com>> wrote:
> > 
> > I am working on a information mapping system (aka mind maps)
> > 
> > And I want to have two nodes related to each other
> > 
> > #Alice R #Bob
> > 
> > In the general sense, the type of relationship (predicate) R is not really known at the time of creation.  My software currently does not allow the labeling of edges is the reason (but hopefully in future it will)
> > 
> > I need a way to relate Alice to Bob but I dont have a URI for a predicate.
> > 
> > Is there something that can operate as a "blank predicate"?  
> > 
> > Or some existing relations that simply says that two entities or linked / related, without yet knowing how they are related?
> 


Received on Sunday, 29 March 2020 16:52:26 UTC

This archive was generated by hypermail 2.4.0 : Sunday, 29 March 2020 16:52:27 UTC