Hi, Ian and Andy

thank you for your answer and your attention.

Excuse me  for this long post.

I am working on your suggestions. Let me explain the whole problem and
motivation.

As matter of fact I am sure that the terminus node must be a resource. The
test ontology I made is composed by concepts linked by a simple
relationship. In the ontology these relationships are the conventional
"subclass of", and depends on, so I generated a shortest path from ontTools
in order to define a "learning path", or better a chain of dependent
concepts. So the terminus node is a concept, as the target concept to be
learned.

If I understood correctly, as the "filter ANY" is used in the pathfinding
algorithm, the kind of relationship between concepts is irrelevant, isn't
it? So all things will behave as if we were walking in a simple directed
graph. I suppose this assumption is correct, although we cannot say that a
RDF graph (and OWL?) is just like a simple graph. For example Hayes says the
best model for RDF would be a bipartite graph (it is in the attached file).
(Is this also true for OWL graphs? I think it is.) However as I am working
with a very simple ontology, may be these issues are not relevant.

So I would state the problem as:
(a) given a domain ontology how could a sequence of concepts be extracted to
be used as a learning path?
I tried to answer this question looking for a shortest path from the
ontology as a suggestion of this "learning path".

(b) Taken as granted that this path can be extracted (I think it is
possible, I extracted one), for each concept in the path, I must find some
learning resources from a RDF metadata stored in the triple store (as I
wrote a test metadata document is in a SDB database to be used with Joseki
as a SPARQL end point). Things behave as a mapping of concepts in the path
to a (finite and small) set of resources described in a RDF matadata
document. A SPARQL query is to be done on this metadata document in SDB
database to find the physical location of resources (for instance, in a file
system).

Since this system is supposed to be web based, I designed a MVC web
application so that users, for instance, in a university, could access
resources as learning material matching his/her learning strategy.

Well, excuse me for the long post. This is the whole history.

2011/7/21 Ian Dickinson <[email protected]>

> On 21/07/11 13:01, I wrote:
>
>> OntTools.Path path = findShortestPath( ... );
>> List<Resource> resources = new ArrayList<Resource>();
>> for (Statement s: path) {
>> resources.add( s.getResource() );
>> }
>>
>
> Actually, given that the terminus node can be a literal, it would be better
> as:
>
> OntTools.Path path = findShortestPath( ... );
> List<RDFNode> nodes = new ArrayList<RDFNode>();
> for (Statement s: path) {
>    nodes.add( s.getObject() );
> }
>
> Unless you know from your data that the path will end on a resource.
>
> Ian
>



-- 
Herli Menezes
*Per Astra ad aspera.*

Reply via email to