4 JSON/JSON-LD examples now invalid due to recent changes in where persistentDisposition can be used
mgh128 opened this issue · comments
- https://github.com/gs1/EPCIS/blob/master/JSON/PersistentDisposition-example.jsonld
- https://github.com/gs1/EPCIS/blob/master/JSON/WithFullCombinationOfFields/aggregation_event_all_possible_fields.jsonld
- https://github.com/gs1/EPCIS/blob/master/JSON/WithFullCombinationOfFields/association_event_all_possible_fields.jsonld
- https://github.com/gs1/EPCIS/blob/master/JSON/WithFullCombinationOfFields/transaction_event_all_possible_fields.jsonld
I suggest changing (1) to be an ObjectEvent example that uses persistenDisposition
I suggest changing (2), (3), (4) to simply drop persistentDisposition
@mgh128 can you point me to that change?
1 is an ObjectEvent, so I'm not sure what is the problem?
Hi @VladimirAlexiev - good to hear from you again.
Here's the change: 5a91314
The examples that were in error have now been changed. 1 was previously an AggregationEvent for which persistentDisposition is no longer permitted
hi @mgh128 and @CraigRe !
Why has persistentDisposition
been restricted?
disposition
is allowed in all events, andpersistentDisposition
is its cousin?- It seems to me that eg
completeness_verified
can happen exactly at bizStepunpacking
ofAggregationEvent
(desaggregation).
If it indeed needs to be restricted, then more fixes are needed:
- Mark's diagram EPCIS-Ontology-20210907.pdf
- Mark's diagram EPCIS-Ontology-alternativeVersion-2021-09-14r3.pdf
JSON-Schema\schemas
:
AggregationEvent-JSON-Schema.json
AssociationEvent-JSON-Schema.json
ObjectEvent-JSON-Schema.json
TransactionEvent-JSON-Schema.json
TransformationEvent-JSON-Schema.json
Hi @VladimirAlexiev,
We had some discussion a few weeks ago in a work group call about persistentDisposition
and the potential ambiguity about which objects to which the values that are set
or unset
within persistentDisposition
apply in any event types except for ObjectEvent
and the output objects of TransformationEvent
. For AggregationEvent
and AssociationEvent
and TransactionEvent
there is ambiguity about whether it applies to parentID
or to childEPCs
/ epcList
or both, so the recommendation is that persistentDisposition
is now only used with ObjectEvent
or (applying to the output objects of) TransformationEvent
.
In the example of completeness_verified
this applies primarily to the parentID
rather than the childEPCs
(which themselves might be cases missing an item) - and after the AggregationEvent
with bizStep unpacking
has occurred, then even the parentID
is no longer complete, because it has been disaggregated.
I have already updated both UML diagrams accordingly in the version prepared for e-ballot and the most recent version from 6th April 2022 in the community room.
I'll check the JSON Schema to ensure that persistentDisposition
is appropriately restricted for event types other than ObjectEvent
and TransformationEvent
Now updated the JSON-Schema files accordingly as well as regenerated the main compiled composite JSON Schema file.
Hi @jmcanterafonseca-iota
Thanks for the reminder. I've now regenerated the openapi.json and pushed to the GS1 GitHub repository.
P.S. I also made a minor update to https://github.com/gs1/EPCIS/blob/master/REST%20Bindings/schema-injector/README.md to advise about installing sync-fetch
#440 lists more things to fix