EPCIS
Introduction
EPC Information Services (EPCIS) is an EPCglobal standard designed to enable EPC-related data sharing within and across enterprises. This data sharing is aimed at enabling participants in the EPCglobal Network to obtain a common view of the disposition of EPC-bearing objects within a business context. The initial version of the EPCIS standard was ratified on April 12, 2007 and provided basic capability that meets the requirements of a set of use cases that the EPCglobal community identified as a minimal useful set. As such, the EPCIS standard can be used by any application in any industry. However, the standard supports extensibility so end users and industry groups can address specific application and industry use cases through industry and custom extensions or companion specifications.
The EPCIS standard defines standard interfaces to enable EPC-related data to be captured and subsequently to be queried using a set of service operations and an associated data model. The capture and query of EPC-related data will typically involve the use of persistent databases, though application-to-application sharing can occur without persistent databases. The standard specifies only the interfaces between applications that capture EPC-related data and those that need access to it. It does not specify how the service operations or databases themselves should be implemented. The interfaces enable interoperability while the implementations allow for competition.
Relationship to the EPCglobal Architecture Framework
EPCIS differs from elements at the lower layers of the EPCglobal Architecture in three key respects:
- EPCIS deals explicitly with historical data. The lower layers of the stack deal exclusively with real-time processing of EPC data.
- EPCIS often deals not just with raw EPC observations, but with observations that include meaning relative to the physical world and to specific business steps and business processes. The lower layers of the stack are purely observational in nature.
- EPCIS typically operates and exists in a more diverse IT environment than the lower levels of the EPCglobal Architecture. This is due to a combination of factors including the desire to share EPCIS data between enterprises that are likely to have different solutions, the persistent nature of EPCIS data, and to EPCIS being the natural point of entry into other enterprise systems.
The EPCglobal Architecture defines and includes a list of EPC-related roles and standards.
- EPCIS Capturing Application: Supervises the operation of the lower-level architectural elements and provides business context by coordinating with other sources of information involved in executing a particular business process step.
- EPCIS Accessing Application: Responsible for carrying out overall enterprise business processes aided by EPC-related data.
- EPCIS-enabled Repository: Records EPCIS-level events and makes them available for query by EPCIS Accessing Applications.
- Partner Application: Trading Partner systems that perform the same role as an EPCIS Accessing Application, but outside of the responding party’s network.
EPCIS Interfaces
There are three EPCIS Interfaces.
- The EPCIS Capture Interface defines the delivery of EPCIS events from EPCIS Capturing Applications to EPCIS Repositories and to EPCIS Accessing Applications and trading partners via a real-time push.
- The EPCIS Query Control Interface defines operations that EPCIS Accessing Applications and trading partners can use to obtain EPCIS data subsequent to capture. The EPCIS Query Control Interface provides two modes of interaction. In “on-demand” or “synchronous” mode, a client makes a request through the EPCIS Query Control Interface and receives a response immediately. In “standing request” or “asynchronous” mode, a client establishes a subscription for a periodic query. Each time the periodic query is executed, the results are delivered asynchronously to a recipient via the EPCIS Query Callback Interface.
- The EPCIS Query Callback Interface may also be used to deliver information immediately upon capture.
Event Data and Master Data
There are two kinds of EPCIS data: event data and master data. Event data is created in the process of carrying out business processes, and is captured through the EPCIS Capture Interface and made available for query through the EPCIS Query Interfaces. Master data is additional data that provides the necessary context for interpreting the event data. It is available for query through the EPCIS Query Control Interface, but the means by which master data enters the system is not specified in the 1.0 specification.
The standard defines the structure of meaning of event and master data through an Abstract Data Model, a Data Definition Layer and a Core Event Types module. The Core Event Types module specifies the events that are created by EPCIS Capturing Applications and published to an EPCIS infrastructure using the EPCIS Capture Interface described above. These events are returned to EPCIS Accessing Applications in response to requests invoked through the EPCIS Query Control Interface or in response to standing requests made by an EPCIS Accessing Application. The five event types defined within the Core Event Types module are:
- EPCISEvent: a base class for all event types.
- ObjectEvent: represents an event that happened to one or more entities denoted by EPCs.
- AggregationEvent: represents an event that happened to one or more entities denoted by EPCs that are physically aggregated together.
- QuantityEvent: represents an event concerned with a specific quantity of entities sharing a common EPC class, but where the individual identities of the entities are not specified.
- TransactionEvent: represents an event in which one or more entities denoted by EPCs become associated or disassociated with one or more identified business transactions.