INSPIRE-MIF / 2017.2

Repository for action 2017.2 on alternative encodings
6 stars 11 forks source link

NL - SRule: Attribute - 2. Multi 2 Single #45

Closed PalmJanssen closed 5 years ago

PalmJanssen commented 5 years ago

Simplification Model Transformation Rule

This rule issue is to be referenced from the best practive paper.

Use the sections below to specify the Model Transformation rule.

Name of the Rule

Give the rule a summary name.

Category

Add the category into one of the following categoies:

Description

Restrict multiple attributes to one and use ; separation for multiple values

Limit the number of permitted cardinality of the attributes to one. For attributes with cardinality higher than 1 create a valuetype that allows for an array of separated values. (for example ";")

The advantage of this is that you can record unlimited values. The disadvantage is that there is no enumeration or other data type other than a (alphanumeric) string. Extra effort is also needed to (machine) read individual values.

UML Model

If this rule falls into the "Alternate Structures for specific types" category, provide a UML class diagram of your alternative model. For other rules, you may optionally provide a UML diagram.

Example instance in default encoding:

Provide an example in the default encoding.

Example instance in simplified encoding:

Provide an example feature that is based on the transformed model.

Model transformation rule:

Limit the number of permitted cardinality of the attributes to one. For attributes with cardinality higher than 1 create a valuetype that allows for an array of separated values. (for example ";")

Instance transformation rule:

Describe how data in a property needs to be transformed, if necessary. As an example, there are rules which concatenate values (e.g. in the GeoSciML Lite approach).

Solves usability issues:

Describe as concrete as possible, ideally using the test classes described in [CanIUse](), which issues in which software this approach addresses and solves.

Known usability issues:

The disadvantage is that there is no enumeration or other data type other than a (alphanumeric) string. Extra effort is also needed to (machine) read individual values.

Reversibility:

not entirely reversible because the original valuetype is not visable anymore and there for can not be validated.