Epcis Object Event in R-COM Gateway
The EpcisObject trigger type in R-COM Gateway enables fine-grained processing of individual EPCIS 2.0 events. Unlike EpcisMessage, which treats the EPCIS document as a batch, EpcisObject extracts and processes each event separately, making it ideal for granular, real-time tracking and decision logic in dynamic workflows.
What Is EpcisObject?
The EpcisObject trigger splits a standard EPCIS 2.0 JSON-LD document into individual events and generates a separate workflow trigger for each one. This supports asynchronous, event-specific routing and filtering.
Supported Trigger Type values include:
- Epcis Object Event
- Epcis Aggregation Event
- Epcis Association Event
- Epcis Transaction Event
- Epcis Transformation Event
Each event is processed independently, enabling dynamic filtering, transformation, or logic execution based on its type and content.
Who Should Use the EpcisObject?
This trigger is ideal if you:
- Work with Auto ID devices (e.g., RFID, barcode) generating EPCIS 2.0 events.
- Need fine-grained, event-level automation in R-COM Gateway.
- Require filtering, transformation, or business logic per event type.
- Want to link each EPCIS event directly to its own workflow execution.
Input Format
The EpcisObject trigger consumes a complete EPCIS 2.0 JSON-LD document, structured as per GS1 standards. This document includes:
- Header: Metadata like creation date, sender, etc.
- EventList: One or more EPCIS events of various types.
Each event in the list is extracted and dispatched to the workflow engine individually.
For more info on EPSIS 2.0 and JSON/JSON-LD bindings, refer to the document.
Example:
R-COM Gateway expects EPCIS documents in GS1 EPCIS 2.0 JSON-LD format, including @context and type fields. Plain JSON is not accepted.
{
"@context": "https://ref.gs1.org/epcis",
"type": "EpcisDocument",
"epcisBody": {
"eventList": [
{
"type": "ObjectEvent",
"eventTime": "2025-07-01T10:00:00Z",
"action": "ADD",
"bizStep": "shipping",
"epcList": ["urn:epc:id:sgtin:0****41.*****6.2**7"]
},
{
"type": "TransactionEvent",
"eventTime": "2025-07-01T10:05:00Z",
"action": "OBSERVE",
"parentID": "urn:epc:id:sscc:*****1.123******90",
"bizTransactionList": [
{
"type": "po",
"id": "http://transaction.example.com/po/1**45"
}
]
}
]
}
}
Event Fields Available to Workflows
Each extracted event exposes common fields into the workflow trigger context:
| Property | Type |
|---|---|
| Type | string |
| EventTime | DateTimeOffset |
| EventTimeZoneOffset | string |
| Action | string |
| BizStep | string |
| Disposition | string |
| ReadpointID | string |
| BizLocationID | string` |
Type-specific fields (depending on event type):
| Event Type | Field Name | Data Type |
|---|---|---|
| ObjectEvent | EpcisList | List<string> |
BizTransactionList | List<Dictionary<string, string>> | |
| AggregationEvent | ParentID | string |
ChildEPCs | List<string> | |
| AssociationEvent | ParentID | string |
ChildEPCs | List<string> | |
AssociationType | string | |
| TransactionEvent | ParentID | string |
EpcList | List<string> | |
BizTransactionList | List<Dictionary<string, string>> | |
| TransformationEvent | InputEPCList | List<string> |
OutputEPCList | List<string> | |
TransformationID | string |
All of these are automatically injected into the workflow context when the trigger is executed.
Filtering Support
The EpcisObject trigger supports event-level filtering based on the following standard fields:
- Action
- BizStep
- Disposition
- ReadpointID
- BizLocationID
Depending on the event type, the following fields can also be used for filtering:
- ParentID
- AssociationType
- TransformationID
This makes it possible to route or reject events dynamically based on their properties at ingestion time.
How It Works in R-COM Gateway
- Configure a REST API route or MQTT topic with Epcis Object Event as the event type.
- Gateway splits the EPCIS 2.0 JSON-LD into individual events. Supported Trigger Type values are:
- Epcis Object Event
- Epcis Aggregation Event
- Epcis Association Event
- Epcis Transaction Event
- Epcis Transformation Event
-
Configure Event Rules with one of the displayed Trigger Type values below. The data from the selected event is shared with the workflow.
- Epcis object event
- Epcis aggregation event
- Epcis association event
- Epcis transaction event
- Epcis transformation event
-
Filter the event as needed. Refer to the filter section to know more about available filters.
-
Select Validate. When the Event trigger section shows Valid, choose the target workflow and workflow version.
-
Now you can map the available EPCIS Event types to the available Workflow parameters.
Inside the workflow, you can:
- Convert the file
- Validate or log the document
- Forward it to another system
- Store it in a database
- and more.
✅ Use Case Example
Scenario: A packaging line publishes EPCIS 2.0 events to R-COM Gateway whenever a carton is sealed or associated with a pallet.
- Trigger Type: Epcis Object Event
- Event Type:
AggregationEvent - Filtering: Only process events where
BizStep = packingandDisposition = active - Workflow:
CartonToPalletTrackingWorkflow - Result: Each packing event triggers a check on pallet capacity and logs carton-pallet associations.
When to Use EpcisObject vs EpcisMessage
| Use Case | Recommended Trigger |
|---|---|
| Batch upload with no filtering | EpcisMessage |
| Real-time per-event workflows | EpcisObject |
| Need to inspect individual fields | EpcisObject |
| Event grouping is important | EpcisMessage |