The Electronic Product Code Information System (EPCIS) is a specification for capturing and exchanging event visibility data across the global logistics chain. Version 2.0 is a major release that adds JSON, JSONLD and RDF payload formats, sensor reports, and other major features.
GS1 is an international organization that sets the global standards in transport and logistics
JSONLD term (alias) used for this property. The default is the property local name, which is captured in rdfs:label.
JSONLD term (alias) used for the URI of nodes of this class. There is no default: many EPCIS classes use blank nodes instead of the standard @id JSONLD term.
A logistics event. This is a common superclass (base type) for all EPCIS events. All of the more specific event types are subclasses of EPCISEvent.
The event type AggregationEvent describes events that apply to objects that have been aggregated to one another. In such an event, there is a set of 'contained' objects that have been aggregated within a 'containing' entity that's meant to identify the aggregation itself. This event type is intended to be used for 'aggregations', meaning an association where there is a strong physical relationship between the containing and the contained objects such that they will all occupy the same location at the same time, until such time as they are disaggregated.
The event type AssociationEvent describes the association or disassociation of one or several physical objects with a parent object or a specific physical location. Like the AggregationEvent, the AssociationEvent is also used to capture associations where there is a strong physical relationship between the containing and the contained objects such that they will all occupy the same location at the same time, until such time as they are disaggregated. However, the AggregationEvent does not allow for associations of objects with physical locations; if action is DELETE while omitting the childEPC and childQuantityList field, all contained children are disaggregated from the containing parent. Because there are situations in which associations are more permanent, i.e. beyond the physical flow of goods (e.g. packing/unpacking and loading/unloading), an AssociationEvent SHOULD be used: (a) when objects need to be associated with a physical location or (b) when the parent object could also be subject to other, more temporary associations (i.e. captured using AggregationEvent).
An ObjectEvent captures information about an event pertaining to one or more physical or digital objects identified by instance-level (EPC) or class-level (EPC Class) identifiers. In most situations, an ObjectEvent is envisioned to represent an actual observations of objects, but strictly speaking it can be used for any event a Capturing Application wants to assert about objects, including for example capturing the fact that an expected observation failed to occur.
The event type TransactionEvent describes the association or disassociation of physical or digital objects to one or more business transactions. While other event types have an optional bizTransactionList field that may be used to provide context for an event, the TransactionEvent is used to declare in an unequivocal way that certain objects have been associated or disassociated with one or more business transactions as part of the event.
A transformation business processes that takes a longer period of time than a single TransformationEvent, so is associated with a series of such events. When events share the same Transformation, the meaning is that the inputs to any of those events may have contributed in some way to each of the outputs in any of those same events.
A TransformationEvent captures information about an event in which one or more physical or digital objects identified by instance-level (EPC) or class-level (EPC Class) identifiers are fully or partially consumed as inputs and one or more objects identified by instance-level (EPC) or class-level (EPC Class) identifiers are produced as outputs. The TransformationEvent captures the relationship between the inputs and the outputs, such that any of the inputs may have contributed in some way to each of the outputs.
Document that describes a particular business transaction. An example is a specific Purchase Order or Despatch Advice. Business Transaction information may be included in EPCIS events to record an event's participation in particular business transactions.
An EPCISDocument is a means to transport a collection of EPCIS events, optionally accompanied by relevant master data, as a single electronic document. It is used by the concrete bindings of the EPCIS Capture Interface. In addition, trading partners may by mutual agreement use it as a single electronic document.
Intermediate node that is connected to EPCISDocument using epcisBody, and includes a list of events using eventList
Intermediate node that is connected to EPCISDocument using epcisHeader, and may include master data using masterData
When an event contains an ErrorDeclaration element, it indicates that this event has special semantics: instead of the normal semantics which assert that various things happened and that various things are true following the event, the semantics of this event assert that those prior assertions are in error. An event containing an ErrorDeclaration element SHALL be otherwise identical to a prior event, 'otherwise identical' meaning that all fields of the event other than the ErrorDeclaration element and the value of recordTime are exactly equal to the prior event. (Note that includes the eventID field: the eventID of the error declaration will be equal to the eventID of the prior event or null if the eventID of the prior event is null. This is the sole case where the same non-null eventID may appear in two events.) The semantics of an event containing the ErrorDeclaration element are that all assertions implied by the prior event are considered to be erroneous, as of the specified declarationTime. The prior event is not modified in any way, and subsequent queries will return both the prior event and the error declaration.
Instance/Lot master data (ILMD) is data that describes a specific instance of a physical or digital object, or a specific batch/lot of objects that are produced in batches/lots. ILMD consists of a set of descriptive attributes that provide information about one or more specific objects or lots. It is similar to ordinary master data, which also consists of a set of descriptive attributes that provide information about objects. But whereas master data attributes have the same values for a large class of objects, (e.g., for all objects having a given GTIN), the values of ILMD attributes may be different for much smaller groupings of objects (e.g., a single batch or lot), and may be different for each object (i.e., different for each instance).
Intermediate node that is connected to EPCISDocumentHeader using masterData, and may include vocabulary elements using vocabularyList
The persistentDisposition field of an event specifies one or more business conditions of the event's objects, subsequent to the event. One or more persistentDisposition values can be set or unset, independently of each other. Values that are set are considered to remain valid until explicitly unset. Like disposition, persistentDisposition leverages the DispositionID Standard Vocabulary.
A QuantityElement is a structure that identifies objects identified by a specific class-level identifier, either a specific quantity or an unspecified quantity.
A SensorElement is a structure that contains an optional sensorMetadata structure and one or several sensorReport structures
A class containing one or several metadata attributes, which are applicable to all sensorReport structures that are part of the same sensorElement
A class containing one or several attributes that pertain to a specific sensor observation.
Provides additional business context when an EPCIS event is part of a business transfer; that is, a process in which there is a change of location, or transfer of ownership, or transfer of possession (responsibility and/or custody) of physical or digital objects. Within a specified type of transfer (indicated by sourceOrDestinationType), the business transfer is from the Source to the Destination.
How this event relates to the lifecycle of the EPCs named in this event.
(Optional) The business location where the objects associated with the EPCs may be found, until contradicted by a subsequent event.
(Optional) Storage location of an electronic document accommodating product- or application-specific business rules on which basis the EPCIS event was triggered. For instance, an EPCIS capturing application might only trigger an event if the 'what' dimension contains a certain product class (e.g. GTIN of a cold-storage pharmaceutical product) AND a certain temperature threshold was exceeded. Note: In contrast to a business transaction, a business rules file is not a standard-defined, interoperably communicated business document such as an invoice. In addition, the set of rules typically will only change in an infrequent manner.
(Optional) The business step of which this event was a part.
(Optional) An unordered list of business transactions that define the context of this event.
An identifier that indicates the type of BizTransaction document (e.g. Purchase Order, Despatch Advice).
(Optional) Similar to stringValue, for Boolean value.
CertificationDetails relevant for Objects, Places and/or Organizations mentioned in this Event
(Optional) Identifies a specific chemical substance. If chemicalSubstance is present, a sensorReport element SHALL NOT include microorganism.
(Optional) An unordered list of the EPCs of contained objects identified by instance-level identifiers. An AggregationEvent SHALL contain either a nonempty childEPCs, a non-empty childQuantityList, or both, except that both childEPCs and childQuantityList MAY be empty if action is DELETE, indicating that all children are disaggregated from the parent. An AssociationEvent SHALL contain either a non-empty childEPCs, a non-empty childQuantityList, or both, except that both childEPCs and childQuantityList MAY be empty if action is DELETE, indicating that all children are disassociated from the parent.
(Optional) An unordered list of one or more QuantityElements identifying (at the class level) contained objects. An AggregationEvent SHALL contain either a nonempty childEPCs, a non-empty childQuantityList, or both, except that both childEPCs and childQuantityList MAY be empty if action is DELETE, indicating that all children are disaggregated from the parent. An AssociationEvent SHALL contain either a non-empty childEPCs, a non-empty childQuantityList, or both, except that both childEPCs and childQuantityList MAY be empty if action is DELETE, indicating that all children are disaggregated from the parent.
(Optional) Some measurement types (e.g. force, pressure) are vectors (having magnitude and direction in space), whereas others (e.g. temperature, absolute humidity) are scalars. The components of a vector in a coordinate system can be specified by setting the value of component to indicate which vector component has magnitude indicated by the value parameter. The SensorReport element is then repeated as two or three instances to express each component of the vector in two or three dimensions, the pair or trio of SensorReport elements sharing the same values for all fields except value, component and uom (which may differ for each vector component). If present, the SensorReport element MUST also include the value and uom fields.
(Optional) A URI identifying the Coordinate Reference System. If omitted, the World Geodetic System 1984 (WGS-84) is assumed to apply.
(Optional) If present, indicates that the events having the specified URIs as the value of their eventID fields are to be considered as 'corrections' to the event declared erroneous by this event. This provides a means to link an error declaration event to one or more events that are intended to replace the erroneous event.
(Optional) Storage location of an electronic document accommodating the data processing method of the contained sensor data, if applicable. For instance, before sensor data is captured in an EPCIS event, the latter might be redacted or refined by means of specific algorithms.
The date and time at which the declaration of error is made. (Note that the eventTime of this event must match the eventTime of the prior event being declared erroneous, so the declarationTime field is required to indicate the time at which this event is asserted.)
(Optional) An unordered list of Destination elements that provide context about the terminating endpoint of a business transfer of which this event is a part.
(Optional) Device from which the sensor data originates.
(Optional) Storage location of an electronic document accommodating metadata of the device from which the sensor data originates.
(Optional) The business condition of the objects associated with the EPCs, presumed to hold true until contradicted by a subsequent event.
(Optional) The highest (most recent) value of a given observation period, as transmitted by a sensor device. If present, the endTime SHALL be less (earlier) than or equal to the eventTime value.
A class-level identifier for the class to which the specified quantity of objects belongs.
(Optional) An unordered list of one or more EPCs naming specific objects to which the event pertained.
Body (EPCISDocumentBody) of an EPCISDocument
Header (EPCISDocumentHeader) of an EPCISDocument
(Optional) If present, indicates that this event serves to assert that the assertions made by a prior event are in error.
List of EPCIS events included in a document: connects EPCISDocumentBody to EPCISEvent
The date and time at which the EPCIS Capturing Applications asserts the event occurred.
The time zone offset in effect at the time and place the event occurred, expressed as an offset from UTC. The value of this field SHALL be a string consisting of the character '+' or the character '-', followed by two digits whose value is within the range 00 through 14 (inclusive), followed by a colon character ':', followed by two digits whose value is within the range 00 through 59 (inclusive), except that if the value of the first two digits is 14, the value of the second two digits must be 00. For example, the value +05:30 specifies that where the event occurred, local time was five hours and 30 minutes later than UTC (that is, midnight UTC was 5:30am local time).
(Optional) A sensor alert, including an alarm condition or an error condition. When this field is used, extra details can be specified via `booleanValue` or `uriValue`.
(Optional) Similar to stringValue, for HexBinary value.
(Optional) Associates several TransformationEvents with a longer-running Transformation process, therefore linking them together.
(Optional) Instance/Lot master data that describes the objects created during this event.
(Optional) An unordered list of one or more EPCs identifying (at the instance level) objects that were inputs to the transformation.
(Optional) An unordered list of one or more QuantityElements identifying (at the class level) objects that were inputs to the transformation. See below for constraints on when inputQuantityList may be omitted.
(Optional) the instance identifier of an EPCISDocument.
Master data included in a document: connects EPCISDocumentHeader to MasterData
(Optional) Similar to minValue, for the maximum quantitative value.
(Optional) The arithmetic mean of the values of the property specified by the type as part of the sensorReport element. If a startTime and endTime field is present, the meanValue SHALL pertain to the resulting period. Otherwise, it SHALL pertain to the business process step the EPCIS event captures.
An identifier that indicates what kind of measurement the SensorReport pertains to (e.g. Length, Mass, Temperature).
(Optional) Identifies a specific microorganism species. If microorganism is present, a sensorReport element SHALL NOT include chemicalSubstance.
(Optional) Minimum quantitative value of the property specified by type , as part of the sensorReport element. If a startTime and endTime field is present, the minValue SHALL pertain to the resulting period. Otherwise, minValue SHALL pertain to the business process step the EPCIS event captures.
(Optional) An unordered list of one or more EPCs naming (at the instance level) objects that were outputs from the transformation.
(Optional) An unordered list of one or more QuantityElements identifying (at the class level) objects that were outputs from the transformation. See below for constraints on when outputQuantityList may be omitted.
(Optional when action is OBSERVE, required otherwise) The identifier of the parent of the aggregation or association. When the parent identifier is an EPC, this field SHALL contain the 'pure identity' URI for the EPC as specified in the GS1 Tag Data Standard
(Optional) Percentile rank, signifying the percentage of observations in a frequency distribution that are equal to or lower than it. percRank SHALL only be used in conjunction with the field percValue.
(Optional) The percentile value, at or below which a given percentage of observations (as specified by percRank) may be found. percValue SHALL only be used in conjunction with the field percRank.
(Optional) One or more business conditions of the objects associated with the EPCs. Each persistentDisposition is explicitly set and unset independently of other persistentDisposition values.
A number that specifies how many or how much of the specified EPCClass is denoted by this QuantityElement.
(Optional) An unordered list of one or more QuantityElements identifying (at the class level) objects to which the event pertained.
(Optional) Storage/service location of the raw sensor data on which the aggregated/business-oriented data contained in the sensorElement is based.
(Optional) The read point at which the event took place.
(Optional) An element from a standard vocabulary that specifies the reason the prior event is considered erroneous.
(Optional) The intended receiver of an EPCISDocument.
(Optional) The date and time at which this event was recorded by an EPCIS Repository. This field SHALL be ignored when an event is presented to the EPCIS Capture Interface, and SHALL be present when an event is retrieved through the EPCIS Query Interfaces. The recordTime does not describe anything about the real-world event, but is rather a bookkeeping mechanism that plays a role in the interpretation of standing queries
(Optional) Standard deviation of the values of the property specified by type , as part of the sensorReport element. sDev SHALL only be used in conjunction with the field meanValue.
(Optional) The sender of an EPCISDocument.
Connects event to one or more SensorElements
(Optional) An element containing one or several metadata attributes, which are applicable to all sensorReport elements that are part of the same sensorElement.
An element containing one or several attributes that pertain to a specific sensor observation.
The set field within persistentDisposition may specify a list of persistentDisposition URI values to be set.
(Optional) An unordered list of Source elements that provide context about the originating endpoint of a business transfer of which this event is a part.
An identifier that denotes the specific source or destination of a business transfer."@en ; Its type (gs1:Organization or gs1:Place) must correlate with sourceOrDestinationType.
An identifier that indicates the role of SourceOrDestination in a transfer (Owning Party, Possessing Party; or Location). Must correlate with the type of sourceOrDestination: gs1:Organization for the first two; gs1:Place for the last one.
(Optional) The lowest (earliest) value of a given observation period as transmitted by a sensor device. If present, the startTime SHALL be less (earlier) than the eventTime value and the endTime value.
(Optional) The String value of the property specified by the type as part of the sensorReport element. If a time field is present, the stringValue SHALL pertain to this point in time. Otherwise, it SHALL refer to the eventTime.
(Optional) The actual point in time of an observation as transmitted by a sensor device. If present, the time value SHALL be less (earlier) than or equal to the eventTime value. It SHALL also contain a time zone offset value. The coordination and integrity of distributed computing requires time synchronisation of EPCIS events conveying sensor data. Therefore, when populating the time, startTime, and endTime field, EPCIS capture applications SHOULD apply established time synchronisation protocols such as IEEE 1588-2008, which provides a standard method to synchronise device clocks in a network. Note: The eventTime applies to the completion of a business step, not a sensor observation. For instance, for a receiving event accommodating a sensor element, the eventTime indicates when goods were received ' it gives no information when certain conditions (e.g. a specific temperature value) held true. In some circumstances, event and sensor observation times may correspond though (e.g. if a quality inspector checks certain properties of goods). In such cases, indicating the eventTime may be sufficient.
A unique identifier that links this event to other TransformationEvents having an identical value of transformationID. When specified, all inputs to all events sharing the same value of the transformationID may contribute to all outputs of all events sharing that value of transformationID. If transformationID is omitted, then the inputs of this event may contribute to the outputs of this event, but the inputs and outputs of other events are not connected to this one.
The unset field within persistentDisposition may specify a list of persistentDisposition URI values to be unset (revoked).
(Optional) Unit of measure by which the specified value(s) of the property specified by type should be interpreted. If there is no value, minValue, maxValue, averageValue or percValue field present, uom SHALL be omitted. When a uom field is present, its value SHALL be the 2- or 3-character code for a physical unit specified in the 'Common Code' column of UN/CEFACT Recommendation'20 [CEFACT20]. Note: GS1 provides a tool containing a machine-readable file which enables the automatic conversion between quantitative values expressed using UN/CEFACT common codes. [https://ref.gs1.org/tools/UnitConverterUNECERec20]
(Optional) Similar to stringValue, for a URI value.
(Optional) Value of the property specified by the type as part of the sensorReport element. If a chemicalSubstance or microorganism field is present, the value indicates the detected measurement (e.g., of molar mass or concentration) of a chemical substance or microorganism in the physical objects specified in the 'What' dimension. If a time field is present, the value SHALL pertain to this point in time. Otherwise, value SHALL refer to the eventTime.
List of vocabulary elements included in master data: connects MasterData to VocabularyElement