- From: Adrian Walker <adriandwalker@gmail.com>
- Date: Mon, 30 Mar 2020 07:26:23 -0700
- To: john.nj.davies@bt.com, Pat Hayes <phayes@ihmc.us>, hugh@glasers.org, Linked Data community <public-lod@w3.org>, Melvin Carvalho <melvincarvalho@gmail.com>
- Message-ID: <CABbsESdr7qK5=rA2DpOL2w-0bV2ts00hdfSc8+HCz6yDx9U1FA@mail.gmail.com>
+1. Similarly in www.executable-english.com you can write this-relationship is a specialization of this-higher-relationship ================================================================= sibling family marriage family family the class of all relationships some-relationship1 is a specialization of some-relationship2 that-relationship2 is a specialization of some-relationship3 ------------------------------------------------------------ that-relationship1 is a specialization of that-relationship3 some-person is related through some-relationship to some-other-person that-relationship is a specialization of some-higher-relationship --------------------------------------------------------------------------- that-person is related through that-higher-relationship to that-other-person this-person is related through this-relationship to this-other-person ===================================================================== Fred marriage Jane Fred sibling John Cheers, --Adrian --- https://www.executable-english.com/demo_agents/DataModelling1.agent Adrian Walker Executable English LLC San Jose, CA, USA (USA) 860 830 2085 (California time) https://www.executable-english.com On Mon, Mar 30, 2020 at 1:20 AM <john.nj.davies@bt.com> wrote: > Sure - but why would you not instead define a relation called relatedTo of > which brotherOf etc are all sub-relations? > > -----Original Message----- > From: Patrick J Hayes <phayes@ihmc.us> > Sent: 29 March 2020 23:24 > To: Hugh Glaser <hugh@glasers.org> > Cc: Linked Data community <public-lod@w3.org>; Melvin Carvalho < > melvincarvalho@gmail.com> > Subject: Re: blank predicates > > A simple example. Artificial but it might make the point. Suppose data is > about familial relationships between people, and about their employment and > about their income. There is a class of FamilyRelations which includes > things like brotherOf, sisterOf, motherOf, uncleOf, etc.. Suppose it is > discovered (perhaps by DNA analysis) that Sue and Bill are related, but we > do not know exactly how. We can (in RDF or OWL-Full and I think even in > OWL2-DL using punning, but check that before relying on it) write this > using two triples > > :Sue _:rel :Bill . > _:rel rdf:type :FamilyRelations . > > or, of course, a Skolemization of this. > > Pat > > > On Mar 29, 2020, at 5:10 PM, Hugh Glaser <hugh@glasers.org> wrote: > > > > Maybe someone can help - I still don't get it. > > > > What will break in what you want to do if you just give the predicate a > sensible name? > > > > What is the knowledge the triple > > #A R #B > > represents? > > If you can really use a blank node (or skolemsied version, which I > always much prefer), then I don't see how the triple carries any knowledge. > > (Unless the skolemised URI is expected to appear somewhere else, which > > it is implied it will not.) Blank or skolemised sort of says that #A and > #B are in the same universe/domain of discourse (universal in RDF?) - but > you can't infer that #A and #C don't have the same relation, which they > presumably will, in fact? > > So if I "find" that triple, it can't be telling me anything new at all, > it seems. > > > > On the other hand, if you actually accept that there is some real > knowledge going on, about the closeness of connection in the mind map, or > whatever, then the predicate actually does carry knowledge, however little. > > And so there seems no harm in giving it a meaningful name, which will be > useful to use for the same other triples that have the same meaning. > > In fact, as always with identifiers, that should help. > > > > As far as replacement is concerned, that gets even weirder for me. > > I thought RDF was monotonic - don't you just add triples that have the > further knowledge, when you get that knowledge? > > Yes, if you want, you can remove the old triples from some document, but > that should not be a requirement, I would expect. > > > > As I said, basically, what will break in what you want to do if you just > bite the bullet and give the predicate a sensible name? > > > > Sorry if this is silly - I'm no theoretician, but the engineering seems > very straightforward to me. > > > > Best > > Hugh > > > >> On 29 Mar 2020, at 17:52, Patrick J Hayes <phayes@ihmc.us> wrote: > >> > >> 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-skole > >> mization. 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> 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> 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? > >>> > >> > > > > -- > > Hugh > > 023 8061 5652 > > > > >
Received on Monday, 30 March 2020 14:27:52 UTC