Mark,
I believe SPINMap may provide a good foundation and the custom bits for your
ontology can be added using SPIN functions. So in other words, if you can use
the built-in features of SPINMap for 90% of your mapping needs then you should
try to express the remaining bits using extension functions. You can model
those functions after the examples from the SPINMapL namespace - everything in
SPINMap is written in SPIN itself, i.e. no magic tricks or hard-coded stuff.
For complex scenarios where the design assumptions of SPINMap are not a good
match, you are free to add conventional SPARQL CONSTRUCT rules. From what I see
in your scenario, SPINMap plus a couple of extension functions may be a good
choice. But of course the devil may be in the detail...
HTH a bit - we can hopefully answer more in depth if you have specific
questions.
Holger
On Jun 29, 2012, at 3:50 PM, Mark Colquhoun wrote:
> Hi,
>
> I'm not sure if Spin Map is best tool for the job but I was hoping to create
> a mapping where a new resource is created by looking for a particular type of
> grandparent along a transitive property and once the right type was found,
> select a property on it an assign it to a property on the target.
>
> The SPARQL for this would look something like:
>
> SELECT ?value
> WHERE
> {
> ?target prod:belongsTo ?ancestor .
> ?ancestor a prod:site .
> ?ancestor prod:name ?value .
> }
>
> where the ?target variable and the prod:site type would ideally be arguments
> to the mapping function and prod:belongsTo is a transitive property. From
> looking at the help, I would have to create my own spinmap function to
> achieve this?
>
> Regards,
> Mark.
>
> -- You received this message because you are subscribed to the Google
> Group "TopBraid Suite Users", the topics of which include Enterprise
> Vocabulary Network (EVN), TopBraid Composer, TopBraid Live,
> TopBraid Ensemble, SPARQLMotion, SPARQL Web Pages and SPIN.
> To post to this group, send email to
> [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/topbraid-users?hl=en
-- You received this message because you are subscribed to the Google
Group "TopBraid Suite Users", the topics of which include Enterprise Vocabulary
Network (EVN), TopBraid Composer, TopBraid Live,
TopBraid Ensemble, SPARQLMotion, SPARQL Web Pages and SPIN.
To post to this group, send email to
[email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/topbraid-users?hl=en