- From: Kingsley Idehen <kidehen@openlinksw.com>
- Date: Tue, 01 Dec 2009 18:30:12 -0500
- To: nathan@webr3.org
- CC: Linked Data community <public-lod@w3.org>, pedantic-web@googlegroups.com, SIOC-Dev <sioc-dev@googlegroups.com>
Nathan wrote: > Kingsley Idehen wrote: > >> Nathan wrote: >> >>> Hi All, >>> >>> To follow on a conversation I'm having with Kingsley at the minute, and >>> to make it public, I'm also cc'ing in public-lod, pedantic-web and the >>> sioc user list, as it is to do with all 3. Please do give feedback and >>> correct me where I'm wrong. Especially if you can inline comment where >>> something is wrong in my understanding. >>> >>> Kingsley Idehen wrote: >>> >>> >>>> Nathan wrote: >>>> >>>> >>>>> so do / should the Post, HTML Document and RDF Document all have >>>>> different Identifiers? >>>>> >>>>> >>>> If you want to make a statement (create a record) describing anything >>>> you need an Identifier for the subject of your description. If you want >>>> said description (a graph pictorial) to be fully explorable using HTTP >>>> (what Linked Data is about) then you shouldn't use the URL (Address of a >>>> Resource) as its Identifier. An HTTP GET against a URL has specific >>>> consequences distinct from an HTTP GET against a Generic HTTP scheme URI >>>> (a genuine Identifier/Name that Identifies an Object/Resource/Data >>>> Item/Entity). >>>> >>>> Rather than do the whole 303 and hash URI dance (counter productive >>>> since it dances around the issue of Data Identity), see if this document >>>> of Data Object Identity clarifies things for you re. Identifiers. >>>> >>>> Links: >>>> >>>> 1. >>>> http://www.cs.cmu.edu/afs/cs.cmu.edu/user/clamen/OODBMS/Manifesto/htManifesto/node4.html >>>> >>>> >>>> >>>> >>> okay.. here's the set-up; I have: >>> >>> * a "Post" which is a <sioc:Post> >>> * a HTML Document which contains (among other things) a human readable >>> representation of the <sioc:Post> at an URL >>> * a RDF Document which contains a graph pictorial of the <sioc:Post> >>> which is published at an URL >>> >>> to describe or reference the <sioc:Post> I have to give it a URI: >>> <http://example.lod/uri/post-123> >>> >>> to describe or reference the HTML Document I have to give it a URI: >>> <http://example.lod/uri/html-document-123> >>> in addition the HTML document has an URL >>> <http://example.lod/documents/html-document-123.html> >>> >>> to describe or reference the RDF Document I have to give it a URI: >>> <http://example.lod/uri/rdf-graph-123> >>> in addition the RDF document has an URL >>> <http://example.lod/documents/rdf-document-123.rdf> >>> >> Assumption: your Identifiers are slash terminated (i.e. Slash style of >> Generic HTTP URI). >> >>> now, I'm assuming the RDF Document will need to be self describing (also >>> contain a graph pictorial about itself, as well as the <sioc:Post> - >>> here's a very simplified version of the triples it'd contain. >>> >>> >> So the RDF data container (resource) is: >> >> <http://example.lod/documents/rdf-document-123.rdf>, right? >> >> >>> <http://example.lod/uri/rdf-graph-123> <rdf:type> <foaf:Document> ; >>> <dc:title> "SIOC Post profile for post-123"@en >>> <foaf:primaryTopic> <http://example.lod/uri/post-123> . >>> >>> <http://example.lod/uri/post-123> <rdf:type> <sioc:Post> . >>> >>> Q1: is <foaf:primaryTopic> correct here? >>> >>> >> Yep. >> >>> to say that the <sioc:Post> is contained by this graph we'd add the >>> triple: >>> <http://example.lod/uri/post-123> >>> <sioc:link> <http://example.lod/uri/rdf-graph-123> . >>> >>> >> Redundant, but not necessarily incorrect. You can make redundant >> statements :-) >> >>> then we need to say where the rdf graph can be found (provide it's URL): >>> <http://example.lod/uri/rdf-graph-123> >>> <??????> <http://example.lod/documents/rdf-document-123.rdf> . >>> >>> >> <http://example.lod/documents/rdf-document-123.rdf> is a data set >> container so you identify it properly as in: >> <http://example.lod/documents/rdf-document-123.rdf#this>, via a simple >> URL to Generic HTTP URI hack, with Linked Data de-referencing in mind >> re. exploration of the description of this Thing/Object/Entity/Data >> Item. Note: a little change-up as I've added a new Identifier but taken >> the cheap # route via fragment identifier. >> >> This also means your could have stated the following at the top: >> >> <http://example.lod/documents/rdf-document-123.rdf#this> <rdf:type> >> <foaf:Document> ; >> <foaf:primaryTopic> <http://example.lod/uri/post-123> . >> >> <http://example.lod/uri/post-123> <rdf:type> <sioc:Post>; >> <dc:title> "SIOC Post profile for post-123"@en. >> >> OR even the following, assuming you'd already assigned these URIs and >> discovered that <http://example.lod/uri/rdf-graph-123> is basically the >> same as <http://example.lod/documents/rdf-document-123.rdf#this> i.e., >> RDF data set containers (documents or information resources): >> >> <http://example.lod/documents/rdf-document-123.rdf#this> <rdf:type> >> <foaf:Document> ; >> <owl:sameAs> <http://example.lod/uri/rdf-graph-123>; >> <foaf:primaryTopic> <http://example.lod/uri/post-123> . >> >> <http://example.lod/uri/post-123> <rdf:type> <sioc:Post>; >> <dc:title> "SIOC Post profile for post-123"@en. >> >> >> >> >> >>> Q2: which ontology does one use for <??????> in the above triple? >>> >>> >> None. >> >>> then we need to say that the HTML document is a document, that contains >>> a human readable version of the <sioc:Post> (amongst other things) >>> >>> <http://example.lod/uri/html-document-123> >>> <rdf:type> <foaf:Document> ; >>> <foaf:primaryTopic> <http://example.lod/uri/post-123> . >>> >>> Q3: is the HTML Document a <sioc:Container>, which is a container of the >>> <sioc:Post>? >>> <http://example.lod/uri/html-document-123> >>> <rdf:type> <foaf:Document> , <sioc:Container> ; >>> <foaf:primaryTopic> <http://example.lod/uri/post-123> ; >>> <sioc:container_of> <http://example.lod/uri/post-123> . >>> >>> >> Yes, esp. as <sioc:Post> <rdfs:subClassOf> <sioc:Item> . >> >> Note same applies to the RDF data container as in: >> >> <http://example.lod/uri/rdf-graph-123> <rdf:type> <foaf:Document> , >> <sioc:Container> ; >> <foaf:primaryTopic> <http://example.lod/uri/post-123> ; >> <sioc:container_of> <http://example.lod/uri/post-123> . >> >> OR >> <http://example.lod/uri/rdf-graph-123> <rdf:type> <foaf:Document> , >> <sioc:Container> ; >> <owl:sameAs> >> <http://example.lod/documents/rdf-document-123.rdf#this>; >> <foaf:primaryTopic> <http://example.lod/uri/post-123> ; >> <sioc:container_of> <http://example.lod/uri/post-123> . >> >> >> >> >>> Q4: should we also say the description of the HTML Document is also >>> contained by this graph? >>> <http://example.lod/uri/post-123> >>> <sioc:link> <http://example.lod/uri/rdf-graph-123> . >>> >>> >> <http://example.lod/uri/rdf-graph-123> <sioc:link> >> <http://example.lod/uri/html-document-123>. >> or even: <http://example.lod/uri/rdf-graph-123> <foaf:Topic> >> <http://example.lod/uri/html-document-123>. >> >> >> >>> Q5: how do we specify the URL of the HTML Document? >>> <http://example.lod/uri/html-document-123> >>> <?????> <http://example.lod/documents/html-document-123.html> . >>> >>> >> Remember the earlier statement re. the RDF document (resource): >> >> >> <http://example.lod/documents/rdf-document-123.rdf#this> <rdf:type> >> <foaf:Document> ; >> <owl:sameAs> <http://example.lod/uri/rdf-graph-123>; >> <foaf:primaryTopic> <http://example.lod/uri/post-123> . >> >> >> Re. HTML resource description same thing applies re. association with >> the sioc:Post: >> >> <http://example.lod/documents/html-document-123.html#this> <rdf:type> >> <foaf:Document>; >> <foaf:primaryTopic> <http://example.lod/uri/post-123> . >> >> <http://example.lod/uri/post-123> <rdf:type> <sioc:Post>; >> <dc:title> "SIOC Post profile for post-123"@en. >> >> OR >> >> <http://example.lod/documents/html-document-123.html#this> <rdf:type> >> <foaf:Document> ; >> <owl:sameAs> <http://example.lod/uri/html-document-123>; >> <foaf:primaryTopic> <http://example.lod/uri/post-123> . >> >> >> <http://example.lod/uri/post-123> <rdf:type> <sioc:Post>; >> <dc:title> "SIOC Post profile for post-123"@en. >> >> >> >>> I think that's enough for now; all feedback welcome! >>> >>> regards >>> >>> nathan >>> >>> >>> >> Bar any typos or cut&paste snafus, I've hopefully answered your questions. >> Ultimately, the file (information resource, document, data container) >> has its own set of attributes e.g. format (dcterms:format), actual file >> name (not title of the content), creation date etc.. Distinct from the >> description of its content (hence the use of foaf:primaryTopic as >> conduit to content description graph). >> >> Link: >> >> 1. >> http://linkeddata.uriburner.com/about/html/http://news.cnet.com/8301-13577_3-10407056-36.html?tag=newsEditorsPicksArea.0 >> - example of Linked Data graph that describes an document (information >> resource) in a manner distinct from its content (see the data exposed by >> foaf:primaryTopic) . >> >> >> > > perfect, thanks kingsley :) > > only q (which i still don't follow) is that afaik I *need* to specify in > rdf where one can find the HTML document, no point describing something > people can't find... noted that in you're own rdf you use: > <resource> > <http://www.openlinksw.com/schema/attribution#isDescribedUsing> <url> > > i essentially need the equiv for anything; > > <http://example.lod/uri/html-document-123> > <canBeFound> <here/URL> . > or > <has_link> <here/URL> . > > the thing I'm describing can be found at web address, ie show the human > this version etc etc (if you follow) > > regards, > > nathan > > > Nathan, <http://www.openlinksw.com/schema/attribution#isDescribedUsing> takes URIs of ontologies/schemas/vocabs as values (i.e. object slot in triple statements we make). For a simple outbound link, <sioc:links_to> would be fine. Note though, my examples above are implying that URLs shouldn't be in triples, use #this to make them URIs and then for visual cues you can use an icon to capture the URL (for link out purposes which is where #this is cheap solution) while the URI enables Linked Data traversal. If you look at our pages we use "owl:sameAs" to similar effect (note link-out icons that typically matches the content type, thereby enabling users to exploit effect or URLs since apps know what to do with the data retrieved from URLs). -- Regards, Kingsley Idehen Weblog: http://www.openlinksw.com/blog/~kidehen President & CEO OpenLink Software Web: http://www.openlinksw.com
Received on Tuesday, 1 December 2009 23:30:53 UTC