interlis2py 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ili2py/__init__.py +3 -0
- ili2py/_version.py +24 -0
- ili2py/cli.py +229 -0
- ili2py/interfaces/__init__.py +0 -0
- ili2py/interfaces/interlis/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_23/__init__.py +36 -0
- ili2py/interfaces/interlis/interlis_23/generator.py +146 -0
- ili2py/interfaces/interlis/interlis_24/__init__.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/README.md +21 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/__init__.py +815 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/actual_argument_type.py +630 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/actual_argument_type_formal_argument.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/actual_argument_type_object_classes.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/allowed_in_basket.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/allowed_in_basket_type.py +33 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/allowed_in_basket_type_class_in_basket.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/allowed_in_basket_type_of_data_unit.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/any_oidtype.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/any_oidtype_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/aref_of.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/aref_of_type.py +9 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/aref_restriction.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/aref_restriction_type.py +32 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/aref_restriction_type_aref.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/aref_restriction_type_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/argument.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/argument_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/argument_type_1.py +62 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/argument_type_function.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/argument_type_type_1.py +9 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc_origin.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc_origin_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc_target.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc_target_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc_type_assoc_acc.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_acc_type_class.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_role.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/assoc_role_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attr_or_param.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attr_or_param_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attr_or_param_type_1.py +88 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attr_or_param_type_attr_parent.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attr_or_param_type_derivates.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attr_or_param_type_param_parent.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attr_or_param_type_type_1.py +9 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attribute_const.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attribute_const_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attribute_const_type_attribute.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attribute_ref_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attribute_ref_type_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/attribute_ref_type_type_of.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/axis_spec.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/axis_spec_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/axis_spec_type_axis.py +27 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/axis_spec_type_coord_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_class.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_class_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_class_type_base_class.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_class_type_crt.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_type_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_view_def.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_view_def_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_view_ref.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/base_view_ref_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/blackbox_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/blackbox_type_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/boolean_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/boolean_type_type.py +10 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_attr.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_attr_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_const.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_const_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_const_type_class.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_constraint.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_constraint_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_mod.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_param.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_param_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_ref.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_ref_type.py +23 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_ref_type_ref.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_ref_type_type.py +10 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_related_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_related_type_type.py +10 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_restriction.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_restriction_type.py +31 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_restriction_type_class_restriction.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_restriction_type_crtr.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_type.py +74 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_type_existence_constraint.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_type_multiplicity.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_type_oid.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/class_type_view.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/concrete_for_generic.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/concrete_for_generic_type.py +33 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/concrete_for_generic_type_concrete_domain.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/concrete_for_generic_type_generic_def.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/cond_sign_param_assignment.py +13 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/cond_sign_param_assignment_type.py +31 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/cond_sign_param_assignment_type_assignments.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/cond_sign_param_assignment_type_where.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/constant.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/constant_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/constraint.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/constraint_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/constraint_type_to_class.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/constraint_type_to_domain.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/context.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/context_type.py +10 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/coord_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/coord_type_type.py +38 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/data_unit.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/data_unit_type.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/data_unit_type_oid.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/dependency.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/dependency_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/dependency_type_dependent.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/dependency_type_using.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/derived_assoc.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/derived_assoc_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/doc_text.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/doc_text_translation.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/doc_text_translation_type.py +17 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/doc_text_type.py +25 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/domain_constraint.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/domain_constraint_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/domain_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/domain_type_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/domain_type_type_context.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/drawing_rule.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/drawing_rule_type.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/drawing_rule_type_class.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/drawing_rule_type_graphic.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/drawing_rule_type_rule.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_assignment_type_max_enum_value.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_assignment_type_min_enum_value.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_mapping_type_enum_value.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_node.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_node_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_node_type_enum_type.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_node_type_parent_node.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_tree_value_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_tree_value_type_type.py +20 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_tree_value_type_type_et.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/enum_type_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/existence_constraint.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/existence_constraint_type.py +20 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/existence_constraint_type_attr.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/existence_def.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/existence_def_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/explicit_assoc_acc.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/explicit_assoc_acc_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/explicit_assoc_access.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/explicit_assoc_access_type.py +44 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/explicit_assoc_access_type_assoc_acc_of.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/explicit_assoc_access_type_origin_role.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/explicit_assoc_access_type_target_role.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/expression.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/expression_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/extendable_me.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/extendable_metype.py +49 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/extendable_metype_super.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/factor.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/factor_type.py +10 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/formal_argument.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/formal_argument_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/formatted_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/formatted_type_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/formatted_type_type_struct.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/function_call_type_function.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/function_def.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/function_def_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/function_def_type_result_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/generic_def.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/generic_def_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic_base.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic_base_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic_rule.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic_rule_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic_type_base.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/graphic_type_where.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/ili1_format.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/ili1_format_type.py +96 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/ili1_transfer_element.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/ili1_transfer_element_type.py +35 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/ili1_transfer_element_type_ili1_ref_attr.py +27 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/ili1_transfer_element_type_ili1_transfer_class.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/import_mod.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/import_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/import_type_imported_p.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/import_type_importing_p.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/inheritance.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/inheritance_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_attr.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_attr_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_coord.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_coord_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_form.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_form_structure.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_form_structure_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_form_type.py +20 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_form_type_structure.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_type_type.py +53 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_type_type_coord_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/line_type_type_lastructure.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/lines_form.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/lines_form_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/lines_form_type_line_form.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/lines_form_type_line_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/local_ftype.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/local_ftype_type.py +9 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/local_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/local_type_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_attribute.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_attribute_type.py +46 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_attribute_type_meta_element.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_attributes.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_attributes_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_basket_def.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_basket_def_type.py +31 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_basket_def_type_meta_data_topic.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_basket_members.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_basket_members_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_data_unit.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_data_unit_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_element.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_element_type.py +48 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_element_type_documentation.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_element_type_element_in_package.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_object_class.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_object_class_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_object_def.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_object_def_type.py +40 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_object_def_type_class.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/meta_object_def_type_meta_basket_def.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/metranslation.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/metranslation_type.py +41 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/metranslation_type_of.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/metranslation_type_translated_doc.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_data.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_data_basket_oid.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_data_basket_oidtype.py +9 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_data_type.py +455 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_translation.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_translation_type.py +33 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_type.py +101 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/model_type_ili1_format.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/multi_value.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/multi_value_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/multi_value_type_multiplicity.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/multiplicity.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/multiplicity_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/num_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/num_type_type.py +60 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/num_type_type_ref_sys.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/num_type_type_unit.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/num_unit.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/num_unit_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/nums_ref_sys.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/nums_ref_sys_type.py +18 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/object_oid.py +12 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/object_oidtype.py +9 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/object_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/object_type_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/package.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/package_elements.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/package_elements_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/package_type.py +10 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/path_el.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/path_el_type.py +44 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/path_el_type_ref.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/path_or_insp_factor.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/path_or_insp_factor_type.py +32 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/path_or_insp_factor_type_inspection.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/path_or_insp_factor_type_path_els.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/reference_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/reference_type_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/renamed_base_view.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/renamed_base_view_type.py +39 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/renamed_base_view_type_base_view.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/renamed_base_view_type_view.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/result_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/result_type_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/role.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/role_type.py +64 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/role_type_association.py +37 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/role_type_derivates.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/role_type_multiplicity.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/runtime_param_ref.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/runtime_param_ref_type.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/runtime_param_ref_type_runtime_param.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/set_constraint.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/set_constraint_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/set_constraint_type_constraint.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/set_constraint_type_where.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sign_class.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sign_class_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sign_param_assignment.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sign_param_assignment_type.py +32 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sign_param_assignment_type_assignment.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sign_param_assignment_type_param.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/simple_constraint.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/simple_constraint_type.py +42 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/simple_constraint_type_logical_expression.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/struct_of_format.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/struct_of_format_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sub_model.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sub_model_type.py +10 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sub_node.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/sub_node_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/text_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/text_type_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/top_node.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/top_node_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/transfer_element.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/transfer_element_type.py +33 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/transfer_element_type_transfer_class.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/transfer_element_type_transfer_element.py +27 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/translation.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/translation_type.py +36 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/translation_type_translations.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/tree_value_type_of.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/tree_value_type_of_type.py +8 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_mod.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_related_type.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_related_type_type.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_related_type_type_base_type.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_restriction.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_restriction_type.py +31 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_restriction_type_trtr.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_restriction_type_type_restriction.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_type_lftparent.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/type_type_ltparent.py +29 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unique_constraint.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unique_constraint_type.py +40 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unique_constraint_type_unique_def.py +22 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unique_constraint_type_where.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit_function.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit_function_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit_ref.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit_ref_type.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit_ref_type_unit.py +19 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit_type.py +28 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/unit_type_definition.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/view.py +11 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/view_type.py +46 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/view_type_formation_parameter.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta/ilismeta16_2022_10_10/view_type_where.py +116 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/README.md +6 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/__init__.py +45 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/helper.py +65 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/abstract_element.py +85 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/constraints.py +47 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/extendable_me.py +102 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/domain_type/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/domain_type/class_related_type/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/domain_type/class_related_type/class_related_type.py +26 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/domain_type/class_related_type/role.py +56 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/domain_type/domain_type.py +171 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/expression/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/expression/expression.py +52 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/expression/factor/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/expression/factor/factor.py +46 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/extendable_me/type/type_class.py +77 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/line_form.py +39 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/meta_element.py +47 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/model_data.py +132 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/package/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/package/package.py +99 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/path_elements.py +51 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/references.py +57 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_data/serialization_elements.py +81 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/model_translation/__init__.py +0 -0
- ili2py/interfaces/interlis/interlis_24/ilismeta16/shared.py +5 -0
- ili2py/mappers/__init__.py +0 -0
- ili2py/mappers/helpers.py +1018 -0
- ili2py/mappers/internal/__init__.py +0 -0
- ili2py/mappers/internal/ilismeta16/__init__.py +0 -0
- ili2py/mappers/internal/ilismeta16/domain.py +29 -0
- ili2py/mappers/internal/ilismeta16/model_data/__init__.py +0 -0
- ili2py/mappers/internal/ilismeta16/model_data/definitions.py +401 -0
- ili2py/mappers/internal/ilismeta16/model_data/domain.py +31 -0
- ili2py/mappers/internal/ilismeta16/model_data/types.py +94 -0
- ili2py/mappers/internal/ilismeta16/model_data/units.py +49 -0
- ili2py/py.typed +0 -0
- ili2py/readers/__init__.py +0 -0
- ili2py/readers/interlis_23/__init__.py +0 -0
- ili2py/readers/interlis_23/xtf/__init__.py +0 -0
- ili2py/readers/interlis_23/xtf/xsdata.py +38 -0
- ili2py/readers/interlis_24/__init__.py +0 -0
- ili2py/readers/interlis_24/ilismeta16/__init__.py +0 -0
- ili2py/readers/interlis_24/ilismeta16/xsdata.py +40 -0
- ili2py/readers/interlis_24/xtf/__init__.py +0 -0
- ili2py/scripts/__init__.py +0 -0
- ili2py/scripts/config.py +21 -0
- ili2py/scripts/generate_docs_diagrams.py +177 -0
- ili2py/scripts/generate_mermaid_diagrams.py +118 -0
- ili2py/scripts/generate_plantuml_diagrams.py +156 -0
- ili2py/scripts/generate_test_output.py +632 -0
- ili2py/writers/__init__.py +0 -0
- ili2py/writers/diagram/__init__.py +33 -0
- ili2py/writers/diagram/interlis/__init__.py +115 -0
- ili2py/writers/diagram/interlis/templates/dot/class.jinja2 +34 -0
- ili2py/writers/diagram/interlis/templates/dot/classes.jinja2 +4 -0
- ili2py/writers/diagram/interlis/templates/dot/dot.jinja2 +48 -0
- ili2py/writers/diagram/interlis/templates/mermaid/mermaid.jinja2 +69 -0
- ili2py/writers/diagram/interlis/templates/plantuml/plantuml.jinja2 +62 -0
- ili2py/writers/diagram/interlis/templates/plantuml_role_members/plantuml_role_members.jinja2 +78 -0
- ili2py/writers/diagram/interlis/uml.py +353 -0
- ili2py/writers/helpers.py +36 -0
- ili2py/writers/py/__init__.py +0 -0
- ili2py/writers/py/constraints.py +183 -0
- ili2py/writers/py/interlis23/templates/classes.jinja2 +218 -0
- ili2py/writers/py/interlis23/templates/convertable_types.jinja2 +50 -0
- ili2py/writers/py/interlis23/templates/coord_types.jinja2 +126 -0
- ili2py/writers/py/interlis23/templates/domain_types.jinja2 +26 -0
- ili2py/writers/py/interlis23/templates/enumerations.jinja2 +27 -0
- ili2py/writers/py/interlis23/templates/library_init.jinja2 +5 -0
- ili2py/writers/py/interlis23/templates/line_types.jinja2 +162 -0
- ili2py/writers/py/interlis23/templates/module.jinja2 +89 -0
- ili2py/writers/py/interlis23/templates/package_init.jinja2 +56 -0
- ili2py/writers/py/interlis23/templates/references.jinja2 +26 -0
- ili2py/writers/py/interlis23/templates/xtf_opening.jinja2 +126 -0
- ili2py/writers/py/interlis24/templates/classes.jinja2 +225 -0
- ili2py/writers/py/interlis24/templates/convertable_types.jinja2 +50 -0
- ili2py/writers/py/interlis24/templates/coord_types.jinja2 +120 -0
- ili2py/writers/py/interlis24/templates/domain_types.jinja2 +26 -0
- ili2py/writers/py/interlis24/templates/enumerations.jinja2 +27 -0
- ili2py/writers/py/interlis24/templates/library_init.jinja2 +5 -0
- ili2py/writers/py/interlis24/templates/line_type_polyline.jinja2 +31 -0
- ili2py/writers/py/interlis24/templates/line_type_polyline_multi.jinja2 +49 -0
- ili2py/writers/py/interlis24/templates/line_type_segment.jinja2 +27 -0
- ili2py/writers/py/interlis24/templates/line_type_surface.jinja2 +31 -0
- ili2py/writers/py/interlis24/templates/line_type_surface_boundary.jinja2 +40 -0
- ili2py/writers/py/interlis24/templates/line_type_surface_multi.jinja2 +50 -0
- ili2py/writers/py/interlis24/templates/line_types.jinja2 +41 -0
- ili2py/writers/py/interlis24/templates/module.jinja2 +89 -0
- ili2py/writers/py/interlis24/templates/package_init.jinja2 +56 -0
- ili2py/writers/py/interlis24/templates/references.jinja2 +13 -0
- ili2py/writers/py/interlis24/templates/xtf_opening.jinja2 +120 -0
- ili2py/writers/py/python_structure.py +1829 -0
- ili2py/writers/py/render.py +180 -0
- interlis2py-0.1.0.dist-info/METADATA +91 -0
- interlis2py-0.1.0.dist-info/RECORD +462 -0
- interlis2py-0.1.0.dist-info/WHEEL +5 -0
- interlis2py-0.1.0.dist-info/entry_points.txt +2 -0
- interlis2py-0.1.0.dist-info/licenses/LICENSE +661 -0
- interlis2py-0.1.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
import os
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from pathlib import Path
|
|
5
|
+
from random import randint
|
|
6
|
+
|
|
7
|
+
from jinja2 import Environment, FileSystemLoader
|
|
8
|
+
|
|
9
|
+
from ili2py.mappers.helpers import Index
|
|
10
|
+
from ili2py.writers.diagram.interlis.uml import Diagram, TopicGroup
|
|
11
|
+
from ili2py.writers.helpers import create_file
|
|
12
|
+
|
|
13
|
+
ns_map = {"ili": "http://www.interlis.ch/INTERLIS2.3"}
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@dataclass
|
|
17
|
+
class FlavourSettings:
|
|
18
|
+
postfix: str
|
|
19
|
+
directions: list[str]
|
|
20
|
+
linetype: list[str]
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
tool_settings: dict[str, FlavourSettings] = {
|
|
24
|
+
"mermaid": FlavourSettings(
|
|
25
|
+
postfix="md",
|
|
26
|
+
directions=["LR", "RL", "TB", "BT"],
|
|
27
|
+
# currently not supported on class diagrams
|
|
28
|
+
linetype=[],
|
|
29
|
+
),
|
|
30
|
+
"plantuml": FlavourSettings(
|
|
31
|
+
postfix="puml",
|
|
32
|
+
directions=["top to bottom", "left to right"],
|
|
33
|
+
linetype=["polyline", "ortho", "spline"],
|
|
34
|
+
),
|
|
35
|
+
"plantuml_role_members": FlavourSettings(
|
|
36
|
+
postfix="puml",
|
|
37
|
+
directions=["top to bottom", "left to right"],
|
|
38
|
+
linetype=["polyline", "ortho", "spline"],
|
|
39
|
+
),
|
|
40
|
+
"dot": FlavourSettings(
|
|
41
|
+
postfix="dot",
|
|
42
|
+
directions=[],
|
|
43
|
+
# currently not supported on class diagrams
|
|
44
|
+
linetype=[],
|
|
45
|
+
),
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def uml_diagram(
|
|
50
|
+
diagram: Diagram,
|
|
51
|
+
index: Index,
|
|
52
|
+
model_names: list[str],
|
|
53
|
+
flavour: str,
|
|
54
|
+
file_name: str,
|
|
55
|
+
output_path: str,
|
|
56
|
+
direction: str | None = None,
|
|
57
|
+
linetype: str | None = None,
|
|
58
|
+
multiplier: int = 2,
|
|
59
|
+
depth: int | None = None,
|
|
60
|
+
):
|
|
61
|
+
if flavour == "mermaid":
|
|
62
|
+
selected_direction = tool_settings[flavour].directions[0]
|
|
63
|
+
selected_linetype = None
|
|
64
|
+
elif flavour == "plantuml" or flavour == "plantuml_role_members":
|
|
65
|
+
selected_direction = tool_settings[flavour].directions[0]
|
|
66
|
+
selected_linetype = tool_settings[flavour].linetype[0]
|
|
67
|
+
elif flavour == "dot":
|
|
68
|
+
selected_direction = None
|
|
69
|
+
selected_linetype = None
|
|
70
|
+
else:
|
|
71
|
+
raise NotImplementedError
|
|
72
|
+
if direction is not None:
|
|
73
|
+
if direction not in tool_settings[flavour].directions:
|
|
74
|
+
raise NotImplementedError
|
|
75
|
+
else:
|
|
76
|
+
selected_direction = direction
|
|
77
|
+
if linetype is not None:
|
|
78
|
+
if linetype not in tool_settings[flavour].linetype:
|
|
79
|
+
raise NotImplementedError
|
|
80
|
+
else:
|
|
81
|
+
selected_linetype = linetype
|
|
82
|
+
|
|
83
|
+
tpl_dir = os.path.join(Path(__file__).parent.joinpath("templates"), flavour)
|
|
84
|
+
env = Environment(loader=FileSystemLoader(str(tpl_dir)), autoescape=False) # nosec B701
|
|
85
|
+
if depth is None:
|
|
86
|
+
# all relevant models
|
|
87
|
+
inner_model_names = index.depth_tree[-1]
|
|
88
|
+
else:
|
|
89
|
+
try:
|
|
90
|
+
inner_model_names = index.depth_tree[depth]
|
|
91
|
+
except IndexError:
|
|
92
|
+
inner_model_names = index.depth_tree[-1]
|
|
93
|
+
|
|
94
|
+
if len(model_names) > 0:
|
|
95
|
+
if depth is not None:
|
|
96
|
+
inner_model_names = list(set(model_names) | set(inner_model_names))
|
|
97
|
+
else:
|
|
98
|
+
inner_model_names = model_names
|
|
99
|
+
logging.info(f"Drawing diagram for models: {inner_model_names}")
|
|
100
|
+
output = env.get_template(f"{flavour}.jinja2").render(
|
|
101
|
+
diagram=diagram,
|
|
102
|
+
index=index,
|
|
103
|
+
len=len,
|
|
104
|
+
randint=randint,
|
|
105
|
+
render_multiplicity=TopicGroup.render_multiplicity,
|
|
106
|
+
model_names=inner_model_names,
|
|
107
|
+
direction=selected_direction,
|
|
108
|
+
linetype=selected_linetype,
|
|
109
|
+
multiplier=multiplier,
|
|
110
|
+
)
|
|
111
|
+
src_code_encoded = output.encode()
|
|
112
|
+
|
|
113
|
+
diagram_file = create_file(output_path, flavour, file_name)
|
|
114
|
+
diagram_file.write_text(src_code_encoded.decode(), encoding="utf-8")
|
|
115
|
+
return str(diagram_file)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{{ class.save_oid }} [
|
|
2
|
+
shape=plain;
|
|
3
|
+
style=filled;
|
|
4
|
+
fillcolor=gray95;
|
|
5
|
+
label=<<table border="0" cellborder="1" cellspacing="0" cellpadding="4">
|
|
6
|
+
<tr>
|
|
7
|
+
<td colspan="3">
|
|
8
|
+
<b>{{ class.name }}</b>
|
|
9
|
+
</td>
|
|
10
|
+
</tr>
|
|
11
|
+
{%- if class.attributes or class.association_attributes %}
|
|
12
|
+
{%- for attribute in class.attributes -%}
|
|
13
|
+
<tr>
|
|
14
|
+
<td align="left">+ {{ attribute.name }}</td>
|
|
15
|
+
<td align="left">{{ attribute.type_definition }}</td>
|
|
16
|
+
<td align="left">{{ attribute.mandatory }}</td>
|
|
17
|
+
</tr>
|
|
18
|
+
{%- endfor -%}
|
|
19
|
+
{%- if class.association_attributes %}
|
|
20
|
+
{%- for attribute in class.association_attributes -%}
|
|
21
|
+
<tr>
|
|
22
|
+
<td align="left">+ {{ attribute.name }}</td>
|
|
23
|
+
<td align="left"></td>
|
|
24
|
+
<td align="left" port="{{ attribute.save_oid }}">[{{ attribute.mandatory }}]</td>
|
|
25
|
+
</tr>
|
|
26
|
+
{%- endfor -%}
|
|
27
|
+
{%- endif %}
|
|
28
|
+
{%- endif %}
|
|
29
|
+
</table>>
|
|
30
|
+
]
|
|
31
|
+
{%- if class.inherits_from %}
|
|
32
|
+
edge [dir=back arrowtail=empty style=""]
|
|
33
|
+
{{ class.inherits_from.replace('.', '_') }} -> {{ class.save_oid }}
|
|
34
|
+
{%- endif %}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{% macro classes_include(classes) %}{% include "classes.jinja2" %}{% endmacro %}
|
|
2
|
+
digraph UML_Class_diagram {
|
|
3
|
+
graph [
|
|
4
|
+
label="UML Class diagram demo";
|
|
5
|
+
labelloc="t";
|
|
6
|
+
fontname="Helvetica,Arial,sans-serif";
|
|
7
|
+
layout="dot";
|
|
8
|
+
splines=spline;
|
|
9
|
+
dpi=96;
|
|
10
|
+
ranksep=1.5
|
|
11
|
+
]
|
|
12
|
+
node [
|
|
13
|
+
fontname="Helvetica,Arial,sans-serif";
|
|
14
|
+
shape=record;
|
|
15
|
+
margin=0.2;
|
|
16
|
+
]
|
|
17
|
+
edge [fontname="Helvetica,Arial,sans-serif"]
|
|
18
|
+
{% for model_group in diagram.model_groups %}
|
|
19
|
+
{%- if model_group.name in model_names %}
|
|
20
|
+
subgraph cluster_{{ model_group.save_oid }} {
|
|
21
|
+
style=filled;
|
|
22
|
+
color=lightgrey;
|
|
23
|
+
label="{{ model_group.name }}";
|
|
24
|
+
{{ classes_include(model_group.classes)|indent }}
|
|
25
|
+
{%- for association in model_group.associations %}
|
|
26
|
+
{%- if association[0][0].split('.')[0] in model_names and association[1][0].split('.')[0] in model_names %}
|
|
27
|
+
edge [dir=back style="" arrowhead="{% if association[1][2] == '' %}{{ "none" }}{% elif association[1][2] == '*' %}{{ "diamond" }}{% else %}{{ "odiamond" }}{% endif %}" arrowtail="{% if association[0][2] == '' %}{{ "none" }}{% elif association[0][2] == '*' %}{{ "diamond" }}{% else %}{{ "odiamond" }}{% endif %}"]
|
|
28
|
+
{{ association[0][0].replace('.', '_') }}:{{ association[1][3].replace('.', '_') }}:e -> {{ association[1][0].replace('.', '_') }}:{{ association[0][3].replace('.', '_') }}:e [constraint=false]
|
|
29
|
+
{%- endif %}
|
|
30
|
+
{%- endfor %}
|
|
31
|
+
{% for topic_group in model_group.topic_groups %}
|
|
32
|
+
subgraph cluster_{{ topic_group.save_oid }} {
|
|
33
|
+
color=white
|
|
34
|
+
style=solid;
|
|
35
|
+
label="{{ topic_group.name }}";
|
|
36
|
+
{{ classes_include(topic_group.classes)|indent(8) }}
|
|
37
|
+
{%- for association in topic_group.associations %}
|
|
38
|
+
{%- if association[0][0].split('.')[0] in model_names and association[1][0].split('.')[0] in model_names %}
|
|
39
|
+
edge [dir=back style="" arrowhead="{% if association[1][2] == '' %}{{ "none" }}{% elif association[1][2] == '*' %}{{ "diamond" }}{% else %}{{ "odiamond" }}{% endif %}" arrowtail="{% if association[0][2] == '' %}{{ "none" }}{% elif association[0][2] == '*' %}{{ "diamond" }}{% else %}{{ "odiamond" }}{% endif %}"]
|
|
40
|
+
{{ association[0][0].replace('.', '_') }}:{{ association[1][3].replace('.', '_') }}:e -> {{ association[1][0].replace('.', '_') }}:{{ association[0][3].replace('.', '_') }}:e [constraint=false]
|
|
41
|
+
{%- endif %}
|
|
42
|
+
{%- endfor %}
|
|
43
|
+
}
|
|
44
|
+
{% endfor %}
|
|
45
|
+
}
|
|
46
|
+
{%- endif %}
|
|
47
|
+
{%- endfor %}
|
|
48
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
```mermaid
|
|
2
|
+
---
|
|
3
|
+
title: {{ ', '.join(model_names) }}
|
|
4
|
+
---
|
|
5
|
+
%%{
|
|
6
|
+
init: {
|
|
7
|
+
"layout": "elk",
|
|
8
|
+
"elk": {
|
|
9
|
+
"mergeEdges": false,
|
|
10
|
+
"nodePlacementStrategy": "SIMPLE",
|
|
11
|
+
"cycleBreakingStrategy": "GREEDY_MODEL_ORDER",
|
|
12
|
+
"forceNodeModelOrder": true,
|
|
13
|
+
"considerModelOrder": "NODES_AND_EDGES"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}%%
|
|
17
|
+
classDiagram
|
|
18
|
+
direction {{ direction }}
|
|
19
|
+
{%- for model_group in diagram.model_groups %}
|
|
20
|
+
{%- if model_group.name in model_names %}
|
|
21
|
+
{%- if model_group.classes %}
|
|
22
|
+
namespace {{ model_group.oid.replace('.', '_') }} {
|
|
23
|
+
{%- for class_definition in model_group.classes %}
|
|
24
|
+
class {{ class_definition.oid.replace('.', '_') }}["{{ class_definition.name }}"]{
|
|
25
|
+
{%- for attribute in class_definition.attributes %}
|
|
26
|
+
{{ attribute.name }}{{ attribute.mandatory }}: {{ attribute.type_definition }}
|
|
27
|
+
{%- endfor %}
|
|
28
|
+
}
|
|
29
|
+
{%- endfor %}
|
|
30
|
+
}
|
|
31
|
+
{% endif %}
|
|
32
|
+
{%- for association in model_group.associations %}
|
|
33
|
+
{{ association[0][0].replace('.', '_') }} "{{ association[0][1] }}" {{ association[0][2] }}--{{ association[1][2] }} "{{ association[1][1] }}" {{ association[1][0].replace('.', '_') }} : {{ association[2] }}
|
|
34
|
+
{%- endfor %}
|
|
35
|
+
{%- for class_definition in model_group.classes %}
|
|
36
|
+
{%- if class_definition.inherits_from %}
|
|
37
|
+
{%- if class_definition.inherits_from.split('.')[0] in model_names %}
|
|
38
|
+
{{ class_definition.oid.replace('.', '_') }} --|> {{ class_definition.inherits_from.replace('.', '_') }}
|
|
39
|
+
{%- endif %}
|
|
40
|
+
{%- endif %}
|
|
41
|
+
{% endfor %}
|
|
42
|
+
{%- for topic_group in model_group.topic_groups %}
|
|
43
|
+
{%- if topic_group.classes %}
|
|
44
|
+
namespace {{ topic_group.oid.replace('.', '_') }} {
|
|
45
|
+
{%- for class_definition in topic_group.classes %}
|
|
46
|
+
class {{ class_definition.oid.replace('.', '_') }}["{{ class_definition.name }}"]{
|
|
47
|
+
{%- for attribute in class_definition.attributes %}
|
|
48
|
+
{{ attribute.name }}{{ attribute.mandatory }}: {{ attribute.type_definition }}
|
|
49
|
+
{%- endfor %}
|
|
50
|
+
}
|
|
51
|
+
{%- endfor %}
|
|
52
|
+
}
|
|
53
|
+
{%- endif %}
|
|
54
|
+
{%- for association in topic_group.associations %}
|
|
55
|
+
{%- if index.index[association[0][0]].element_in_package.ref.split('.')[0] in model_names and index.index[association[1][0]].element_in_package.ref.split('.')[0] in model_names %}
|
|
56
|
+
{{ association[0][0].replace('.', '_') }} "{{ association[0][1] }}" {{ association[0][2] }}--{{ association[1][2] }} "{{ association[1][1] }}" {{ association[1][0].replace('.', '_') }} : {{ association[2] }}
|
|
57
|
+
{%- endif %}
|
|
58
|
+
{%- endfor %}
|
|
59
|
+
{%- for class_definition in topic_group.classes %}
|
|
60
|
+
{%- if class_definition.inherits_from %}
|
|
61
|
+
{%- if class_definition.inherits_from.split('.')[0] in model_names %}
|
|
62
|
+
{{ class_definition.oid.replace('.', '_') }} --|> {{ class_definition.inherits_from.replace('.', '_') }}
|
|
63
|
+
{%- endif %}
|
|
64
|
+
{%- endif %}
|
|
65
|
+
{% endfor %}
|
|
66
|
+
{%- endfor %}
|
|
67
|
+
{%- endif %}
|
|
68
|
+
{%- endfor %}
|
|
69
|
+
```
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
@startuml
|
|
2
|
+
skinparam linetype {{ linetype }}
|
|
3
|
+
{{ direction }} direction
|
|
4
|
+
{%- for model_group in diagram.model_groups %}
|
|
5
|
+
{%- if model_group.name in model_names %}
|
|
6
|
+
{%- if model_group.classes %}
|
|
7
|
+
namespace {{ model_group.oid }} {
|
|
8
|
+
{%- for class_definition in model_group.classes %}
|
|
9
|
+
class {{ class_definition.oid }}{
|
|
10
|
+
{%- for attribute in class_definition.attributes %}
|
|
11
|
+
{{ attribute.name }}{{ attribute.mandatory }}: {{ attribute.type_definition }}
|
|
12
|
+
{%- endfor %}
|
|
13
|
+
}
|
|
14
|
+
{%- endfor %}
|
|
15
|
+
}
|
|
16
|
+
{% endif %}
|
|
17
|
+
{%- for association in model_group.associations %}
|
|
18
|
+
{%- if len(association) == 3 %}
|
|
19
|
+
{{ association[0][0] }} "{{ association[0][1] }}" {{ association[0][2] }}{{ "-" * multiplier }}{{ association[1][2] }} "{{ association[1][1] }}" {{ association[1][0] }} : {{ association[0][3].split('.')[-1] }}\n{{ association[1][3].split('.')[-1] }}
|
|
20
|
+
{%- else %}
|
|
21
|
+
note "Association <b>'{{ model_group.name }}.{{ association[-1] }}'</b>\n has more than 2 sides,\n this is currently not supported" as N{{ randint(1,10000) }}
|
|
22
|
+
{%- endif %}
|
|
23
|
+
{%- endfor %}
|
|
24
|
+
{%- for class_definition in model_group.classes %}
|
|
25
|
+
{%- if class_definition.inherits_from %}
|
|
26
|
+
{%- if class_definition.inherits_from.split('.')[0] in model_names %}
|
|
27
|
+
{{ class_definition.inherits_from }} <|{{ "-" * multiplier }} {{ class_definition.oid }}
|
|
28
|
+
{%- endif %}
|
|
29
|
+
{%- endif %}
|
|
30
|
+
{% endfor %}
|
|
31
|
+
{%- for topic_group in model_group.topic_groups %}
|
|
32
|
+
{%- if topic_group.classes %}
|
|
33
|
+
namespace {{ topic_group.oid }} {
|
|
34
|
+
{%- for class_definition in topic_group.classes %}
|
|
35
|
+
class {{ class_definition.oid }}{
|
|
36
|
+
{%- for attribute in class_definition.attributes %}
|
|
37
|
+
{{ attribute.name }}{{ attribute.mandatory }}: {{ attribute.type_definition }}
|
|
38
|
+
{%- endfor %}
|
|
39
|
+
}
|
|
40
|
+
{%- endfor %}
|
|
41
|
+
}
|
|
42
|
+
{%- endif %}
|
|
43
|
+
{%- for association in topic_group.associations %}
|
|
44
|
+
{%- if len(association) == 3 %}
|
|
45
|
+
{%- if index.index[association[0][0]].element_in_package.ref.split('.')[0] in model_names and index.index[association[1][0]].element_in_package.ref.split('.')[0] in model_names %}
|
|
46
|
+
{{ association[0][0] }} "{{ association[0][1] }}" {{ association[0][2] }}{{ "-" * multiplier }}{{ association[1][2] }} "{{ association[1][1] }}" {{ association[1][0] }} : {{ association[0][3].split('.')[-1] }}\n{{ association[1][3].split('.')[-1] }}
|
|
47
|
+
{%- endif %}
|
|
48
|
+
{%- else %}
|
|
49
|
+
note "Association <b>'{{ model_group.name }}.{{ topic_group.name }}.{{ association[-1] }}'</b>\n has more than 2 sides,\n this is currently not supported" as N{{ randint(1,10000) }}
|
|
50
|
+
{%- endif %}
|
|
51
|
+
{%- endfor %}
|
|
52
|
+
{%- for class_definition in topic_group.classes %}
|
|
53
|
+
{%- if class_definition.inherits_from %}
|
|
54
|
+
{%- if class_definition.inherits_from.split('.')[0] in model_names %}
|
|
55
|
+
{{ class_definition.inherits_from }} <|{{ "-" * multiplier }} {{ class_definition.oid }}
|
|
56
|
+
{%- endif %}
|
|
57
|
+
{%- endif %}
|
|
58
|
+
{% endfor %}
|
|
59
|
+
{%- endfor %}
|
|
60
|
+
{%- endif %}
|
|
61
|
+
{%- endfor %}
|
|
62
|
+
@enduml
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
@startuml
|
|
2
|
+
skinparam linetype {{ linetype }}
|
|
3
|
+
{{ direction }} direction
|
|
4
|
+
{%- for model_group in diagram.model_groups %}
|
|
5
|
+
{%- if model_group.name in model_names %}
|
|
6
|
+
{%- if model_group.classes %}
|
|
7
|
+
namespace {{ model_group.oid }} {
|
|
8
|
+
{%- for class_definition in model_group.classes %}
|
|
9
|
+
class {{ class_definition.oid }}{
|
|
10
|
+
{%- for attribute in class_definition.attributes %}
|
|
11
|
+
{{ attribute.name }}{{ attribute.mandatory }}: {{ attribute.type_definition }}
|
|
12
|
+
{%- endfor %}
|
|
13
|
+
{%- if class_definition.oid in index.associated_classes %}
|
|
14
|
+
--Roles--
|
|
15
|
+
{%- for association_oid in index.associated_classes[class_definition.oid] %}
|
|
16
|
+
{% for role in index.association_bucket[association_oid] if role[1] != class_definition.oid -%}
|
|
17
|
+
+{{ role[0].split(".")[-1] }}[{{ render_multiplicity(role[-2], role[-1]) }}]
|
|
18
|
+
{%- endfor -%}
|
|
19
|
+
{%- endfor %}
|
|
20
|
+
{%- endif %}
|
|
21
|
+
}
|
|
22
|
+
{%- endfor %}
|
|
23
|
+
}
|
|
24
|
+
{% endif %}
|
|
25
|
+
{%- for association in model_group.associations %}
|
|
26
|
+
{%- if len(association) == 3 %}
|
|
27
|
+
{{ association[0][0] }}::{{ association[1][3].split('.')[-1] }} {{ association[0][2] }}{{ "-" * multiplier }}{{ association[1][2] }} {{ association[1][0] }}::{{ association[0][3].split('.')[-1] }}
|
|
28
|
+
{%- else %}
|
|
29
|
+
note "Association <b>'{{ model_group.name }}.{{ association[-1] }}'</b>\n has more than 2 sides,\n this is currently not supported" as N{{ randint(1,10000) }}
|
|
30
|
+
{%- endif %}
|
|
31
|
+
{%- endfor %}
|
|
32
|
+
{%- for class_definition in model_group.classes %}
|
|
33
|
+
{%- if class_definition.inherits_from %}
|
|
34
|
+
{%- if class_definition.inherits_from.split('.')[0] in model_names %}
|
|
35
|
+
{{ class_definition.inherits_from }} <|{{ "-" * multiplier }} {{ class_definition.oid }}
|
|
36
|
+
{%- endif %}
|
|
37
|
+
{%- endif %}
|
|
38
|
+
{% endfor %}
|
|
39
|
+
{%- for topic_group in model_group.topic_groups %}
|
|
40
|
+
{%- if topic_group.classes %}
|
|
41
|
+
namespace {{ topic_group.oid }} {
|
|
42
|
+
{%- for class_definition in topic_group.classes %}
|
|
43
|
+
class {{ class_definition.oid }}{
|
|
44
|
+
{%- for attribute in class_definition.attributes %}
|
|
45
|
+
{{ attribute.name }}{{ attribute.mandatory }}: {{ attribute.type_definition }}
|
|
46
|
+
{%- endfor %}
|
|
47
|
+
{%- if class_definition.oid in index.associated_classes %}
|
|
48
|
+
--Roles--
|
|
49
|
+
{%- for association_oid in index.associated_classes[class_definition.oid] %}
|
|
50
|
+
{% for role in index.association_bucket[association_oid] if role[1] != class_definition.oid -%}
|
|
51
|
+
+{{ role[0].split(".")[-1] }}[{{ render_multiplicity(role[-2], role[-1]) }}]
|
|
52
|
+
{%- endfor -%}
|
|
53
|
+
{%- endfor %}
|
|
54
|
+
{%- endif %}
|
|
55
|
+
}
|
|
56
|
+
{%- endfor %}
|
|
57
|
+
}
|
|
58
|
+
{%- endif %}
|
|
59
|
+
{%- for association in topic_group.associations %}
|
|
60
|
+
{%- if len(association) == 3 %}
|
|
61
|
+
{%- if index.index[association[0][0]].element_in_package.ref.split('.')[0] in model_names and index.index[association[1][0]].element_in_package.ref.split('.')[0] in model_names %}
|
|
62
|
+
{{ association[0][0] }}::{{ association[1][3].split('.')[-1] }} {{ association[0][2] }}{{ "-" * multiplier }}{{ association[1][2] }} {{ association[1][0] }}::{{ association[0][3].split('.')[-1] }}
|
|
63
|
+
{%- endif %}
|
|
64
|
+
{%- else %}
|
|
65
|
+
note "Association <b>'{{ model_group.name }}.{{ topic_group.name }}.{{ association[-1] }}'</b>\n has more than 2 sides,\n this is currently not supported" as N{{ randint(1,10000) }}
|
|
66
|
+
{%- endif %}
|
|
67
|
+
{%- endfor %}
|
|
68
|
+
{%- for class_definition in topic_group.classes %}
|
|
69
|
+
{%- if class_definition.inherits_from %}
|
|
70
|
+
{%- if class_definition.inherits_from.split('.')[0] in model_names %}
|
|
71
|
+
{{ class_definition.inherits_from }} <|{{ "-" * multiplier }} {{ class_definition.oid }}
|
|
72
|
+
{%- endif %}
|
|
73
|
+
{%- endif %}
|
|
74
|
+
{% endfor %}
|
|
75
|
+
{%- endfor %}
|
|
76
|
+
{%- endif %}
|
|
77
|
+
{%- endfor %}
|
|
78
|
+
@enduml
|