-
Notifications
You must be signed in to change notification settings - Fork 34
EPCIS Object Delete
This page describes the XML to JSON mappings for an Object delete (Decommission Event).
Note: ILMD (Instance/Lot Master Data) also generates (layer: 'object', label: 'lotILMD')
This section shows the GS1 XML to JSON mappings. JSON keys are on the left, and the XPaths to the corresponding tag in GS1 XML are on the right, separated by a colon character (:).
// Context Node: /epcis:EPCISDocument/EPSICBody/EventList/ObjectEvent
{
"assetIdUri": "urn:ibm:provenance:asset:transaction:order:<string>:default:default:<string>",
"organization": "<string>",
"layer": "event",
"label": "decommission",
"data":
{
"eventID" : "baseExtension/eventID",
"eventTime" : "eventTime",
"generationInfo" : {
"isConnectorGenerated" : "true | false",
"generatedFromEventID" : ""
},
"recordTime" : "recordTime",
"eventTimeZoneOffset": "eventTimeZoneOffset",
"epcList" : [
"epcList/epc",
...
],
// Context Node: extension/quantityList
"quantityList" : [
{
"epcClass" : "epcClass",
"quantity" : "quantity",
"quantity_uom" : "uom",
},
...
],
"flatEPCList" : [
"extension/quantityList/epcClass",
"epcList/epc",
...
],
"flatGTINList" : [
"extension/quantityList/epcClass",
...
],
"action" : "DELETE",
"bizStep" : "bizStep",
"disposition" : "disposition",
"readPoint" : "readPoint/id",
"bizLocation" : "bizLocation",
"sourceList" : [
{
"type" : "sourceList/source/@type",
"source" : "sourceList/source"
},
...
],
"destinationList" : [
{
"type" : "destinationList/destination/@type",
"destination" : "destinationList/destination",
},
...
],
// Context Node: bizTransactionList
"bizTransactionList" : [
{
"type" : "bizTransaction/@type",
"bizTransaction" : "bizTransaction"
},
...
]
}
The following example shows a valid GS1 XML file for input. The JSON output follows.
Note: The following fields have been removed for GDPR compliance:
- StandardBusinessDocumentHeader.Sender.ContactInformation (all sub-elements)
- StandardBusinessDocumentHeader.Receiver.ContactInformation (all sub-elements)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<epcis:EPCISDocument
xmlns:epcis="urn:epcglobal:epcis:xsd:1"
xmlns:cbvmda="urn:epcglobal:cbv:mda"
xmlns:example="http://ns.example.com/epcis"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" creationDate="2005-07-11T11:30:47.0Z" schemaVersion="1.2">
<EPCISBody>
<EventList>
<ObjectEvent>
<eventTime>2013-06-08T14:58:56.591Z</eventTime>
<!--WHEN-->
<!--MANDATORY. UTC time (ISO 8601) when event occurred.-->
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<!--OPTIONAL. Time-zone of location, as an offset from UTC.-->
<baseExtension>
<eventID>urn:uuid:string</eventID>
<!--OPTIONAL. Unique ID for the event. If not specified, it will be assigned by the system and returned in the body of the response.-->
</baseExtension>
<epcList>
<epc>urn:epc:id:sscc:string.string</epc>
<epc>urn:epc:id:sgtin:string.string.string</epc>
<!--Additional entries go here-->
</epcList>
<!--WHAT-->
<!--MANDATORY that either epcList or quantityList (see below) be present.-->
<!--List of decommissioned instance-level objects (SSCC, SGTIN).-->
<!--LGTINs and other class-level objects go in quantityList (see below)-->
<!--General SGTIN syntax: urn:epc:id:sgtin:CompanyPrefix.ItemRefAndIndicator.SerialNumber-->
<!--CompanyPrefix.ItemRefAndIndicator ahould have 13 digits (without counting dots).-->
<!--CompanyPrefix is equal to the CompanyPrefix derived from GTIN-14.-->
<!--ItemRefAndIndicator is formed by concatenating the first digit (Indicator) from GTIN-14 with ItemRef digits from GTIN-14.-->
<!--GTIN-14 check digit is dropped.-->
<!--GTIN-12 or GTIN-13 should first be converted to GTIN-14 by adding leading 0s before above conversion.-->
<!--General EPC SSCC syntax: urn:epc:id:sscc:CompanyPrefix.SerialRefAndExtension-->
<!--EPC SSCC is 17 digits-->
<!--CompanyPrefix is equal to the CompanyPrefix in GS1 SSCC-->
<!--SerialReferenceAndExtension is formed by concatenating the first digit (Extension) from GS1 SSCC with SerialRef digits from GS1 SSCC.-->
<!--GS1 SSCC check digit is dropped.-->
<action>DELETE</action>
<!--MANDATORY. EPCIS action. Don't change-->
<bizStep>urn:epcglobal:cbv:bizstep:decommissioning</bizStep>
<!--OPTIONAL. From http://apps.gs1.org/GDD/Pages/clDetails.aspx?semanticURN=urn:gs1:gdd:cl:EPCISBusinessStep&release=1.-->
<!--The business step that this event was a part of.-->
<disposition>urn:epcglobal:cbv:disp:inactive</disposition>
<!--OPTIONAL. From http://apps.gs1.org/GDD/Pages/clDetails.aspx?semanticURN=urn:gs1:gdd:cl:EPCISDisposition&release=1.-->
<!--The condition of the objects after this event.-->
<readPoint><id>urn:epc:id:sgln:string.string.integer</id></readPoint>
<!--OPTIONAL: SGLN for point at which the decommissioning occurred. Used if multiple facilities GLNs (look below for the Mandatory GLN).-->
<!--General syntax of SGLN: urn:epc:id:sgln:CompanyPrefix.LocationReference.Extension-->
<!--CompanyPrefix.LocationReference are the first 12 digits of GLN (13th check digit is not included).-->
<!--Extension can be a single 0 digit (denoting no extension), or can be any number of digits without leading zeros-->
<bizLocation><id>urn:epc:id:sgln:string.string.integer</id></bizLocation>
<!--WHERE-->
<!--MANDATORY: SGLN (extensible global location number) for the business location where the event occurred.-->
<!--See above for SGLN format-->
<bizTransactionList>
<bizTransaction type="urn:epcglobal:cbv:btt:prodorder">urn:epcglobal:cbv:bt:string:string </bizTransaction>
<bizTransaction type="urn:epcglobal:cbv:btt:desadv">urn:epcglobal:cbv:bt:string:string</bizTransaction>
<!--Additional entries go here-->
</bizTransactionList>
<!--WHY-->
<!--OPTIONAL. From Page 28 of https://www.gs1.org/sites/default/files/docs/epc/CBV-Standard-1-2-1-r-2017-05-05.pdf-->
<!--List of business transactions associated with this event.-->
<!--The example above shows a production order and a despatch advice (ASN)-->
<!--General syntax: urn:epcglobal:cbv:bt:GLN:TransactionID-->
<!--Where GLN is the 13-digit GLN of the party that defines the transaction.-->
<!--NOTE: Even though this field is optional, our provenance graph uses events as backbones while tracing.-->
<!--Thus transaction linkages to EPCIS events are required if the client wants correct transaction ordering during trace queries.-->
<extension>
<quantityList>
<quantityElement>
<epcClass>urn:epc:class:lgtin:string.string.string</epcClass>
<!--MANDATORY for quantityElement. Class-level EPCs like LGTINs. See note below for description.-->
<quantity>10</quantity>
<!--MANDATORY for quantityElement.-->
<!--Meaning: 10 cases of LGTIN '0614141.107346' belonging to lot '101'-->
<uom>CS</uom>
<!--MANDATORY for quantityElement. Item quantity unit of measurement. "CS" = Case. Also valid: KG, KGM, EA.-->
<!--From https://www.unece.org/fileadmin/DAM/cefact/recommendations/rec20/rec20_rev3_Annex2e.pdf.-->
</quantityElement>
<!--Additional quantityElement entries go here.-->
</quantityList>
<!--WHAT-->
<!--MANDATORY that either epcList or quantityList be present.-->
<!--List of decommissioned class-level objects like LGTINS (GTIN+lot) along with their quantity and unit of measure.-->
<!--LGTINs should be constructed to be as unique as possible; by concatenating time/dtae of creation with object id, e.g.-->
<!--General LGTIN syntax: urn:epc:id:sgtin:CompanyPrefix.ItemRefAndIndicator.Lot-->
<!--CompanyPrefix.ItemRefAndIndicator ahould have 13 digits (without counting dots).-->
<!--CompanyPrefix is equal to the CompanyPrefix derived from GTIN.-->
<!--ItemRefAndIndicator is formed by concatenating the first digit (Indicator) from GTIN with ItemRef digits from GTIN.-->
<!--GTIN check digit is dropped.-->
<!--If a GTIN (without lot) is to be represented, the following syntax is used:-->
<!--From Page 35 of https://www.gs1.org/sites/default/files/docs/epc/CBV-Standard-1-2-1-r-2017-05-05.pdf:-->
<!--urn:epc:idpat:sgtin:CompanyPrefix.ItemRefAndIndicator.* where -->
<!--CompanyPrefix.ItemRefAndIndicator is 13 digits as above.-->
<sourceList>
<source type="urn:epcglobal:cbv:sdt:owning_party">urn:epc:id:sgln:string.string.integer</source>
<!--Additional source entries go here.-->
<!--OPTIONAL: SGLN of the facility or facilities that goods are being sent from.-->
<!--MANDATORY if this event involves a transfer of goods.-->
</sourceList>
<destinationList>
<destination type="urn:epcglobal:cbv:sdt:owning_party">urn:epc:id:sgln:string.string.integer</destination>
<!--Additional destination entries go here.-->
<!--OPTIONAL: SGLN of the receiving facility or facilities.-->
<!--MANDATORY if this event involves a transfer of goods. -->
</destinationList>
</extension>
</ObjectEvent>
</EventList>
</EPCISBody>
</epcis:EPCISDocument>
The following example shows the JSON output from the input GS1 XML file above.
{
"eventTime": "2013-06-08T14:58:56.591Z",
"eventTimeZoneOffset": "+02:00",
"epcList": [
"urn:epc:id:sscc:string.string",
"urn:epc:id:sgtin:string.string.string"
],
"action": "DELETE",
"bizStep": "urn:epcglobal:cbv:bizstep:decommissioning",
"disposition": "urn:epcglobal:cbv:disp:inactive",
"readPoint": "urn:epc:id:sgln:string.string.integer",
"bizLocation": "urn:epc:id:sgln:string.string.integer",
"bizTransactionList": [
{
"bizTransaction": "urn:epcglobal:cbv:bt:string:string ",
"type": "urn:epcglobal:cbv:btt:prodorder"
},
{
"bizTransaction": "urn:epcglobal:cbv:bt:string:string",
"type": "urn:epcglobal:cbv:btt:desadv"
}
],
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:string.string.string",
"quantity": "10",
"quantity_uom": "CS"
}
],
"sourceList": [
{
"source": "urn:epc:id:sgln:string.string.integer",
"type": "urn:epcglobal:cbv:sdt:owning_party"
}
],
"destinationList": [
{
"destination": "urn:epc:id:sgln:string.string.integer",
"type": "urn:epcglobal:cbv:sdt:owning_party"
}
],
"flatEPCList": [
"string.string.string",
"string.string.string"
],
"flatGTINList": [
"string"
],
"generationInfo": {
"isConnectorGenerated": "false"
},
"eventID": "urn:uuid:string"
}
}
WELCOME!
Modules
Membership
Languages
Browsers
ONBOARDING
Onboarding Steps
Data Requirements
Data Types
Supplier Data
Payload Data
Insights Data
HOW-TO
Join by Invitation
Log in as New User
Authenticate Human Users
Authenticate System Users
Java Sample
Typescript Sample
IIB Sample
Assign User Roles
Upload Data
Automate Data Upload
Convert Spreadsheets
Convert Data
Whitelist Custom URLs
APIs-Swagger
Connector API
Documents API
Converter API
Trace API
Insights API
APIs-Usage
APIs
Insights API
Insights API Usage
Trace API
Connector API Errors
API Error Codes
REFERENCE
GS1
GS1 Identifier Reuse
Authentication
Identifiers
Message Codes
Cryptographic
Signatures
Signature Header
Access Control
Firewall Settings
XML to JSON
EPCIS Aggregation Add
EPCIS Aggregation Delete
EPCIS Object Add
EPCIS Object Delete
EPCIS Object Observed
EPCIS Transformation
Purchase Order
Despatch Advice
Receiving Advice
Master Data Item
Master Data Facility
Standard Business
Document Header