> 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)) .
> }

Seems like you want to copy all ?class values that are are part of any  
owl:oneOf enumeration, independent from the value of ?list. In this  
case you indeed would have to walk through all owl:oneOf. The fact  
that you are type casting (xsd:string) all values makes direct pattern  
matching difficult and FILTER is IMHO the only solution.

>
> 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.

Could you show us the rules in SWRL so that we can better understand  
what you are doing?

Thanks
Holger


--~--~---------~--~----~------------~-------~--~----~
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