Closed gerardmoloneyetpartners closed 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.
We don't have objections to proposed changes.
We agree with proposed changes
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