I have an ontology that has:
- Class Agent and Class Action
 - A list of data property (that inherit of a dataproperty restrictionProperties) has domain UNION of (Agent and Action) and Range primitive (Example hasMoney, hasTime)
 
I want to classify all individuals that ag.hasTime >= ac.hasTime and ag.hasMoney >= ac.hasMoney and so on, where ag is an Agent and ac is an Action instances.
I want to make a remark that these conditions have several things:
- the comparison is always between the same property ag.hasTime >= ac.hasTime
 - All dataProperty that inherit of restrictionProperty will have the same treatment.
 - All agents that satisfy this condition will belong to, for example, Class AgentRestrictions
 
I don't want to use SWRL because I read that is not a standard and that I can do it always with SPARQL.
I guess with SPARQL can be do it, but I'm not sure how. But I prefer a solution that is clicking in protege. Or making specification with axioms.