Hugh Glaser wrote:
I think we are probably on much the same page :-)
(Most, if not all, of my questions were actually rhetorical - sorry that was 
not clear.)

It was clear, I just like talking things out :)

So you are thinking of instances as well - and of course, as instances are URIs 
like properties.
I of course make no assumption that skos:prefLabel is more "x:preferred" than 
skos:label - there are some words about it in the SKOS description, but the semantics of 
the word preferred are not defined, and might differ from the semantics for x:preferred.

exactly - it would be nice to define and expose those semantics in a generalized (and webized / machine readable) way.

I am quite happy to have either skos:prefLabel x:preferred skos:label or vice 
versa, although one way round is a bit strange to the human reader.
But I think I can use your x:preferred in the way I describe to select 
particular triples.
The x:preferred approach would handle this at the ontology level, as explained 
above - it would capture that when you have multiple values for :a and a single 
value for :b, and that :b x:preferred :a, then the value for :b is the 
preferred/canonical value out of those specified for :a.

I thought this described it, but now I am not certain I am quite clear:
For your example:
 :foo rdfs:label "Michael"@en, "M. Jackson"@en, "Michael Jackson"@en ;
      skos:prefLabel "Michael Jackson"@en ;

With
 rdfs:label x:preferred skos:prefLabel .

I would get that :a is skos:prefLabel and :b is rdfs:label by substitution in 
your paragraph, but :a does not have multiple values.
So maybe you mean?:
skos:prefLabel x:preferred rdfs:label
In which case the multiple :a is rdfs:label and the single :b is skos:prefLabel

Anyway, which ever way round it is, is it that the intended meaning of

other way around.

rdfs:label x:preferred skos:prefLabel
 is that the (single) object of the skos:prefLabel triple ( "Michael 
Jackson"@en) is in some sense preferred?
Or is the :foo skos:prefLabel  "Michael Jackson"@en triple in some sense 
preferred?
Or probably something else?

that out of the set of rdfs:label values ("Michael"@en, "M. Jackson"@en, "Michael Jackson"@en), "Michael Jackson"@en is the preferred one.

Additionally, as you may have said earlier,

  { :a x:preferred :b } entails { :b rdfs:subPropertyOf :a }

Nathan

(Not rhetorical :-) )
Best
Hugh

On 17 Jul 2012, at 16:38, Nathan <[email protected]>
 wrote:

Hugh Glaser wrote:
Hi,
I think Nathan is talking about properties of properties, not instances.
I am, but not in the way you think (afaict).

As a real example, in my Detail RBK/dotAC rendering I have (at least) the 
following predicates to look at for names:
(<http://xmlns.com/foaf/0.1/name> <http://www.aktors.org/ontology/portal#full-name> 
<http://www.w3.org/2000/01/rdf-schema#label> <http://www.rkbexplorer.com/ontologies/jisc#name> 
<http://www.w3.org/2004/02/skos/core#prefLabel> <http://www.w3.org/2004/02/skos/core#altLabel> 
<http://rdf.freebase.com/ns/type.object.name>)
I can either use these to gather all the names I can, or use it as an ordered 
list to get the one I prefer (if any) - it depends on the display I want to 
give.
Or you can use subPropertyOf entailment (rdfs7), when you apply it you'll find 
you have an rdfs:label triple for each of the properties you listed, other than 
portal#full-name.

So I interpreted Nathan as asking if there was anything that allowed me to say 
what the preferred order of predicate choice might be.
This is where the confusion was, if you consider the following graph:

 :foo rdfs:label "Michael"@en, "M. Jackson"@en, "Michael Jackson"@en ;
      skos:prefLabel "Michael Jackson"@en ;

As humans we know what "prefLabel" means, but a machine doesn't.

Another example:

 :foo owl:sameAs </things#foo>, <http://example.org/things/bits#foo> ;
      con:preferredURI :foo .

As humans we again know to treat :foo as the canonical/preferred URI for this 
thing (just as TimBL has in his foaf). Again, no machine understanding.

Thus I thought if we're going to have a proliferation of preferredXXXX style 
properties, it would be good to have a single machine property that explained 
this.

So for the two examples above you could have in the ontologies:

 rdfs:label x:preferred skos:prefLabel .
 owl:sameAs x:preferred con:preferredURI .

Then machines could understand what we do too.

Do I prefer <http://www.w3.org/2000/01/rdf-schema#label> over 
<http://www.w3.org/2004/02/skos/core#altLabel> for example (for my particular 
application)?
Your dealing with application display preferences here rather than specifying 
in descriptions of things that it is known by several values (names,uris) and 
this here one is (preferred, canonical) by the resource (or resource owner).

How do I represent that is what I am doing to agents asking (in RDF/OWL of 
course)?
And how would a data publisher tell my consumer agent what they think I should 
prefer?
The x:preferred approach would handle this at the ontology level, as explained 
above - it would capture that when you have multiple values for :a and a single 
value for :b, and that :b x:preferred :a, then the value for :b is the 
preferred/canonical value out of those specified for :a.

In my case, following Nathan's email, I would have a chain of 
<http://www.aktors.org/ontology/portal#full-name> x:preferred 
<http://xmlns.com/foaf/0.1/name> .
<http://www.w3.org/2000/01/rdf-schema#label> x:preferred  
<http://www.aktors.org/ontology/portal#full-name> .
etc.
Which would be the (meta)metadata about the service I am providing.
I think it may be more a case of capturing this using owl/rif/n3 - supposing 
you have the data:

 :foo rdfs:label "Michael"@en, "M. Jackson"@en, "Michael Jackson"@en ;
      foaf:name "Michael Jackson"@en ;

and in an ontology:

 rdfs:label x:preferred skos:prefLabel .

and you have a personal preference that says if a foaf:name and rdfs:label are 
present for something, then the foaf:name is the preferred value, then you can 
capture this with a rule like:

{ ?t rdfs:label ?l ; foaf:name ?n } => { ?t skos:prefLabel ?n }

Using several rules of this kind you could capture all your preferences, and 
your application would universally understand which to display - but over all 
properties with multiple values where one is preferred, as :prop1 x:preferred 
prop2 . would encode this.

Make sense?

Best, Nathan

However, in some sense rdfs:subPropertyOf might imply this.
Were I loading the data into a store, rather than just doing pure Linked Data 
URI resolution, I would be able to assert the rdfs:subPropertyOf relation, 
which might be seen to suggest that the most specific property (is that the 
right terminology?) is a good one to choose.
I then have the challenge of doing a query that finds that out, of course.
I am guessing that from Nathan's meaning of  x:preferred, it would seem that
x:preferred rdfs:subPropertyOf rdfs:subPropertyOf .
By the way, if I only want one preferred property, I can look one of the 
properties up in a sameAs store such as sameAs.org to find out what the 
suggested canon is (and what the other predicates might be.)
Best
Hugh
On 16 Jul 2012, at 22:28, Tim Berners-Lee <[email protected]> wrote:
Interesting to go meta on this with x:preferred .

What would be the meaning of "preferred" -- "preferred by the object itself or
the owner of the object itself"?

In other words, I wouldn't use it to store in a local store my preferred names
for people, that would be an abuse of the property.

Tim

On 2012-07 -15, at 19:42, Nathan wrote:

Essentially what I'm looking for is something like

foaf:nick x:preferred foaf:preferredNick .
rdfs:label x:preferred foaf:preferredLabel .
owl:sameAs x:preferred x:canonical .

It's nice to have con:preferredURI and skos:prefLabel, but what I'm really 
looking for is a way to let machines know that x value is preferred.

Anybody know if such a property exists yet?

Cheers,

Nathan






Reply via email to