openepcis / epcis-testdata-generator

EPCIS 2.0 Testdata Generator
https://openepcis.io
Apache License 2.0
3 stars 2 forks source link

Is there a way to inherit childEPCs/childQuantities from former events? #38

Closed RalphTro closed 1 year ago

RalphTro commented 1 year ago

Dear @Aravinda93 , In testing https://github.com/openepcis/epcis-testdata-generator/issues/31, I came up with the following chain of events:

  1. Two commissioning events (one for SGTINs, one for LGTINs)
  2. A packing event which aggregates the SGTINs + LGTINs to an SSCC
  3. A shipping + a receiving event for this SSCC
  4. An Unpacking event (Disaggregating the SSCC)
  5. A Storing event
See this input template: ```json { "events": [{ "nodeId": 8, "eventType": "ObjectEvent", "eventCount": 1, "locationPartyIdentifierSyntax": "WebURI", "ordinaryEvent": true, "action": "ADD", "eventID": false, "eventTime": { "timeZoneOffset": "+02:00", "specificTime": "2023-08-21T08:00:08+02:00" }, "recordTimeType": "SAME_AS_EVENT_TIME", "businessStep": "COMMISSIONING", "readPoint": { "gcpLength": null, "gln": "4012345123456", "extensionType": "static" }, "referencedIdentifier": [{ "identifierId": 14, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 10 }], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [] }, { "nodeId": 9, "eventType": "AggregationEvent", "eventCount": 1, "locationPartyIdentifierSyntax": "WebURI", "ordinaryEvent": true, "action": "ADD", "eventID": false, "eventTime": { "timeZoneOffset": "+02:00", "specificTime": "2023-08-25T08:01:43.000+02:00" }, "businessStep": "PACKING", "readPoint": { "gcpLength": 7, "gln": "4012345123456", "extensionType": "static" }, "referencedIdentifier": [{ "parentNodeId": 8, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 5 }, { "parentNodeId": 16, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 } ], "outputReferencedIdentifier": [], "parentReferencedIdentifier": { "identifierId": 15, "parentCount": 1 }, "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [] }, { "nodeId": 10, "eventType": "ObjectEvent", "eventCount": 1, "locationPartyIdentifierSyntax": "WebURI", "ordinaryEvent": true, "action": "OBSERVE", "eventID": false, "eventTime": { "timeZoneOffset": "+02:00", "specificTime": "2023-08-25T08:02:37.000+02:00" }, "businessStep": "SHIPPING", "readPoint": { "gcpLength": null, "gln": "4012345123456", "extensionType": "static" }, "referencedIdentifier": [{ "parentNodeId": 9, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 }], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [] }, { "nodeId": 11, "eventType": "ObjectEvent", "eventCount": 1, "locationPartyIdentifierSyntax": "WebURI", "ordinaryEvent": true, "action": "OBSERVE", "eventID": false, "eventTime": { "timeZoneOffset": "+02:00", "specificTime": "2023-08-25T08:03:42.000+02:00" }, "businessStep": "RECEIVING", "readPoint": { "gcpLength": null, "gln": "4000001000005", "extensionType": "static" }, "referencedIdentifier": [{ "parentNodeId": 10, "epcCount": 1, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [] }, { "nodeId": 12, "eventType": "AggregationEvent", "eventCount": 1, "locationPartyIdentifierSyntax": "WebURI", "ordinaryEvent": true, "action": "DELETE", "eventID": false, "eventTime": { "timeZoneOffset": "+02:00", "specificTime": "2023-08-25T08:04:59.000+02:00" }, "businessStep": "UNLOADING", "referencedIdentifier": [{ "parentNodeId": 11, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 }], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [] }, { "nodeId": 13, "eventType": "ObjectEvent", "eventCount": 1, "locationPartyIdentifierSyntax": "WebURI", "ordinaryEvent": true, "action": "OBSERVE", "eventID": false, "eventTime": { "timeZoneOffset": "+02:00", "specificTime": "2023-08-25T08:05:33.000+02:00" }, "businessStep": "STORING", "readPoint": { "gcpLength": null, "gln": "4000001000005", "extensionType": "static" }, "referencedIdentifier": [{ "parentNodeId": 12, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 1 }], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [] }, { "nodeId": 16, "eventType": "ObjectEvent", "eventCount": 1, "locationPartyIdentifierSyntax": "WebURI", "ordinaryEvent": true, "action": "ADD", "eventID": false, "eventTime": { "timeZoneOffset": "+02:00", "specificTime": "2023-08-25T08:12:36.000+02:00" }, "businessStep": "COMMISSIONING", "referencedIdentifier": [{ "identifierId": 17, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [] } ], "identifiers": [{ "identifierId": 2, "objectIdentifierSyntax": "WebURI", "instanceData": null, "classData": null, "parentData": { "sscc": { "identifierType": "sscc", "gcpLength": null, "gcp": "4012345", "serialType": "random" } } }, { "identifierId": 3, "objectIdentifierSyntax": "WebURI", "instanceData": null, "classData": { "lgtin": { "identifierType": "lgtin", "gcpLength": 7, "quantityType": "Fixed Measure Quantity", "uom": null, "lgtin": "04012345123456", "serialType": "random", "quantity": 8 } }, "parentData": null }, { "identifierId": 14, "objectIdentifierSyntax": "WebURI", "instanceData": null, "classData": { "lgtin": { "identifierType": "lgtin", "gcpLength": 7, "quantityType": "Variable Measure Quantity", "uom": "KGM", "lgtin": "04012345123456", "serialType": "random", "quantity": 10 } }, "parentData": null }, { "identifierId": 15, "objectIdentifierSyntax": "WebURI", "instanceData": null, "classData": null, "parentData": { "sscc": { "identifierType": "sscc", "gcpLength": null, "gcp": "4012345", "serialType": "random" } } }, { "identifierId": 17, "objectIdentifierSyntax": "WebURI", "instanceData": { "sgtin": { "identifierType": "sgtin", "gcpLength": null, "sgtin": "04012345123456", "serialType": "random", "randomType": "NUMERIC", "randomMinLength": 3, "randomMaxLength": 5 } }, "classData": null, "parentData": null } ] } ```

Everything until the receiving event looks good.

And if I make use of the option that an Aggregation event with DELETE must not even have a childEPC/childQuantityList, even the unpacking event still is fine.

I asked myself though: what if a user requires the contained child elements (in this case, SGTINs and an LGTIN) after the parentID was disaggregated? For instance, the latter are required so that they can appear in subsequent events (e.g. the storing event). In this spirit, the tool (correctly) throws an error message indicating that the required identifiers are not available. Do you want to support such scenarios?

BTW: many thanks for making me aware of the trick of embedding a long code block into a <details> container! ;-) This makes some issues far more reader-friendly.

Many thanks in advance for sharing your thoughts on this matter!

Kind regards, Ralph

Aravinda93 commented 1 year ago

Dear @RalphTro

Thanks a lot for testing. If possible can you please also share the Design Template? Currently, you have provided the InputTemplate. With DesignTemplate it's a bit easier to track the issue.

You are welcome on the <details>, even I learned that from our OpenEPCIS documentation page :)

Thanks and best regards, Aravinda

RalphTro commented 1 year ago

Dear @Aravinda93 , Oh, I unfortunately already closed the respective tabs. If you want/it does help, I can create the event sequence/design template anew this afternoon? Kind regards, Ralph

Aravinda93 commented 1 year ago

Dear @RalphTro

Np, based on the scenario I have created the Design template so please do not create again.

Design template for future reference ```json { "eventNodeInfo": [ { "eventId": 2, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:11:26.000", "fromTime": "2023-08-24T15:11:26.000", "toTime": "2023-08-25T15:11:26.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "COMMISSIONING", "disposition": "ACTIVE", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:11:26.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:11:26.000", "ErrorDeclarationTimeTo": "2023-08-25T15:11:26.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 3, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:11:33.000", "fromTime": "2023-08-24T15:11:33.000", "toTime": "2023-08-25T15:11:33.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "COMMISSIONING", "disposition": "ACTIVE", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:11:33.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:11:33.000", "ErrorDeclarationTimeTo": "2023-08-25T15:11:33.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 4, "eventType": "AggregationEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "AggregationEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:12:54.000", "fromTime": "2023-08-24T15:12:54.000", "toTime": "2023-08-25T15:12:54.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "PACKING", "disposition": "IN_PROGRESS", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:12:54.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:12:54.000", "ErrorDeclarationTimeTo": "2023-08-25T15:12:54.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 6, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:16.000", "fromTime": "2023-08-24T15:13:16.000", "toTime": "2023-08-25T15:13:16.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "SHIPPING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:16.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:16.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:16.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 7, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:31.000", "fromTime": "2023-08-24T15:13:31.000", "toTime": "2023-08-25T15:13:31.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "RECEIVING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:31.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:31.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:31.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 8, "eventType": "AggregationEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "AggregationEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:47.000", "fromTime": "2023-08-24T15:13:47.000", "toTime": "2023-08-25T15:13:47.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "UNLOADING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "DELETE", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:47.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:47.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:47.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 9, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:14:10.000", "fromTime": "2023-08-24T15:14:10.000", "toTime": "2023-08-25T15:14:10.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "STORING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:14:10.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:14:10.000", "ErrorDeclarationTimeTo": "2023-08-25T15:14:10.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } } ], "identifiersNodeInfo": [ { "identifiersId": 1, "identifierSyntax": "URN", "instanceData": { "identifierType": "sgtin", "gcpLength": 10, "sgtin": "11111111111111", "serialType": "range", "rangeFrom": 100 }, "classData": { "identifierType": "lgtin", "gcpLength": 10, "quantityType": "Variable Measure Quantity", "uom": "KGM", "lgtin": "22222222222222", "serialType": "range", "rangeFrom": 200, "quantity": 20 } }, { "identifiersId": 5, "identifierSyntax": "URN", "parentData": { "identifierType": "sscc", "gcpLength": 9, "gcp": "8437438787", "serialType": "range", "rangeFrom": 200 } } ], "connectorsInfo": [ { "ID": 1, "name": "connector1", "source": "2", "target": "4", "hideInheritParentCount": true, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 2, "name": "connector2", "source": "3", "target": "4", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 0 }, { "ID": 3, "name": "connector3", "source": "1", "target": "2", "hideInheritParentCount": false, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 4, "name": "connector4", "source": "1", "target": "3", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 0 }, { "ID": 5, "name": "connector5", "source": "5", "target": "4", "hideInheritParentCount": false }, { "ID": 6, "name": "connector6", "source": "4", "target": "6", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 }, { "ID": 7, "name": "connector7", "source": "6", "target": "7", "hideInheritParentCount": true, "epcCount": 1, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 9, "name": "connector9", "source": "8", "target": "9", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 10, "name": "connector10", "source": "7", "target": "8", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 } ], "drawflowInfo": { "drawflow": { "Home": { "data": { "1": { "id": 1, "name": "Identifiers", "data": { "ID": 1, "eventType": "Identifiers" }, "class": "Identifiers", "html": "Identifiers", "typenode": "vue", "inputs": {}, "outputs": { "output_1": { "connections": [ { "node": "2", "output": "input_1" }, { "node": "3", "output": "input_1" } ] } }, "pos_x": 72, "pos_y": 267 }, "2": { "id": 2, "name": "Events", "data": { "ID": 2, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "1", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_2" } ] } }, "pos_x": 271, "pos_y": 162 }, "3": { "id": 3, "name": "Events", "data": { "ID": 3, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "1", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_2" } ] } }, "pos_x": 276, "pos_y": 383 }, "4": { "id": 4, "name": "Events", "data": { "ID": 4, "eventType": "AggregationEvent" }, "class": "AggregationEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "5", "input": "output_1" } ] }, "input_2": { "connections": [ { "node": "2", "input": "output_1" }, { "node": "3", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "6", "output": "input_1" } ] } }, "pos_x": 528, "pos_y": 247 }, "5": { "id": 5, "name": "ParentIdentifiers", "data": { "ID": 5, "eventType": "ParentID" }, "class": "ParentID", "html": "ParentIdentifiers", "typenode": "vue", "inputs": {}, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_1" } ] } }, "pos_x": 267, "pos_y": 29 }, "6": { "id": 6, "name": "Events", "data": { "ID": 6, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "4", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "7", "output": "input_1" } ] } }, "pos_x": 739, "pos_y": 240 }, "7": { "id": 7, "name": "Events", "data": { "ID": 7, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "6", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "8", "output": "input_1" } ] } }, "pos_x": 934, "pos_y": 239 }, "8": { "id": 8, "name": "Events", "data": { "ID": 8, "eventType": "AggregationEvent" }, "class": "AggregationEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "7", "input": "output_1" } ] }, "input_2": { "connections": [] } }, "outputs": { "output_1": { "connections": [ { "node": "9", "output": "input_1" } ] } }, "pos_x": 1127, "pos_y": 236 }, "9": { "id": 9, "name": "Events", "data": { "ID": 9, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "8", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [] } }, "pos_x": 1324, "pos_y": 233 } } } } } } ```

As per the current flow: We only keep a single event (Parent event) in memory to ensure we are not using too much memory and to support large event generation. Hence, when creating the AggregationEvent with DELETE we are only tracking the previous ObjectEvent with receiving. Hence, currently, we do not have a direct way to adopt the SGTIN/LGTIN into the final ObjectEvent.

One temporary fix is to recreate those identifiers again for the last ObjectEvent using the IdentifiersNode (Note: this would only work if you use range or none option during the generation of the identifier because for random it would again generate random identifiers). Attaching the DesignTemplate for your reference).

The second is to chain the link b/w the AggregationEvent where SGTIN/LGTIN is aggregated into the final ObjectEvent (Not sure if you will be happy with the design).

Workaround - 1 by regenerating ```json { "eventNodeInfo": [ { "eventId": 2, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:11:26.000", "fromTime": "2023-08-24T15:11:26.000", "toTime": "2023-08-25T15:11:26.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "COMMISSIONING", "disposition": "ACTIVE", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:11:26.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:11:26.000", "ErrorDeclarationTimeTo": "2023-08-25T15:11:26.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 3, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:11:33.000", "fromTime": "2023-08-24T15:11:33.000", "toTime": "2023-08-25T15:11:33.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "COMMISSIONING", "disposition": "ACTIVE", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:11:33.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:11:33.000", "ErrorDeclarationTimeTo": "2023-08-25T15:11:33.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 4, "eventType": "AggregationEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "AggregationEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:12:54.000", "fromTime": "2023-08-24T15:12:54.000", "toTime": "2023-08-25T15:12:54.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "PACKING", "disposition": "IN_PROGRESS", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:12:54.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:12:54.000", "ErrorDeclarationTimeTo": "2023-08-25T15:12:54.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 6, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:16.000", "fromTime": "2023-08-24T15:13:16.000", "toTime": "2023-08-25T15:13:16.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "SHIPPING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:16.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:16.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:16.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 7, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:31.000", "fromTime": "2023-08-24T15:13:31.000", "toTime": "2023-08-25T15:13:31.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "RECEIVING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:31.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:31.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:31.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 8, "eventType": "AggregationEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "AggregationEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:47.000", "fromTime": "2023-08-24T15:13:47.000", "toTime": "2023-08-25T15:13:47.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "UNLOADING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "DELETE", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:47.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:47.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:47.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 9, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:14:10.000", "fromTime": "2023-08-24T15:14:10.000", "toTime": "2023-08-25T15:14:10.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "STORING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:14:10.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:14:10.000", "ErrorDeclarationTimeTo": "2023-08-25T15:14:10.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } } ], "identifiersNodeInfo": [ { "identifiersId": 1, "identifierSyntax": "URN", "instanceData": { "identifierType": "sgtin", "gcpLength": 10, "sgtin": "11111111111111", "serialType": "range", "rangeFrom": 100 }, "classData": { "identifierType": "lgtin", "gcpLength": 10, "quantityType": "Variable Measure Quantity", "uom": "KGM", "lgtin": "22222222222222", "serialType": "range", "rangeFrom": 200, "quantity": 20 } }, { "identifiersId": 5, "identifierSyntax": "URN", "parentData": { "identifierType": "sscc", "gcpLength": 9, "gcp": "8437438787", "serialType": "range", "rangeFrom": 200 } }, { "identifiersId": 10, "identifierSyntax": "URN", "instanceData": { "identifierType": "sgtin", "gcpLength": 10, "sgtin": "11111111111111", "serialType": "range", "rangeFrom": 100 }, "classData": { "identifierType": "lgtin", "gcpLength": 10, "quantityType": "Variable Measure Quantity", "uom": "KGM", "lgtin": "22222222222222", "serialType": "range", "rangeFrom": 200, "quantity": 20 } } ], "connectorsInfo": [ { "ID": 1, "name": "connector1", "source": "2", "target": "4", "hideInheritParentCount": true, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 2, "name": "connector2", "source": "3", "target": "4", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 0 }, { "ID": 3, "name": "connector3", "source": "1", "target": "2", "hideInheritParentCount": true, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 4, "name": "connector4", "source": "1", "target": "3", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 0 }, { "ID": 5, "name": "connector5", "source": "5", "target": "4", "hideInheritParentCount": false }, { "ID": 7, "name": "connector7", "source": "6", "target": "7", "hideInheritParentCount": true, "epcCount": 1, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 9, "name": "connector9", "source": "8", "target": "9", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 10, "name": "connector10", "source": "7", "target": "8", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 }, { "ID": 12, "name": "connector12", "source": "4", "target": "6", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 }, { "ID": 13, "name": "connector13", "source": "10", "target": "9", "hideInheritParentCount": false, "epcCount": 5, "inheritParentCount": 0, "classCount": 1, "quantity": 0 } ], "drawflowInfo": { "drawflow": { "Home": { "data": { "1": { "id": 1, "name": "Identifiers", "data": { "ID": 1, "eventType": "Identifiers" }, "class": "Identifiers", "html": "Identifiers", "typenode": "vue", "inputs": {}, "outputs": { "output_1": { "connections": [ { "node": "2", "output": "input_1" }, { "node": "3", "output": "input_1" } ] } }, "pos_x": 72, "pos_y": 267 }, "2": { "id": 2, "name": "Events", "data": { "ID": 2, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "1", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_2" } ] } }, "pos_x": 271, "pos_y": 162 }, "3": { "id": 3, "name": "Events", "data": { "ID": 3, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "1", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_2" } ] } }, "pos_x": 276, "pos_y": 383 }, "4": { "id": 4, "name": "Events", "data": { "ID": 4, "eventType": "AggregationEvent" }, "class": "AggregationEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "5", "input": "output_1" } ] }, "input_2": { "connections": [ { "node": "2", "input": "output_1" }, { "node": "3", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "6", "output": "input_1" } ] } }, "pos_x": 528, "pos_y": 247 }, "5": { "id": 5, "name": "ParentIdentifiers", "data": { "ID": 5, "eventType": "ParentID" }, "class": "ParentID", "html": "ParentIdentifiers", "typenode": "vue", "inputs": {}, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_1" } ] } }, "pos_x": 267, "pos_y": 29 }, "6": { "id": 6, "name": "Events", "data": { "ID": 6, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "4", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "7", "output": "input_1" } ] } }, "pos_x": 739, "pos_y": 240 }, "7": { "id": 7, "name": "Events", "data": { "ID": 7, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "6", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "8", "output": "input_1" } ] } }, "pos_x": 934, "pos_y": 239 }, "8": { "id": 8, "name": "Events", "data": { "ID": 8, "eventType": "AggregationEvent" }, "class": "AggregationEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "7", "input": "output_1" } ] }, "input_2": { "connections": [] } }, "outputs": { "output_1": { "connections": [ { "node": "9", "output": "input_1" } ] } }, "pos_x": 1127, "pos_y": 236 }, "9": { "id": 9, "name": "Events", "data": { "ID": 9, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "8", "input": "output_1" }, { "node": "10", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [] } }, "pos_x": 1311, "pos_y": 219 }, "10": { "id": 10, "name": "Identifiers", "data": { "ID": 10, "eventType": "Identifiers" }, "class": "Identifiers", "html": "Identifiers", "typenode": "vue", "inputs": {}, "outputs": { "output_1": { "connections": [ { "node": "9", "output": "input_1" } ] } }, "pos_x": 1081, "pos_y": 30 } } } } } } ```
Workaround - 2 by direct inherting ```json { "eventNodeInfo": [ { "eventId": 2, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:11:26.000", "fromTime": "2023-08-24T15:11:26.000", "toTime": "2023-08-25T15:11:26.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "COMMISSIONING", "disposition": "ACTIVE", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:11:26.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:11:26.000", "ErrorDeclarationTimeTo": "2023-08-25T15:11:26.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 3, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:11:33.000", "fromTime": "2023-08-24T15:11:33.000", "toTime": "2023-08-25T15:11:33.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "COMMISSIONING", "disposition": "ACTIVE", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:11:33.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:11:33.000", "ErrorDeclarationTimeTo": "2023-08-25T15:11:33.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 4, "eventType": "AggregationEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "AggregationEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:12:54.000", "fromTime": "2023-08-24T15:12:54.000", "toTime": "2023-08-25T15:12:54.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "PACKING", "disposition": "IN_PROGRESS", "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:12:54.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:12:54.000", "ErrorDeclarationTimeTo": "2023-08-25T15:12:54.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 6, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:16.000", "fromTime": "2023-08-24T15:13:16.000", "toTime": "2023-08-25T15:13:16.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "SHIPPING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:16.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:16.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:16.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 7, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:31.000", "fromTime": "2023-08-24T15:13:31.000", "toTime": "2023-08-25T15:13:31.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "RECEIVING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:31.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:31.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:31.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 8, "eventType": "AggregationEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "AggregationEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:13:47.000", "fromTime": "2023-08-24T15:13:47.000", "toTime": "2023-08-25T15:13:47.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "UNLOADING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "DELETE", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:13:47.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:13:47.000", "ErrorDeclarationTimeTo": "2023-08-25T15:13:47.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } }, { "eventId": 9, "eventType": "ObjectEvent", "eventInfo": { "eventCount": 1, "identifierSyntax": "URN", "vocabularySyntax": "URN", "eventType": "ObjectEvent", "importEvent": false, "ordinaryEvent": true, "eventTimeSelector": "SpecificTime", "eventTime": { "specificTime": "2023-08-25T15:14:10.000", "fromTime": "2023-08-24T15:14:10.000", "toTime": "2023-08-25T15:14:10.000", "timeZoneOffset": "+02:00" }, "RecordTimeOption": "no", "recordTimeType": "SAME_AS_EVENT_TIME", "readpointselector": null, "readPoint": { "gcpLength": null }, "businesslocationselector": null, "bizLocation": { "gcpLength": null }, "businessStep": "STORING", "disposition": null, "eventID": false, "eventIdType": "UUID", "hashAlgorithm": "sha-256", "action": "ADD", "error": { "ErrorTimeZone": "+02:00", "ErrorDeclarationTimeSelector": "SpecificTime", "ErrorReasonType": null, "errorCorrectiveIdsList": [], "errorCorrectiveCount": 0, "ErrorDeclarationTime": "2023-08-25T15:14:10.000", "ErrorDeclarationTimeFrom": "2023-08-24T15:14:10.000", "ErrorDeclarationTimeTo": "2023-08-25T15:14:10.000", "errorExtensions": [] }, "persistentDispositionCount": 0, "persistentDispositionList": [], "bizTransactionCount": 0, "businessTransactionList": [], "sensorElementList": [], "referencedIdentifier": [], "outputReferencedIdentifier": [], "parentReferencedIdentifier": {}, "userExtensions": [], "ilmd": [], "parentID": "", "epcList": [], "quantityList": [], "outputEPCList": [], "outputQuantityList": [], "sources": [], "destinations": [] } } ], "identifiersNodeInfo": [ { "identifiersId": 1, "identifierSyntax": "URN", "instanceData": { "identifierType": "sgtin", "gcpLength": 10, "sgtin": "11111111111111", "serialType": "range", "rangeFrom": 100 }, "classData": { "identifierType": "lgtin", "gcpLength": 10, "quantityType": "Variable Measure Quantity", "uom": "KGM", "lgtin": "22222222222222", "serialType": "range", "rangeFrom": 200, "quantity": 20 } }, { "identifiersId": 5, "identifierSyntax": "URN", "parentData": { "identifierType": "sscc", "gcpLength": 9, "gcp": "8437438787", "serialType": "range", "rangeFrom": 200 } } ], "connectorsInfo": [ { "ID": 1, "name": "connector1", "source": "2", "target": "4", "hideInheritParentCount": true, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 2, "name": "connector2", "source": "3", "target": "4", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 0 }, { "ID": 3, "name": "connector3", "source": "1", "target": "2", "hideInheritParentCount": false, "epcCount": 5, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 4, "name": "connector4", "source": "1", "target": "3", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 1, "quantity": 0 }, { "ID": 5, "name": "connector5", "source": "5", "target": "4", "hideInheritParentCount": false }, { "ID": 7, "name": "connector7", "source": "6", "target": "7", "hideInheritParentCount": true, "epcCount": 1, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 9, "name": "connector9", "source": "8", "target": "9", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 0, "classCount": 0, "quantity": 0 }, { "ID": 10, "name": "connector10", "source": "7", "target": "8", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 }, { "ID": 11, "name": "connector11", "source": "4", "target": "9", "hideInheritParentCount": true, "epcCount": 5, "inheritParentCount": 0, "classCount": 1, "quantity": 0 }, { "ID": 12, "name": "connector12", "source": "4", "target": "6", "hideInheritParentCount": true, "epcCount": 0, "inheritParentCount": 1, "classCount": 0, "quantity": 0 } ], "drawflowInfo": { "drawflow": { "Home": { "data": { "1": { "id": 1, "name": "Identifiers", "data": { "ID": 1, "eventType": "Identifiers" }, "class": "Identifiers", "html": "Identifiers", "typenode": "vue", "inputs": {}, "outputs": { "output_1": { "connections": [ { "node": "2", "output": "input_1" }, { "node": "3", "output": "input_1" } ] } }, "pos_x": 72, "pos_y": 267 }, "2": { "id": 2, "name": "Events", "data": { "ID": 2, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "1", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_2" } ] } }, "pos_x": 271, "pos_y": 162 }, "3": { "id": 3, "name": "Events", "data": { "ID": 3, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "1", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_2" } ] } }, "pos_x": 276, "pos_y": 383 }, "4": { "id": 4, "name": "Events", "data": { "ID": 4, "eventType": "AggregationEvent" }, "class": "AggregationEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "5", "input": "output_1" } ] }, "input_2": { "connections": [ { "node": "2", "input": "output_1" }, { "node": "3", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "9", "output": "input_1" }, { "node": "6", "output": "input_1" } ] } }, "pos_x": 528, "pos_y": 247 }, "5": { "id": 5, "name": "ParentIdentifiers", "data": { "ID": 5, "eventType": "ParentID" }, "class": "ParentID", "html": "ParentIdentifiers", "typenode": "vue", "inputs": {}, "outputs": { "output_1": { "connections": [ { "node": "4", "output": "input_1" } ] } }, "pos_x": 267, "pos_y": 29 }, "6": { "id": 6, "name": "Events", "data": { "ID": 6, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "4", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "7", "output": "input_1" } ] } }, "pos_x": 739, "pos_y": 240 }, "7": { "id": 7, "name": "Events", "data": { "ID": 7, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "6", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [ { "node": "8", "output": "input_1" } ] } }, "pos_x": 934, "pos_y": 239 }, "8": { "id": 8, "name": "Events", "data": { "ID": 8, "eventType": "AggregationEvent" }, "class": "AggregationEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "7", "input": "output_1" } ] }, "input_2": { "connections": [] } }, "outputs": { "output_1": { "connections": [ { "node": "9", "output": "input_1" } ] } }, "pos_x": 1127, "pos_y": 236 }, "9": { "id": 9, "name": "Events", "data": { "ID": 9, "eventType": "ObjectEvent" }, "class": "ObjectEvent", "html": "Events", "typenode": "vue", "inputs": { "input_1": { "connections": [ { "node": "8", "input": "output_1" }, { "node": "4", "input": "output_1" } ] } }, "outputs": { "output_1": { "connections": [] } }, "pos_x": 796, "pos_y": 497 } } } } } } ```

Just suggesting these workarounds as we do not have a direct option to adopt currently, Let us know if in case these would suffice your needs. Meanwhile, We will again discuss this internally and see if we can come up with a better solution to handle this. If we want to support these kinds of inheritance may mean that we need to keep track of all events and their identifiers.

Thanks and best regards, Aravinda

RalphTro commented 1 year ago

Ingenious. Many thanks, @Aravinda93 !

From my POV, we can already close this ticket as both workarounds you suggested (especially the second one) should satisfy the need to support such scenarios.

Aravinda93 commented 1 year ago

Dear @RalphTro

Glad you are happy with the solution and everything is working as expected. Based on your confirmation closing the ticket.

Thanks and best regards, Aravinda