erasmus-without-paper / ewp-specs-api-omobility-las

Learning Agreements
MIT License
1 stars 2 forks source link

Unchanged subjects inside changes-proposal #27

Closed jiripetrzelka closed 3 years ago

jiripetrzelka commented 3 years ago

After the first-version is approved, are server implementers allowed to display unchanged components in the changes-proposal? If not, then does it mean that any component inside the changes-proposal without the status attribute set should be interpreted as if the status attribute was present with the value "inserted"?

kamil-olszewski-uw commented 3 years ago

LA versions later than the first one can only contain changes (additions and deletions) from the first version - just like in the official LA template. The comment to the status field says that it should be defined in this case:

https://github.com/erasmus-without-paper/ewp-specs-api-omobility-las/blob/0d1044c0cf3be210e30737daedd8de4fd5ad821b/endpoints/get-response.xsd#L410

I will ask my colleagues to slightly modify the comment so that it does not raise any doubts.

jiripetrzelka commented 3 years ago

Do I understand it correctly that the status attribute is still optional, even in changes proposals after the first version has been approved, and that its absence is to be considered as if it was present with the value of "inserted"? Or is the status attribute required in changes proposals after the the first version has been approved, and clients should therefore consider the entire LA invalid if the status attribute is missing for any of the components in the changes proposal? I mean, are you going to alter the comment to "MUST be used if the component represents a change"?

kamil-olszewski-uw commented 3 years ago

This attribute is optional only because the entire component is common to all components in all LA versions.

The "status" attribute should be mandatory in every "approved-changes" element and in every "changes-proposal" element that applies to a LA version later than the first. Client should consider the entire LA invalid if the status attribute is missing for any of the components in these situations.

Comment will be altered to something like this: "Must be used if the component represents a change and must not be used otherwise."