Enum: Cardinality
vocabulary for describing cardinality and applicability of slots or fields.
Most elements in the dictionary have been mapped to a vocabulary called "carvoc", this has yet to be released.
Other properties
Aliases: | multiplicity | |
applicability |
Permissible Values
Text | Description | Meaning | Other Information |
---|---|---|---|
mandatory | At least one value MUST be provided | carvoc:Mandatory | {'annotations': {'maps_to': Annotation(tag='maps_to', value='required: true', extensions={}, annotations={}), 'min': Annotation(tag='min', value='1', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='optional', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MUST', extensions={}, annotations={}), 'aliases': Annotation(tag='aliases', value='required', extensions={}, annotations={}), 'mixs_notation': Annotation(tag='mixs_notation', value='M', extensions={}, annotations={}), 'code': Annotation(tag='code', value='M', extensions={}, annotations={})}} |
optional | A value MAY be provided | carvoc:Optional | {'annotations': {'maps_to': Annotation(tag='maps_to', value='required: false', extensions={}, annotations={}), 'min': Annotation(tag='min', value='0', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='mandatory', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MAY', extensions={}, annotations={}), 'aliases': Annotation(tag='aliases', value='permissible', extensions={}, annotations={}), 'mixs_notation': Annotation(tag='mixs_notation', value='X', extensions={}, annotations={}), 'code': Annotation(tag='code', value='O', extensions={}, annotations={})}} |
recommended | A value SHOULD be provided | carvoc:Recommended | {'annotations': {'maps_to': Annotation(tag='maps_to', value='{required: false, recommended: true}', extensions={}, annotations={}), 'min': Annotation(tag='min', value='0', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='not_recommended', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='SHOULD', extensions={}, annotations={}), 'aliases': Annotation(tag='aliases', value='strongly suggested', extensions={}, annotations={}), 'code': Annotation(tag='code', value='R', extensions={}, annotations={})}} |
not_recommended | Values are permitted, but SHOULD NOT be filled in | carvoc:NotRecommended | {'annotations': {'maps_to': Annotation(tag='maps_to', value='{required: false, recommended: false, recommended_against: true}', extensions={}, annotations={}), 'min': Annotation(tag='min', value='0', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='recommended', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='SHOULD NOT', extensions={}, annotations={}), 'aliases': Annotation(tag='aliases', value='recommended against', extensions={}, annotations={}), 'code': Annotation(tag='code', value='-R', extensions={}, annotations={})}} |
applicable | union of optional and mandatory | carvoc:Applicable | {'annotations': {'min': Annotation(tag='min', value='0', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='not_applicable', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MAY', extensions={}, annotations={}), 'code': Annotation(tag='code', value='O/M', extensions={}, annotations={})}, 'comments': ['use of this descriptor is generally not recommendes as it is usually possible to commit']} |
not_applicable | A value MUST NOT be provided | carvoc:NotApplicable | {'annotations': {'max': Annotation(tag='max', value='0', extensions={}, annotations={}), 'min': Annotation(tag='min', value='0', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='applicable', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MUST NOT', extensions={}, annotations={}), 'mixs_notation': Annotation(tag='mixs_notation', value='-', extensions={}, annotations={}), 'code': Annotation(tag='code', value='-', extensions={}, annotations={})}, 'comments': ['a use case for this is for a field that has been deprecated', 'a use case for this is for annotating a field that is not applicable in a particular context']} |
zero_or_one | not required, single-valued | carvoc:ZeroToOne | {'mixins': ['optional', 'single-valued'], 'annotations': {'maps_to': Annotation(tag='maps_to', value='{required: false, multivalued: false}', extensions={}, annotations={}), 'min': Annotation(tag='min', value='0', extensions={}, annotations={}), 'max': Annotation(tag='max', value='1', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MUST, MAY', extensions={}, annotations={}), 'uml': Annotation(tag='uml', value='0..1', extensions={}, annotations={}), 'code': Annotation(tag='code', value='0..1', extensions={}, annotations={})}} |
exactly_one | required, single-valued | carvoc:ExactlyOne | {'mixins': ['mandatory', 'single-valued'], 'annotations': {'maps_to': Annotation(tag='maps_to', value='{required: true, multivalued: false}', extensions={}, annotations={}), 'min': Annotation(tag='min', value='1', extensions={}, annotations={}), 'max': Annotation(tag='max', value='1', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MUST', extensions={}, annotations={}), 'uml': Annotation(tag='uml', value='1..1', extensions={}, annotations={}), 'code': Annotation(tag='code', value='1..1', extensions={}, annotations={})}} |
zero_to_many | not required, multi-valued | carvoc:ZeroToMany | {'mixins': ['optional', 'multi-valued'], 'annotations': {'maps_to': Annotation(tag='maps_to', value='{required: false, multivalued: true}', extensions={}, annotations={}), 'min': Annotation(tag='min', value='0', extensions={}, annotations={}), 'max': Annotation(tag='max', value='', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MAY', extensions={}, annotations={}), 'uml': Annotation(tag='uml', value='0..', extensions={}, annotations={}), 'code': Annotation(tag='code', value='0..*', extensions={}, annotations={})}} |
one_to_many | required, multi-valued | carvoc:OneToMany | {'mixins': ['mandatory', 'multi-valued'], 'annotations': {'maps_to': Annotation(tag='maps_to', value='{required: true, multivalued: true}', extensions={}, annotations={}), 'min': Annotation(tag='min', value='1', extensions={}, annotations={}), 'max': Annotation(tag='max', value='', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MUST, MAY', extensions={}, annotations={}), 'uml': Annotation(tag='uml', value='1..', extensions={}, annotations={}), 'code': Annotation(tag='code', value='1..*', extensions={}, annotations={})}} |
single_valued | not multi-valued | carvoc:SingleValued | {'annotations': {'maps_to': Annotation(tag='maps_to', value='multivalued: false', extensions={}, annotations={}), 'max': Annotation(tag='max', value='1', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='multi-valued', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MAY', extensions={}, annotations={}), 'mixs_notation': Annotation(tag='mixs_notation', value='1', extensions={}, annotations={}), 'code': Annotation(tag='code', value='SV', extensions={}, annotations={})}} |
multi_valued | multi-valued | carvoc:MultiValued | {'annotations': {'maps_to': Annotation(tag='maps_to', value='multivalued: true', extensions={}, annotations={}), 'max': Annotation(tag='max', value='*', extensions={}, annotations={}), 'opposite': Annotation(tag='opposite', value='single-valued', extensions={}, annotations={}), 'interpretation': Annotation(tag='interpretation', value='MAY', extensions={}, annotations={}), 'mixs_notation': Annotation(tag='mixs_notation', value='m', extensions={}, annotations={}), 'code': Annotation(tag='code', value='MV', extensions={}, annotations={})}} |
conditional | A qualifier on cardinalities that indicates the interpretation is context-dependent | carvoc:Conditional | {'annotations': {'maps_to': Annotation(tag='maps_to', value='conditional: true', extensions={}, annotations={}), 'mixs_notation': Annotation(tag='mixs_notation', value='E', extensions={}, annotations={}), 'code': Annotation(tag='code', value='E+', extensions={}, annotations={})}} |
unconditional | A qualifier on cardinalities that indicates the interpretation is context-independent | carvoc:Unconditional | {'annotations': {'maps_to': Annotation(tag='maps_to', value='conditional: false', extensions={}, annotations={}), 'code': Annotation(tag='code', value='E-', extensions={}, annotations={})}} |
conditional_mandatory | carvoc:ConditionalMandatory | {'mixins': ['mandatory', 'conditional'], 'annotations': {'maps_to': Annotation(tag='maps_to', value='{required: true, conditional: true}', extensions={}, annotations={}), 'mixs_notation': Annotation(tag='mixs_notation', value='C', extensions={}, annotations={}), 'code': Annotation(tag='code', value='EM', extensions={}, annotations={})}} |