ERDi-TestLab / ERDiTestlab-ProcessEvents

The repo holds the master version of the ETP designed ProcessEvents.xsd
MIT License
0 stars 1 forks source link

WorkScheduleEvent Added/Changed/Deleted WorkScheduleRecord multiplicity #3

Closed gerardmoloneyetpartners closed 3 years ago

gerardmoloneyetpartners commented 3 years ago

Currently the multiplicity of the following records in WorkScheduledEvent are; AddedWorkScheduleRecord [1 .. ] ChangedWorkScheduleRecord [1 .. ] DeletedWorkScheduleRecord [1..*]

When using this against the MESA B2MMLv7.0-2019 and earlier, it is OK when compiling messages, because although all of these records are therefore mandatory, they can be included as null. This is in part, because the B2MML-WorkScheduled.xsd has no mandatory attributes or elements ( ID is [0..n] )

In the B2MMLv7.0-2020, the B2MML-WorkScheduled.xsd (line 90) has changed the ID element to be mandatory by omitting a minOccurs=0 statement.

As the ProcessEvents.xsd forces us to include all three records by the [1..*] multiplicity, and the B2MML-WorkScheduled.xsd demands an ID, this now forces the compilation of a message to include all records with data.

PROPOSED FIX Update the ProcessEvents.xsd to make the following records [0..*] multiplicity, removing the mandatory requirement for the records.

Current code Line 1643 Line 1652 Line 1661

Fixed code Line 1643 Line 1652 Line 1661

alexmarginet-mi commented 3 years ago

Given that AddedWorkScheduleRecord, ChangedWorkScheduleRecordDeleted and WorkScheduleRecord are not mandatory and the WorkScheduleEvent is defined as a list of such objects, it makes perfect sense to update the minOccurs and maxOccurs as described.

h28669 commented 3 years ago

We don't have objections to proposed changes.

NishantPatel-Aveva commented 3 years ago

We agree with proposed changes