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