TheProjecter / simal

Automatically exported from code.google.com/p/simal
0 stars 0 forks source link

Rethink use of simal:Project and simal:Person in data structures #289

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Currently, the doap:Projects and foaf:Persons are bound together by adding 
simal:Projects and simal:Persons [0].

By using a reasoner (eg. built-in Jena [1] or Pellet [2]) in combination 
with  predicates like owl:sameAs we may be able to get rid of this extra 
layer of complexity. 

Using a reasoner better matches the Semantic Web paradigm and adds more 
flexibility. As the code for dealing with the extra simal:Project and 
simal:Person complexity has led to a few discovered bugs now is a good time 
to rethink these data structures. 

[0] http://code.google.com/p/simal/wiki/Schema
[1] http://jena.sourceforge.net/inference/
[2] http://clarkparsia.com/pellet/

Original issue reported on code.google.com by sander.v...@oucs.ox.ac.uk on 25 May 2010 at 3:58

GoogleCodeExporter commented 9 years ago
I agree this is a problem. The Simal:Project and Person approach was a solution 
to
the issues described in:

ISSUE 201

Note that this issue also links to ISSUE 190 and ISSUE 193 which would be 
impacted by
the proposed change.

Original comment by ross.gardler on 25 May 2010 at 7:51

GoogleCodeExporter commented 9 years ago
Incresing priority. we're starting to do real work with Simal data, it's 
important that we settle the format that data is being held in.

Original comment by ross.gardler on 3 Aug 2010 at 10:37

GoogleCodeExporter commented 9 years ago

Original comment by sander.v...@oucs.ox.ac.uk on 31 Aug 2010 at 4:50

GoogleCodeExporter commented 9 years ago
One option is to replace the simal:Project with a doap:Project, which is still 
referencing the original sources via rdfs:seeAlso but keeping the 'parent' 
project as the one where all information edited through the user interface is 
kept. 
If we enforce strict URIs for the 'parent' project and the different sources, 
we can determine the sources by their uris. 
So instead of querying all simal:Project s we can do something similar to: 

SELECT DISTINCT ?project 
WHERE {
  ?project a doap:Project
  FILTER regex(str(?project),"^http://registry.oss-watch.ac.uk")
}

Original comment by sander.v...@oucs.ox.ac.uk on 31 Aug 2010 at 5:14