This chapter shows what needs to be done in order to enable traceability between several participants. It expects that all servers (Hub, TIX, Master Data Server) are already set up by TraceTracker and you have URLs, login credentials and all other data that are needed. It uses example of four separate participants on the supply chain which may formally be one organization (as in the example; think of a company consisting of four organizational units) or more independent organizations (companies). Note that used example is very simplified and is intended to give you an insight into the process, and does not try to be an exhaustive guide.

Case - a jam producer

Consider a company that produces jam based on berries, sugar and water. Such a company could subscribe to three sources for raw material; an additives producer that makes sugar based on beet or sugar cane, a water works, and a co-op fronting berry farmers and pickers. The resulting jam is packaged in glasses (possibly multiple sizes), and distributed to retail chains and other outlets.


Figure 1: A chain for producing jam


Figure 1 shows a simplified view of a production chain for jam. It is simplified because details like water supply, transport between companies and packaging material has been left out. The purpose of the case study in this chapter is to develop from scratch a functional implementation of the complete chain. The squares correspond to trade units and clusters of such that are exchanged between the partners in the chain. Inside the Jam Factory the ingredients are combined (represented by the leftmost trapezoid) yielding a production batch that is then broken up into multiple, smaller units of jam (represented by the rightmost trapezoid). In terms of transformations in the XML, the combining of ingredients is done with a mix whereas the breaking up into smaller units is done with a split.

Participants in the chain

There are four participants in the chain; a sugar producer, a berry supplier, a factory making jam, and a retailer that sells the jam.


Figure 2: Suggested properties for the traceable entities in the chain

Figure 2 suggests properties that should be used to model the chain.

In the next part, traceables and their properties are identified and divided into master data properties (MD) and event data properties (ED).

Sugar Factory

The sugar factory makes sugar from beets or cane. Each trade unit shipped from the sugar factory is from a clearly identified source of raw material.

Basic trade units:
  • sugarbag
    • weight - MD
    • raw_material - ED
    • origin - ED
Cluster trade units:
  • outgoingshipment
    • items - ED
    • net_weight - ED
    • total_weight - ED
What happens:
  • sugarbags can enter cluster outgoingshipment, which can then be shipped to the Jam Factory.

Berry Co-op

The Berry co-op sells trade units with berries of different types that have either been farmed or picked in the wild.

Basic trade units:
  • outgoingshipment
    • harvesting_location - ED
    • harvested_from_date - ED
    • harvested_to_date - ED
    • weight - ED
    • specie - ED
    • variety - ED
What happens:
  • Trade unit outgoingshipment is shipped to the Jam Factory.

Jam Factory

The jam producer mixes batches of sugar and berries to make jam. Other ingredients like water, and details about how the ingredients are converted into jam are ignored.

Batches:
  • receivedberries
    • weight - ED
  • jam (production batch)
    • jam_type - MD
    • ratio - MD
Basic trade units:
  • incomingberries (~ outgoingshipment from Berry Co-op)
    • harvesting_location - ED
    • harvested_from_date - ED
    • harvested_to_date - ED
    • weight - ED
    • specie - ED
    • variety - ED
  • receivedsugar (notice that we use a smaller set of properties)
    • weight - MD
  • finishedjam
    • weight - MD
    • ratio - MD
    • jam_type - MD
Cluster trade units:
  • incomingsugar (~ outgoingshipment from Sugar Factory)
    • items - ED
    • net_weight - ED
    • total_weight - ED
  • outgoingshipment
    • items - ED
    • net_weight - ED
    • total_weight - ED
What happens:
  • incomingsugar cluster (received from Sugar Factory) is split into receivedsugar batches (using “LeaveCluster” operation).
  • incomingberries trade unit (received from Berry Co-op) is split into receivedberries batches (using “Split” operation).
  • receivedsugar and receivedberries batches are mixed (“Mix”) into jam production batch.
  • jam production batch is split into finishedjam trade units.
  • finishedjam trade units are put into cluster (“EnterCluster”) jamshipment, which can be then shipped to the retailer.

Retailer

The retailer works as the downstream recipient of the jam.

Cluster trade units:
  • incomingshipment
    • producer - ED
    • items - ED
    • net_weight - ED
    • total_weight - ED
Basic trade units:
  • receivedproduct
    • type - MD
    • weight - MD
What happens:
  • after incomingshipment is received from Jam Factory, it is split into trade units (“LeaveCluster” operation)

Discussing alternatives in identifying master/event data

The properties identified as master or event data is just an example, and in the following lines I want to demonstrate how can it differ based on the modelled chain, and needs and preferences of the application.

Sugar Factory’s sugarbag trade unit: We use the following properties: weight (MD), raw_material (ED), origin (ED) if we consider sugarbag a product type that always has standardized packaging and thus a few standardized weights and the company gets structured identifier for each of them, we can retrieve weight from master data. We assume that it can be made of different raw material (sugar cane or sugar beet) and originate in different areas of the world while still being considered to be the same product type (we don’t give them separate structured identifiers), then we model raw_material and origin as event data.

Berry Co-op’s outgoingshipment trade unit: Date and location where the berries were harvested are obviously event data, they are different for every trade unit. Weight probably as well - we don’t expect berry producers to get structured identifiers (GS1) for different trade unit weights. With specie and variety it’s already different. Most likely they will not get structured GS1 identifiers either, so those will be recorded as event data.

Jam Factory’s finishedjam trade unit: Here we are in the part of the chain which is usually more controlled and as the Factory Jam very likely has a few standardized products which are done always the same way, they are likely to have structured identifiers, so the properties that are related to the specific jam product (weight, ratio and jam_type) can be derived from the identifiers (thus they can be saved as master data).

Other things to consider

Berry Co-op’s outgoingshipment trade unit has property harvesting_location. That can be structured in different ways. We may want to identify the farm where it was harvested (by name or by organization ID) or GPS coordinates of the field where the berries were harvested. GPS coordinates can denote one point or they can be a list of points denoting polygon in which the field is. (In such a case, we would need a different property type or set of properties.)

Jam Factory’s receivedsugar trade unit: Notice that we use smaller set of properties than for the sugarbag we got from the Sugar Factory (even though it is the same trade unit, just modelled using different type). We don’t loose any information, though. If we want to find out those properties, we can do that by tracking the sugar bags back. However, for easier usage (by the application that would use the data) we may want to duplicate some of the data, as we did with weight in this case. Duplication may be considered when it is convenient for the application(s) which will use data provided by TIX.

Jam Factory’s incomingberries trade unit: It is the same traceable that is marked outgoingshipment at Berry Co-op. It has the same properties. This is not necessary, both organizations can use their own set of properties. However, if both use properties with same names, those properties are copied from the sending company (Berry Co-op) if Jam Factory is uploading data using TT Navigator. If you want to develop your own front-end application, you may consider implementing this behavior as well.

Configuration

All the files described in this chapter are the very basic configuration and data files needed to recreate the example situation.

Master Data Server

RBAC file defining the access control:

Master Data Server needs it in order to know which roles have what access rights.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<mds:RBAC xmlns:mds="http://www.tracetracker.com/mds/rbac"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.tracetracker.com/mds/rbac
  http://schema.tracetracker.com/mds/mdsRBAC_1_0.xsd">
  <AccessRule>
    <Role>ROLE_Administrator</Role>
    <UserOrg>*</UserOrg>
    <Operation>CAPTURE</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_Administrator</Role>
    <UserOrg>*</UserOrg>
    <Operation>QUERY</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_ConsoleUser</Role>
    <UserOrg>*</UserOrg>
    <Operation>QUERY</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_ConsoleUser</Role>
    <UserOrg>*</UserOrg>
    <Operation>CAPTURE</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_APIUser</Role>
    <UserOrg>*</UserOrg>
    <Operation>QUERY</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_APIUser</Role>
    <UserOrg>*</UserOrg>
    <Operation>CAPTURE</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_GTNetHub</Role>
    <UserOrg>*</UserOrg>
    <Operation>CAPTURE</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_GTNetHub</Role>
    <UserOrg>*</UserOrg>
    <Operation>QUERY</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_GTNetAccessNode</Role>
    <UserOrg>*</UserOrg>
    <Operation>CAPTURE</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
  <AccessRule>
    <Role>ROLE_GTNetAccessNode</Role>
    <UserOrg>*</UserOrg>
    <Operation>QUERY</Operation>
    <DataOrg>*</DataOrg>
    <Expires>2099-12-31</Expires>
  </AccessRule>
</mds:RBAC>
Master Data Definition:
<?xml version="1.0" encoding="UTF-8"?>
<tt:MDDef id="exampleMDD" version="1.0"
  xmlns:tt="http://www.tracetracker.com/mdd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.tracetracker.com/mdd
  http://schema.tracetracker.com/ttMDD_1_0.xsd">
  <Label>
    <Text xml:lang="en">Integration guide example MDD</Text>
  </Label>
  <Description>
    <Text xml:lang="en">This is the MDD used in the TIX Integration
    Guide case study.</Text>
  </Description>

  <!-- Standard Vocabularies -->
  <Vocabulary id="urn:epcglobal:epcis:vtype:EPCClass" />
  <Vocabulary id="urn:epcglobal:epcis:vtype:BusinessStep" />
  <Vocabulary id="urn:epcglobal:epcis:vtype:Disposition" />
  <Vocabulary id="urn:epcglobal:epcis:vtype:BusinessTransactionType" />
  <Vocabulary id="urn:epcglobal:epcis:vtype:BusinessLocation" />
  <Vocabulary id="urn:epcglobal:epcis:vtype:ReadPoint" />
</tt:MDDef>
Master Data:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<epcismd:EPCISMasterDataDocument
  xmlns:epcismd="urn:epcglobal:epcis-masterdata:xsd:1"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  schemaVersion="1" creationDate="2011-07-25T13:11:29+01:00">
  <EPCISBody>
    <VocabularyList>
      <Vocabulary type="urn:epcglobal:epcis:vtype:EPCClass">
        <VocabularyElementList>
          <VocabularyElement id="urn:gtnet:idpat:gsii:0800002882000033.jam.*">
            <attribute id="jam_type">cowberry</attribute>
            <attribute id="ratio">berry:sugar = 2:1</attribute>
          </VocabularyElement>
          <VocabularyElement id="urn:gtnet:idpat:gsii:0800002882000033.fj.*">
            <attribute id="weight">1</attribute>
            <attribute id="jam_type">cowberry</attribute>
            <attribute id="ratio">berry:sugar = 2:1</attribute>
          </VocabularyElement>
        </VocabularyElementList>
      </Vocabulary>
    </VocabularyList>
  </EPCISBody>
</epcismd:EPCISMasterDataDocument>

TIX data

TRD for Sugar Factory
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<TRDef id="TRD-Sugar" version="3.0"
  xsi:schemaLocation="http://www.tracetracker.com/trd
  http://www.tracetracker.com/tt/dtd/ttTRD_3_0.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://www.tracetracker.com/trd">
  <Label><Text xml:lang="en">Sugar plant</Text></Label>
  <Description><Text xml:lang="en">Deliveries of sugar</Text></Description>
  <PropertyTypes>
    <PropertyType format="NUMBER" id="items">
      <Label><Text xml:lang="en">Items</Text></Label>
      <Description><Text xml:lang="en">The number of items in the
        shipment</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="weight">
      <Label><Text xml:lang="en">Weight</Text></Label>
      <Description><Text xml:lang="en">Weight of the
        traceable</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="net_weight">
      <Label><Text xml:lang="en">Net weight</Text></Label>
      <Description><Text xml:lang="en">The net weight of the items in
        the shipment</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="total_weight">
      <Label><Text xml:lang="en">Total weight</Text></Label>
      <Description><Text xml:lang="en">The total weight of the whole
        shipment, including all the packaging</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="raw_material">
      <Label><Text xml:lang="en">Raw material</Text></Label>
      <Description><Text xml:lang="en">Description of the raw material
        used for producing the sugar</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="origin">
      <Label><Text xml:lang="en">Origin</Text></Label>
      <Description><Text xml:lang="en">Origin of the sugar
        material</Text></Description>
    </PropertyType>
  </PropertyTypes>
  <TradeUnitTypes>
    <TradeUnitType id="sugarbag" tradeunit-class="basic">
      <Label><Text xml:lang="en">Bag with sugar</Text></Label>
      <Description><Text xml:lang="en">The basic format for distribution
        of sugar</Text></Description>
      <PropertyRef id="weight" occurrence="recommended"/>
      <PropertyRef id="raw_material" occurrence="recommended"/>
      <PropertyRef id="origin" occurrence="recommended"/>
    </TradeUnitType>
     <TradeUnitType id="outgoingshipment" tradeunit-class="cluster">
      <Label><Text xml:lang="en">Outgoing shipment of sugar</Text></Label>
      <Description><Text xml:lang="en">The outgoing shipment based on
        beets or canes</Text></Description>
      <PropertyRef id="items" occurrence="recommended"/>
      <PropertyRef id="net_weight" occurrence="recommended"/>
      <PropertyRef id="total_weight" occurrence="recommended"/>
    </TradeUnitType>
  </TradeUnitTypes>
</TRDef>
TRD for Berry Co-op
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<TRDef id="TRD-Berries" version="3.0"
  xsi:schemaLocation="http://www.tracetracker.com/trd
  http://www.tracetracker.com/tt/dtd/ttTRD_3_0.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://www.tracetracker.com/trd">
  <Label><Text xml:lang="en">United berry pickers</Text></Label>
  <Description><Text xml:lang="en">Deliveries of
    berries</Text></Description>
  <PropertyTypes>
    <PropertyType format="GEOLOCATION" id="harvesting_location">
      <Label><Text xml:lang="en">Harvesting location</Text></Label>
      <Description><Text xml:lang="en">Location where the berries
        were harvested</Text></Description>
    </PropertyType>
    <PropertyType format="DATE" id="harvested_from_date">
      <Label><Text xml:lang="en">Harvested from date</Text></Label>
      <Description><Text xml:lang="en">Earliest date when the berries
        were harvested</Text></Description>
    </PropertyType>
    <PropertyType format="DATE" id="harvested_to_date">
      <Label><Text xml:lang="en">Harvested to date</Text></Label>
      <Description><Text xml:lang="en">Latest date when the berries
        were harvested</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="weight">
      <Label><Text xml:lang="en">Weight</Text></Label>
      <Description><Text xml:lang="en">Weight of each item in the
        shipment</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="specie">
      <Label><Text xml:lang="en">Specie of berries</Text></Label>
      <Description><Text xml:lang="en">Specie of berries in the
        shipment</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="variety">
      <Label><Text xml:lang="en">Variety of berries</Text></Label>
      <Description><Text xml:lang="en">Variety of berries in the
        shipment</Text></Description>
    </PropertyType>
  </PropertyTypes>
  <TradeUnitTypes>
    <TradeUnitType id="outgoingshipment" tradeunit-class="basic">
      <Label><Text xml:lang="en">Outgoing shipment of
        berries</Text></Label>
      <Description><Text xml:lang="en">The outgoing shipment of farmed
        or wild berries</Text></Description>
      <PropertyRef id="harvesting_location" occurrence="recommended"/>
      <PropertyRef id="harvested_from_date" occurrence="recommended"/>
      <PropertyRef id="harvested_to_date" occurrence="recommended"/>
      <PropertyRef id="weight" occurrence="recommended"/>
      <PropertyRef id="specie" occurrence="recommended"/>
      <PropertyRef id="variety" occurrence="recommended"/>
    </TradeUnitType>
  </TradeUnitTypes>
</TRDef>
TRD for Jam Factory
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<TRDef id="TRD-Jamfactory" version="3.0"
  xsi:schemaLocation="http://www.tracetracker.com/trd
  http://www.tracetracker.com/tt/dtd/ttTRD_3_0.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://www.tracetracker.com/trd">
  <Label><Text xml:lang="en">Jam Factory</Text></Label>
  <Description>
    <Text xml:lang="en">A factory making jam from [at least] berries
      and sugar</Text>
  </Description>
  <PropertyTypes>
    <PropertyType format="NUMBER" id="items">
      <Label><Text xml:lang="en">Items</Text></Label>
      <Description><Text xml:lang="en">Number of items in the
        shipment</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="weight">
      <Label><Text xml:lang="en">Weight</Text></Label>
      <Description><Text xml:lang="en">Weight of the
        traceable</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="net_weight">
      <Label><Text xml:lang="en">Net weight</Text></Label>
      <Description><Text xml:lang="en">Net weight of the items in
        the shipment</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="total_weight">
      <Label><Text xml:lang="en">Total weight</Text></Label>
      <Description><Text xml:lang="en">Total weight of the whole
        shipment, including all the packaging</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="ratio">
      <Label><Text xml:lang="en">Ratio</Text></Label>
      <Description><Text xml:lang="en">Relative contribution of
        different ingredients</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="jam_type">
      <Label><Text xml:lang="en">Jam type</Text></Label>
      <Description><Text xml:lang="en">Type of jam</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="raw_material">
      <Label><Text xml:lang="en">Raw material</Text></Label>
      <Description><Text xml:lang="en">Type of raw
        material</Text></Description>
    </PropertyType>
    <PropertyType format="GEOLOCATION" id="harvesting_location">
      <Label><Text xml:lang="en">Harvesting location</Text></Label>
      <Description><Text xml:lang="en">Location where the berries were
        harvested</Text></Description>
    </PropertyType>
    <PropertyType format="DATE" id="harvested_from_date">
      <Label><Text xml:lang="en">Harvested from date</Text></Label>
      <Description><Text xml:lang="en">Earliest date when the berries
        were harvested</Text></Description>
    </PropertyType>
    <PropertyType format="DATE" id="harvested_to_date">
      <Label><Text xml:lang="en">Harvested to date</Text></Label>
      <Description><Text xml:lang="en">Latest date when the berries
        were harvested</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="specie">
      <Label><Text xml:lang="en">Specie of berries</Text></Label>
      <Description><Text xml:lang="en">Specie of berries in
        the shipment</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="variety">
      <Label><Text xml:lang="en">Variety of berries</Text></Label>
      <Description><Text xml:lang="en">Variety of berries in
        the shipment</Text></Description>
    </PropertyType>
  </PropertyTypes>
  <BatchTypes>
    <BatchType id="jam" production-batch="true" visible="false">
      <Label><Text xml:lang="en">Jam production</Text></Label>
      <Description><Text xml:lang="en">Production of jam based on
        multiple ingredients</Text></Description>
      <PropertyRef id="jam_type" occurrence="recommended"/>
      <PropertyRef id="ratio" occurrence="recommended"/>
    </BatchType>
    <BatchType id="receivedberries" production-batch="false">
      <Label><Text xml:lang="en">Unit of received berries split from
        shipment</Text></Label>
      <Description><Text xml:lang="en">A unit of berries received from
        supplier in bulk and split internally</Text></Description>
      <PropertyRef id="weight" occurrence="recommended"/>
    </BatchType>
  </BatchTypes>
  <TradeUnitTypes>
    <TradeUnitType id="incomingsugar" tradeunit-class="cluster">
      <Label><Text xml:lang="en">Incoming sugar</Text></Label>
      <Description><Text xml:lang="en">Incoming shipment of
        sugar</Text></Description>
      <PropertyRef id="items" occurrence="recommended"/>
      <PropertyRef id="net_weight" occurrence="recommended"/>
      <PropertyRef id="total_weight" occurrence="recommended"/>
    </TradeUnitType>
    <TradeUnitType id="receivedsugar" tradeunit-class="basic">
      <Label><Text xml:lang="en">Unit of received sugar</Text></Label>
      <Description><Text xml:lang="en">A unit of sugar received from
        supplier</Text></Description>
      <PropertyRef id="weight" occurrence="recommended"/>
    </TradeUnitType>
    <TradeUnitType id="incomingberries" tradeunit-class="basic">
      <Label><Text xml:lang="en">Incoming berries</Text></Label>
      <Description><Text xml:lang="en">Incoming shipment of
        berries</Text></Description>
      <PropertyRef id="harvesting_location" occurrence="recommended"/>
      <PropertyRef id="harvested_from_date" occurrence="recommended"/>
      <PropertyRef id="harvested_to_date" occurrence="recommended"/>
      <PropertyRef id="weight" occurrence="recommended"/>
      <PropertyRef id="specie" occurrence="recommended"/>
      <PropertyRef id="variety" occurrence="recommended"/>
    </TradeUnitType>
    <TradeUnitType id="outgoingshipment" tradeunit-class="cluster">
      <Label><Text xml:lang="en">Outgoing shipment</Text></Label>
      <Description><Text xml:lang="en">The outgoing shipment of
        finished product</Text></Description>
      <PropertyRef id="items" occurrence="recommended"/>
      <PropertyRef id="net_weight" occurrence="recommended"/>
      <PropertyRef id="total_weight" occurrence="recommended"/>
    </TradeUnitType>
    <TradeUnitType id="finishedjam" tradeunit-class="basic">
      <Label><Text xml:lang="en">Finished jam</Text></Label>
      <Description><Text xml:lang="en">Finished jam split from
        the production</Text></Description>
      <PropertyRef id="weight" occurrence="recommended"/>
      <PropertyRef id="ratio" occurrence="recommended"/>
      <PropertyRef id="jam_type" occurrence="recommended"/>
    </TradeUnitType>
  </TradeUnitTypes>
</TRDef>
TRD for Retailer
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<TRDef id="TRD-Retailer" version="3.0"
  xsi:schemaLocation="http://www.tracetracker.com/trd
  http://www.tracetracker.com/tt/dtd/ttTRD_3_0.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://www.tracetracker.com/trd">
  <Label><Text xml:lang="en">Retailer</Text></Label>
  <Description>
    <Text xml:lang="en">Jam received from factory</Text>
  </Description>
  <PropertyTypes>
    <PropertyType format="CHAR64" id="producer">
      <Label><Text xml:lang="en">Name of producer</Text></Label>
      <Description><Text xml:lang="en">Name of the factory that
        produced the jam</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="type">
      <Label><Text xml:lang="en">Type of jam</Text></Label>
      <Description><Text xml:lang="en">Description of the type of
        jam</Text></Description>
    </PropertyType>
    <PropertyType format="CHAR64" id="items">
      <Label><Text xml:lang="en">Items in the shipment</Text></Label>
      <Description><Text xml:lang="en">Number of items in
        the shipment</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="weight">
      <Label><Text xml:lang="en">Weight</Text></Label>
      <Description><Text xml:lang="en">Weight of
        the traceable</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="net_weight">
      <Label><Text xml:lang="en">Net weight</Text></Label>
      <Description><Text xml:lang="en">Net weight of the items in
        the shipment</Text></Description>
    </PropertyType>
    <PropertyType format="REAL" id="total_weight">
      <Label><Text xml:lang="en">Total weight</Text></Label>
      <Description><Text xml:lang="en">Total weight of the whole
        shipment, including all the packaging</Text></Description>
    </PropertyType>
  </PropertyTypes>
  <TradeUnitTypes>
    <TradeUnitType id="incomingshipment" tradeunit-class="cluster">
      <Label><Text xml:lang="en">Incoming shipment</Text></Label>
      <Description><Text xml:lang="en">Incoming shipment from jam
        factory</Text></Description>
      <PropertyRef id="producer" occurrence="recommended"/>
      <PropertyRef id="items" occurrence="recommended"/>
      <PropertyRef id="net_weight" occurrence="recommended"/>
      <PropertyRef id="total_weight" occurrence="recommended"/>
    </TradeUnitType>
    <TradeUnitType id="receivedproduct" tradeunit-class="basic">
      <Label><Text xml:lang="en">A single product meant for sale to
        consumers</Text></Label>
      <Description><Text xml:lang="en">Incoming goods for consumer
        market</Text></Description>
      <PropertyRef id="type" occurrence="recommended"/>
      <PropertyRef id="weight" occurrence="recommended"/>
    </TradeUnitType>
  </TradeUnitTypes>
</TRDef>
EPCIS data for Sugar Factory
<?xml version="1.0" encoding="UTF-8"?>
<epcis:EPCISDocument creationDate="2011-09-09T12:43:25.776+02:00"
  schemaVersion="1" xmlns:epcis="urn:epcglobal:epcis:xsd:1"
  xmlns:gtnet="http://www.globaltraceability.net/schema/epcis"
  xmlns:ttdata="http://www.tracetracker.com/data"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="urn:epcglobal:epcis:xsd:1
  http://schema.tracetracker.com/EPCglobal-epcis-1_0.xsd">
<EPCISBody trdRef="TRD-Sugar">
  <EventList>
    <ObjectEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000015.sugarship.20060220-001
        </epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>outgoingshipment</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-005</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-006</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-007</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-008</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>sugarbag</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000015.sugarship.20060220-001
        </epc>
      </epcList>
      <action>OBSERVE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:shipping</bizStep>
      <gtnet:shipToBusinessLocationCode>
        urn:gtnet:gan-id:0800002882000033
      </gtnet:shipToBusinessLocationCode>
      <gtnet:shipToPhysicalLocationCode>
        urn:gtnet:gan-id:0800002882000033
      </gtnet:shipToPhysicalLocationCode>
      <gtnet:party_id>0800002882000033</gtnet:party_id>
      <gtnet:party_id_type>gan-id</gtnet:party_id_type>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-005</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-006</epc>
      </epcList>
      <action>OBSERVE</action>
      <ttdata:weight>1.0</ttdata:weight>
      <ttdata:raw_material>cane</ttdata:raw_material>
      <ttdata:origin>Brazil</ttdata:origin>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-007</epc>
      </epcList>
      <action>OBSERVE</action>
      <ttdata:weight>1.0</ttdata:weight>
      <ttdata:raw_material>cane</ttdata:raw_material>
      <ttdata:origin>Colombia</ttdata:origin>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-008</epc>
      </epcList>
      <action>OBSERVE</action>
      <ttdata:weight>3.0</ttdata:weight>
      <ttdata:raw_material>cane</ttdata:raw_material>
      <ttdata:origin>Colombia</ttdata:origin>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000015.sugarship.20060220-001
        </epc>
      </epcList>
      <action>OBSERVE</action>
      <ttdata:net_weight>6.0</ttdata:net_weight>
      <ttdata:total_weight>7.5</ttdata:total_weight>
      <ttdata:items>4</ttdata:items>
    </ObjectEvent>
    <AggregationEvent>
      <eventTime>2006-02-20T14:48:27Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <parentID>
        urn:gtnet:id:gsii:0800002882000015.sugarship.20060220-001
      </parentID>
      <childEPCs>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-005</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-006</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-007</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-008</epc>
      </childEPCs>
      <action>ADD</action>
      <bizStep>urn:epcglobal:cbv:bizstep:packing</bizStep>
      <gtnet:transformationType>ENTERCLUSTER</gtnet:transformationType>
    </AggregationEvent>
  </EventList>
</EPCISBody>
</epcis:EPCISDocument>
EPCIS data for Berry Co-op
<?xml version="1.0" encoding="UTF-8"?>
<epcis:EPCISDocument creationDate="2011-09-09T12:43:57.185+02:00"
  schemaVersion="1" xmlns:epcis="urn:epcglobal:epcis:xsd:1"
  xmlns:gtnet="http://www.globaltraceability.net/schema/epcis"
  xmlns:ttdata="http://www.tracetracker.com/data"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="urn:epcglobal:epcis:xsd:1
  http://schema.tracetracker.com/EPCglobal-epcis-1_0.xsd">
<EPCISBody trdRef="TRD-Berries">
  <EventList>
    <ObjectEvent>
      <eventTime>2006-02-20T14:47:29Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000024.berryship.20060220-001
        </epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>outgoingshipment</gtnet:trdType>
      <ttdata:weight timestamp="2006-02-20T14:47:29Z">
        4.0
      </ttdata:weight>
      <ttdata:harvested_from_date timestamp="2006-02-20T14:47:29Z">
        2006-02-17
      </ttdata:harvested_from_date>
      <ttdata:harvested_to_date timestamp="2006-02-20T14:47:29Z">
        2006-02-19
      </ttdata:harvested_to_date>
      <ttdata:specie timestamp="2006-02-20T14:47:29Z">
        cowberry
      </ttdata:specie>
      <ttdata:harvesting_location timestamp="2006-02-20T14:47:29Z">
        59°55'04.051"N, 10°45'34.0096"E
      </ttdata:harvesting_location>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-20T14:47:29Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000024.berryship.20060220-001
        </epc>
      </epcList>
      <action>OBSERVE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:shipping</bizStep>
      <gtnet:shipToBusinessLocationCode>
        urn:gtnet:gan-id:0800002882000033
      </gtnet:shipToBusinessLocationCode>
      <gtnet:shipToPhysicalLocationCode>
        urn:gtnet:gan-id:0800002882000033
      </gtnet:shipToPhysicalLocationCode>
      <gtnet:party_id>0800002882000033</gtnet:party_id>
      <gtnet:party_id_type>gan-id</gtnet:party_id_type>
    </ObjectEvent>
  </EventList>
</EPCISBody>
</epcis:EPCISDocument>
EPCIS data for Jam Factory
<?xml version="1.0" encoding="UTF-8"?>
<epcis:EPCISDocument creationDate="2011-09-09T12:44:07.073+02:00"
  schemaVersion="1" xmlns:epcis="urn:epcglobal:epcis:xsd:1"
  xmlns:gtnet="http://www.globaltraceability.net/schema/epcis"
  xmlns:ttdata="http://www.tracetracker.com/data"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="urn:epcglobal:epcis:xsd:1
  http://schema.tracetracker.com/EPCglobal-epcis-1_0.xsd">
<EPCISBody trdRef="TRD-Jamfactory">
  <EventList>
    <!-- add events with properties -->
    <ObjectEvent>
      <eventTime>2006-02-21T14:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.jam.20060221-003</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>Batch</gtnet:entityClass>
      <gtnet:trdType>jam</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T10:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000015.sugarship.20060220-001
        </epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>incomingsugar</gtnet:trdType>
      <ttdata:net_weight>6.0</ttdata:net_weight>
      <ttdata:total_weight>7.5</ttdata:total_weight>
      <ttdata:items>4</ttdata:items>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T09:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000024.berryship.20060220-001
        </epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>incomingberries</gtnet:trdType>
      <ttdata:weight>4.0</ttdata:weight>
      <ttdata:harvested_from_date>2006-02-17</ttdata:harvested_from_date>
      <ttdata:harvested_to_date>2006-02-19</ttdata:harvested_to_date>
      <ttdata:specie>cowberry</ttdata:specie>
      <ttdata:harvesting_location>
        59°55'04.051"N, 10°45'34.0096"E
      </ttdata:harvesting_location>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T09:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-009</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>Batch</gtnet:entityClass>
      <gtnet:trdType>receivedberries</gtnet:trdType>
      <ttdata:weight>1.0</ttdata:weight>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T09:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-010</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>Batch</gtnet:entityClass>
      <gtnet:trdType>receivedberries</gtnet:trdType>
      <ttdata:weight>1.0</ttdata:weight>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T09:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-011</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>Batch</gtnet:entityClass>
      <gtnet:trdType>receivedberries</gtnet:trdType>
      <ttdata:weight>1.0</ttdata:weight>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T09:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-012</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>Batch</gtnet:entityClass>
      <gtnet:trdType>receivedberries</gtnet:trdType>
      <ttdata:weight>1.0</ttdata:weight>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T17:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000033.jamshipment.20060221-019
        </epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>outgoingshipment</gtnet:trdType>
      <ttdata:net_weight>2.0</ttdata:net_weight>
      <ttdata:total_weight>3.5</ttdata:total_weight>
      <ttdata:items>4</ttdata:items>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T16:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-013</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>finishedjam</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T16:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-014</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>finishedjam</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T16:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-015</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>finishedjam</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T16:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-016</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>finishedjam</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T16:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-017</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>finishedjam</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T16:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-018</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>finishedjam</gtnet:trdType>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T10:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-005</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>receivedsugar</gtnet:trdType>
      <ttdata:weight>1.0</ttdata:weight>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T10:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-006</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>receivedsugar</gtnet:trdType>
      <ttdata:weight>1.0</ttdata:weight>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T10:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-007</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>receivedsugar</gtnet:trdType>
      <ttdata:weight>1.0</ttdata:weight>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T10:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-008</epc>
      </epcList>
      <action>ADD</action>
      <gtnet:entityClass>TradeUnit</gtnet:entityClass>
      <gtnet:trdType>receivedsugar</gtnet:trdType>
      <ttdata:weight>3.0</ttdata:weight>
    </ObjectEvent>

    <!-- receiving and shipping -->
    <ObjectEvent>
      <eventTime>2006-02-21T10:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000015.sugarship.20060220-001
        </epc>
      </epcList>
      <action>OBSERVE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:receiving</bizStep>
      <gtnet:shipFromBusinessLocationCode>
        urn:gtnet:gan-id:0800002882000015
      </gtnet:shipFromBusinessLocationCode>
      <gtnet:shipFromPhysicalLocationCode>
        urn:gtnet:gan-id:0800002882000015
      </gtnet:shipFromPhysicalLocationCode>
      <gtnet:party_id>0800002882000015</gtnet:party_id>
      <gtnet:party_id_type>gan-id</gtnet:party_id_type>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T09:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000024.berryship.20060220-001
        </epc>
      </epcList>
      <action>OBSERVE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:receiving</bizStep>
      <gtnet:shipFromBusinessLocationCode>
        urn:gtnet:gan-id:0800002882000024
      </gtnet:shipFromBusinessLocationCode>
      <gtnet:shipFromPhysicalLocationCode>
        urn:gtnet:gan-id:0800002882000024
      </gtnet:shipFromPhysicalLocationCode>
      <gtnet:party_id>0800002882000024</gtnet:party_id>
      <gtnet:party_id_type>gan-id</gtnet:party_id_type>
    </ObjectEvent>
    <ObjectEvent>
      <eventTime>2006-02-21T17:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <epcList>
        <epc>
          urn:gtnet:id:gsii:0800002882000033.jamshipment.20060221-019
        </epc>
      </epcList>
      <action>OBSERVE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:shipping</bizStep>
      <gtnet:shipToBusinessLocationCode>
        urn:gtnet:gan-id:0800002882000042
      </gtnet:shipToBusinessLocationCode>
      <gtnet:shipToPhysicalLocationCode>
        urn:gtnet:gan-id:0800002882000042
      </gtnet:shipToPhysicalLocationCode>
      <gtnet:party_id>0800002882000042</gtnet:party_id>
      <gtnet:party_id_type>gan-id</gtnet:party_id_type>
    </ObjectEvent>

    <!-- aggregation events -->
    <AggregationEvent>
      <eventTime>2006-02-21T10:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <parentID>
        urn:gtnet:id:gsii:0800002882000024.berryship.20060220-001
      </parentID>
      <childEPCs>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-010</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-011</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-012</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-009</epc>
      </childEPCs>
      <action>DELETE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:transforming</bizStep>
      <gtnet:transformationType>SPLIT</gtnet:transformationType>
    </AggregationEvent>
    <AggregationEvent>
      <eventTime>2006-02-21T14:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <parentID>
        urn:gtnet:id:gsii:0800002882000033.jam.20060221-003
      </parentID>
      <childEPCs>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-005</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-006</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-009</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-010</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-011</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.rb.20060221-012</epc>
      </childEPCs>
      <action>ADD</action>
      <bizStep>urn:epcglobal:cbv:bizstep:transforming</bizStep>
      <gtnet:transformationType>JOIN</gtnet:transformationType>
    </AggregationEvent>
    <AggregationEvent>
      <eventTime>2006-02-21T16:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <parentID>
        urn:gtnet:id:gsii:0800002882000033.jam.20060221-003
      </parentID>
      <childEPCs>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-013</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-014</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-015</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-016</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-017</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-018</epc>
      </childEPCs>
      <action>DELETE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:transforming</bizStep>
      <gtnet:transformationType>SPLIT</gtnet:transformationType>
    </AggregationEvent>
    <AggregationEvent>
      <eventTime>2006-02-21T17:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <parentID>
        urn:gtnet:id:gsii:0800002882000033.jamshipment.20060221-019
      </parentID>
      <childEPCs>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-013</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-014</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-015</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-016</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-017</epc>
        <epc>urn:gtnet:id:gsii:0800002882000033.fj.20060221-018</epc>
      </childEPCs>
      <action>ADD</action>
      <bizStep>urn:epcglobal:cbv:bizstep:packing</bizStep>
      <gtnet:transformationType>ENTERCLUSTER</gtnet:transformationType>
    </AggregationEvent>
    <AggregationEvent>
      <eventTime>2006-02-21T11:49:46Z</eventTime>
      <eventTimeZoneOffset>+00:00</eventTimeZoneOffset>
      <parentID>
        urn:gtnet:id:gsii:0800002882000015.sugarship.20060220-001
      </parentID>
      <childEPCs>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-005</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-006</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-007</epc>
        <epc>urn:gtnet:id:gsii:0800002882000015.rs.20060220-008</epc>
      </childEPCs>
      <action>DELETE</action>
      <bizStep>urn:epcglobal:cbv:bizstep:unpacking</bizStep>
      <gtnet:transformationType>LEAVECLUSTER</gtnet:transformationType>
    </AggregationEvent>
  </EventList>
</EPCISBody>
</epcis:EPCISDocument>
Legacy TTData for Retailer
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<Data upload-mode="clean" trd-ref="TRD-Retailer"
  xmlns="http://www.tracetracker.com/data"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.tracetracker.com/data
  http://www.tracetracker.com/tt/dtd/ttData_3_0.xsd">
  <Create>
    <TradeUnit type="incomingshipment"
      id="urn:gtnet:id:gsii:0800002882000033.jamshipment.20060221-019"
      timestamp="2006-02-22T14:53:59.0Z">
      <ReceivedFrom orgType="gan-id" organization="0800002882000033"
        timestamp="2006-02-22T14:53:59.0Z"/>
      <Property prop-ref="producer">Jam Factory</Property>
      <Property prop-ref="items">4</Property>
      <Property prop-ref="net_weight">2</Property>
      <Property prop-ref="total_weight">3.5</Property>
    </TradeUnit>
    <TradeUnit type="receivedproduct"
      id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-013"
      timestamp="2006-02-22T14:53:59.0Z">
      <!-- type and weight are master data, so we don't
           create them here -->
      <!--
      <Property prop-ref="type">cowberry</Property>
      <Property prop-ref="weight">1</Property>
      -->
    </TradeUnit>
    <TradeUnit type="receivedproduct"
      id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-014"
      timestamp="2006-02-22T14:53:59.0Z"/>
    <TradeUnit type="receivedproduct"
      id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-015"
      timestamp="2006-02-22T14:53:59.0Z"/>
    <TradeUnit type="receivedproduct"
      id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-016"
      timestamp="2006-02-22T14:53:59.0Z"/>
    <TradeUnit type="receivedproduct"
      id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-017"
      timestamp="2006-02-22T14:53:59.0Z"/>
    <TradeUnit type="receivedproduct"
      id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-018"
      timestamp="2006-02-22T14:53:59.0Z"/>
  </Create>
  <Message>
    <TransMsg>
      <LeaveCluster
        from="urn:gtnet:id:gsii:0800002882000033.jamshipment.20060221-019"
        timestamp="2006-02-22T14:53:59.0Z">
        <Into id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-013"/>
        <Into id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-014"/>
        <Into id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-015"/>
        <Into id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-016"/>
        <Into id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-017"/>
        <Into id="urn:gtnet:id:gsii:0800002882000033.fj.20060221-018"/>
      </LeaveCluster>
    </TransMsg>
  </Message>
</Data>