[foaf-dev] document-based property qualification - adding detail to RDF

Bob Ferris zazi at elbklang.net
Thu Jan 20 12:42:33 CET 2011

Hi Dan,

I would still prefer variant A, because I think that it is not good to 
redefine the sense of a property in a given context. Although, in 
general I need the context to interpret a situation (as it can be 
described in a semantic graph whose terms can be dereferencable to 
retrieve background knowledge ('channel assumptions')).
However, I wouldn't define for every specific cognitive pattern a new 
sub class of ex:Document. This would end up in the same hierarchy when 
sub propertying e.g., cco:cognitive_characteristic [1], which might be a 
more appropriate super class for i.e. cco:expertise and cco:interest 
(cf. also the finding in this paper [4]).
The 'document enclosure' shouldn't really matter, since we are dealing 
with a knowledge representation structure of triples. One should be able 
to describe "everywhere" something about his/her cognitive patterns.
Furthermore, we need to be able to define external and internal context 
[cf. [5]) and differentiate between both context types.
My current point of view is the following:

We might use the forth element of quadruples explicitly for statement 
identifiers whose descriptions are external contexts, if we consider the 
abstract concept of reification as an approach for refining semantically 
related information e.g., expanding binary relations to n-ary relations, 
that can be used interchangeably (see also [6]).

Generally, n-ary relations are a very natural concept in our daily 
language, so we need to be able to deal with it in an appropriated way.
The Property Reification Vocabulary [7] might be a good option to deal 
with reification in general on the vocabulary level for modelling 
internal contexts.
I think, the set of specialised cognitive characteristic properties of 
the Cognitive Characteristics Ontology is a good choice, because it is 
made up on results of cognitive science research. On the hand, they are 
quite general. On the other hand, one should find (hopefully) always an 
appropriated one for describing a specific cognitive pattern.

More comments inline.



[2] http://purl.org/ontology/cco/cognitivecharacteristics.html#interest
[3] http://purl.org/ontology/cco/cognitivecharacteristics.html#expertise
[4] http://bit.ly/9WiJ5g
[7] http://smiy.sourceforge.net/prv/spec/propertyreification.html

Am 20.01.2011 09:21, schrieb Dan Brickley:

> That is a direction that sets us on the path towards having a family
> tree of related properties, linking vague but widely used ones with
> more precise and specific niche usage. This is probably good, but it
> can also be quite fragmenting, particularly as many RDF query systems
> don't yet 'understand' sub-property hierarchies by default.

Well, I think this is matter of time, where should think forward ;)

> I am trying to think through an alternative deployment pattern.
> Instead of endlessly qualifying our descriptive terms, could it make
> sense to create names for the document contexts in which these
> general-purpose terms are used? Might that sometimes be more natural
> and flexible?

Generally, it is not the document it is the enclosure. For a knowledge 
representation structure like the triples naturally the graph. So it 
might end up in specific sub classes of the graph concept e.g., 
rdfg:Graph. However, I don't think that we should define every context 
in a new graph.

> So, imagine I have my main FOAF self-description (we call these
> 'personal profile documents', and FOAF even has a class named
> foaf:PersonalProfileDocument). That might mention a few of my
> interests using foaf:interest. But it doesn't always make sense to put
> everything about me in a single document. So alongside that we could
> have books-i-own.rdf page which describes a collection of books that I
> own. It would have some markup about the books, maybe some kind of
> ownership link to me, and for each of them it might assert a
> 'foaf:interest' link between me and the book. And we might also have a
> 'things-that-pages-I've-bookmarked-or-shared-are-about.rdf (or .html /
> rdfa) document. In that, we could have a huge list of URLs for
> documents I've put on delicious or LIKEd on Facebook, plus information
> from entity-extractors that list the things associated with those
> pages. Now a machine can't really guess how interested I am in those
> things, but we could still use foaf:interest to link me to them. Or a
> third page, things-I-am-actively-studying (.rdf / .html), which lists
> some current learning interests. Any of those scenarios could be made
> more precise: not books that I own, but those I'm reading. Not links I
> shared, but links that I "liked".

Reminds me somehow to use this property: 

Furthermore, I want to describe everything in a decentralized way. So 
some interests here, some expertises and interests there etc.

> This alternate approach comes with costs. It forces consuming apps to
> either miss out on the subtle detail (and just load up the relevant
> RDF into a single flat set of triples). Or else to operate at a new
> level of abstraction where we deal more with quads and hypertext and
> notions of authority.

When I query for a specialised cognitive characteristics property, I 
should get the same result.

> That could be (but need not) made machine-understandable; or it could
> just be expressed in natural language. This gives us two patterns:

We are on the level of machine-processing-level, or? ;)

More information about the foaf-dev mailing list