16 | | ParticipatorInActivity (x1, x2, x3, x4, x5) <-> |
17 | | Activity(x1) & |
18 | | ClassOfActivity (x2) & |
19 | | PossibleIndividual(x3) & |
20 | | RoleAndDomain (x4) & |
21 | | ClassOfIndividual(x5) & |
22 | | exists u (ParticipationTriple(u, x3, x1) & |
23 | | exists p ( |
24 | | ClassOfParticipationTemplate(p, x2) & |
25 | | SpecializationTemplate(p, x4) & |
26 | | SpecializationTemplate(p, x5) |
27 | | )) |
28 | | }}} |
29 | | |
30 | | NOTE: the roles x4 and x5 could be replaced by one role of type !ParticipatingRoleAndDomain, but that kind of class will probably not find its way into the Core RDL. And if it does, there still needs to be defined a !RoleAndDomain and a !ClassOfIndividual as its superclasses, which means the same amount of work (only not attached to the template at hand). |
31 | | |
32 | | ?Question? Shouldn't the axiom look like: |
38 | | !ClassOfIndividual(x5) & !ClassificationTemplate(x1,x2) & exists u (!ParticipationTriple(u, x3, x1) & exists p ( |
39 | | !ClassOfParticipationTemplate(p, x2) & |
40 | | !SpecializationTemplate(p, x4) & |
41 | | !SpecializationTemplate(p, x5) & |
42 | | !ClassificationTemplate(x3,p) & |
43 | | !ClassificationTemplate(u,p) |
44 | | )) |
45 | | I mean shouldn’t we specify explicitly classification relationships between the following pairs: x1 – x2; x3 – p; u – p? |
| 21 | !ClassOfIndividual(x5) & |
| 22 | !ClassificationTemplate(x1,x2) & |
| 23 | exists y1 (!ParticipationTriple(y1, x3, x1) & |
| 24 | exists y2 ( exists y3 ( |
| 25 | !ClassOfParticipationTriple(y3, y2, x2) & |
| 26 | !SpecializationTemplate(y2, x4) & |
| 27 | !SpecializationTemplate(y2, x5) & |
| 28 | !ClassificationTemplate(x3, y2) & |
| 29 | !ClassificationTemplate(y1, y3) ))) . |
| 30 | }}} |