Skip to content

how to represent GRAI->SSCC->ISIN? #37

@VladimirAlexiev

Description

@VladimirAlexiev

Hi @philarcher and @mgh128 ! I want to represent the following business situation:

  • Documents that initiate and support the business transaction (gs1:Document, epcis:BizTransaction):
    • The Client Company makes and sends a po Purchase Order
    • The Production Company makes and sends an inv Invoice
  • A crate is picked (GRAI ReturnableAsset)
    • A sensor (GRAI or GIAI, SensorDevice) is attached inside the crate (EVENT04)
      • Following EPCIS best practices, we use the AssociationEvent: assembling things, e.g. attaching sensor to asset
    • The two products are packed together in the crate (EVENT05)
      • Following EPCIS best practices, we use the AggregationEvent: packing goods in crates, putting crates on pallets, putting pallets in containers
  • This loaded crate (two products plus sensor) is allocated a SSCC LogisticUnit (EVENT06)
  • A GSIN Shipment identifier is allocated (EVENT07) and the crate is shipped
    • The two business documents are linked to this event
    • The two companies and their locations are designated as the ultimate source and destination of the shipment

I'm struggling how to represent the transition from GRAI (a crate) to SSCC (a loaded crate) to ISIN (a shipment).
Here's what I've come up with:

<$EVENT04> a epcis:AssociationEvent
  epcis:action               "ADD" ;
  epcis:bizLocation          <$SGLN_PLANT5> ;
  epcis:readPoint            <$SGLN_PLANT5/254/235> ;
  epcis:bizStep              cbv:BizStep-assembling ;
  epcis:disposition          cbv:Disp-in_progress ;
  epcis:parentID             <$GRAI_CRATE1>;
  epcis:childEPCs            <$GIAI_SENSOR1>;
  epcis:eventTime            "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:recordTime           "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:eventTimeZoneOffset  "+08:00".

<$EVENT05> a epcis:AggregationEvent;
  epcis:action               "ADD" ;
  epcis:bizLocation          <$SGLN_PLANT5> ;
  epcis:readPoint            <$SGLN_PLANT5/254/235> ;
  epcis:bizStep              cbv:BizStep-assembling ;
  epcis:disposition          cbv:Disp-in_progress ;
  epcis:parentID             <$GRAI_CRATE1>;
  epcis:childEPCs            <$SGTIN_PRODUCT1>;
  epcis:childQuantityList    [a epcis:QuantityElement;
    epcis:epcClass           <$LGTIN_PRODUCT2> ;
    epcis:quantity           "200.5"^^xsd:double ;
    epcis:uom                "KGM"];
  epcis:eventTime            "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:recordTime           "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:eventTimeZoneOffset  "+08:00".

<$EVENT06> a epcis:ObjectEvent;
  epcis:action               "ADD" ;
  epcis:bizLocation          <$SGLN_PLANT5> ;
  epcis:readPoint            <$SGLN_PLANT5/254/235> ;
  epcis:bizStep              cbv:BizStep-assembling ;
  epcis:disposition          cbv:Disp-in_progress ;
  epcis:parentID             <$SSCC_UNIT1>;
  epcis:childEPCs            <$GRAI_CRATE1>;
  epcis:eventTime            "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:recordTime           "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:eventTimeZoneOffset  "+08:00".

<$EVENT07> a epcis:TransactionEvent;
  epcis:action               "ADD" ;
  epcis:bizLocation          <$SGLN_PLANT5> ;
  epcis:readPoint            <$SGLN_PLANT5/254/235> ;
  epcis:bizStep              cbv:BizStep-shipping ;
  epcis:disposition          cbv:Disp-in_progress ;
  epcis:epcList              <$SSCC_UNIT1>, <$GSIN_SHIPMENT1>;
  epcis:bizTransactionList   <$GDTI_PO9>, <$GDTI_INV5>;
  epcis:sourceList           <$PGLN_COMPANY5#possessing>, <$SGLN_PLANT5#location>;
  epcis:destinationList      <$PGLN_COMPANY9#possessing>, <$SGLN_SITE9#location>;
  epcis:eventTime            "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:recordTime           "2021-04-04T22:41:01.123+08:00"^^xsd:dateTimeStamp ;
  epcis:eventTimeZoneOffset  "+08:00".

I'm unsure about the type, action, bizStep, disposition of EVENT06, EVENT07.

  • EVENT06 puts the GRAI as a singleton child of SSCC, is this right?
  • EVENT07 mentions the SSCC, GSIN as siblings but SSCC is logically a "lower-level" object than GSIN?
  • Or maybe I'm over-complicating and I should use just one of the two (GSIN)?

(Notes):

  • The $VARs are Digital Link (id.epcis.org) URLs of appropriate form
  • I have definitions of the subsidiary objects like <$GDTI_INV5>, <$PGLN_COMPANY5#possessing> etc that are shown below

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions