|
@@ -1,12 +1,17 @@
|
|
|
// Warning: Generated code! Do not edit!
|
|
|
// Input file: '{{inputfile}}'
|
|
|
// Generator: https://msdl.uantwerpen.be/git/jexelmans/xopp2py
|
|
|
+{%- if minimal %}
|
|
|
+// Minimal mode enabled: All XML attributes and non-text nodes are omitted.
|
|
|
+{%- endif %}
|
|
|
|
|
|
description <{{namespaces.description}}#> as {{namespaces.shorthand}} {
|
|
|
|
|
|
uses <{{namespaces.xopp}}#> as xopp
|
|
|
uses <{{namespaces.object_diagram}}#> as object_diagram
|
|
|
+ {%- if not minimal %}
|
|
|
uses <{{namespaces.dict}}#> as dict
|
|
|
+ {%- endif %}
|
|
|
|
|
|
ci model : xopp:Model []
|
|
|
|
|
@@ -20,7 +25,8 @@ description <{{namespaces.description}}#> as {{namespaces.shorthand}} {
|
|
|
object_diagram:inModel model
|
|
|
]
|
|
|
|
|
|
- {% for page_index, page in enumerate(file.pages) %}
|
|
|
+ {%- for page_index, page in enumerate(file.pages) %}
|
|
|
+
|
|
|
ci p{{page_index}} : xopp:Page [
|
|
|
xopp:hasWidth {{ page.width }}
|
|
|
xopp:hasHeight {{ page.height }}
|
|
@@ -31,28 +37,35 @@ description <{{namespaces.description}}#> as {{namespaces.shorthand}} {
|
|
|
object_diagram:inModel model
|
|
|
]
|
|
|
|
|
|
- {%- for layer_index, layer in enumerate(page.layers) %}
|
|
|
- ci p{{page_index}}l{{layer_index}} : xopp:Layer [
|
|
|
- xopp:inPage p{{page_index}}
|
|
|
- object_diagram:inModel model
|
|
|
- ]
|
|
|
-
|
|
|
- {%- for el_index, el in enumerate(layer.elements) %}
|
|
|
- ci p{{page_index}}l{{layer_index}}e{{el_index}} : xopp:{{el.__class__.__name__}} [
|
|
|
- xopp:hasText {{el.text | to_oml_string_literal}}
|
|
|
- xopp:inLayer p{{page_index}}l{{layer_index}}
|
|
|
- object_diagram:inModel model
|
|
|
- ]
|
|
|
-
|
|
|
- {%- for key, value in el.attributes.items() %}
|
|
|
- ci p{{page_index}}l{{layer_index}}e{{el_index}}a{{loop.index}} : xopp:XMLAttribute [
|
|
|
- dict:hasKey {{key | to_oml_string_literal}}
|
|
|
- dict:hasValue {{value | to_oml_string_literal}}
|
|
|
- xopp:ofLayerElement p{{page_index}}l{{layer_index}}e{{el_index}}
|
|
|
- object_diagram:inModel model
|
|
|
- ]
|
|
|
- {% endfor %}
|
|
|
- {% endfor %}
|
|
|
- {% endfor %}
|
|
|
- {% endfor %}
|
|
|
+ {%- for layer_index, layer in enumerate(page.layers) %}
|
|
|
+
|
|
|
+ ci p{{page_index}}l{{layer_index}} : xopp:Layer [
|
|
|
+ xopp:inPage p{{page_index}}
|
|
|
+ object_diagram:inModel model
|
|
|
+ ]
|
|
|
+
|
|
|
+ {%- for el_index, el in enumerate(layer.elements) %}
|
|
|
+ {%- if not minimal or el.__class__.__name__ == "Text" %}
|
|
|
+
|
|
|
+ ci p{{page_index}}l{{layer_index}}e{{el_index}} : xopp:{{el.__class__.__name__}} [
|
|
|
+ xopp:hasText {{el.text | to_oml_string_literal}}
|
|
|
+ xopp:inLayer p{{page_index}}l{{layer_index}}
|
|
|
+ object_diagram:inModel model
|
|
|
+ ]
|
|
|
+
|
|
|
+ {%- if not minimal %}
|
|
|
+ {%- for key, value in el.attributes.items() %}
|
|
|
+
|
|
|
+ ci p{{page_index}}l{{layer_index}}e{{el_index}}a{{loop.index}} : xopp:XMLAttribute [
|
|
|
+ dict:hasKey {{key | to_oml_string_literal}}
|
|
|
+ dict:hasValue {{value | to_oml_string_literal}}
|
|
|
+ xopp:ofLayerElement p{{page_index}}l{{layer_index}}e{{el_index}}
|
|
|
+ object_diagram:inModel model
|
|
|
+ ]
|
|
|
+ {%- endfor %}
|
|
|
+ {%- endif %}
|
|
|
+ {%- endif %}
|
|
|
+ {%- endfor %}
|
|
|
+ {%- endfor %}
|
|
|
+ {%- endfor %}
|
|
|
}
|