- From: Pierre-Antoine Champin <pierre-antoine@w3.org>
- Date: Fri, 17 Jun 2022 14:05:27 +0200
- To: Jos De Roo <josderoo@gmail.com>
- Cc: public-n3-dev@w3.org, Henry Story <henry.story@bblfish.net>
- Message-ID: <ad712877-d18d-f378-915e-4d2c3afc8ca9@w3.org>
oh... right, '=' is a shortcut for owl:sameAs! I totally forgot about that. From Henry's email, I thought that [= ID ... ] was a special kind of brackets, that allowed you to nest a description, but having ID as the subject of this description, rather than a fresh blank node. This is a nice feature of JSON-LD (see example below) which I wish was available in the Turtle family of syntaxes. { "@context": "https://schema.org/, "@id": "#pa", "@type": "Person", "affiliation": { "@id": "#w3", "@type": "Organization", "founder": { "@id": "#timbl", "@type": "Person } } } pa On 16/06/2022 23:13, Jos De Roo wrote: > Well, too much implicit assumptions for such a challenging predicate > as owl:sameAs. > We rather use an explicit rule like > |@prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix log: > <http://www.w3.org/2000/10/swap/log#>. @prefix e: > <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>. { ?S ?P > ?O. ?O e:label ?L. ?O = ?A. ?O ?B ?C. ?B log:notEqualTo owl:sameAs. } > => { ?S ?P ?A. ?A ?B ?C. }.| > For an example see > https://github.com/josd/eye/issues/42#issuecomment-1158126514 > > -- https://josd.github.io > > > On Thu, Jun 16, 2022 at 9:19 PM Pierre-Antoine Champin > <pierre-antoine@w3.org> wrote: > > This is indeed a nice feature (that I wish Turtle had, by the way...). > > Any reason why it is not supported by EYE? > > On 16 June 2022 20:23:11 CEST, Henry Story > <henry.story@bblfish.net> wrote: > > Someone asked me to add their WebID to my profile which I wrote in N3 years ago. > But I could no longer compile it to other formats like rdfxml and Ntriples with > cwm as that was written for Python 2 and Python 3 is the default on MacBook Pro M1s. > (See my bug report [1] ) > > I tried eye but came accross this problem I described in > https://github.com/josd/eye/issues/42 > > In short I used the feature of cwm to use > > :a :rel [ = ns:j; > foaf:name ”Jos” ] . > > as a short-cut for > > :a :rel ns:j . > ns:j foaf:name ”Jos” . > > This makes it nicer to write long foaf files by hand like > > :me foaf:knows [ = <https://www.w3.org/People/Berners-Lee/card#i>; > a foaf:Person; > foaf:name "Tim Berners Lee"; > ], > [ = <https://my-profile.eu/people/jwinandy/card#me>; > a foaf:Person; > foaf:name "Jonathan Winandy"; > ], > [ = <https://my-profile.eu/people/tim/card#me>; > a foaf:Person; > foaf:name "Tim Boudreau" ], > [ = <http://www.turnguard.com/turnguard>; > a foaf:Person; > foaf:name "jakobitsch jürgen"; > ] … > > Because it avoids me having to link to a URL and not be able > to see who that refers to without having to search through the whole > file for additional metadata. > > I could not find that feature described in the current n3 spec > https://w3c.github.io/N3/spec/ > > But I may just not have read it correctly. > In any case I could not get the expected result with eye, but there > I may also not be using it correctly. > > > Henry Story > > [1]https://github.com/linkeddata/swap/issues/3 > > https://co-operating.systems > WhatsApp, Signal, Tel: +33 6 38 32 69 84 > Twitter: @bblfish > > > -- Sent from /e/ Mail. >
Attachments
- application/pgp-keys attachment: OpenPGP public key
Received on Friday, 17 June 2022 12:05:33 UTC