- From: Irene Polikoff <irene@topquadrant.com>
- Date: Sun, 8 Feb 2015 22:29:28 -0500
- To: "kcoyle@kcoyle.net" <kcoyle@kcoyle.net>
- Cc: "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
Karen, The official name for magic property is property function. http://jena.apache.org/documentation/query/writing_propfuncs.html For example, you can create a predicate let's say example:grandparent and define it in the obvious way - as a parent of a parent. that is: ?x example:parent ?y. ?y example:parent ?z. means ?x example:grandparent ?z. Then, given the data: :Tom example:parent :John. :John example:parent :Liz You can query: SELECT ?grandparent WHERE {:Tom example:grandparent ?grandparent} and :Liz will be returned even though the triple {:Tom example:grandparent :Liz} doesn't exist. Irene Sent from my iPhone > On Feb 8, 2015, at 8:22 PM, Karen Coyle <kcoyle@kcoyle.net> wrote: > > Yes, we may be talking past each other, but most likely I'm not correctly reading your examples since I don't speak SPARQL/SPIN code and have no idea what a "magic property" is. (Examples illustrated with instance data could help.) > > In the glossary "shape" is defined as "a set of constraints over RDF graphs". > > So, with this simple example (and note that there are no classes, either explicit or implicit): > > http://lccn.loc.gov/75300479 > dct:title "Moby Dick" ; > dct:creator <http://id.loc.gov/authorities/names/n79006936> ; > dct:publisher "M. Kennerley" . > > Were you suggesting to add the relationship "hasShape" to this graph like this: > > http://lccn.loc.gov/75300479 > ldom:hasShape ex:bookShape ; > dct:title "Moby Dick" ; > dct:creator <http://id.loc.gov/authorities/names/n79006936> ; > dct:publisher "M. Kennerley" . > > If so, this still looks to me to be saying that my book has a relationship to a set of constraints. > > kc > > >> On 2/8/15 4:10 PM, Holger Knublauch wrote: >>> On 2/9/2015 10:04, Karen Coyle wrote: >>> Holger, even if it is a concept, and not a RWO, there still must be >>> only a single IRI for a single thing -- and for sure the subject is >>> not the same thing as the graph. >> >> Sorry then we must have talked about different things. Surely, the IRI >> of a book should not represent the graph that the book is stored in. >> Could you rephrase what you were asking about (maybe with a concrete >> example)? >> >> Thanks >> Holger >> >> >>> >>> kc >>> >>>> On 2/8/15 2:36 PM, Holger Knublauch wrote: >>>>> On 2/9/2015 4:36, Karen Coyle wrote: >>>>> I'm trying to understand how the subject of a triple can be either of >>>>> type shape or can have a shape. >>>>> >>>>> Let me make this more concrete. My subject is a book, which is a RWO, >>>> >>>> For a computer, your subject is not a RWO but a data structure >>>> represented by triples. Humans may interpret this as a real-world book, >>>> but this is IMHO largely philosophical. >>>> >>>>> and it has an IRI. I'm going to make various statements about this RWO >>>>> (it has a title , it has an author, etc.). It makes little sense to me >>>>> to say that this RWO "has a shape/graph." The graph has a shape, but >>>>> using the same IRI to represent the RWO and the graph violates a basic >>>>> rule that each IRI references one and only one "thing." >>>>> >>>>> It seems to me that the key difference between shapes and classes is >>>>> exactly this: a shape is information about a graph; a class is >>>>> information about the RWO. If the class of the RWO is coincident with >>>>> the graph that you wish to validate, then presumably the class can be >>>>> used as a target for validation. However, that is making a use of the >>>>> class which is not within the definition of class in RDF. I would find >>>>> it inconsistent with RDF for us to encourage people to assign classes >>>>> to RWO's that represent the graph itself. >>>> >>>> Could you point me at documents that proof that all classes in RDF must >>>> be real-world objects? What about, for example, abstract data structures >>>> such as rdf:Lists - rdf:List is also a class. Also please consider that >>>> the term "class" is not exclusive to RDF Schema. It was already used by >>>> object-oriented systems, for example. I am afraid the distinction >>>> between real-world objects and their representation drifts into >>>> theoretical realms that nobody outside of the RDF world seems to care >>>> about (and rightfully so). I repeat my statement that there is zero >>>> practical difference between the following options: >>>> >>>> ex:Class >>>> a owl:Class ; >>>> rdfs:subClassOf [ >>>> a owl:Restriction ; >>>> owl:onProperty ex:property ; >>>> owl:minCardinality 1 ; >>>> ] . >>>> >>>> ex:Class >>>> a owl:Class ; >>>> ldom:property [ >>>> a ldom:PropertyConstraint ; >>>> ldom:predicate ex:property ; >>>> ldom:minCount 1 ; >>>> ] . >>>> >>>> Holger > > -- > Karen Coyle > kcoyle@kcoyle.net http://kcoyle.net > m: 1-510-435-8234 > skype: kcoylenet/+1-510-984-3600 >
Received on Monday, 9 February 2015 03:30:05 UTC