Hi,


After experimenting with SPIN, I have two unrelated questions that came out
of my investigation.



1)      User-defined SPIN functions



Is there a reason that there is a limit of 3 arguments for the user-defined
functions?  Although I have come up with a work around, ideally we would
like a function that takes an unlimited number of arguments.  Is this
possible?



2)      Mapping enumerations



I am working with SPIN in order to map one ontology to another (Standard
Edition version 3.1.1).  In the first ontology I need to map an enumeration
(owl:oneOf) to a property in the second ontology.



If I use this query:



*CONSTRUCT*{

   ?entity ont2:property ?class.

}

*WHERE* {

    ?entity ont1:property ?class

}



Then TopBraid Composer does not correctly identify the enumeration and
creates a new element.



And if I use this query:



*CONSTRUCT*{

   ?entity ont2:property ?member.

}

*WHERE* {

    ?entity ont1:property ?class

    ?item owl:oneOf ?list .

    ?list <http://jena.hpl.hp.com/ARQ/list#member> ?member .

    *FILTER* (xsd:string(?class) = xsd:string(?member)) .

}



I get the proper result, however, it slows down my execution time
significantly because it must traverse through all the lists of enumerations
to filter out the correct one.  When running a similar rule in SWRL it is
not necessary to iterate through the owl:oneOf  list in order to match it
correctly.



Do you have any suggestions on how to optimize the query? Or to go about
this mapping in a different way?



Thanks for your help,

Suzanne

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TopBraid Composer Users" group.
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-composer-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to