Indeed - I was thinking about the design of the UML → BMM extractor, and creating separated files is quite a lot of work, so perfectly comprehensible. BTW I found various errors, which you are probably already fixing, anyway, they’re typical things that occur in these kinds of converters as you work out the details. Specifically:
- all (?) properties seem to have
is_mandatory
set on them - cardinality only needed when it is something other than
0..*
- the old form of list
<xxx, ...>
used for ‘ancestors’ not needed, can just be<xxx>
- Boolean properties have ‘is_’ missing in the name (see below ex.)
- the converter currently outputs a complex type structure for ?all
P_BMM_SINGLE_PROPERTYs
correct form:
["is_enumerated_type_constraint"] = (P_BMM_SINGLE_PROPERTY) <
name = <"is_enumerated_type_constraint">
type = <"Boolean">
>
Currently generated:
["enumerated_type_constraint"] = (P_BMM_SINGLE_PROPERTY) <
name = <"enumerated_type_constraint">
type_def = <
type = <"BOOLEAN">
>
is_mandatory = <True>
>
There might have been a couple more, but if the above are fixed, the generator will be 97% there.