The documentation indicates that a FeatureIdentifier is a dctionary with a mandatory key named "type". Depending on this type, other keys are also required. In addition, it seems that the value assigned to "type" key must be one of "scalar", "field", "nodes".
For now, the implementation of FeatureIdentifier does not enforce the presence of mandatory keys ("type" and other type-dependent keys) and does not raise any error for unknown types.
Suggestion:
- check structure in constructor, raise errors if unexpected structures ;
- implement setters to raise errors if the user tries to change the object structure with undesired keys after instanciation.
The documentation indicates that a FeatureIdentifier is a dctionary with a mandatory key named "type". Depending on this type, other keys are also required. In addition, it seems that the value assigned to "type" key must be one of "scalar", "field", "nodes".
For now, the implementation of FeatureIdentifier does not enforce the presence of mandatory keys ("type" and other type-dependent keys) and does not raise any error for unknown types.
Suggestion: