[ 
https://issues.apache.org/jira/browse/JENA-1473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16346584#comment-16346584
 ] 

Dave Reynolds commented on JENA-1473:
-------------------------------------

[The mail list would be a better place for a discussion like this.]

There's very little reasoning sanctioned by SKOS itself. 

SKOS really only defines that skos:broader and skos:narrower are inverse of 
each other and that skos:broader/narrowerTransitive is a transitive 
super-property of skos:broader/narrower. Note that skos:broader/narrower 
themselves are not transitive.

The first of these, the inverses, seem largely pointless to infer if you have 
control of the data and queries, though can be useful if you lack that control. 
Materializing the transitive closure could be helpful in some cases but can 
generate a lot of triples.

So your first job is define what inference it is that you want. Then for 
implementation you could do this in several different ways:
 * do the inference through custom rules using the generic rule reasoner, as 
you mention
 * create the triples during some initial set up process (either in code or by 
running a suitable SPARQL Update query)
 * never create the triples at all but write your queries so that they follow 
the links you want anyway

The choice depends on what the life cycle is of your data (how frequently 
updated), the nature of the queries you want to make and the inferences you 
want them to see, and the scale and performance constraints you are working 
under.

If you are new to inference my advice would be to start out with the third 
option (do no inference, write your queries to include whatever additional 
links you want) until you are clear what inference you need and why.

Dave

> SKOS inference with Jena
> ------------------------
>
>                 Key: JENA-1473
>                 URL: https://issues.apache.org/jira/browse/JENA-1473
>             Project: Apache Jena
>          Issue Type: Question
>            Reporter: gillesh
>            Priority: Minor
>
> Hi,
> I am looking for some advices on how best infer triples related to SKOS.
> The reasoners provided by Jena are only related to OWL and RDFS.
> I currently don't need the whole SKOS vocabulary. For the moment, I mainly 
> need skos:broader, skos:narrower and skos:altLabel but I may need others in 
> the future.
> What would be a clean way to get the triples I want using Jena and SPARQL 
> queries ?
> Create rules and use the general purpose rule engine of Jena 
> ([documentation|https://jena.apache.org/documentation/inference/#rules])?
> I never did any manual inference for the moment so I am quite confused about 
> all this.
> Any help/resources pointing to the right direction would be greatly 
> appreciated.
> Thank you.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to