| 1 | === Base Templates !CardinalityMin, !CardinalityMax, !CardinalityMinMax === |
| 2 | |
| 3 | [[br]]!CardinalityMin, !CardinalityMax, and !CardinalityMinMax are templates for expressing the |
| 4 | [[br]]values of cardinalities. |
| 5 | [[br]] |
| 6 | [[br]]!CardinalityMinMax(a, b, c) means that a is a cardinality and b and c are integers, and that |
| 7 | [[br]]b is the minimal, c the maximal, constraint of a. !CardinalityMin and !CardinalityMax are |
| 8 | [[br]]similar, and apply to just the minimal, resp. the maximal constraint. |
| 9 | [[br]]!CardinalityMin |
| 10 | [[br]] |
| 11 | [[br]]Roles: |
| 12 | [[br]]1 hasCardinality Cardinality |
| 13 | [[br]]2 valMinimumCardinality INTEGER |
| 14 | [[br]] |
| 15 | [[br]]!CardinalityMax |
| 16 | [[br]] |
| 17 | [[br]]Roles: |
| 18 | [[br]]1 hasCardinality Cardinality |
| 19 | [[br]]2 valMaximumCardinality INTEGER |
| 20 | [[br]] |
| 21 | [[br]]!CardinalityMinMax |
| 22 | [[br]] |
| 23 | [[br]]Roles: |
| 24 | [[br]]1 hasCardinality Cardinality |
| 25 | [[br]]2 valMinimumCardinality INTEGER |
| 26 | [[br]]3 valMaximumCardinality INTEGER |
| 27 | |
| 28 | Axiom: |
| 29 | {{{ |
| 30 | CardinalityMin(x1, x2) <-> |
| 31 | Cardinality(x1) & |
| 32 | INTEGER(x2) & |
| 33 | hasMinimumCardinality(x1, x2) . |
| 34 | }}} |
| 35 | |
| 36 | Axiom: |
| 37 | {{{ |
| 38 | CardinalityMax(x1, x2) <-> |
| 39 | Cardinality(x1) & |
| 40 | INTEGER(x2) & |
| 41 | hasMaximumCardinality(x1, x2) . |
| 42 | }}} |
| 43 | |
| 44 | Axiom: |
| 45 | {{{ |
| 46 | CardinalityMinMax(x1, x2, x3) <-> |
| 47 | Cardinality(x1) & |
| 48 | INTEGER(x2) & |
| 49 | INTEGER(x3) & |
| 50 | CardinalityMin(x1, x2) & |
| 51 | CardinalityMax(x1, x3) . |
| 52 | }}} |
| 53 | |
| 54 | NOTE In ISO 15926, cardinalities are first-class objects. In ISO 15926-2, it is stated that an absence |
| 55 | of specified minimum or maximum values for a cardinality should be interpreted as a absence |
| 56 | of constraints (clause 5.2.13.1). The nature of the representation of ISO 15926-2 in first-order logic, with an open world assumption, mandates that both lower and upper bounds be given explicitly. |
| 57 | Where no minimal constraint applies, the value 0 should be assigned. Where no maximum constraint applies, the reference item * Cardinality should be assigned (see 8.2.1). |