[foaf-dev] Previous relations and predicate weightings

Bob Ferris zazi at elbklang.net
Tue Apr 5 16:47:57 CEST 2011

Hi Robert,

btw, if your are not restricted to the application of pure RDF and 
triplestores, then maybe a more general graph database system, alá Neo4j 
or AllegroGraph might be an option for you. For this matter, you can 
make use of frameworks alá Blueprint [3] that support an open property 
graph model [4], i.e., you can extend a property graph to a weighted 
property graph [5]. A mapping from RDF to the property graph model of 
Blueprints is described at [6].



[1] http://neo4j.org/
[2] http://www.franz.com/agraph/allegrograph/
[3] https://github.com/tinkerpop/blueprints/wiki
[4] https://github.com/tinkerpop/blueprints/wiki/Property-Graph-Model
[5] https://github.com/tinkerpop/blueprints/wiki/Graph-Morphisms
[6] https://github.com/tinkerpop/blueprints/wiki/Sail-Implementation

On 3/31/2011 9:16 PM, Bob Ferris wrote:
> Hi Robert,
> On 3/31/2011 1:10 PM, Rob Stewart wrote:
>> Hi Bob,
>> Many thanks for your reply. In short, the reason for the rely in
>> responding was that I attended, yesterday, "Understanding Provenance
>> and Linked Open Data" [1] in Edinburgh.
>> I pointed out the Cognitive Characteristics Ontology to the group,
> Thanks a lot for doing so!
>> which included to team working on the Open Provenance Model [2], which
>> I think encapsulates 10 existing Ontologies that provide partial
>> provenance, which includes Dublin Core. Edoara Pignotti, at Aberdeen,
>> immediately saw a purpose for CCO in one of his project, PolicyGrid
>> [3].
> Oh, that's interesting. Please let me know, if you'll need further
> guidance and information re. CCO and related ontologies.
>> The questions surrounding the seminar involved a discussion about
>> where provenance should sit in the Semantic Web. Should it be
>> standardized within the RDF framework?
> Yes, the basis should be provided by the RDF framework, i.e., (from my
> point of view) statement identifiers (see, e.g., [1]) and graph
> identifiers (which are already hot debated in the RDF WG).
>> Is this what referencing
>> NamedGraphs was for? Should it be up to the Ontologies (such as OPM)
>> to define annotations for provenance?
> Yes, the knowledge representations have to be powered by ontologies.
> AFAIK, OPM is a leading component re. the work of the Provenance XG [2], or?
> Albeit, from my point of view, provenance modellings and the domain of
> CCO, cognitive patterns, are orthogonal to each other, i.e., I can
> assign to each description that is modelled with the help of CCO further
> provenance expression, e.g., a creator of statements. I use CCO to
> especially model internal context. Provenance information is, from my
> point of view, generally external context.
>> Here's a question relating to CCO. In the example the web [4],
>> regarding the BBC radio sevices, weighted cco:interest is used. Could
>> this be applied to to any cco predicate?
> Do you mean a simple and a more detailed description? - If this is the
> case, yes. However, this is not a modelling feature of CCO. It is rather
> a knowledge representation design pattern that is applied in CCO. It is
> called property reification and its related definition can be modelled
> with the help of the Property Reification Vocabulary (PRV) [3].
>> I realize that cco:interest
>> is mapped to foaf:topic_interest,
> Yes, this step was necessary to position the interest relation in a
> hierarchy of cognitive pattern (cognitive characteristics).
> Consequentely, a domain shift from interests modelling to cognitive
> characterstics modelling was necessary. Albeit, this mapping is simply
> an equivalence property axiom.
>> but was wondering if similar maps
>> existed which would allow one to specify a weighting for the
>> foaf:knows (or equivalent) property, which I think is such a vague
>> term (even in the foaf defintion of "knows"), that such weightings are
>> entirely necessary.
> Generally, this implies a reification, since currently it is only
> possible to express binary relations with the help of RDF Model
> directly. For this reason, you have to create (or reutilize if
> appropriated) a (reification) class to have a basis to model a n-ary
> relations. Toby Inkster illustrated on SemanticOverflow such an example
> [4] for this concrete case, which I would like to quote here:
> # let's start with a simple statement (re. PRV a shortcut relation);
> thereby, :friend can be seen as an equivalence property to foaf:knows
> <#alice>  :friend<#bob>  .
> # this an instance of the (reification) class :HumanRelationship
> <#ab>
>       a :HumanRelationship ;
>       :participant<#alice>,<#bob>  ;
>       :relationshipType :friendship ;
>       :since "2008-04"^^xsd:gYearMonth .
> In this example he added a property to model the relationship type (here
> :friendship) and time instant that express the beginning of this
> relationship. Besides, you can also add a weighting (e.g. by utilizing
> the property wo:weight[5]).
> Moreover, you can now define a property reification definition to
> express that these two information resources belonging semantically
> together.
> ex:HumanRelationshipReification a prv:PropertyReification ;
>      prv:shortcut :friend ;
>      prv:shortcut_property :releationship ; # this could be
> :releationshipType, too
>      prv:reification_class :HumanReleationship ;
>      prv:subject_property :participant ;
>      prv:object_property :participant .
> So the example (the reification class of it) from above would then look
> like
> <#ab>
>       a :HumanRelationship ;
>       :participant<#alice>,<#bob>  ;
>       :relationshipType :friendship ;
>       :since "2008-04"^^xsd:gYearMonth ;
>       :relationship :friend .
>> I realize that cco is somewhat influenced by the
>> Weighted Interest Ontology,
> Yeah, the original Weighted Interest Vocabulary [6] is one interest
> ontology amongst others that I unioned in the Weighted Interests
> Vocabulary [7]. The latter one is the predecessor of CCO and was
> necessary since CCO serves a broader domain (cognitive patterns instead
> of interests modelling).
>> but would like to know if the Domain and
>> Range of this predicate  could be transfomed to be something far more
>> general like foaf:Agent or owl:Thing?
> Which predicate? From my point of view the domain that is covered by CCO
> is quite appropriated. Please note that the Weighting Ontology is a
> simple specialized ontology that is designed to express a quite general
> issue (in this case weightings). Hence, this ontology is orthogonal to
> CCO. On the other side, PRV is designed to enable a mechanism (property
> reification) that is re. a knowledge representation hierarchy one level
> below, i.e., on the vocabulary level.
> Please don't hesitate to ask further questions re. the application of
> CCO, WO and PRV.
> Cheers,
> Bob
> [1] http://lists.w3.org/Archives/Public/public-rdf-comment/2011Jan/0001.html
> [2] http://www.w3.org/2011/01/prov-wg-charter.html
> [3] http://purl.org/ontology/prv/core#
> [4]
> http://www.semanticoverflow.com/questions/2398/which-type-of-reification-do-you-use/2405#2405
> [5] http://smiy.sourceforge.net/wo/spec/weightingontology.html#weight
> [6] http://xmlns.notu.be/wi/
> [7] http://purl.org/ontology/wi/core#

More information about the foaf-dev mailing list