Advanced Scenario - Multiple Fishing Vessels with Transshipment

In this scenario, we are going to cover what happens when you have multiple fishing vessels that are transshipped by the same transshipment vessel and then offloaded, shipped, and received by a processor.

Details

A couple of details about this scenario:

  • This data will be recorded by the processor.
  • The processor is the First Receiver and will take ownership of the products during the transshipment event.
  • Although the illustration shows a single Transshipment icon, technically two transshipment events will take place, one for each fishing vessel.
  • We will use Non-GS1 Identifiers for all of the locations except the processing plant.
  • Because the processor is the one recording the data, we can use the same product definition for both fishing events, because the processor can ensure unique lot numbers. In the event, that a fisherman was recording their own data, they would need to use separate GTINs in order to ensure no collisions on the lot numbers.

Master Data

In order to model this scenario we will need the following master data:

  • Product Definitions
    • Raw Tuna
  • Locations
    • Fishing Vessel #1 (owned by Fisherman #1)
    • Fishing Vessel #2 (owned by Fisherman #2)
    • Transshipment Vessel #1 (owned by Transshipment Company)
    • Port of San Diego (managed by Tuna Processor)
    • Tuna Processing Plant (owned by Tuna Processor)
  • Trading Parties
    • Fisherman #1
    • Fisherman #2
    • Transshipment Company
    • Tuna Processor

EPCIS JSON-LD (Event Data)

{
"@context": [
"https://ref.gs1.org/standards/epcis/epcis-context.jsonld",
{
"gdst": "https://traceability-dialogue.org/epcis/"
}
],
"type": "EPCISDocument",
"creationDate": "2001-12-17T09:30:47.0000000+00:00",
"schemaVersion": "2.0",
"sender": "test",
"receiver": "test",
"instanceIdentifier": "9999",
"epcisBody": {
"eventList": [
{
"type": "ObjectEvent",
"eventTime": "2021-09-28T13:37:42.2550000+00:00",
"eventTimeZoneOffset": "+00:00",
"eventID": "urn:uuid:44b36d39-d494-4533-8ac0-f1ef80649c2c",
"epcList": [],
"action": "ADD",
"bizStep": "urn:gdst:bizstep:fishingEvent",
"disposition": "active",
"bizLocation": {
"id": "urn:gdst:example.org:location:loc:fisherman02.1"
},
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l001",
"quantity": 10000.0,
"uom": "KGM"
}
],
"ilmd": {
"cbvmda:vesselCatchInformationList": {
"cbvmda:vesselCatchInformation": [
{
"cbvmda:fishingGearTypeCode": "urn:gdst:gear:1.2",
"cbvmda:vesselFlagState": "US",
"cbvmda:vesselID": "FV-002",
"cbvmda:vesselName": "Fishing Vessel #2",
"gdst:gpsAvailability": false,
"gdst:imoNumber": "IMO00000002",
"gdst:vesselTripDate": "2021-09-26T13:37:42.2550000+00:00",
"cbvmda:catchArea": "urn:gdst:fao:77"
}
]
},
"cbvmda:certificationList": {
"certification": [
{
"gdst:certificationType": "urn:gdst:certType:fishingAuth",
"certificationAgency": "San Diego Fishing Authority",
"certificationStandard": "San Diego Fishing Authority",
"certificationIdentification": "SDFA-1001"
},
{
"gdst:certificationType": "urn:gdst:certType:harvestCert",
"certificationAgency": "San Diego Fishing Authority",
"certificationStandard": "San Diego Fishing Authority",
"certificationIdentification": "SDFA-1001"
},
{
"gdst:certificationType": "urn:gdst:certType:humanPolicy",
"certificationAgency": "San Diego Fishing Authority",
"certificationStandard": "San Diego Fishing Authority",
"certificationIdentification": "SDFA-1001"
}
]
}
},
"gdst:productOwner": "urn:gdst:example.org:party:fisherman02.0",
"cbvmda:informationProvider": "urn:epc:id:sgln:08600031303.0.0"
},
{
"type": "ObjectEvent",
"eventTime": "2021-09-28T19:00:00.0000000+00:00",
"eventTimeZoneOffset": "+00:00",
"eventID": "urn:uuid:8c7d84dc-cdfd-4817-b462-5b6f46efab43",
"epcList": [],
"action": "OBSERVE",
"bizStep": "urn:gdst:bizstep:transshipment",
"disposition": "active",
"readPoint": {
"id": "geo:0,0"
},
"bizLocation": {
"id": "urn:gdst:example.org:location:loc:transshipment_company.1"
},
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l001",
"quantity": 10000.0,
"uom": "KGM"
}
],
"destinationList": [
{
"type": "owning_party",
"destination": "urn:epc:id:sgln:08600031303.0.0"
}
],
"gdst:productOwner": "urn:epc:id:sgln:08600031303.0.0",
"cbvmda:certificationList": {
"certification": [
{
"gdst:certificationType": "urn:gdst:certType:transshipmentAuth",
"certificationAgency": "San Diego Transshipment Authorization",
"certificationStandard": "San Diego Transshipment Authorization",
"certificationIdentification": "SDTA-1001"
},
{
"gdst:certificationType": "urn:gdst:certType:harvestCoC",
"certificationAgency": "San Diego Transshipment Authorization",
"certificationStandard": "San Diego Transshipment Authorization",
"certificationIdentification": "SDTA-1001"
},
{
"gdst:certificationType": "urn:gdst:certType:humanPolicy",
"certificationAgency": "San Diego Transshipment Authorization",
"certificationStandard": "San Diego Transshipment Authorization",
"certificationIdentification": "SDTA-1001"
}
]
},
"cbvmda:informationProvider": "urn:epc:id:sgln:08600031303.0.0"
},
{
"type": "ObjectEvent",
"eventTime": "2021-09-29T13:37:40.7180000+00:00",
"eventTimeZoneOffset": "+00:00",
"eventID": "urn:uuid:8fa21433-4f32-4ab8-a66e-59efa226e5b7",
"epcList": [],
"action": "ADD",
"bizStep": "urn:gdst:bizstep:fishingEvent",
"disposition": "active",
"bizLocation": {
"id": "urn:gdst:example.org:location:loc:fisherman01.1"
},
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l002",
"quantity": 10000.0,
"uom": "KGM"
}
],
"ilmd": {
"cbvmda:vesselCatchInformationList": {
"cbvmda:vesselCatchInformation": [
{
"cbvmda:fishingGearTypeCode": "urn:gdst:gear:1.2",
"cbvmda:vesselFlagState": "US",
"cbvmda:vesselID": "FV-001",
"cbvmda:vesselName": "Fishing Vessel #1",
"gdst:gpsAvailability": false,
"gdst:imoNumber": "IMO00000001",
"gdst:vesselTripDate": "2021-09-26T13:37:42.2550000+00:00",
"cbvmda:catchArea": "urn:gdst:fao:77"
}
]
},
"cbvmda:certificationList": {
"certification": [
{
"gdst:certificationType": "urn:gdst:certType:fishingAuth",
"certificationAgency": "San Diego Fishing Authority",
"certificationStandard": "San Diego Fishing Authority",
"certificationIdentification": "SDFA-1002"
},
{
"gdst:certificationType": "urn:gdst:certType:harvestCert",
"certificationAgency": "San Diego Fishing Authority",
"certificationStandard": "San Diego Fishing Authority",
"certificationIdentification": "SDFA-1002"
},
{
"gdst:certificationType": "urn:gdst:certType:humanPolicy",
"certificationAgency": "San Diego Fishing Authority",
"certificationStandard": "San Diego Fishing Authority",
"certificationIdentification": "SDFA-1002"
}
]
}
},
"gdst:productOwner": "urn:gdst:example.org:party:fisherman01.0",
"cbvmda:informationProvider": "urn:epc:id:sgln:08600031303.0.0"
},
{
"type": "ObjectEvent",
"eventTime": "2021-09-30T13:37:45.8920000+00:00",
"eventTimeZoneOffset": "+00:00",
"eventID": "urn:uuid:b5af7f5e-837d-498d-bcc9-72538db3ab1f",
"epcList": [],
"action": "OBSERVE",
"bizStep": "urn:gdst:bizstep:transshipment",
"disposition": "active",
"readPoint": {
"id": "geo:12,-12"
},
"bizLocation": {
"id": "urn:gdst:example.org:location:loc:transshipment_company.1"
},
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l002",
"quantity": 10000.0,
"uom": "KGM"
}
],
"destinationList": [
{
"type": "owning_party",
"destination": "urn:epc:id:sgln:08600031303.0.0"
}
],
"gdst:productOwner": "urn:epc:id:sgln:08600031303.0.0",
"cbvmda:certificationList": {
"certification": [
{
"gdst:certificationType": "urn:gdst:certType:transshipmentAuth",
"certificationAgency": "San Diego Transshipment Authorization",
"certificationStandard": "San Diego Transshipment Authorization",
"certificationIdentification": "SDTA-1001"
},
{
"gdst:certificationType": "urn:gdst:certType:harvestCoC",
"certificationAgency": "San Diego Transshipment Authorization",
"certificationStandard": "San Diego Transshipment Authorization",
"certificationIdentification": "SDTA-1001"
},
{
"gdst:certificationType": "urn:gdst:certType:humanPolicy",
"certificationAgency": "San Diego Transshipment Authorization",
"certificationStandard": "San Diego Transshipment Authorization",
"certificationIdentification": "SDTA-1001"
}
]
},
"cbvmda:informationProvider": "urn:epc:id:sgln:08600031303.0.0"
},
{
"type": "ObjectEvent",
"eventTime": "2021-10-01T13:37:52.3610000+00:00",
"eventTimeZoneOffset": "+00:00",
"eventID": "urn:uuid:909fc668-a91c-4dc5-88a6-012eab28dffc",
"epcList": [],
"action": "OBSERVE",
"bizStep": "urn:gdst:bizstep:landing",
"disposition": "active",
"bizLocation": {
"id": "urn:gdst:example.org:location:loc:tuna_processor.port_san_diego"
},
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l001",
"quantity": 10000.0,
"uom": "KGM"
},
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l002",
"quantity": 10000.0,
"uom": "KGM"
}
],
"gdst:productOwner": "urn:epc:id:sgln:08600031303.0.0",
"cbvmda:certificationList": {
"certification": [
{
"gdst:certificationType": "urn:gdst:certType:landingAuth",
"certificationAgency": "San Diego Landing Authority",
"certificationStandard": "San Diego Landing Authority",
"certificationIdentification": "SDLA-001"
},
{
"gdst:certificationType": "urn:gdst:certType:humanPolicy",
"certificationAgency": "San Diego Landing Authority",
"certificationStandard": "San Diego Landing Authority",
"certificationIdentification": "SDLA-001"
}
]
},
"cbvmda:informationProvider": "urn:epc:id:sgln:08600031303.0.0"
},
{
"type": "ObjectEvent",
"eventTime": "2021-10-01T16:30:00.0000000+00:00",
"eventTimeZoneOffset": "+00:00",
"eventID": "urn:uuid:674e45a0-0f33-4c68-af38-d2bcfada54d1",
"epcList": [],
"action": "OBSERVE",
"bizStep": "shipping",
"disposition": "active",
"bizLocation": {
"id": "urn:gdst:example.org:location:loc:tuna_processor.port_san_diego"
},
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l002",
"quantity": 10000.0,
"uom": "KGM"
},
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l001",
"quantity": 10000.0,
"uom": "KGM"
}
],
"gdst:productOwner": "urn:epc:id:sgln:08600031303.0.0",
"cbvmda:informationProvider": "urn:epc:id:sgln:08600031303.0.0"
},
{
"type": "ObjectEvent",
"eventTime": "2021-10-01T22:00:00.0000000+00:00",
"eventTimeZoneOffset": "+00:00",
"eventID": "urn:uuid:e3978e3a-82e9-4262-93f3-6f8d5b0505a6",
"epcList": [],
"action": "OBSERVE",
"bizStep": "receiving",
"disposition": "active",
"bizLocation": {
"id": "urn:epc:id:sgln:08600031303.1.0"
},
"quantityList": [
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l001",
"quantity": 10000.0,
"uom": "KGM"
},
{
"epcClass": "urn:epc:class:lgtin:08600031303.00.l002",
"quantity": 10000.0,
"uom": "KGM"
}
],
"gdst:productOwner": "urn:epc:id:sgln:08600031303.0.0",
"cbvmda:informationProvider": "urn:epc:id:sgln:08600031303.0.0"
}
]
}
}

GS1 Web Vocab JSON-LD (Master Data)

[
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"@type": "gs1:Product",
"gtin": "urn:epc:idpat:sgtin:08600031303.00",
"productName": [
{
"@language": "en-US",
"@value": "Raw Tuna"
}
],
"cbvmda:speciesForFisheryStatisticsPurposesName": [
"YFT"
]
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"cbvmda:vesselFlagState": "US",
"cbvmda:vesselID": "FV-001",
"gdst:imoNumber": "IMO00000001",
"@type": "gs1:Place",
"globalLocationNumber": "urn:gdst:example.org:location:loc:fisherman01.1",
"name": [
{
"@language": "en-US",
"@value": "Fishing Vessel #1"
}
],
"address": {
"@type": "gs1:PostalAddress",
"addressRegion": [
{
"@language": "en-US",
"@value": "CA"
}
],
"countyCode": "US"
}
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"cbvmda:vesselFlagState": "US",
"cbvmda:vesselID": "FV-002",
"gdst:imoNumber": "IMO00000002",
"@type": "gs1:Place",
"globalLocationNumber": "urn:gdst:example.org:location:loc:fisherman02.1",
"name": [
{
"@language": "en-US",
"@value": "Fishing Vessel #2"
}
],
"address": {
"@type": "gs1:PostalAddress",
"addressRegion": [
{
"@language": "en-US",
"@value": "CA"
}
],
"countyCode": "US"
}
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"cbvmda:vesselFlagState": "US",
"cbvmda:vesselID": "TV-001",
"gdst:imoNumber": "IMO00000003",
"@type": "gs1:Place",
"globalLocationNumber": "urn:gdst:example.org:location:loc:transshipment_company.1",
"name": [
{
"@language": "en-US",
"@value": "Transshipment Vessel"
}
],
"address": {
"@type": "gs1:PostalAddress",
"addressRegion": [
{
"@language": "en-US",
"@value": "CA"
}
],
"countyCode": "US"
}
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"@type": "gs1:Place",
"globalLocationNumber": "urn:gdst:example.org:location:loc:tuna_processor.port_san_diego",
"name": [
{
"@language": "en-US",
"@value": "Port of San Diego"
}
],
"address": {
"@type": "gs1:PostalAddress",
"addressRegion": [
{
"@language": "en-US",
"@value": "CA"
}
],
"countyCode": "US"
}
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"@type": "gs1:Place",
"globalLocationNumber": "urn:epc:id:sgln:08600031303.1.0",
"name": [
{
"@language": "en-US",
"@value": "Tuna Processing Plant"
}
],
"address": {
"@type": "gs1:PostalAddress",
"streetAddress": [
{
"@language": "en-US",
"@value": "6461 El Apajo"
}
],
"addressLocality": [
{
"@language": "en-US",
"@value": "Rancho Santa Fe"
}
],
"addressRegion": [
{
"@language": "en-US",
"@value": "CA"
}
],
"countyCode": "US"
}
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"@type": "gs1:Organization",
"globalLocationNumber": "urn:gdst:example.org:party:fisherman01.0",
"organizationName": [
{
"@language": "en-US",
"@value": "Fisherman #1"
}
]
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"@type": "gs1:Organization",
"globalLocationNumber": "urn:gdst:example.org:party:fisherman02.0",
"organizationName": [
{
"@language": "en-US",
"@value": "Fisherman #2"
}
]
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"@type": "gs1:Organization",
"globalLocationNumber": "urn:gdst:example.org:party:transshipment_companny.0",
"organizationName": [
{
"@language": "en-US",
"@value": "Transshipment Company"
}
]
},
{
"@context": {
"cbvmda": "urn:epcglobal:cbvmda:mda",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"gs1": "http://gs1.org/voc/",
"@vocab": "http://gs1.org/voc/",
"gdst": "https://traceability-dialogue.org/vocab/"
},
"@type": "gs1:Organization",
"globalLocationNumber": "urn:epc:id:sgln:08600031303.0.0",
"organizationName": [
{
"@language": "en-US",
"@value": "Tuna Processor"
}
]
}
]


How did we do?


Powered by HelpDocs (opens in a new tab)

Powered by HelpDocs (opens in a new tab)