diff --git a/site/10_Licence/10_01_Licence/index.html b/site/10_Licence/10_01_Licence/index.html new file mode 100644 index 00000000..655d499b --- /dev/null +++ b/site/10_Licence/10_01_Licence/index.html @@ -0,0 +1,1506 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Licence - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Licence

+
                Copyright (c) 2021-23 Open Data Manchester CIC
+    Licensed under the Apache License, Version 2.0 (the "License");
+                             Apache License
+                       Version 2.0, January 2004
+                    http://www.apache.org/licenses/
+
+ +

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

+
    +
  1. +

    Definitions.

    +

    “License” shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document.

    +

    “Licensor” shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License.

    +

    “Legal Entity” shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + “control” means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity.

    +

    “You” (or “Your”) shall mean an individual or Legal Entity + exercising permissions granted by this License.

    +

    “Source” form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files.

    +

    “Object” form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types.

    +

    “Work” shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below).

    +

    “Derivative Works” shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof.

    +

    “Contribution” shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, “submitted” + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as “Not a Contribution.”

    +

    “Contributor” shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work.

    +
  2. +
  3. +

    Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form.

    +
  4. +
  5. +

    Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed.

    +
  6. +
  7. +

    Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions:

    +

    (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and

    +

    (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and

    +

    (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and

    +

    (d) If the Work includes a “NOTICE” text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License.

    +

    You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License.

    +
  8. +
  9. +

    Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions.

    +
  10. +
  11. +

    Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file.

    +
  12. +
  13. +

    Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an “AS IS” BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License.

    +
  14. +
  15. +

    Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages.

    +
  16. +
  17. +

    Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability.

    +
  18. +
+

END OF TERMS AND CONDITIONS

+

APPENDIX: How to apply the Apache License to your work.

+
  To apply the Apache License to your work, attach the following
+  boilerplate notice, with the fields enclosed by brackets "[]"
+  replaced with your own identifying information. (Don't include
+  the brackets!)  The text should be enclosed in the appropriate
+  comment syntax for the file format. We also recommend that a
+  file or class name and description of purpose be included on the
+  same "printed page" as the copyright notice for easier
+  identification within third-party archives.
+
+ +

Copyright [yyyy] [name of copyright owner]

+

Licensed under the Apache License, Version 2.0 (the “License”); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at

+
   http://www.apache.org/licenses/LICENSE-2.0
+
+ +

Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an “AS IS” BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License.

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/1_Start_Here/1_2_Key_Concepts/index.html b/site/1_Start_Here/1_2_Key_Concepts/index.html new file mode 100644 index 00000000..fd49836e --- /dev/null +++ b/site/1_Start_Here/1_2_Key_Concepts/index.html @@ -0,0 +1,1433 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Key Concepts - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Key Concepts

+

The Open 3P data standard is to provide information about what packaging is made out of and how these materials flow through the packaging supply chain. With Open 3P, stakeholders in the packaging supply chain will be able to share information about materials, components and packaging in a standardised format. This will allow for better collaboration between manufacturers, brands, retailers, consumers, recyclers, compliance schemes and regulators.

+

Packaging Ecosystem Data, Products, Waste Flows

+

The diagram below can help you to visualise how information might flow across the packaging supply chain using Open 3P. The standard supports data exchange between necessary parties whilst preserving a single source of truth across the industry. +

sequenceDiagram
+    participant manufacturers
+    participant brands
+    participant retailers
+    participant consumers
+    participant recyclers
+    participant complianceSchemes
+    participant regulators
+    manufacturers->>brands: products
+    manufacturers->>retailers: products
+    manufacturers->>complianceSchemes: data
+    manufacturers->>regulators: data
+    brands->>retailers: products
+    brands->>consumers: products
+    brands->>recyclers: waste
+    brands->>complianceSchemes: data
+    brands->>regulators: data
+    retailers->>consumers: products
+    retailers->>recyclers: waste
+    retailers->>complianceSchemes: data
+    retailers->>regulators: data
+    consumers->>recyclers: waste
+    recyclers->>manufacturers: material
+    complianceSchemes->>regulators: data

+

Definitions

+

Base Materials

+
    +
  • general template used to store information about a base level material
  • +
+

Materials

+
    +
  • an individual substance (e.g., PET)
  • +
  • created from the base materials level
  • +
+

Components

+
    +
  • an individual unit (e.g., a bottle)
  • +
  • parts made from different materials (e.g., a window on a sandwich box)
  • +
  • zippers, taps, etc. (even though attached)
  • +
  • general template used for packaging manufacturers to store information.
  • +
  • these components can be used by multiple users and combined with other components in different ways
  • +
+

Product

+
    +
  • That which is contained inside of the packaging
  • +
+

Complete Packaging

+
    +
  • Components are combined to make complete packaging
  • +
  • for example, a lid, a bottle and a label are all individual components. These would be combined to form a complete packaging item
  • +
+

Multipack

+
    +
  • Sometimes, multiple units of complete packaging are combined, and sold as a single unit
  • +
  • This is a multipack
  • +
+

Load Catalogue

+
    +
  • Complete packaging units are combined into a delivery load
  • +
  • Usually wrapped in secondary and tertiary packaging
  • +
+

Load

+
    +
  • Collection of load catalogue broken into destinations and on-the-market packaging for specified reporting periods
  • +
+

Packaging Item

+
    +
  • A component, complete packaging, or multipack
  • +
+

Controlled List

+
    +
  • Controlled Lists serve as reference points for key terms and phrases that are commonly used in the packaging industry, which are maintained and administred by the Standard Custodian Board (SCB)
  • +
+

Relationship List

+
    +
  • Relationship lists are user-defined lists used in data standards to specify the relationships between different data elements. Unlike controlled lists relationship lists are populated by the user to provide context and clarity to the data being recorded
  • +
+

UUID

+
    +
  • A machine readable unique identifier generated for an entry conforming to the standard
  • +
  • UUIDs improve data flow by assigning an unambiguous tag to your data
  • +
  • These IDs are then used to link between layers of the standard e.g. to link components to complete packaging
  • +
+

Single Source of Truth

+
    +
  • In information science and information technology, single source of truth (SSOT) architecture, or single point of truth (SPOT) architecture, for information systems is the practice of structuring information models and associated data schemas such that every data element is mastered (or edited) in only one place.
  • +
  • Singe source of truth wikipedia article
  • +
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/1_Start_Here/1_3_Data_Flow/index.html b/site/1_Start_Here/1_3_Data_Flow/index.html new file mode 100644 index 00000000..c378f1c7 --- /dev/null +++ b/site/1_Start_Here/1_3_Data_Flow/index.html @@ -0,0 +1,1728 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Data Flow - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Data Flow

+

Here, we show examples of how data could flow using the open standard. This tells the story of how wine bottles are created with a packaging manufacturer, how that packaging manufacturer sends their packaging to a packer/filler and then how that packer/filler will put packaging together, filled with a product and then send them to a retailer. The eight flow diagrams below compliment each other to build a complete picture.

+
+

Shared responsiblity

+

When viewing the flows below be aware that no single individual and/or organisation is responsible for the entire data capture. +It is the intent of Open 3P that experts in their part of the value chain are repsonsible for it’s adherence to the data.

+
+

The flow

+

Open 3P has been designed to allow information to flow from base materials all the way through to a load. Below you can see how these are connected. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_example[base material]
+    end
+    subgraph materials[Materials]
+        ma_example[material]
+    end
+    subgraph components[Components]
+        co_example[component]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_example[complete package]
+    end
+    subgraph loads[Loads]
+        lo_example[load]
+    end
+    bm_example --> ma_example
+    ma_example --> co_example
+    co_example --> cp_example
+    cp_example --> lo_example

+

Introducting basic items

+

At its most basic Open 3P allows the minimal amount of infomation to be passed along. In this example cardboard is using used as the base material, then again as the material and also as the component. At the component step the cardboard box is combined with tape to create a complete package ready to be filled by a product before being sent out on a load. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_cardboard[cardboard]
+    end
+    subgraph materials[Materials]
+        ma_cardboard[cardboard]
+    end
+    subgraph components[Components]
+        co_cardboard[cardboard box]
+        co_example[tape]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_example[complete package]
+    end
+    subgraph loads[Loads]
+        lo_example[load]
+    end
+    bm_cardboard --> ma_cardboard
+    ma_cardboard --> co_cardboard
+    co_cardboard --> cp_example
+    co_example --> cp_example
+    cp_example --> lo_example

+

Combining items to make complex items

+

Although some items used within the packaging value chains are simple, others are complex. Open 3P allows the combination of items at each schema level. In the example bellow a packaging tape is created by the combination of cellulose and adhesive. This is the used in conjunction with the cardboard box to create the complete packaging. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_cellulose[cellulose]
+        bm_adhesive[adhesive]
+        bm_cardboard[cardboard]
+    end
+    subgraph materials[Materials]
+        ma_tape[tape]
+        ma_cardboard[cardboard]
+    end
+    subgraph components[Components]
+        co_cardboard[cardboard box]
+        co_tape[tape]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_cardboard[delivery box]
+    end
+    subgraph loads[Loads]
+        lo_example[load]
+    end
+    bm_cellulose --> ma_tape
+    bm_adhesive --> ma_tape
+    bm_cardboard --> ma_cardboard
+    ma_tape --> co_tape
+    ma_cardboard --> co_cardboard
+    co_cardboard --> cp_cardboard
+    co_tape --> cp_cardboard
+    cp_cardboard --> lo_example

+

Using items multiple times

+

Within the packaging value chain items are combined in different arrangements to create similar or completely distinct items. This can been seen below where the same sand and soda ash are used to make the two different types of glass; soda-lime glass and borosilicate glass. This information can be passed through the value chain, providing additional insights for stakeholders, clients and customers. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_sand[sand]
+        bm_sodaAsh[soda ash]
+        bm_limestone[limestone]
+        bm_cullet[cullet]
+        bm_boricOxide[boric oxide]
+    end
+    subgraph materials[Materials]
+        ma_glass1["glass
+        food and drink"]
+        ma_glass2["glass
+        pharmaceutical"]
+    end
+    subgraph components[Components]
+        co_glassBottle1[glass bottle]
+        co_glassBottle2[glass bottle]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_example1[complete packaging]
+        cp_example2[complete packaging]
+    end
+    subgraph loads[Loads]
+        lo_example1[load]
+        lo_example2[load]
+    end
+    bm_limestone --> ma_glass1
+    bm_cullet --> ma_glass1
+    bm_sand --> ma_glass1
+    bm_sand --> ma_glass2
+    bm_sodaAsh --> ma_glass1
+    bm_sodaAsh --> ma_glass2
+    bm_boricOxide --> ma_glass2
+    ma_glass1 --> co_glassBottle1
+    ma_glass2 --> co_glassBottle2
+    co_glassBottle1 --> cp_example1
+    co_glassBottle2 --> cp_example2
+    cp_example1 --> lo_example1
+    cp_example2 --> lo_example2

+

Creating a load

+

Taken as a whole the cardboard, tape and glass are combined at various points to create a wine delivery. With the addition of cork and aluminium all the materials and components can be seen. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_cardboard[cardboard]
+        bm_sand[sand]
+        bm_sodaAsh[soda ash]
+        bm_limestone[limestone]
+        bm_cullet[cullet]
+        bm_aluminium[aluminium]
+        bm_cork[cork]
+        bm_cellulose[cellulose]
+        bm_adhesive[adhesive]
+    end
+    subgraph materials[Materials]
+        ma_cardboard[cardboard]
+        ma_glass[glass]
+        ma_cork[cork]
+        ma_aluminium[aluminium]
+        ma_tape[tape]
+    end
+    subgraph components[Components]
+        co_glassBottle[bottle]
+        co_corkCork[cork]
+        co_aluminiumCapsule[capsule]
+        co_cardboard[box]
+        co_tape[tape]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_wineBottle[wine bottle]
+        cp_cardboardBox[wine box]
+    end
+    subgraph loads[Loads]
+        lo_wineDelivery[wine delivery]
+    end
+    bm_cardboard --> ma_cardboard
+    bm_cullet --> ma_glass
+    bm_sand --> ma_glass
+    bm_limestone --> ma_glass
+    bm_sodaAsh --> ma_glass
+    bm_cork --> ma_cork
+    bm_aluminium --> ma_aluminium
+    bm_cellulose --> ma_tape
+    bm_adhesive --> ma_tape
+    ma_cardboard --> co_cardboard
+    ma_glass --> co_glassBottle
+    ma_aluminium --> co_aluminiumCapsule
+    ma_cork --> co_corkCork
+    ma_tape --> co_tape
+    co_glassBottle --> cp_wineBottle
+    co_corkCork --> cp_wineBottle
+    co_aluminiumCapsule  --> cp_wineBottle
+    co_cardboard --> cp_cardboardBox
+    co_tape --> cp_cardboardBox
+    cp_cardboardBox --> lo_wineDelivery
+    cp_wineBottle --> lo_wineDelivery

+

Within schema combinations

+

The Open 3P standards allows further complexity when combining items within a schema. This is seen below where the two materials label and ‘ssolvent free print substrate’ are futher combined to create a ‘printed label’. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_paper[paper]
+        bm_adhesive[adhesive]
+        bm_glassine[glassine]
+        bm_ink[solvent free ink]
+        bm_varnish[solvent free varnish]
+    end
+    subgraph materials[Materials]
+        ma_label[label]
+        ma_coating[solvent free print substrate]
+        ma_label2[printed label]
+    end
+    subgraph components[Components]
+        co_topLabel[branded front label]
+        co_bottomLabel[branded back label]
+        co_example[bottle]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_example[complete package]
+    end
+    subgraph loads[Loads]
+        lo_example[load]
+    end
+    bm_paper --> ma_label
+    bm_adhesive --> ma_label
+    bm_glassine --> ma_label
+    bm_ink --> ma_coating
+    bm_varnish --> ma_coating
+    ma_label --> ma_label2
+    ma_coating --> ma_label2
+    ma_label2 --> co_topLabel
+    ma_label2 --> co_bottomLabel
+    co_topLabel --> cp_example
+    co_bottomLabel --> cp_example
+    co_example --> cp_example
+    cp_example --> lo_example

+

Laminates

+

Additionally base materials and materials can be layered in an ordered arrangement; known as lamination. In the example three base materials are layered together to create a laminate. Two of the materials are used twice within the material, with the third only being used the once. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_ep[ethylene-propylene]
+        bm_eva[ethylene-vinyl acetate]
+        bm_copolyester[copolyester]
+    end
+    subgraph materials[Materials]
+        ma_shrinkwrap[plastic laminate]
+    end
+    subgraph components[Components]
+        co_shrinkwrap[shrink wrap]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_shrinkwrap[shrink wrap]
+    end
+    subgraph loads[Loads]
+        lo_example[load]
+    end
+    bm_ep -- layer 1 --> ma_shrinkwrap
+    bm_eva -- layer 2 --> ma_shrinkwrap
+    bm_copolyester -- layer 3 --> ma_shrinkwrap
+    bm_eva -- layer 4 --> ma_shrinkwrap
+    bm_ep -- layer 5 --> ma_shrinkwrap
+    ma_shrinkwrap --> co_shrinkwrap
+    co_shrinkwrap --> cp_shrinkwrap
+    cp_shrinkwrap --> lo_example

+

Packaging Tier

+

This final example shows how the above examples are combined to create a flow for the wine bottles, with the inclusion of tiers for the packaging at the load schema. +

flowchart LR
+    subgraph baseMaterials[Base Materials]
+        bm_cardboard[cardboard]
+        bm_sand[sand]
+        bm_sodaAsh[soda ash]
+        bm_limestone[limestone]
+        bm_cullet[cullet]
+        bm_aluminium[aluminium]
+        bm_cork[cork]
+        bm_cellulose[cellulose]
+        bm_adhesive[adhesive]
+        bm_paper[paper]
+        bm_adhesive2[adhesive]
+        bm_glassine[glassine]
+        bm_ink[solvent free ink]
+        bm_varnish[solvent free varnish]
+        bm_ep[ethylene-propylene]
+        bm_eva[ethylene-vinyl acetate]
+        bm_copolyester[copolyester]
+    end
+    subgraph materials[Materials]
+        ma_cardboard[cardboard]
+        ma_glass[glass]
+        ma_cork[cork]
+        ma_aluminium[aluminium]
+        ma_tape[tape]
+        ma_label[label]
+        ma_coating[solvent free print substrate]
+        ma_label2[printed label]
+        ma_shrinkwrap[plastic laminate]
+    end
+    subgraph components[Components]
+        co_glassBottle[bottle]
+        co_corkCork[cork]
+        co_aluminiumCapsule[capsule]
+        co_cardboard[box]
+        co_tape[tape]
+        co_topLabel[branded front label]
+        co_bottomLabel[branded back label]
+        co_shrinkwrap[shrink wrap]
+    end
+    subgraph completePackages[Complete Packages]
+        cp_wineBottle[wine bottle]
+        cp_cardboardBox[wine box]
+        cp_shrinkwrap[shrink wrap]
+    end
+    subgraph loads[Loads]
+        lo_wineDelivery[wine delivery]
+    end
+    bm_cardboard --> ma_cardboard
+    bm_cullet --> ma_glass
+    bm_sand --> ma_glass
+    bm_limestone --> ma_glass
+    bm_sodaAsh --> ma_glass
+    bm_cork --> ma_cork
+    bm_aluminium --> ma_aluminium
+    bm_cellulose --> ma_tape
+    bm_adhesive2 --> ma_tape
+    bm_paper --> ma_label
+    bm_adhesive --> ma_label
+    bm_glassine --> ma_label
+    bm_ink --> ma_coating
+    bm_varnish --> ma_coating
+    bm_ep -- layer 1 --> ma_shrinkwrap
+    bm_eva -- layer 2 --> ma_shrinkwrap
+    bm_copolyester -- layer 3 --> ma_shrinkwrap
+    bm_eva -- layer 4 --> ma_shrinkwrap
+    bm_ep -- layer 5 --> ma_shrinkwrap
+    ma_label --> ma_label2
+    ma_coating --> ma_label2
+    ma_label2 --> co_topLabel
+    ma_label2 --> co_bottomLabel
+    ma_cardboard --> co_cardboard
+    ma_glass --> co_glassBottle
+    ma_aluminium --> co_aluminiumCapsule
+    ma_cork --> co_corkCork
+    ma_tape --> co_tape
+    ma_shrinkwrap --> co_shrinkwrap
+    co_glassBottle --> cp_wineBottle
+    co_corkCork --> cp_wineBottle
+    co_aluminiumCapsule  --> cp_wineBottle
+    co_topLabel --> cp_wineBottle
+    co_bottomLabel --> cp_wineBottle
+    co_cardboard --> cp_cardboardBox
+    co_tape --> cp_cardboardBox
+    co_shrinkwrap --> cp_shrinkwrap
+    cp_cardboardBox -- Secondary --> lo_wineDelivery
+    cp_wineBottle -- Primary --> lo_wineDelivery
+    cp_shrinkwrap -- Transit --> lo_wineDelivery

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/1_Start_Here/1_4_Data_Schema/index.html b/site/1_Start_Here/1_4_Data_Schema/index.html new file mode 100644 index 00000000..655db5bf --- /dev/null +++ b/site/1_Start_Here/1_4_Data_Schema/index.html @@ -0,0 +1,1321 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Data Schema - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Data Schema

+
erDiagram
+  BASE_MATERIALS }o--o{ MATERIALS : within
+  MATERIALS }o--o{ COMPONENTS : within
+  COMPONENTS }o--o{ COMPLETE_PACKAGING : within
+  COMPLETE_PACKAGING }o..o{ MULTIPACK : within
+  COMPONENTS }o..o{ MULTIPACK : within
+  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within
+  MULTIPACK }o..o{ LOAD_CATALOGUE : within
+  COMPONENTS }o..o{ LOAD_CATALOGUE : within
+  LOAD_CATALOGUE }o--o{ LOAD : within
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/2_Data_Formats/2_1_Data_Formats/index.html b/site/2_Data_Formats/2_1_Data_Formats/index.html new file mode 100644 index 00000000..1e201759 --- /dev/null +++ b/site/2_Data_Formats/2_1_Data_Formats/index.html @@ -0,0 +1,1312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Data Formats - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Data Formats

+

The Open 3P data standard has been designed to facilitate seamless data exchange both within and between organisations. While the standard supports various file formats, including text files, CSV, and popular spreadsheet applications like Microsoft Excel, Apple Numbers, or Open Office, it’s important to note that leveraging the standard solely through these formats might not fully harness its potential within the dynamic packaging value chain.

+

Given the intricacies of the packaging value chain, the optimal utilisation of the standard is achieved when it is integrated into a software solution, such as a web, desktop, or mobile application. By incorporating the standard into a dedicated software solution, organisations can unlock its complete functionality and realise its maximum benefits. Such an approach enables efficient data management, enhances collaboration, and streamlines processes across the entire value chain.

+

By embracing the Open 3P data standard through a software solution, organisations can harness its power to drive innovation, improve data accuracy, and ensure seamless interoperability among stakeholders. This approach will enable the packaging industry to overcome challenges, make informed decisions, and pave the way for a more sustainable and efficient future.

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/3_Data_Specification/3_1_Base_Materials/index.html b/site/3_Data_Specification/3_1_Base_Materials/index.html new file mode 100644 index 00000000..2e02e93f --- /dev/null +++ b/site/3_Data_Specification/3_1_Base_Materials/index.html @@ -0,0 +1,1558 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Base Materials - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Base Materials

+

The base materials schema contains information regarding the core materials. These are then combined together within the materials table to create more complicated materials.

+

Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
identifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
baseMaterialNamerequiredStringThe name of the base material this row relates to. e.g., Polypropylene or Aluminium or Silica
baseMaterialTyperecommendedStringIs the base material ‘synthetic’ or ‘biobased’? Use the identifier of the material type that this row relates to. The entry here should be drawn from the Material Type Controlled List.
materialChemCIDrecommendedStringThe PubChem CID for the exact base material used. The PubChem CID is PubChem’s compound identifier, which is a non-zero integer for a unique chemical structure. PubChem CID can be found using their search. If for some reason the PubChem CID cannot be located, consider contributing to PubChem and create the compound identifier. However, if this cannot be done, please enter Unknown.
externalIdentifiersrecommendedDictionaryA dictionary of identifiers that might be used to identify the base material in other systems. For example: manufacturer’s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'}
certificationrecommendedBooleanDoes the base material have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no.
certificationClaimsrecommendedListThe information regarding the certification. The entries should be the Certification Claims Relationship List identifiers.
manufacturedCountryrecommendedNumericThe country the component was manufactured in. Use the country numeric ISO codes as described in the ISO 3166 international standard.
updateDaterequiredStringThe date that the base material was provided/last updated. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+  BASE_MATERIALS {
+    identifier String
+    baseMaterialName String
+    baseMaterialType String
+    materialChemCID String
+    externalIdentifiers Dictionary
+    certification Boolean
+    certificationClaims List
+    manufacturedCountry Numeric
+    updateDate String
+  }
+  BASE_MATERIALS }o..o{ CONTROLLED_LISTS : attributes
+  BASE_MATERIALS }o--o{ MATERIALS : within
+  BASE_MATERIALS }o..o{ RELATIONSHIP_LISTS : attributes
+      CONTROLLED_LISTS {
+    materialType recommended }
+      RELATIONSHIP_LISTS {
+    certificationClaims recommended
+      }
+  }
+

Template

+

Base materials should be provided as a separate csv file. The specification of this csv file is as follows:

+

Base Materials Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
--FSC accredited wood grown in Spain
+{
+  "identifier": "a5e6b8bc-ade8-4660-857e-d397243f6b57",
+  "baseMaterialName": "Spainish Softwood",
+  "baseMaterialType": "",
+  "materialChemCID": "",
+  "externalIdentifiers": {
+    "dbPK":"152314568888",
+    },
+  "certification": "TRUE",
+  "certificationClaims": ["1","35"],
+  "certificationDate": "01/08/2022",
+  "manufacturedCountry": 724,
+  "updateDate": "01/08/2022",
+}
+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
--Food grade synthetic polyethylene terephthalate (PET) made in the UK - verbose data structure
+{
+  "identifier": "A4BAE07C-1847-CD8E-C933-6FD30478423B",
+  "baseMaterialName": "PET",
+  "baseMaterialType": {
+    "identifier":"bm-material-type-0002",
+    "category":"synthetic",
+    "detailed":"derived from crude oil, natural gas or coal."
+  },
+  "materialChemCID": "223961227",
+  "externalIdentifiers": {
+    "primaryKey":"9187e576-0dfd-46dd-809e-4af0a35f888d",
+    },
+  "certification": "TRUE",
+  "certificationClaims": [{
+    "certificationIdentifier": "2e32b7cc-5fa8-425f-a2c0-784340e43f36",
+    "certificationSource": {
+      "identifier":"certification-source-0002",
+      "category":"FSA",
+      "detailed":"The Food Standards Agency (FSA) is the independent government department working to protect public health and consumers’ wider interests in relation to food in England, Wales and Northern Ireland."
+    },
+    "certificationDate": "01/08/2022",
+  }],
+  "manufacturedCountry": {
+    "Country": "United Kingdom of Great Britain and Northern Ireland (the)",
+    "Numeric": 826
+  },
+  "updateDate": "01/08/2022",
+}
+
+
+ +
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/3_Data_Specification/3_2_Materials/index.html b/site/3_Data_Specification/3_2_Materials/index.html new file mode 100644 index 00000000..896fce24 --- /dev/null +++ b/site/3_Data_Specification/3_2_Materials/index.html @@ -0,0 +1,1894 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Materials - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Materials

+

The materials schema contains information regarding the materials that are used within components. These maybe a single material from the base materials catalogue, a combination of base materials and/or a material from the materials schema itself.

+

Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
identifierrequiredStringThe globally unique identifier for the created material unique identifier. See identifiers section for information on how to construct this identifier
materialNamerequiredStringThe name of the material this row relates to. (e.g., Aluminium 3000 Series or Borosilicate glass)
externalIdentifiersrecommendedDictionaryA dictionary of identifiers that might be used to identify the material in other systems. For example: manufacturer’s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'}
materialConstituentsrequiredListThe information regarding the consituents that are combined to create this material. The entries should be from the Material Constituents Relationship List identifier.
combinationPurposerecommendedStringWhy is this material being used? Use the identifier of the function that this row relates to. The entry here should be drawn from the Function Controlled List.
certificationrecommendedBooleanDoes the material have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no.
certificationClaimsrecommendedListThe information regarding the certification. The entries should be the Certification Claims Relationship List identifiers.
manufacturedCountryrecommendedNumericThe country the component was manufactured in. Use the country numeric ISO codes as described in the ISO 3166 international standard.
updateDaterequiredStringThe date that the material was provided/last updated. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+BASE_MATERIALS }o--o{ MATERIALS : within
+  MATERIALS {
+    identifier String
+    materialName String
+    externalIdentifiers Dictionary
+    materialConstituents List
+    combinationPurpose String
+    certification Boolean
+    certificationClaims List
+    manufacturedCountry Numeric
+    updateDate String
+  }
+  MATERIALS }o..o{ CONTROLLED_LISTS : attributes
+  MATERIALS }o--o{ COMPONENTS : within
+  MATERIALS }o..o{ RELATIONSHIP_LISTS : attributes
+        CONTROLLED_LISTS {
+    function recommended
+    }
+        RELATIONSHIP_LISTS {
+    materialConstituents required
+    certificationClaims recommended
+      }
+

Template

+

Materials should be provided as a separate csv file. The specification of this csv file is as follows:

+

Materials Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
--Food grade synthetic polyethylene terephthalate (PET) made in the UK. Only one base material.
+{
+  "identifier": "DCEE1F88-A83B-5BBC-D2D9-6A862B344977",
+  "materialName":"PET",
+  "externalIdentifiers": {
+    "GTIN":"123456789101",
+    },
+  "materialConstituents":["DCEE1F88-A83B-5BBC-D2D9-6A862B344977"],
+  "combinationPurpose": "",
+  "certification": "TRUE",
+  "certificationClaims": ["1"],
+  "manufacturedCountry": 826,
+  "updateDate": "01/08/2022",
+}
+
+
+
+
  1
+  2
+  3
+  4
+  5
+  6
+  7
+  8
+  9
+ 10
+ 11
+ 12
+ 13
+ 14
+ 15
+ 16
+ 17
+ 18
+ 19
+ 20
+ 21
+ 22
+ 23
+ 24
+ 25
+ 26
+ 27
+ 28
+ 29
+ 30
+ 31
+ 32
+ 33
+ 34
+ 35
+ 36
+ 37
+ 38
+ 39
+ 40
+ 41
+ 42
+ 43
+ 44
+ 45
+ 46
+ 47
+ 48
+ 49
+ 50
+ 51
+ 52
+ 53
+ 54
+ 55
+ 56
+ 57
+ 58
+ 59
+ 60
+ 61
+ 62
+ 63
+ 64
+ 65
+ 66
+ 67
+ 68
+ 69
+ 70
+ 71
+ 72
+ 73
+ 74
+ 75
+ 76
+ 77
+ 78
+ 79
+ 80
+ 81
+ 82
+ 83
+ 84
+ 85
+ 86
+ 87
+ 88
+ 89
+ 90
+ 91
+ 92
+ 93
+ 94
+ 95
+ 96
+ 97
+ 98
+ 99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
--Fibre based composite material to be used for a carton - semi verbose
+{
+  "identifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+  "materialName": "Classic Carton Board - EVOH",
+  "externalIdentifiers": {
+    "EAN": "0123456789101",
+    "BatchNumber": "2145-23-po"
+    },
+  "materialConstituents": [
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": {
+        "identifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+        "baseMaterialName": "Polyethylene",
+        "baseMaterialType": {
+          "identifier":"bm-material-type-0002",
+          "category":"synthetic",
+          "detailed":"derived from crude oil, natural gas or coal."
+        },
+        "materialChemCID": null,
+        "externalIdentifiers": {
+          "pk":"12",
+          },
+        "certification": "FALSE",
+        "certificationClaims": null,
+        "manufacturedCountry": {
+          "Country": "United Kingdom of Great Britain and Northern Ireland (the)",
+          "Numeric": 826
+        },
+        "updateDate": "01/08/2022",
+      },
+      "materialPurpose": {
+        "identifier": "m-material-purpose-0005",
+        "category": "barrier",
+        "detailed": "Used to reduce water and gas diffusion into and/or out of the material."
+      },
+      "virginMaterial": 100,
+      "layer": 1,
+      "materialPercentage": 7
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "96245c85-5671-4f3d-875f-82665005e9e8",
+      "materialPurpose": {
+        "identifier": "m-material-purpose-0015",
+        "category": "structure",
+        "detailed": "Providing strength and stability."
+      },
+      "virginMaterial": 100,
+      "layer": 2,
+      "materialPercentage": 27
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": {
+        "identifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+        "baseMaterialName": "Polyethylene",
+        "baseMaterialType": {
+          "identifier":"bm-material-type-0002",
+          "category":"synthetic",
+          "detailed":"derived from crude oil, natural gas or coal."
+        },
+        "materialChemCID": null,
+        "externalIdentifiers": {
+          "pk":"12",
+          },
+        "certification": "FALSE",
+        "certificationClaims": null,
+        "manufacturedCountry": {
+          "Country": "United Kingdom of Great Britain and Northern Ireland (the)",
+          "Numeric": 826
+        },
+        "updateDate": "01/08/2022",
+      },
+      "materialPurpose": {
+        "identifier": "m-material-purpose-0002",
+        "category": "adhesive",
+        "detailed": "Applied to one or both surfaces of two separate items that binds them together and resists their separation."
+      },
+      "virginMaterial": 100,
+      "layer": 3,
+      "materialPercentage": 7
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "ff249e1f-5015-46b8-8655-6c920fbf2606",
+      "materialPurpose": {
+        "identifier": "m-material-purpose-0003",
+        "category": "antioxidant",
+        "detailed": "Used to inhibit oxidation."
+      },
+      "virginMaterial": 100,
+      "layer": 4,
+      "materialPercentage": 18
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": {
+        "identifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+        "baseMaterialName": "Polyethylene",
+        "baseMaterialType": {
+          "identifier":"bm-material-type-0002",
+          "category":"synthetic",
+          "detailed":"derived from crude oil, natural gas or coal."
+        },
+        "materialChemCID": null,
+        "externalIdentifiers": {
+          "pk":"12",
+          },
+        "certification": "FALSE",
+        "certificationClaims": null,
+        "manufacturedCountry": {
+          "Country": "United Kingdom of Great Britain and Northern Ireland (the)",
+          "Numeric": 826
+        },
+        "updateDate": "01/08/2022",
+      },
+      "materialPurpose": {
+        "identifier": "m-material-purpose-0002",
+        "category": "adhesive",
+        "detailed": "Applied to one or both surfaces of two separate items that binds them together and resists their separation."
+      },
+      "virginMaterial": 100,
+      "layer": 5,
+      "materialPercentage": 7
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "96245c85-5671-4f3d-875f-82665005e9e8",
+      "materialPurpose": {
+        "identifier": "m-material-purpose-0015",
+        "category": "structure",
+        "detailed": "Providing strength and stability."
+      },
+      "virginMaterial": 100,
+      "layer": 6,
+      "materialPercentage": 27
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": {
+        "identifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+        "baseMaterialName": "Polyethylene",
+        "baseMaterialType": {
+          "identifier":"bm-material-type-0002",
+          "category":"synthetic",
+          "detailed":"derived from crude oil, natural gas or coal."
+        },
+        "materialChemCID": null,
+        "externalIdentifiers": {
+          "pk":"12",
+          },
+        "certification": "FALSE",
+        "certificationClaims": null,
+        "manufacturedCountry": {
+          "Country": "United Kingdom of Great Britain and Northern Ireland (the)",
+          "Numeric": 826
+        },
+        "updateDate": "01/08/2022",
+      },
+      "materialPurpose": {
+        "identifier": "m-material-purpose-0005",
+        "category": "barrier",
+        "detailed": "Used to reduce water and gas diffusion into and/or out of the material."
+      },
+      "virginMaterial": 100,
+      "layer": 7,
+      "materialPercentage": 7
+    },
+  ],
+  "combinationPurpose": {
+    "identifier": "function-0012",
+    "category": "carton",
+    "detailed": "Box or container used for transporting and storaging goods."
+  },
+  "certification": "FALSE",
+  "certificationClaims": null,
+  "manufacturedCountry": {
+    "Country": "United Kingdom of Great Britain and Northern Ireland (the)",
+    "Numeric": 826
+  },
+  "updateDate": "01/08/2022"
+}
+
+
+ +
+
+

Guide for how to take measurements

+

Units

+

All measurements should be given using the metric system.

+
    +
  • Weight: grams (g)
  • +
+

Numbers should be entered with a decimal place. Use the decimal / full stop / period character as a separator. Do not exceed 3 decimal places. When rounding, use convential rounding methods: for 5 and above round up, 4 and below round down. For example: volume = 0.67952 rounded to 0.68.

+

Important: When converting between systems of measurement, perform the conversion first and then apply the convential rounding. This will give more accuracy and consistency.

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/3_Data_Specification/3_3_Components/index.html b/site/3_Data_Specification/3_3_Components/index.html new file mode 100644 index 00000000..2db70826 --- /dev/null +++ b/site/3_Data_Specification/3_3_Components/index.html @@ -0,0 +1,2007 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Components - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Components

+

The components schema contains information regarding the individual components that are used to create complete packages. These maybe created from a single material or a combination of materials from the materials schema.

+

Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
identifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
namerecommendedStringThe name of this component.
descriptionrecommendedStringA brief description of this component.
externalIdentifiersrecommendedDictionaryA dictionary of identifiers that might be used to identify the component in other systems. For example: manufacturer’s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'}
imageURLsrecommendedListA list of URLs that links to a picture of the component. Please see the guidelines below on how to capture the image and name the URL.
LOWcoderecommendedStringThe list of waste code for only the component, by itself. LOW code is synonymous with European Waste Catalogue Code (EWC). For example: an empty bottle would have a LOWcode of 15 01 02. Please use Dsposal or legislation.gov to find the LOWcode. Note: The LOWcode can based on its combination with other components and the actual product contained in the completePackaging. Be sure to only include the component LOWcode. If you cannot find the code or are uncertain please enter Uncertain.
componentConstituentsrequiredListThe information regarding the consituents that are combined to create this component. The entries should be from the Component Constituents Relationship List identifier.
heightrecommendedNumericThe height of the component. Please see the guidelines below on how to properly measure and report the height.
heightDaterecommendedStringThe date that the height was last verified/measured. Use the format dd/mm/yyyy.
widthrecommendedNumericThe width of the component. Please see the guidelines below on how to properly measure and report the width.
widthDaterecommendedStringThe date that the width was last verified/measured. Use the format dd/mm/yyyy.
depthrecommendedNumericThe depth of the component. Please see the guidelines below on how to properly measure and report the depth.
depthDaterecommendedStringThe date that the depth was last verified/measured. Use the format dd/mm/yyyy.
volumerecommendedNumericThe amount of space the component takes up. Note: this is related to the size of the component and is different to capacity. Using the height, width, and depth found using the measurement guidelines, calculate the component’s volume using: height x width x depth.
volumeDaterecommendedStringThe date that the volume was last verified/measured. Use the format dd/mm/yyyy.
weightrequiredNumericThe weight of the component.
weightTolerancerequiredNumericThe threshold of weight that components can vary by. This is given as +/- x%.
weightToleranceTyperequiredStringEither grams or percentage based on the value provided in weightTolerance
weightDaterecommendedStringThe date that the weight was last verified/measured. Use the format dd/mm/yyyy.
shaperecommendedStringWhat is the shape of the component? The entry should contain the shape controlled list identifier for the component.
functionrecommendedStringWhat is the function of the component? The entry should contain the function controlled list identifier for the component.
flexibilityrecommendedStringWhether the component is considered flexible or rigid. The entry should be the flexibility controlled list identifier.
brandingrequiredBooleanDoes the component contain your own brand (logo, trademark, or any distinctive mark)? Answer as: TRUE for yes and FALSE for no.
componentEndOfLifeRoutesrecommendedListThe information regarding this component’s proposed end of life routes. The entries should be the component end of life routes identifiers.
colourrecommendedStringThe actual colour of the component at point of production using CMYK (Cyan-Magenta-Yellow-blacK) values. The format is specified according to cmyk(C%, M%, Y%, K%), where C, M, Y, and K are the percent values for the cyan, magenta, yellow, and black values of the color. For example: black is cmyk(0%,0%,0%,100%). If there are multiple colours input decorative.
opacityrecommendedStringThe transparency of the colours. The entry should be the opacity controlled list identifier.
loanedrequiredBooleanIs the component hired or loaned out as reusable packaging? Answer as: TRUE for yes and FALSE for no.
reuseSystemsrecommendedListThe system(s) that facilitates the reuse of the component e.g., Loop. The entries should be the reuse system controlled list identifier(s).
partOfMultipackrequiredBooleanIs the component part of a multipack? Answer as: TRUE for yes and FALSE for no.
recycledContentrecommendedNumericThe minimum allowable percent of how much recycled content is included in the makeup of the component. t is ‘required’ for plastic packaging where for the purposes of this standard we refer to UK’s HM Revenue & Customs definition of recycled content. “Recycled plastic is plastic that has been reprocessed from recovered material by using a chemical or manufacturing process. This is so it can be used either for its original purpose or for other purposes. This does not include organic recycling. Recovered material is pre-consumer plastic or post-consumer plastic that both: a) is no longer suitable to be used in the process from which it was generated and would otherwise have been used for energy recovery (for example, by incineration) or disposed of as waste (for example, by being sent to landfill); b) has been collected and recovered for use as a material input for a recycling or manufacturing process, instead of new primary material”
recycledContentClaimsrequiredListThe information regarding the recycled contents. The entries should be the recycled content claims relationship list indentifiers.
recyclabilityrecommendedBooleanIs the component recyclable (as determined by a reputable source)? Answer as: TRUE for yes and FALSE for no.
recyclabilityClaimsrecommendedListThe information regarding this recyclability claims. The entries should be the recyclability claims relationship list identifiers.
certificationrecommendedBooleanDoes the component have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no.
certificationClaimsrecommendedListThe information regarding the certifications. The entries should be the certification claims relationship list identifiers.
manufacturedCountryrecommendedNumericThe country the component was manufactured in. Use the country numeric ISO codes as described in the ISO 3166 international standard.
updateDaterequiredStringThe date that the component was provided/last updated. Use the format dd/mm/yyyy.
releaseDaterecommendedStringThe date that the component will be available to use. Use the format dd/mm/yyyy.
discontinueDaterecommendedStringThe date that the component will no longer be available to use. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+MATERIALS }o--o{ COMPONENTS : within
+  COMPONENTS {
+    identifier String
+    name String
+    description String
+    externalIdentifiers Dictionary
+    imageURLs List
+    LOWcode String
+    componentConstituents List
+    height Numeric
+    heightDate String
+    width Numeric
+    widthDate String
+    depth Numeric
+    depthDate String
+    volume Numeric
+    volumeDate String
+    weight Numeric
+    weightTolerance Numeric
+    weightDate String
+    shape String
+    function String
+    flexibility String
+    branding Boolean
+    componentEndOfLifeRoutes List
+    colour String
+    opacity String
+    loaned Boolean
+    reuseSystems String
+    manufacturedCountry Numeric
+    recycledContent Numeric
+    recycledContentClaims List
+    recyclability Boolean
+    recyclabilityClaims List
+    partOfMultipack Boolean
+    certification Boolean
+    certificationClaims List
+    updateDate String
+    releaseDate String
+    discontinueDate String
+  }
+  COMPONENTS }o..o{ CONTROLLED_LISTS : attributes
+  COMPONENTS }o..o{ RELATIONSHIP_LISTS : attributes
+  COMPONENTS }o--o{ COMPLETE_PACKAGING : within
+  COMPONENTS }o..o{ MULTIPACK : within
+  MULTIPACK }o..o{ LOAD_CATALOGUE : within
+  COMPLETE_PACKAGING }o..o{ MULTIPACK : within
+  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within
+  COMPONENTS }o..o{ LOAD_CATALOGUE : within
+    CONTROLLED_LISTS {
+    shape recommended
+    function recommended
+    flexibility recommended
+    opacity recommended
+    reuseSystem recommended
+  }
+  RELATIONSHIP_LISTS {
+    componentConstituents required
+    componentEndOfLifeRoutes recommended
+    recycledContentClaims required
+    recyclabilityClaims recommended
+    certificationClaims recommended
+  }
+

Components should be provided as a separate csv file. The specification of this csv file is as follows:

+

Components Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
--Food grade PET pot made in Ireland
+{
+    "identifier": "9F459508-E365-0B9F-E3BB-FF4A7AED481B",
+    "name": "Thermoformed rPET tray",
+    "description": "Clear PET tray for food products",
+    "externalIdentifiers": {
+        "internalId": "14",
+        "GTIN": "00123456789012"
+    },
+    "imageURLs": [
+    "http://standard.open3p.org/2.0/img/measurements/figure1.measuring.png"
+    ],
+    "LOWcode": "150102",
+    "componentConstituents": [
+        "DCEE1F88-A83B-5BBC-D2D9-6A862B344977"
+    ],
+    "height": 50,
+    "heightDate": "01/08/2022",
+    "width": 220,
+    "widthDate": "01/08/2022",
+    "depth": 170,
+    "depthDate": "01/08/2022",
+    "volume": 1870,
+    "volumeDate": "01/08/2022",
+    "weight": 23,
+    "weightTolerance": 1.5,
+    "weightToleranceType": "grams",
+    "weightDate": "01/08/2022",
+    "shape": "c-shape-0004",
+    "function": "function-0041",
+    "flexibility": "c-flexibility-0002",
+    "branding": true,
+    "componentEndOfLifeRoutes": [
+        ""
+    ],
+    "colour": "cmyk(0%,0%,0%,10%)",
+    "opacity": "c-opacity-0002",
+    "loaned": false,
+    "reuseSystems": [
+        "c-reuse-system-0001"
+    ],
+    "partOfMultipack": false,
+    "recycledContent": 0.3,
+    "recycledContentClaims": [
+        "23e8251a-4fe6-4b25-9966-b08acac9ba34"
+    ],
+    "recyclability": true,
+    "recyclabilityClaims": [
+        "b101889f-87e5-4c42-abb7-0df5fc3d1a26"
+    ],
+    "certification": true,
+    "certificationClaims": [
+        "eed87ac3-6e3e-45fb-af2c-dd0f64fdb597"
+    ],
+    "manufacturedCountry": 372,
+    "updateDate": "01/08/2022",
+    "releaseDate": "01/08/2022",
+    "discontinueDate": ""
+}
+
+
+ +
+
+

Guide for how to take measurements

+

Units

+

All measurements should be given using the metric system.

+
    +
  • Height: millimetre (mm)
  • +
  • Width: millimetre (mm)
  • +
  • Length: millimetre (mm)
  • +
  • Volume: cubic metre (m3)
  • +
  • Weight: grams (g)
  • +
  • Weight Tolerance: percent (%)
  • +
+

Numbers should be entered with a decimal place. Use the decimal / full stop / period character as a separator. Do not exceed 3 decimal places. When rounding, use convential rounding methods: for 5 and above round up, 4 and below round down. For example: volume = 0.67952 rounded to 0.68.

+

Important: When converting between systems of measurement, perform the conversion first and then apply the convential rounding. This will give more accuracy and consistency.

+

Default Front of a component

+

Prior caputuring measurements, first determine the default front of the component, this is similar to GS1 (Note: GS1 rules are specified only for complete packaging and not components. Therefore, there are subtle differences to convert from taking a measurement for the complete packaging versus a component). In this standard, as with GS1, the default front is the face with the largest surface area, where area is equal to the width times the height.

+

Important: Determining of default front provides a consistent, repeatable process to find measurements for a given component.

+

image
+
Figure 1: An example for finding the default front of a component. The default front is the face of the with the largest area (Area = width X height)

+

Some components have the same surface area, thus more than one possible front. These components can be presented both vertically and horizontally. If a component has more than one possible front, the highest side is considered to be the default front.

+

Note: Calculating the area for a rectangular component is simple. However, for non-rectangular components (for example, components with a cylindrical or irregular form), the method to calculate the area is:

+
    +
  • First break the component into multiple sides. Then, for:
      +
    • a round component: do not use (=pi*r^2) to calculate the area. Instead, draw “two dimensional” rectangles around the round component’s sides and then calculate the area for each side.
    • +
    • any other shape component: draw a “two dimensional” rectangle around the sides of the component, and then calculate the area for each side.
    • +
    +
  • +
  • The side with the maximum area then becomes the default front of that component.
  • +
+

image
+
Figure 2: An example for finding the default front of an irregular shaped component. After drawing rectangles around the component, the default front is the face of the with the largest surface area (Area = width X height)

+

Measuring the height, width, and depth of a component

+

After the default front has been determined, as with GS1, it is possible to determine the height, width, and depth of a component.

+
    +
  1. For rectangular components:
      +
    • Height: from the base to the top
    • +
    • Width: from the left to the right
    • +
    • Depth: from the front to the back
    • +
    +
  2. +
+

image
+
Figure 3: Example of measuring the height, width, and depth for a rectangular component.

+

Note: If there are two different measurements for the height, width, or depth, always report the maximum measurement.

+

image
+
Figure 4: Example of reporting the maximum width, when there are two different size widths. Here, the width reported would be 12 mm because it is larger than the 8 mm. Additionally, there are two different sized depths. Here, the 9 mm depth would be reported because it is larger than the 5 mm depth.

+
    +
  1. +

    For irregular shaped components: +Similar to finding the default front of an irregularly shaped component, draw a “three dimensional” rectangle around the component.

    +
      +
    • Height: from the base to the top
    • +
    • Width: from the left to the right
    • +
    • Depth: from the front to the back
    • +
    +
  2. +
  3. +

    For unformed, flexible components:

    +
      +
    • Take the measurements as if the component was fully formed and filled.
    • +
    +
  4. +
  5. +

    For standing components:

    +
      +
    • Height: from the flat surface to the top most point
    • +
    • Width: from the left-most point to the right-most point
    • +
    • Depth: from the default front to the farthest opposite surface
    • +
    +
  6. +
  7. +

    For components with leaning or irregular verticlas:

    +
      +
    • Height: from the flat surface to the top most point (parallel to the vertex)
    • +
    • Width: from the left most point to the right most point
    • +
    • Depth: from the default front to the farthest opposite surface
    • +
    +
  8. +
  9. +

    For components that are cylindrical:

    +
      +
    • For cylindrical items two dimensions will be nominally equal. Which dimensions are equal is determined by the result of determination of the default front.
    • +
    +
  10. +
+

Guide for component images

+

As with providing measurements, please first find the default front of the component. The image capturing process and naming convention is similar to GS1. As with measurements, we altered the gs1 standard for capturing the component.

+

Type of Image

+

For the purposes of this standard, we define the differences between photographic and rendered images. Note: both types are accepted but the naming convention will differ based on image type so that images have unique names and do not having naming conflicts.

+
    +
  • Photographic image: the result of the electronic or chemical capture of a likeness of a physical object with the use of a camera.
  • +
  • Rendered image: the result of the creation of a digital likeness of a physical object with the use of a computer and software.
  • +
+

Image Recommendations

+
    +
  • Provide coloured images. However, do not provide colour casts. Colour should be as rich, vibrant and eye-catching as possible
  • +
  • Contrast and exposure should be balanced; avoid high contrast effects and “blown-out” highlights
  • +
  • Images should not be overly sharpened
  • +
  • Components should be centred in Margins to cover 95% on the canvas.
  • +
  • Graphic rendering of a component should be realistic.
  • +
  • Do not provide layers, guides or rulers in the images.
  • +
  • Background layer should be white (RGB 255,255,255).
  • +
  • Remove signatures, “finger printing” or visible watermarks. No compression artifacts. No interpolation (“resizing up”).
  • +
+

File size

+
    +
  • 900x900 to 2400x2400 pixels
  • +
+

Component faces

+

After determining the default front, the possible faces, in relation to the default front, are: +1. Default Front +2. Left +3. Top +7. Back +8. Right +9. Bottom

+

Naming convention for URL

+

Please follow this naming convention: +- component identifier +- underscore _ +- type of image (photographic or rendered) +- underscore _ +- component face (1: Default front, 2: Left, 3: Top, 7: Back, 8: Right, 9: Bottom) +- orientation (C: Centre, L: left, R: right, N: No plunge angle)

+

Example: An image for a component that is rendered with a default front facing image and centred orientation. identifier123_rendered_1C.jpg

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/3_Data_Specification/3_4_Complete_Packaging/index.html b/site/3_Data_Specification/3_4_Complete_Packaging/index.html new file mode 100644 index 00000000..afa94341 --- /dev/null +++ b/site/3_Data_Specification/3_4_Complete_Packaging/index.html @@ -0,0 +1,1841 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Complete Packaging - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Complete Packaging

+

The complete packaging schema contains information regarding the complete packages that are used to create loads. These maybe created from a single component or a combination of components from the components schema.

+

Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
identifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
namerecommendedStringThe name of this complete packaging.
descriptionrecommendedStringA brief description of this complete packaging.
externalIdentifiersrecommendedDictionaryA dictionary of identifiers that might be used to identify the complete packaging in other systems. For example: manufacturer’s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'}
imageURLsrecommendedListURL(s) that links to a picture of the complete packaging. Please see the guidelines below on how to capture the image and name the URL.
completePackagingConstituentsIdentifierrequiredListThe information regarding the consituents that are combined to create this complete packaging. The entries should be from the Complete Packaging Constituents Relationship List identifier.
LOWcodeWOproductrecommendedStringThe list of waste code for only the complete packaging, by itself (excluding the product). LOW code is synonymous with European Waste Catalogue Code (EWC). For example: an empty bottle would have a LOWcode of 15 01 02. Please use Dsposal or legislation.gov to find the LOWcode. Note: The LOWcode can based on its combination with other components and the actual product contained in the complete packaging. Be sure to only include the complete packaging LOWcode and not the complete packaging with the product. If you cannot find the code or are uncertain please enter Uncertain.
productTyperecommendedStringInformation about the product contained in the complete packaging. The entry here should be drawn from the product type controlled list.
componentContactWithProductrequiredListWhat components (if any) come into direct contact with the product before purchased by a consumer? If none of the components come into contact with the product use NA.
LOWcodeWproductrecommendedStringThe list of waste code for everything in the complete packaging. LOW code is synonymous with European Waste Catalogue Code (EWC). For example: an empty bottle would have a LOWcode of 15 01 02. Please use Dsposal or legislation.gov to find the LOWcode. Note: The LOWcode can based on its combination with other components and the actual product contained in the complete packaging. Be sure to include the complete packaging LOWcode with the product. If you cannot find the code or are uncertain please enter Uncertain.
onTheGorequiredBooleanIs the complete packaging often classed as packaging that will end up in street bins? Answer as: TRUE for yes and FALSE for no.
householdWasterequiredBooleanIs the complete packaging often classed as packaging that will end up in kerbside collections? Answer as: TRUE for yes and FALSE for no.
depositReturnSchemesrequiredListWhich countries support a deposit return scheme for this particular complete packaging? The entries here should be drawn from the deposit return scheme controlled list.
completePackagingEndOfLifeRoutesrecommendedListThe information regarding this complete packaging’s proposed end of life routes. The entries should be the complete packaging end of life routes identifiers.
recyclabilityrecommendedBooleanIs the complete packaging recyclable (as determined by a reputable source)? Answer as: TRUE for yes and FALSE for no.
recyclabilityClaimsrecommendedListThe information regarding this recyclability claims. The entries should be the recyclability claims relationship list identifiers.
heightrecommendedNumericThe height of the complete packaging. Please see the guidelines below on how to properly measure and report the height.
heightDaterecommendedStringThe date that the height was last verified/measured. Use the format dd/mm/yyyy.
widthrecommendedNumericThe width of the complete packaging. Please see the guidelines below on how to properly measure and report the width.
widthDaterecommendedStringThe date that the width was last verified/measured. Use the format dd/mm/yyyy.
depthrecommendedNumericThe depth of the complete packaging. Please see the guidelines below on how to properly measure and report the depth.
depthDaterecommendedStringThe date that the depth was last verified/measured. Use the format dd/mm/yyyy.
volumerecommendedNumericUsing the height, width, and depth found using the measurement guidelines, calculate the complete packaging’s volume using: height x width x depth.
volumeDaterecommendedStringThe date that the volume was last verified/measured. Use the format dd/mm/yyyy.
weightrequiredNumericThe weight of the complete packaging.
weightTolerancerequiredNumericThe threshold of weight that complete packaging can vary by. This can be given in grams or percentage.
weightToleranceTyperequiredStringEither grams or percentage based on the value provided in weightTolerance
weightDaterecommendedStringThe date that the weight was last verified/measured. Use the format dd/mm/yyyy.
servingCapacityrecommendedNumericThe serving capacity of the complete packaging - how much of a product that can be contained in the complete packaging.
servingCapacityDaterecommendedStringThe date that the serving capacity was last verified/measured. Use the format dd/mm/yyyy.
partOfMultipackrequiredBooleanIs the complete packaging part of a multipack? Answer as: TRUE for yes and FALSE for no.
certificationrecommendedBooleanDoes the complete packaging have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no.
certificationClaimsrecommendedListThe information regarding the certifications. The entries should be the certification claims relationship list identifiers.
updateDaterequiredStringThe date that the complete packaging was provided/last updated. Use the format dd/mm/yyyy.
releaseDaterecommendedStringThe date that the complete packaging will be available to use. Use the format dd/mm/yyyy.
discontinueDaterecommendedStringThe date that the complete packaging will no longer be available to use. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+COMPONENTS }o--o{ COMPLETE_PACKAGING : within
+  COMPLETE_PACKAGING {
+    identifier String
+    name String
+    description String
+    externalIdentifiers Dictionary
+    imageURLs List
+    completePackagingConstituentsIdentifier List
+    LOWcodeWOproduct String
+    productType String
+    componentContactWithProduct List
+    LOWcodeWproduct String
+    onTheGo Boolean
+    householdWaste Boolean
+    depositReturnSchemes List
+    completePackagingEndOfLifeRoutes List
+    recyclability Boolean
+    recyclabilityClaims List
+    height Numeric
+    heightDate String
+    width Numeric
+    widthDate String
+    depth Numeric
+    depthDate String
+    volume Numeric
+    volumeDate String
+    weight Numeric
+    weightTolerance Numeric
+    weightToleranceType String
+    weightDate String
+    servingCapacity Numeric
+    servingCapacityDate String
+    partOfMultipack Boolean
+    certification Boolean
+    certificationClaims List
+    updateDate String
+    releaseDate String
+    discontinueDate String
+  }
+  COMPLETE_PACKAGING }o..o{ CONTROLLED_LISTS : attributes
+  COMPLETE_PACKAGING }O..O{ RELATIONSHIP_LISTS : attributes
+  COMPLETE_PACKAGING }o..o{ MULTIPACK : within
+  COMPONENTS }o..o{ MULTIPACK : within
+  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within
+  MULTIPACK }o..o{ LOAD_CATALOGUE : within
+  COMPONENTS }o..o{ LOAD_CATALOGUE : within
+      CONTROLLED_LISTS {
+      productType recommended
+      depositReturnScheme recommended
+    }
+    RELATIONSHIP_LISTS {
+      completePackagingEndOfLifeRoutes required
+      completePackagingConstituentsIdentifier required
+      recyclabilityClaims recommended
+      certificationClaims recommended
+    }
+

Template

+

Complete packaging should be provided as a separate csv file. The specification of this csv file is as follows:

+

Complete Packaging Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
{
+    "identifier": "63df4b40-ba4f-472e-a260-f8a944eb7961",
+    "name": "4 Breaded Chicken Steaks packaging",
+    "description": "PET tray, lidding film, top & base label",
+    "externalIdentifiers": {
+        "internalIdentifer": "85467889",
+        "GTIN": "00123456789012"
+        },
+    "imageURLs": [
+        "http://standard.open3p.org/2.0/img/measurements/figure1.measuring.png"
+    ],
+    "completePackagingConstituentsIdentifier": [
+        "9F459508-E365-0B9F-E3BB-FF4A7AED481B", "7197de37-8b77-4032-b0fd-84f27bae97be", "0e9a7265-6213-4a76-9a45-3acc5d83fa6f", "1c042eee-ec7a-400b-b05b-ca0d319e9067"
+    ],
+    "LOWcodeWOproduct": "15 01 06",
+    "productType": "cp-product-type-0001",
+    "componentContactWithProduct": [
+        "9F459508-E365-0B9F-E3BB-FF4A7AED481B", "7197de37-8b77-4032-b0fd-84f27bae97be"
+    ],
+    "LOWcodeWproduct": "20 01 08",
+    "onTheGo": false,
+    "householdWaste": true,
+    "depositReturnSchemes": [
+        "cp-drs-0005"
+    ],
+    "completePackagingEndOfLifeRoutes": [
+        "1229f395-3065-4236-bc1e-2aa500f58a79"
+    ],
+    "recyclability": false,
+    "recyclabilityClaims": [
+        "b101889f-87e5-4c42-abb7-0df5fc3d1a26"
+    ],
+    "height": 220,
+    "heightDate": "01/01/2023",
+    "width": 170,
+    "widthDate": "01/01/2023",
+    "depth": 60,
+    "depthDate": "01/01/2023",
+    "volume": 0.002,
+    "volumeDate": "01/01/2023",
+    "weight": 32.8,
+    "weightTolerance": 5,
+    "weightToleranceType": "percentage",
+    "weightDate": "01/01/2023",
+    "servingCapacity": 4,
+    "servingCapacityDate": "01/01/2023",
+    "partOfMultipack": false,
+    "certification": true,
+    "certificationClaims": [
+        "eed87ac3-6e3e-45fb-af2c-dd0f64fdb597"
+    ],
+    "manufacturedCountry": 826,
+    "updateDate": "01/01/2023",
+    "releaseDate": "01/01/2023",
+    "discontinueDate": ""
+}
+
+
+ +
+
+

Guide for how to take measurements

+

Units

+

All measurements should be given using the metric system.

+
    +
  • Height: millimetre (mm)
  • +
  • Width: millimetre (mm)
  • +
  • Length: millimetre (mm)
  • +
  • Volume: cubic metre (m3)
  • +
  • Weight: grams (g)
  • +
  • servingCapacity: grams (g)
  • +
+

Numbers should be entered with a decimal place, a space between the number, and the unit as specified above. Use the decimal / full stop / period character as a separator. For example: volume = 20.000 mm3. Do not exceed 3 decimal places.

+

Important: When converting between systems of measurement, perform the conversion first and then apply rounding. This will give more accuracy and consistency.

+

Default Front of a complete packaging

+

As with taking and reporting measurements for components, we use the GS1 method for taking measurements. Now, with all the components put together to form the complete packaging, first find the default front, the the face with the largest area, where area is equal to the width times the height.

+
    +
  • The side with the maximum area then becomes the default front of that complete packaging.
  • +
+

Measuring the height, width, and depth of a complete packaging

+

After the default front has been determined, it is possible to determine the height, width, and depth of the complete packaging. Please follow the measurement guidelines provided by GS1

+

Guide for complete packaging images

+

As with providing measurements, please first find the default front of the complete packaging. The image capturing process and naming convention is similar to GS1.

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/3_Data_Specification/3_5_Multipack/index.html b/site/3_Data_Specification/3_5_Multipack/index.html new file mode 100644 index 00000000..f1e2bf7d --- /dev/null +++ b/site/3_Data_Specification/3_5_Multipack/index.html @@ -0,0 +1,1507 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Multipack - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Multipack

+

The multipack schema contains information regarding the multipacks that are used to create loads. These are created from a number of either identical or different complete packages from the complete packaging schema.

+

Note: The multipack portion is optional (only applies to multipacks). If the complete packaging or component is not in a multipack, all of the fields below are optional.

+

Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
identifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
namerecommendedStringThe name of this multipack.
descriptionrecommendedStringA brief description of this multipack.
externalIdentifiersrecommendedDictionaryA dictionary of identifiers that might be used to identify the multipack in other systems. For example: manufacturer’s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'}
multipackConstituentsIdentifiersrequiredListThe information regarding the consituents that are combined to create this multipack. The entries should be from the Multipack Constituents Relationship List identifier.
tierrecommendedIntegerThe tier associated with the multipack. The inner most tier denoted as 1, and the outermost tier is the biggest number.
identicalQuantityrequiredNumericNumber of identical units for the unique complete packaging item or a component this row corresponds to.
updateDaterequiredStringThe date that the multipack was provided/last updated. Use the format dd/mm/yyyy.
releaseDaterecommendedStringThe date that the component will be available to use. Use the format dd/mm/yyyy.
discontinueDaterecommendedStringThe date that the component will no longer be available to use. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+COMPONENTS }o..o{ MULTIPACK : within
+COMPONENTS }o..o{ COMPLETE_PACKAGING : within
+COMPLETE_PACKAGING }o..o{ MULTIPACK : within
+  MULTIPACK {
+    identifier String
+    name String
+    description String
+    externalIdentifiers Dictionary
+    multipackConstituentsIdentifiers List
+    tier String
+    identicalQuantity Numeric
+    updateDate String
+    releaseDate String
+    discontinueDate String
+  }
+  MULTIPACK }o--o{ RELATIONSHIP_LISTS : attributes
+  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within
+  MULTIPACK }o..o{ LOAD_CATALOGUE : within
+  COMPONENTS }o--o{ LOAD_CATALOGUE : within
+      RELATIONSHIP_LISTS {
+        multipackConstituentsIdentifier required
+    }
+

Template

+

Multipack should be provided as a separate csv file. The specification of this csv file is as follows:

+

Multipack Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
{
+  "identifier": "B9574E9A-A561-BCA6-0E36-448A2E46B2BF",
+  "name": "4 pack of guacamole dip",
+  "description": "4 tubs of guacamole that are sold together. Not to be sold seperately.",
+  "externalIdentifiers": {
+    "GTIN":"00123456789012",
+    },
+  "multipackIdentifier": "346C5546-282B-C040-CE74-DD0DD4688C0B",
+  "packagingItems": "C29B4703-121C-7552-D905-FD5AB263D611",
+  "tier": "1",
+  "identicalQuantity": "4",
+  "updateDate": "01/08/2022",
+  "releaseDate": "01/08/2022",
+  "discontinueDate": "",
+}
+
+
+ +
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/3_Data_Specification/3_6_Load_Catalogue/index.html b/site/3_Data_Specification/3_6_Load_Catalogue/index.html new file mode 100644 index 00000000..c2831c73 --- /dev/null +++ b/site/3_Data_Specification/3_6_Load_Catalogue/index.html @@ -0,0 +1,1505 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Load Catalogue - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Load Catalogue

+

All the complete packaging from different levels (primary, secondary, transit etc.), including multipacks, put together to send to the final destination. Each row corresponds to a single packaging item.

+

Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
identifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
namerecommendedStringThe name of this load.
descriptionrecommendedStringA brief description of this load.
externalIdentifiersrecommendedDictionaryA dictionary of identifiers that might be used to identify the load catalogue in other systems. For example: manufacturer’s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'}
loadIdentifierrequiredStringThe unique identifier of the created load. A globally unique identifier. See identifiers section for information on how to construct this identifier.
packagingItemsrequiredListThe complete packaging and/or the multipack identifiers used to create the load. There must be an equivalent record in the Complete Packaging or Multipack data.
quantityInLoadrequiredNumericNumber of units for the packaging items found in a load that this row corresponds to.
levelrequiredStringThe intended use of the component for the packaging. The entry here should be drawn from the level controlled list.
updateDaterequiredStringThe date that the load catalogue was provided/last updated. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+COMPONENTS }o..o{ LOAD_CATALOGUE : within
+COMPONENTS }o..o{ COMPLETE_PACKAGING : within
+COMPONENTS }o..o{ MULTIPACK : within
+MULTIPACK }o..o{ LOAD_CATALOGUE : within
+COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within
+COMPLETE_PACKAGING }o..o{ MULTIPACK : within
+
+  LOAD_CATALOGUE {
+    identifier String
+    name String
+    description String
+    externalIdentifiers Dictionary
+    loadIdentifier String
+    packagingItems List
+    quantityInLoad Numeric
+    level String
+    updateDate String
+  }
+  LOAD_CATALOGUE }o..o{ CONTROLLED_LISTS : attributes
+  LOAD_CATALOGUE }o--o{ LOAD : within
+        CONTROLLED_LISTS {
+    level required
+    }
+

Template

+

Loads should be provided as a separate csv file. The specification of this csv file is as follows:

+

Load Catalogue Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
{
+  "identifier": "91F2060F-17CD-DA56-7746-0018A90AEF5A",
+  "name": "Full pallet of multipack guacamole dip",
+  "description": "24 cases of 3 x multipack tubs of guacamole dip",
+  "externalIdentifiers": {
+    "GTIN":"00123456789012",
+    },
+  "loadIdentifiers": "CA88F5CE-2D09-AFE0-08D7-44804780F924",
+  "packagingItems": "346C5546-282B-C040-CE74-DD0DD4688C0B",
+  "quantityInLoad": "72",
+  "level": {
+    "identifier":"lc-level-0001",
+    "category":"primary",
+    "detailed":"The individual container that you store goods in to sell to consumers. This is called a "sales unit". For example, if you sell peas in steel tins with paper labels, the primary packaging is "steel tin" and "paper label"."
+  },
+  "updateDate": "01/08/2022",
+}
+
+
+ +
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/3_Data_Specification/3_7_Load/index.html b/site/3_Data_Specification/3_7_Load/index.html new file mode 100644 index 00000000..96f59560 --- /dev/null +++ b/site/3_Data_Specification/3_7_Load/index.html @@ -0,0 +1,1521 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Load - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Load

+

All the complete packaging from different levels (primary, secondary, transit etc.), including multipacks, put together to send to the final destination. Each row corresponds a unique complete packaging (or multipack) item sent to a specific location during a specific time period.

+

Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
identifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
namerecommendedStringThe name of this load.
descriptionrecommendedStringA brief description of this load.
externalIdentifiersrecommendedDictionaryA dictionary of identifiers that might be used to identify the load in other systems. For example: manufacturer’s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'}
loadIdentifiersrequiredListThe unique identifier of the created load. There must be an equivalent identifier found in the Load Catalogue.
startDaterequiredStringThe date that the load began for the destination. Use the format dd/mm/yyyy.
endDaterequiredStringThe date that the load ended for the destination. Use the format dd/mm/yyyy.
destinationAddressNamerecommendedStringThe name of the load destination address.
destinationAddressStreetrequiredStringThe street address of this load destination.
destinationAddressCountryrequiredStringThe country of this load destination.
destinationPostalCoderequiredStringThe postal code of this load destination.
timesSentrequiredNumericThe number of times this load was sent to the destination during the specified time period.
updateDaterequiredStringThe date that the load was provided/last updated. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+LOAD_CATALOGUE }o..o{ LOAD : within
+  LOAD {
+    identifier String
+    name numeric
+    description String
+    externalIdentifier Dictionary
+    loadIdentifiers List
+    startDate String
+    destinationAddressName String
+    destinationAddressStreet String
+    destinationAddressCountry String
+    destinationPostalCode String
+    timesSent Numeric
+    updateDate String
+  }
+

Template

+

Loads should be provided as a separate csv file. The specification of this csv file is as follows:

+

Load Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
{
+  "identifier": "ED051AFD-EC7F-0428-B054-8837118922FE",
+  "name": "Weekly Load of Guacamole Dip",
+  "description": "24 cases of 12 tubs of guacamole dip for example company on high street west",
+  "externalIdentifiers": {
+    "GTIN":"00123456789012",
+    },
+  "loadIdentifiers": "CA88F5CE-2D09-AFE0-08D7-44804780F924",
+  "startDate": "01/08/2022",
+  "endDate": "01/08/2022",
+  "destinationAddressName": "Example Company",
+  "destinationAddressStreet": "High Street West",
+  "destinationAddressCountry": "England",
+  "destinationPostalCode": "XX00 0XX",
+  "timesSent": "2",
+  "updateDate": "01/08/2022",
+}
+
+
+ +
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/404.html b/site/404.html new file mode 100644 index 00000000..3da52d6f --- /dev/null +++ b/site/404.html @@ -0,0 +1,1246 @@ + + + + + + + + + + + + + + + + + + + + + Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ +

404 - Not found

+ +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/4_Identifiers/4_1_Identifiers/index.html b/site/4_Identifiers/4_1_Identifiers/index.html new file mode 100644 index 00000000..0d68788d --- /dev/null +++ b/site/4_Identifiers/4_1_Identifiers/index.html @@ -0,0 +1,1447 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Identifiers - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Identifiers

+

Identifiers are the way that humans and machines can know that a particular thing is that thing. In the context of Open 3P, there are different ways of talking about the various things involved. A packaging manufacturer may refer to a particular bottle as ‘small clear bottle’, but a filler may know it as ‘500 ml clear bottle’. In a database it may be recorded as ‘0.5L PET Bottle’. While these are all referring to the same thing, it could be hard for a human to know that they are the same, and pretty much impossible for a computer.

+

To help get around this, we use identifiers. These are codes that we use to unambiguously reference a particular thing. Within the Open 3P data standard we need to uniquely identify every entry. Each record in each schema needs to have an identifier. Since the packaging supply chain is global, the Open 3P data standard needs to be global and thus the unique identifier also needs to be global. We are therefore using the Universally Unique Identifier (UUID) standard methodology to (probabilistically) guarantee uniqueness.

+
+

A universally unique identifier (UUID) is a 128-bit label used for information in computer systems. The term globally unique identifier (GUID) is also used.

+

-A Universally Unique IDentifier (UUID) URN Namespace

+
+

Generating

+

Generating a UUID must be done by a machine and there are various ways to create one.

+

Online

+

There are various online tools available, including but not limited to and in no specific order:

+ +

In code

+
+
+
+
import uuid
+
+uuid.uuid4()
+
+
+
+
using System;
+using System.Diagnostics;
+
+namespace SampleApplication {
+    class Program {
+        static void Main(string[] args) {
+            Guid myuuid = Guid.NewGuid();
+            string myuuidAsString = myuuid.ToString();
+
+            Debug.WriteLine("Your UUID is: " + myuuidAsString);
+        }
+    }
+}
+
+
+
+
=CONCATENATE(DEC2HEX(RANDBETWEEN(0,4294967295),8),"-",DEC2HEX(RANDBETWEEN(0,65535),4),"-",DEC2HEX(RANDBETWEEN(0,65535),4),"-",DEC2HEX(RANDBETWEEN(0,65535),4),"-",DEC2HEX(RANDBETWEEN(0,4294967295),8),DEC2HEX(RANDBETWEEN(0,65535),4))
+
+
+
+
Function GUID$(Optional lowercase As Boolean, Optional parens As Boolean)
+    Dim k&, h$
+    GUID = Space(36)
+    For k = 1 To Len(GUID)
+        Randomize
+        Select Case k
+            Case 9, 14, 19, 24: h = "-"
+            Case 15:            h = "4"
+            Case 20:            h = Hex(Rnd * 3 + 8)
+            Case Else:          h = Hex(Rnd * 15)
+        End Select
+        Mid$(GUID, k, 1) = h
+    Next
+    If lowercase Then GUID = LCase$(GUID)
+    If parens Then GUID = "{" & GUID & "}"
+End Function
+
+
+
+
NEWID ( )
+
+
+
+
function guidv4($data = null) {
+    // Generate 16 bytes (128 bits) of random data or use the data passed into the function.
+    $data = $data ?? random_bytes(16);
+    assert(strlen($data) == 16);
+
+    // Set version to 0100
+    $data[6] = chr(ord($data[6]) & 0x0f | 0x40);
+    // Set bits 6-7 to 10
+    $data[8] = chr(ord($data[8]) & 0x3f | 0x80);
+
+    // Output the 36 character UUID.
+    return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
+}
+
+
+
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_000_Controlled_Lists/index.html b/site/5_Controlled_Lists/5_000_Controlled_Lists/index.html new file mode 100644 index 00000000..6749acf9 --- /dev/null +++ b/site/5_Controlled_Lists/5_000_Controlled_Lists/index.html @@ -0,0 +1,1316 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Controlled Lists - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Controlled Lists

+

Controlled lists are essential components of open data standards used to establish consistency in data entry and ensure that the data is accurate and high quality. They serve as reference points for key terms and phrases that are commonly used in the packaging industry.

+

By using controlled lists, data contributors are able to select from a predefined set of terms instead of entering free-text, which can result in inconsistencies and errors. This helps to maintain data integrity and reduces the risk of inaccuracies that can lead to costly mistakes.

+

Controlled lists also enable easy querying and reporting of data across the packaging supply chain. This is because each term in the list has a standardised definition and value, which allows for more precise comparisons between materials, packages and loads.

+

Overall, controlled lists play a vital role in ensuring that data is reliable and can be easily analyzed, leading to more informed decision-making and better outcomes for all stakeholders in the packaging industry.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_001_Material_Type/index.html b/site/5_Controlled_Lists/5_001_Material_Type/index.html new file mode 100644 index 00000000..8e2895b9 --- /dev/null +++ b/site/5_Controlled_Lists/5_001_Material_Type/index.html @@ -0,0 +1,1366 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Material Type - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Material Type

+

The Material Type controlled list identifies the type of the base material.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
bm-material-type-0001biobasedfrom renewable products such as carbohydrates, starch, vegetable fats and oils, bacteria and other biological substances
bm-material-type-0002syntheticderived from crude oil, natural gas or coal
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_002_Certification_Source/index.html b/site/5_Controlled_Lists/5_002_Certification_Source/index.html new file mode 100644 index 00000000..3a22df9d --- /dev/null +++ b/site/5_Controlled_Lists/5_002_Certification_Source/index.html @@ -0,0 +1,1376 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Certification Source - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Certification Source

+

The certification source controlled list identifies the source of the certification document. This is used in certification claims relationship list.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
certification-source-0001FSCThe Forest Stewardship Council (FSC) is an international non-governmental organisation dedicated to promoting responsible management of the world’s forests.
certification-source-0002FSAThe Food Standards Agency (FSA) is the independent government department working to protect public health and consumers’ wider interests in relation to food in England, Wales and Northern Ireland.
certification-source-0003BS 8905:2011Framework for the assessment of the sustainable use of materials.
certification-source-0004PEFCThe Programme for the Endorsement of Forest Certification (PEFC) is an international, non-profit, non-governmental organization which promotes sustainable forest management through independent third party certification.
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_003_Material_Purpose/index.html b/site/5_Controlled_Lists/5_003_Material_Purpose/index.html new file mode 100644 index 00000000..9e16f42e --- /dev/null +++ b/site/5_Controlled_Lists/5_003_Material_Purpose/index.html @@ -0,0 +1,1441 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Material Purpose - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Material Purpose

+

The material purpose controlled list identifies the purpose of this material in this combination of material constituents.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
m-material-purpose-0001acid scavengerAcid scavengers, also referred to as antacids, neutralize acidic impurities, especially those that release HCl.
m-material-purpose-0002adhesiveApplied to one or both surfaces of two separate items that binds them together and resists their separation.
m-material-purpose-0003antioxidantUsed to inhibit oxidation.
m-material-purpose-0004antistatic agentUsed for treatment of materials or their surfaces in order to reduce or eliminate buildup of static electricity.
m-material-purpose-0005barrierUsed to reduce water and gas diffusion into and/or out of the material.
m-material-purpose-0006coating
m-material-purpose-0007fire retardantUsed to improve the fire resistance of materials.
m-material-purpose-0008light and heat stabilizerUsed to inhibit photo-oxidation.
m-material-purpose-0009lubricant
m-material-purpose-0010pigment
m-material-purpose-0011plasticizer
m-material-purpose-0012preservation
m-material-purpose-0013print
m-material-purpose-0014slip compound
m-material-purpose-0015structureProviding strength and stability.
m-material-purpose-0016thermal stabilizerUsed to minimize loss of HCl within PVC, a degradation process that starts above 70 °C.
m-material-purpose-0017metal deactivatorsDeactivators work by chelation to form an inactive coordination complex with the metal ion.
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_004_Function/index.html b/site/5_Controlled_Lists/5_004_Function/index.html new file mode 100644 index 00000000..6513eff8 --- /dev/null +++ b/site/5_Controlled_Lists/5_004_Function/index.html @@ -0,0 +1,1600 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Function - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Function

+

The function controlled list identifies the function of a material or a component. This is used in the following schemas:

+ +

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
function-0001aerosol
function-0002bag
function-0003barrel
function-0004blister pack
function-0005bottle
function-0006brick
function-0007bucket
function-0008cage
function-0009can
function-0010canister
function-0011cap
function-0012carton
function-0013case
function-0014container
function-0015crate
function-0016cup
function-0017dispense
function-0018envelope
function-0019film
function-0020gable
function-0021jar
function-0022jerrycan
function-0023jug
function-0024label
function-0025lid
function-0026net
function-0027pallet
function-0028peel pack
function-0029plug
function-0030pot
function-0031pouch
function-0032pump
function-0033rack
function-0034reel
function-0035rod
function-0036roll
function-0037sachet
function-0038shrinkwrap
function-0039sleeve
function-0040stretchwrap
function-0041tray
function-0042tub
function-0043tube
function-0044vial
function-0045wire
function-0046wrapper
function-0047window
function-0048box
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_005_Recyclability_Source/index.html b/site/5_Controlled_Lists/5_005_Recyclability_Source/index.html new file mode 100644 index 00000000..a7b81930 --- /dev/null +++ b/site/5_Controlled_Lists/5_005_Recyclability_Source/index.html @@ -0,0 +1,1371 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Recyclability Source - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Recyclability Source

+

The recyclability source controlled list identifies the source of the recyclability evidence. This is used in recyclability claims relationship list.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
recyclability-source-0001OPRLOPRL is a not-for-profit company limited by guarantee, any surpluses being reinvested in our activities to promote recycling of packaging.
recyclability-source-0002Green DotGreen Dot is a license symbol used on packaging in some European markets which shows that a fee has been paid to fund the recycling of that packaging when it becomes waste.
recyclability-source-0003RecyClassA non-profit, cross-industry initiative facilitating the transition toward a circular plastic future.
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_006_Shape/index.html b/site/5_Controlled_Lists/5_006_Shape/index.html new file mode 100644 index 00000000..5d037dce --- /dev/null +++ b/site/5_Controlled_Lists/5_006_Shape/index.html @@ -0,0 +1,1431 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Shape - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Shape

+

The shape controlled list identifies the shape in components.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
c-shape-0001circle2D shape where all points are a fixed distance from a central point
c-shape-0002cone3D shape with circular base and narrows from the surface to the top
c-shape-0003cube3D shape with 6 [square] faces, 8 vertices, and 12 edges
c-shape-0004cuboid3D shape with 6 [rectangular] faces, 8 vertices, and 12 edges
c-shape-0005cylinder3D shape with 2 parallel circular bases connected by a curved surface
c-shape-0006kite2D shape quadrilateral with 2 pairs of sides, with each pair having of 2 adjacent sides which meet and that are equal in length
c-shape-0007parallelogram2D shape quadrilateral with 2 pairs of equal-length adjacent (next to each other) sides and reflection symmetry across a diagonal
c-shape-0008polygons2D shape with line segments and no curves. They include: pentagon, hexagon, octagon, nonagon, decagon, etc.
c-shape-0009rectangle2D shape quadrilateral with 2 pairs of opposite sides equal in length
c-shape-0010rhombus2D shape quadrilateral with all sides equal length, where opposite sides are parallel, and opposite angles are equal
c-shape-0011semi-circle2D shape which is half of a circle
c-shape-0012sphere3D shape with a radius that is extended to all three dimensions
c-shape-0013square2D shape quadrilateral with 4 sides and 4 angles that are equal
c-shape-0014trapezium2D shape quadrilateral with at least 1 pair of parallel sides
c-shape-0015triangle2D shape polygon with 3 sides, 3 edges, and 3 vertices
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_007_Flexibility/index.html b/site/5_Controlled_Lists/5_007_Flexibility/index.html new file mode 100644 index 00000000..5c2d35a4 --- /dev/null +++ b/site/5_Controlled_Lists/5_007_Flexibility/index.html @@ -0,0 +1,1366 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Flexibility - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Flexibility

+

The flexibility controlled list identifies the flexibility in components.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
c-flexibility-0001Flexiblecapable of bending easily without breaking
c-flexibility-0002Rigidunable to bend or be forced out of shape
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_008_Component_Disruptors/index.html b/site/5_Controlled_Lists/5_008_Component_Disruptors/index.html new file mode 100644 index 00000000..edfd0316 --- /dev/null +++ b/site/5_Controlled_Lists/5_008_Component_Disruptors/index.html @@ -0,0 +1,1551 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Component Disruptors - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Component Disruptors

+

The component disruptors controlled list identifies what might cause disruption during the end of life process of a component. This is used in component end of life routes relationship list.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
c-disruptors-0001Acrylic > 5%
c-disruptors-0002Acrylic Barriers
c-disruptors-0003Adhesives non water soluble at 80 degrees
c-disruptors-0004Biological residue
c-disruptors-0005Breakdown products of intentionally added substances
c-disruptors-0006Carbon Black
c-disruptors-0007Chemical residue
c-disruptors-0008Colour
c-disruptors-0009Compostable/ biodegradable
c-disruptors-0010Contains fragments of Glass
c-disruptors-0011EVA with Aluminium
c-disruptors-0012EVOH > 5 %
c-disruptors-0013Fillers that increase density PP above 0.97 g/cm2
c-disruptors-0014Fillers that increase density of HDPE above 0.995 g/cm2
c-disruptors-0015Foamed thermoplastic non-polyolefin elastomers
c-disruptors-0016Food residue
c-disruptors-0017“Hazardous Contents (chemicals, household cleaning)”
c-disruptors-0018Inks that contain PVC
c-disruptors-0019Inks that bleed
c-disruptors-0020Laminated metal foil
c-disruptors-0021Labels > 30 % of surface area
c-disruptors-0022Metal components
c-disruptors-0023non PO > 10%
c-disruptors-0024Non-intentionally added substances
c-disruptors-0025Nylon Barriers
c-disruptors-0026Oxydegradable / OBD
c-disruptors-0027Paper Label
c-disruptors-0028PE Seal Layer
c-disruptors-0029Potential interaction between packaging and product
c-disruptors-0030Print covering > 50 %
c-disruptors-0031PS fragments
c-disruptors-0032PVC fragments
c-disruptors-0033PVdC
c-disruptors-0034PVOH > 5%
c-disruptors-0035Silicone Valves
c-disruptors-0036SiOX > 5%
c-disruptors-0037Substances of very high concern
c-disruptors-0038Too Big
c-disruptors-0039Too Small
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_009_Opacity/index.html b/site/5_Controlled_Lists/5_009_Opacity/index.html new file mode 100644 index 00000000..d89790ad --- /dev/null +++ b/site/5_Controlled_Lists/5_009_Opacity/index.html @@ -0,0 +1,1371 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Opacity - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Opacity

+

The opacity controlled list identifies the level of opacity a component has.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
c-opacity-0001opaquedoes not allow light to pass through; not able to be seen through; solid colour
c-opacity-0002translucentallows light, but not detailed shapes, to pass through; semi-transparent; tinted colour
c-opacity-0003transparentallows light to pass through so that objects behind can be distinctly seen; no colour/ clear
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_010_Reuse_System/index.html b/site/5_Controlled_Lists/5_010_Reuse_System/index.html new file mode 100644 index 00000000..10dabc83 --- /dev/null +++ b/site/5_Controlled_Lists/5_010_Reuse_System/index.html @@ -0,0 +1,1366 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Reuse System - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Reuse System

+

The reuse system controlled list identifies the reuse system that this component is aligned to.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
c-reuse-system-0001LoopLoop is a global reuse platform enabled by a multistakeholder coalition.
c-reuse-system-0002ReathReath’s Open Data Standard, designed for reusable packaging.
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_011_Recycled_Content_Evidence_Type/index.html b/site/5_Controlled_Lists/5_011_Recycled_Content_Evidence_Type/index.html new file mode 100644 index 00000000..581c2a9a --- /dev/null +++ b/site/5_Controlled_Lists/5_011_Recycled_Content_Evidence_Type/index.html @@ -0,0 +1,1361 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Recycled Content Evidence Type - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Recycled Content Evidence Type

+

The recycled content evidence type controlled list identifies the type of evidence provided for the recycled content claim for a component.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + +
identifier
categorydetailed
c-recycled-evidence-0001certificate
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_012_Product_Type/index.html b/site/5_Controlled_Lists/5_012_Product_Type/index.html new file mode 100644 index 00000000..9f0946ed --- /dev/null +++ b/site/5_Controlled_Lists/5_012_Product_Type/index.html @@ -0,0 +1,1441 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Product Type - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Product Type

+

The product type controlled list identifies the type of product contained within a complete packaging item.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
cp-product-type-0001foodThe product is fit and suitable to be eaten.
cp-product-type-0002beverageThe product is fit and suitable to be drunk.
cp-product-type-0003cosmeticThe product is used to enhance or alter the appearance of the face or body.
cp-product-type-0004medicinalThe product has healing properties.
cp-product-type-0005electronicThe product is electrical, electronic equipment.
cp-product-type-0006clothingThe product is worn to cover and adorn the body.
cp-product-type-0007toyThe product is meant for play and entertainment.
cp-product-type-0008bookThe product contains written or printed material for reading.
cp-product-type-0009cleaningThe product is used to remove dirt and maintain cleanliness.
cp-product-type-0010petThe product is intended for the care and enjoyment of animals.
cp-product-type-0011automotiveThe product is related to vehicles and transportation.
cp-product-type-0012gardeningThe product is used for cultivating plants and maintaining a garden.
cp-product-type-0013hobbyThe product supports a specific leisure-time interest or activity.
cp-product-type-0014musicalThe product is related to creating or producing music.
cp-product-type-0015constructionThe product is used in building or assembling structures.
cp-product-type-0016officeThe product is designed for use in a work or professional setting.
cp-product-type-9999otherThe product is not in the list.
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_013_Deposit_Return_Scheme/index.html b/site/5_Controlled_Lists/5_013_Deposit_Return_Scheme/index.html new file mode 100644 index 00000000..94374479 --- /dev/null +++ b/site/5_Controlled_Lists/5_013_Deposit_Return_Scheme/index.html @@ -0,0 +1,1381 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Deposit Return Scheme - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Deposit Return Scheme

+

The deposit return scheme controlled list identifies which, if any, deposit return scheme that this complete packaging item is aligned with.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
cp-drs-0001England
cp-drs-0002Scotland
cp-drs-0003Wales
cp-drs-0004Northern Ireland
cp-drs-0005none
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_014_Complete_Packaging_Disruptors/index.html b/site/5_Controlled_Lists/5_014_Complete_Packaging_Disruptors/index.html new file mode 100644 index 00000000..d0df3a1f --- /dev/null +++ b/site/5_Controlled_Lists/5_014_Complete_Packaging_Disruptors/index.html @@ -0,0 +1,1511 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Complete Packaging Disruptors - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Complete Packaging Disruptors

+

The complete packaging disruptors controlled list identifiers what might disrupt the end of life process of a complete packaging item. This is used in complete packaging end of life routes relationship list.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
cp-disruptors-0001Acrylic > 5%
cp-disruptors-0002Adhesives non water soluble at 80 degrees
cp-disruptors-0003Breakdown products of intentionally added substances
cp-disruptors-0004Carbon Black
cp-disruptors-0005Colour
cp-disruptors-0006Compostable/ biodegradable
cp-disruptors-0007Contains fragments of Glass
cp-disruptors-0008Contains fragments of PS
cp-disruptors-0009Contains fragments of PVC
cp-disruptors-0010EVA with Aluminium
cp-disruptors-0011EVOH > 5 %
cp-disruptors-0012Foamed thermoplastic non-polyolefin elastomers
cp-disruptors-0013Hazardous Contents (chemicals, household cleaning, oils etc.)
cp-disruptors-0014Inks that bleed
cp-disruptors-0015Inks that contain PVC
cp-disruptors-0016Labels > 30 % of surface area
cp-disruptors-0017Laminated metal foil
cp-disruptors-0018Metal components
cp-disruptors-0019non PO > 10%
cp-disruptors-0020Nylon Barriers
cp-disruptors-0021Oxydegradable / OBD
cp-disruptors-0022Paper Label
cp-disruptors-0023PE Seal Layer
cp-disruptors-0024Print covering > 50 %
cp-disruptors-0025PVdC
cp-disruptors-0026PVOH > 5%
cp-disruptors-0027Residue - biological
cp-disruptors-0028Residue - chemical
cp-disruptors-0029Residue - food
cp-disruptors-0030Too Big
cp-disruptors-0031Too Small
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_015_Level/index.html b/site/5_Controlled_Lists/5_015_Level/index.html new file mode 100644 index 00000000..724713d9 --- /dev/null +++ b/site/5_Controlled_Lists/5_015_Level/index.html @@ -0,0 +1,1376 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Level - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Level

+

The level controlled list identifies the level or tier a complete packaging item is at.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
lc-level-0001primaryThe individual container that you store goods in to sell to consumers. This is called a sales unit. For example, if you sell peas in steel tins with paper labels, the primary packaging is steel tin and paper label.
lc-level-0002secondaryFor grouping several sales units for selling or shipping purposes. Organisations may use secondary packaging to display goods in shops. For example, if you place one or more tins of peas into a cardboard box, then sell the box to a retailer or ship it to the consumer, the secondary packaging is cardboard box.
lc-level-0003shipmentA type of secondary packaging for shipping single or multiple sales units to consumers. This includes cardboard boxes and mailing bags. For example, if you place a mobile phone in a cardboard box and then place the box into a mail bag before shipping it, the shipment packaging is mail bag. The primary packaging is cardboard box.
lc-level-0004transitTransit or tertiary packaging is used to group secondary packaging units together to protect them while being transported or handled. For example, if secondary packaging units are placed into larger cardboard boxes that are sealed with parcel tape and put onto wooden pallets to be transported, the transit packaging is cardboard box, parcel tape and wooden pallet. Transit packaging does not include road, rail, ship and air containers.
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_016_End_Of_Life_Route/index.html b/site/5_Controlled_Lists/5_016_End_Of_Life_Route/index.html new file mode 100644 index 00000000..b68941bf --- /dev/null +++ b/site/5_Controlled_Lists/5_016_End_Of_Life_Route/index.html @@ -0,0 +1,1401 @@ + + + + + + + + + + + + + + + + + + + + + + + + + End of Life Route - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

End of Life Route

+

The end-of-life route controlled list identifies the routes that packaging can go down once it has fulfilled it’s purpose.

+

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
identifier
categorydetailed
end-of-life-route-0001recyclingThe process of converting waste materials into new materials and objects.
end-of-life-route-0002home compostingHome composting is the process of using household waste to make compost at home.
end-of-life-route-0003food waste collectionThe collection of food waste from a business or home by a business, charity or local authority.
end-of-life-route-0004green waste collectionThe collection of food waste and garden from a business or home by a business, charity or local authority.
end-of-life-route-0005take back schemeA system that allows customers to return used packaging to the manufacturer or retailer for recycling or reuse.
end-of-life-route-0006deposit return schemeA system that allows customers to return used packaging to the manufacturer or retailer for recycling or reuse in exchange for a deposit
end-of-life-route-0007landfillThe disposal of waste materials by burying them in the ground
end-of-life-route-0008incinerationA waste treatment process that involves the combustion of substances contained in waste materials.
end-of-life-route-0009informal reuseThe practice of reusing items that would otherwise be thrown away without any formal system in place.
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_1_1_Shape.csv b/site/5_Controlled_Lists/5_1_1_Shape.csv new file mode 100644 index 00000000..b7120da7 --- /dev/null +++ b/site/5_Controlled_Lists/5_1_1_Shape.csv @@ -0,0 +1,16 @@ +identifier,category,detailed +c-shape-0001,circle,2D shape where all points are a fixed distance from a central point +c-shape-0002,cone,3D shape with circular base and narrows from the surface to the top +c-shape-0003,cube,3D shape with 6 [square] faces, 8 vertices, and 12 edges +c-shape-0004,cuboid,3D shape with 6 [rectangular] faces, 8 vertices, and 12 edges +c-shape-0005,cylinder,3D shape with 2 parallel circular bases connected by a curved surface +c-shape-0006,kite,2D shape quadrilateral with 2 pairs of sides, with each pair having of 2 adjacent sides which meet and that are equal in length +c-shape-0007,parallelogram,2D shape quadrilateral with 2 pairs of equal-length adjacent (next to each other) sides and reflection symmetry across a diagonal +c-shape-0008,polygons,2D shape with line segments and no curves. They include: pentagon, hexagon, octagon, nonagon, decagon, etc. +c-shape-0009,rectangle,2D shape quadrilateral with 2 pairs of opposite sides equal in length +c-shape-0010,rhombus,2D shape quadrilateral with all sides equal length, where opposite sides are parallel, and opposite angles are equal +c-shape-0011,semi-circle,2D shape which is half of a circle +c-shape-0012,sphere,3D shape with a radius that is extended to all three dimensions +c-shape-0013,square,2D shape quadrilateral with 4 sides and 4 angles that are equal +c-shape-0014,trapezium,2D shape quadrilateral with at least 1 pair of parallel sides +c-shape-0015,triangle,2D shape polygon with 3 sides, 3 edges, and 3 vertices \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_1_2_Function.csv b/site/5_Controlled_Lists/5_1_2_Function.csv new file mode 100644 index 00000000..985f69c8 --- /dev/null +++ b/site/5_Controlled_Lists/5_1_2_Function.csv @@ -0,0 +1,49 @@ +identifier,category,detailed +function-0001,aerosol, +function-0002,bag, +function-0003,barrel, +function-0004,blister pack, +function-0005,bottle, +function-0006,brick, +function-0007,bucket, +function-0008,cage, +function-0009,can, +function-0010,canister, +function-0011,cap, +function-0012,carton, +function-0013,case, +function-0014,container, +function-0015,crate, +function-0016,cup, +function-0017,dispense, +function-0018,envelope, +function-0019,film, +function-0020,gable, +function-0021,jar, +function-0022,jerrycan, +function-0023,jug, +function-0024,label, +function-0025,lid, +function-0026,net, +function-0027,pallet, +function-0028,peel pack, +function-0029,plug, +function-0030,pot, +function-0031,pouch, +function-0032,pump, +function-0033,rack, +function-0034,reel, +function-0035,rod, +function-0036,roll, +function-0037,sachet, +function-0038,shrinkwrap, +function-0039,sleeve, +function-0040,stretchwrap, +function-0041,tray, +function-0042,tub, +function-0043,tube, +function-0044,vial, +function-0045,wire, +function-0046,wrapper, +function-0047,window, +function-0048,box, \ No newline at end of file diff --git a/site/5_Controlled_Lists/5_1_3_Flexibility.csv b/site/5_Controlled_Lists/5_1_3_Flexibility.csv new file mode 100644 index 00000000..8ad25ee6 --- /dev/null +++ b/site/5_Controlled_Lists/5_1_3_Flexibility.csv @@ -0,0 +1,3 @@ +identifier,category,detailed +c-flexibility-0001,Flexible,capable of bending easily without breaking +cflexibility-0002,Rigid,unable to bend or be forced out of shape diff --git a/site/5_Controlled_Lists/5_1_4_Component_Recycling_Disruptors.csv b/site/5_Controlled_Lists/5_1_4_Component_Recycling_Disruptors.csv new file mode 100644 index 00000000..7ee42576 --- /dev/null +++ b/site/5_Controlled_Lists/5_1_4_Component_Recycling_Disruptors.csv @@ -0,0 +1,40 @@ +identifier,category,detailed +c-recycling-disruptors-0001,Acrylic > 5%, +c-recycling-disruptors-0002,Acrylic Barriers, +c-recycling-disruptors-0003,Adhesives non water soluble at 80 degrees, +c-recycling-disruptors-0004,Biological residue, +c-recycling-disruptors-0005,Breakdown products of intentionally added substances, +c-recycling-disruptors-0006,Carbon Black, +c-recycling-disruptors-0007,Chemical residue, +c-recycling-disruptors-0008,Colour, +c-recycling-disruptors-0009,Compostable/ biodegradable, +c-recycling-disruptors-0010,Contains fragments of Glass, +c-recycling-disruptors-0011,EVA with Aluminium, +c-recycling-disruptors-0012,EVOH > 5 %, +c-recycling-disruptors-0013,Fillers that increase density PP above 0.97 g/cm2, +c-recycling-disruptors-0014,Fillers that increase density of HDPE above 0.995 g/cm2, +c-recycling-disruptors-0015,Foamed thermoplastic non-polyolefin elastomers, +c-recycling-disruptors-0016,Food residue, +c-recycling-disruptors-0017,Hazardous Contents (chemicals, household cleaning), +c-recycling-disruptors-0018,Inks that contain PVC, +c-recycling-disruptors-0019,Inks that bleed, +c-recycling-disruptors-0020,Laminated metal foil, +c-recycling-disruptors-0021,Labels > 30 % of surface area, +c-recycling-disruptors-0022,Metal components, +c-recycling-disruptors-0023,non PO > 10%, +c-recycling-disruptors-0024,Non-intentionally added substances, +c-recycling-disruptors-0025,Nylon Barriers, +c-recycling-disruptors-0026,Oxydegradable / OBD, +c-recycling-disruptors-0027,Paper Label, +c-recycling-disruptors-0028,PE Seal Layer, +c-recycling-disruptors-0029,Potential interaction between packaging and product, +c-recycling-disruptors-0030,Print covering > 50 %, +c-recycling-disruptors-0031,PS fragments, +c-recycling-disruptors-0032,PVC fragments, +c-recycling-disruptors-0033,PVdC, +c-recycling-disruptors-0034,PVOH > 5%, +c-recycling-disruptors-0035,Silicone Valves, +c-recycling-disruptors-0036,SiOX > 5%, +c-recycling-disruptors-0037,Substances of very high concern, +c-recycling-disruptors-0038,Too Big, +c-recycling-disruptors-0039,Too Small, diff --git a/site/5_Controlled_Lists/5_1_5_Opacity.csv b/site/5_Controlled_Lists/5_1_5_Opacity.csv new file mode 100644 index 00000000..1b7d771a --- /dev/null +++ b/site/5_Controlled_Lists/5_1_5_Opacity.csv @@ -0,0 +1,4 @@ +identifier,category,detailed +c-opacity-0001,opaque,does not allow light to pass through; not able to be seen through; solid colour +c-opacity-0002,translucent,allows light, but not detailed shapes, to pass through; semi-transparent; tinted colour +c-opacity-0003,transparent,allows light to pass through so that objects behind can be distinctly seen; no colour/ clear diff --git a/site/5_Controlled_Lists/5_1_6_Level.csv b/site/5_Controlled_Lists/5_1_6_Level.csv new file mode 100644 index 00000000..47f94dc9 --- /dev/null +++ b/site/5_Controlled_Lists/5_1_6_Level.csv @@ -0,0 +1,6 @@ +identifier,category,detailed +lc-level-0001,primary,The individual container that you store goods in to sell to consumers. This is called a sales unit. For example, if you sell peas in steel tins with paper labels, the primary packaging is steel tin and paper label. +lc-level-0002,secondary,For grouping several sales units for selling or shipping purposes. Organisations may use secondary packaging to display goods in shops. For example, if you place one or more tins of peas into a cardboard box, then sell the box to a retailer or ship it to the consumer, the secondary packaging is cardboard box. +lc-level-0003,shipment,A type of secondary packaging for shipping single or multiple sales units to consumers. This includes cardboard boxes and mailing bags. For example, if you place a mobile phone in a cardboard box and then place the box into a mail bag before shipping it, the shipment packaging is mail bag. The primary packaging is cardboard box. +lc-level-0004,transit,Transit or tertiary packaging is used to group secondary packaging units together to protect them while being transported or handled. For example, if secondary packaging units are placed into larger cardboard boxes that are sealed with parcel tape and put onto wooden pallets to be transported, the transit packaging is cardboard box, parcel tape and wooden pallet. +Transit packaging does not include road, rail, ship and air containers. diff --git a/site/5_Controlled_Lists/5_1_7_Reuse_System.csv b/site/5_Controlled_Lists/5_1_7_Reuse_System.csv new file mode 100644 index 00000000..05e53e47 --- /dev/null +++ b/site/5_Controlled_Lists/5_1_7_Reuse_System.csv @@ -0,0 +1,3 @@ +identifier,category,detailed +c-reuse-system-0001,Loop,Loop is a global reuse platform enabled by a multistakeholder coalition. +c-reuse-system-0002,Reath,Reath’s Open Data Standard designed for reusable packaging. diff --git a/site/5_Controlled_Lists/5_1_8_Recycled_Evidence_Type.csv b/site/5_Controlled_Lists/5_1_8_Recycled_Evidence_Type.csv new file mode 100644 index 00000000..ce83586f --- /dev/null +++ b/site/5_Controlled_Lists/5_1_8_Recycled_Evidence_Type.csv @@ -0,0 +1,2 @@ +identifier,category,detailed +c-recycled-evidence-0001,certificate, diff --git a/site/5_Controlled_Lists/5_2_1_Material_Type.csv b/site/5_Controlled_Lists/5_2_1_Material_Type.csv new file mode 100644 index 00000000..9fce2323 --- /dev/null +++ b/site/5_Controlled_Lists/5_2_1_Material_Type.csv @@ -0,0 +1,3 @@ +identifier,category,detailed +material-component-catalogue-type-0001,biobased,from renewable products such as carbohydrates, starch, vegetable fats and oils, bacteria and other biological substances +material-component-catalogue-type-0002,synthetic,derived from crude oil, natural gas or coal diff --git a/site/5_Controlled_Lists/5_2_2_Material_Purpose.csv b/site/5_Controlled_Lists/5_2_2_Material_Purpose.csv new file mode 100644 index 00000000..99845c39 --- /dev/null +++ b/site/5_Controlled_Lists/5_2_2_Material_Purpose.csv @@ -0,0 +1,17 @@ +identifier,category,detailed +m-material-purpose-0001,acid scavenger, +m-material-purpose-0002,adhesive, +m-material-purpose-0003,antioxidant, +m-material-purpose-0004,antistatic agent, +m-material-purpose-0005,barrier, +m-material-purpose-0006,coating, +m-material-purpose-0007,fire retardant, +m-material-purpose-0008,light and heat stabilizer, +m-material-purpose-0009,lubricant, +m-material-purpose-0010,pigment, +m-material-purpose-0011,plasticizer, +m-material-purpose-0012,preservation, +m-material-purpose-0013,print, +m-material-purpose-0014,slip compound, +m-material-purpose-0015,structure, +m-material-purpose-0016,thermal stabilizer, diff --git a/site/5_Controlled_Lists/5_2_3_Material_Category.csv b/site/5_Controlled_Lists/5_2_3_Material_Category.csv new file mode 100644 index 00000000..964f10cd --- /dev/null +++ b/site/5_Controlled_Lists/5_2_3_Material_Category.csv @@ -0,0 +1,13 @@ +identifier,category,detailed +material-component-catalogue-category-0001,additive, +material-component-catalogue-category-0002,glass, +material-component-catalogue-category-0003,laminate, +material-component-catalogue-category-0004,metal, +material-component-catalogue-category-0005,mineral, +material-component-catalogue-category-0006,paper and cardboard, +material-component-catalogue-category-0007,plastic, +material-component-catalogue-category-0008,textile, +material-component-catalogue-category-0009,wood, +material-component-catalogue-category-0010,steel, +material-component-catalogue-category-0011,fibre-based composite, +material-component-catalogue-category-0012,aluminium, diff --git a/site/5_Controlled_Lists/5_3_1_Product_Type.csv b/site/5_Controlled_Lists/5_3_1_Product_Type.csv new file mode 100644 index 00000000..afdff157 --- /dev/null +++ b/site/5_Controlled_Lists/5_3_1_Product_Type.csv @@ -0,0 +1,4 @@ +identifier,category,detailed +cp-product-type-0001,food, +cp-product-type-0002,medicinal, +cp-product-type-0003,NA, diff --git a/site/5_Controlled_Lists/5_3_2_Deposit_Return_Scheme.csv b/site/5_Controlled_Lists/5_3_2_Deposit_Return_Scheme.csv new file mode 100644 index 00000000..bdbf7ae5 --- /dev/null +++ b/site/5_Controlled_Lists/5_3_2_Deposit_Return_Scheme.csv @@ -0,0 +1,6 @@ +identifier,name,description +cp-drs-0001,England, +cp-drs-0002,Scotland, +cp-drs-0003,Wales, +cp-drs-0004,Northern Ireland, +cp-drs-0005,none, diff --git a/site/5_Controlled_Lists/5_3_4_Recyclability_Source.csv b/site/5_Controlled_Lists/5_3_4_Recyclability_Source.csv new file mode 100644 index 00000000..db6eb32c --- /dev/null +++ b/site/5_Controlled_Lists/5_3_4_Recyclability_Source.csv @@ -0,0 +1,3 @@ +identifier,category,detailed +recyclability-source-0001,OPRL,OPRL is a not-for-profit company limited by guarantee any surpluses being reinvested in our activities to promote recycling of packaging. +recyclability-source-0002,Green Dot,Green Dot is a license symbol used on packaging in some European markets which shows that a fee has been paid to fund the recycling of that packaging when it becomes waste. diff --git a/site/6_Relationship_Lists/6_000_Relationship_Lists/index.html b/site/6_Relationship_Lists/6_000_Relationship_Lists/index.html new file mode 100644 index 00000000..94aad918 --- /dev/null +++ b/site/6_Relationship_Lists/6_000_Relationship_Lists/index.html @@ -0,0 +1,1314 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Relationship Lists - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Relationship Lists

+

Relationship lists are user-defined lists used in data standards to specify the relationships between different data elements. Unlike controlled lists, which are predefined within the data standard, relationship lists are populated by the user to provide context and clarity to the data being recorded.

+

For example, in the packaging industry, a relationship list could be used to specify the relationship between a component and its associated material or between a complete package and its components. By defining these relationships, the user can ensure that the data is consistent and accurate, which can help to improve decision-making, analysis, and reporting.

+

Relationship lists are flexible and can be customized to fit the needs of different users and applications, making them a powerful tool for managing complex data sets. However, they require careful planning and management to ensure that they are used consistently across the supply chain and that they remain relevant and up-to-date over time.

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_001_Material_Constituents/index.html b/site/6_Relationship_Lists/6_001_Material_Constituents/index.html new file mode 100644 index 00000000..383279eb --- /dev/null +++ b/site/6_Relationship_Lists/6_001_Material_Constituents/index.html @@ -0,0 +1,1611 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Material Constituents - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Material Constituents

+

The material constituents relationship list identifies the base_material and other materials that are combined to create materials. This is only used in materials.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
materialConstituentsIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
materialCombinationIdentifierrequiredStringThe unique identifier of the materials that this component is made of. There must be an equivalent record in the Base_Materials OR Materials data.
materialPurposerecommendedStringWhy is this base material or material being used? Use the identifier of the material purpose that this row relates to. The entry here should be drawn from the Material Purpose Controlled List.
virginMaterialrecommendedNumericThe maximum allowable percent of the material that was newly created for the material.
layerrecommendedNumericThe layer associated with the material. The inner most layer (the layer closest to the product) denoted as 1, and the outermost layer is the biggest number.
materialPercentagerecommendedNumericThe percentage of the total materials making-up the material. For every unique material, materialPercentage should add to 100%.
+

Diagram

+
erDiagram
+
+  MATERIALS }o..o{ MATERIAL_CONSTITUENTS : within
+  MATERIAL_CONSTITUENTS {
+    materialConstituentsIdentifier String
+    materialCombinationIdentifier String
+    materialPurpose String
+    virginMaterial Numeric
+    layer Numeric
+    materialPercentage Numeric
+  }
+  MATERIAL_CONSTITUENTS }o--o{ BASE_MATERIALS : attributes
+  MATERIAL_CONSTITUENTS }o--o{ MATERIALS : attributes
+  MATERIAL_CONSTITUENTS }o--o{ CONTROLLED_LISTS : attributes
+      CONTROLLED_LISTS {
+    materialPurposeControlledList required }
+  }
+

Template

+

Material constituents should be provided as a separate csv file. The specification of this csv file is as follows:

+

Material Constituents Template

+

Example

+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
--Fibre based composite Polyethylene, EVOH, Paper multi layer
+{
+  [
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+      "materialPurpose": "m-material-purpose-0005",
+      "virginMaterial": 100,
+      "layer": 1,
+      "materialPercentage": 7
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "96245c85-5671-4f3d-875f-82665005e9e8",
+      "materialPurpose": "m-material-purpose-0015",
+      "virginMaterial": 100,
+      "layer": 2,
+      "materialPercentage": 27
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+      "materialPurpose": "m-material-purpose-0002",
+      "virginMaterial": 100,
+      "layer": 3,
+      "materialPercentage": 7
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "ff249e1f-5015-46b8-8655-6c920fbf2606",
+      "materialPurpose": "m-material-purpose-0003",
+      "virginMaterial": 100,
+      "layer": 4,
+      "materialPercentage": 18
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+      "materialPurpose": "m-material-purpose-0002",
+      "virginMaterial": 100,
+      "layer": 5,
+      "materialPercentage": 7
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "96245c85-5671-4f3d-875f-82665005e9e8",
+      "materialPurpose": "m-material-purpose-0015",
+      "virginMaterial": 100,
+      "layer": 6,
+      "materialPercentage": 27
+    },
+    {
+      "materialConstituentsIdentifier": "f87b9bb3-f141-41cf-986e-e3a32b223f09",
+      "materialCombinationIdentifier": "3ca24db2-84d5-4681-aa16-136fbdba101f",
+      "materialPurpose": "m-material-purpose-0005",
+      "virginMaterial": 100,
+      "layer": 7,
+      "materialPercentage": 7
+    },
+  ]
+} 
+
+
+
+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
--Cellulose - verbose data structure
+{
+  "materialConstituentsIdentifier": "a4ef4dec-eceb-417d-bded-9bd1e305a440",
+  "materialCombinationIdentifier": {
+    "identifier": "m-material-purpose-0015",
+    "baseMaterialName": "Cellulose",
+    "baseMaterialType": {
+      "identifier": "bm-material-type-0001",
+      "category": "biobased",
+      "detailed": "from renewable products such as carbohydrates, starch, vegetable fats and oils, bacteria and other biological substances."
+    },
+    "baseMaterialType": "bm-material-type-0001",
+    "materialChemCID": "14055602"
+  },
+  "materialPurpose":{
+    "identifier": "m-material-purpose-0015",
+    "category": "structure",
+    "detailed": "Providing strength and stability."
+  },
+  "virginMaterial": 100,
+  "layer": null,
+  "materialPercentage": 100
+}
+
+
+
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_002_Component_Constituents/index.html b/site/6_Relationship_Lists/6_002_Component_Constituents/index.html new file mode 100644 index 00000000..35891a8a --- /dev/null +++ b/site/6_Relationship_Lists/6_002_Component_Constituents/index.html @@ -0,0 +1,1394 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Component Constituents - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Component Constituents

+

The component constituents relationship list identifies the materials that are combined to create components. This is only used in components.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
componentConstituentsIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
materialCombinationIdentifierrequiredStringThe unique identifier of the materials that this component is made of. There must be an equivalent record in the Materials OR Components data.
+

Diagram

+
erDiagram
+  COMPONENTS }o..o{ COMPONENT_CONSTITUENTS : within
+  COMPONENT_CONSTITUENTS {
+    componentConstituentsIdentifier String
+    componentCombinationIdentifier String
+  }
+  COMPONENT_CONSTITUENTS }o--o{ MATERIALS : attributes
+  COMPONENT_CONSTITUENTS }o--o{ COMPONENTS : attributes
+

Template

+

Component constituents should be provided as a separate csv file. The specification of this csv file is as follows:

+

Component Constituents Template

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_003_Complete_Packaging_Constituents/index.html b/site/6_Relationship_Lists/6_003_Complete_Packaging_Constituents/index.html new file mode 100644 index 00000000..2d09d668 --- /dev/null +++ b/site/6_Relationship_Lists/6_003_Complete_Packaging_Constituents/index.html @@ -0,0 +1,1395 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Complete Packaging Constituents - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Complete Packaging Constituents

+

The complete packaging constituents relationship list identifies the components and other complete packaging that are combined to create complete packages. This is only used in complete packaging.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
completePackagingConstituentsIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
completePackagingCombinationIdentifierrequiredStringThe unique identifier of the components and/or complete packaging that this complete packaging is made of. There must be an equivalent record in the Components OR Complete Packaging data.
+

Diagram

+
erDiagram
+
+  COMPLETE_PACKAGING }o..o{ COMPLETE_PACKAGING_CONSTITUENTS : within
+  COMPLETE_PACKAGING_CONSTITUENTS {
+    completePackagingConstituentsIdentifier String
+    completePackagingCombinationIdentifier String
+  }
+  COMPLETE_PACKAGING_CONSTITUENTS }o--o{ COMPONENTS : attributes
+  COMPLETE_PACKAGING_CONSTITUENTS }o--o{ COMPLETE_PACKAGING : attributes
+

Template

+

Complete packaging constituents should be provided as a separate csv file. The specification of this csv file is as follows:

+

Complete Packaging Constituents

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_004_Multipack_Constituents/index.html b/site/6_Relationship_Lists/6_004_Multipack_Constituents/index.html new file mode 100644 index 00000000..b88bb7a3 --- /dev/null +++ b/site/6_Relationship_Lists/6_004_Multipack_Constituents/index.html @@ -0,0 +1,1396 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Multipack Constituents - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Multipack Constituents

+

The multipack constituents relationship list identifies the complete packaging items that are combined to create multipacks. This is only used in multipack.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
multipackConstituentsIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
multipackCombinationIdentifierrequiredStringThe unique identifier of components and/or complete packaging that this multipack is made of. There must be an equivalent record in the Components OR Complete Packaging data.
+

Diagram

+
erDiagram
+
+  MULTIPACK }o..o{ MULTIPACK_CONSTITUENTS : within
+  MULTIPACK_CONSTITUENTS {
+    multipackConstituentsIdentifier String
+    multipackCombinationIdentifier String
+  }
+  MULTIPACK_CONSTITUENTS }o--o{ COMPLETE_PACKAGING : attributes
+  MULTIPACK_CONSTITUENTS }o--o{ COMPONENTS : attributes
+

Template

+

Multipack constituents should be provided as a separate csv file.

+

The specification of this csv file is as follows:

+

Multipack Constituents Template

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_005_Certification_Claims/index.html b/site/6_Relationship_Lists/6_005_Certification_Claims/index.html new file mode 100644 index 00000000..2bab2c05 --- /dev/null +++ b/site/6_Relationship_Lists/6_005_Certification_Claims/index.html @@ -0,0 +1,1438 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Certification Claims - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Certification Claims

+

The Certification Claims relationship list identifies the certificates that can be assigned to various tables. This is used in the following schemas:

+ +

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
certificationIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
certificationSourcerequiredStringWhat source provided the certificate? The entry should be the Certification Source Controlled List identifier.
certificationIssueDaterecommendedStringThe date that the certificate was provided/last updated. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+  BASE_MATERIALS }o..o{ CERTIFICATION_CLAIMS : within
+  MATERIALS }o..o{ CERTIFICATION_CLAIMS : within
+  COMPONENTS}o..o{ CERTIFICATION_CLAIMS : within
+  COMPLETE_PACKAGING }o..o{ CERTIFICATION_CLAIMS : within
+  CERTIFICATION_CLAIMS {
+    certificationIdentifier String
+    certificationSource String
+    certificationIssueDate String
+  }
+  CERTIFICATION_CLAIMS }o--o{ CONTROLLED_LISTS : attributes
+      CONTROLLED_LISTS {
+    certificationSource required }
+  }
+

Template

+

Certification claims should be provided as a separate csv file. The specification of this csv file is as follows:

+

Certification Claims Template

+

Example

+
+
+
+
1
+2
+3
+4
+5
+6
--A certificate provided by the FSA.
+{
+  "certificationIdentifier": "eed87ac3-6e3e-45fb-af2c-dd0f64fdb597",
+  "certificationSource": "certification-source-0002",
+  "certificationIssueDate": "01/08/2022"
+}
+
+
+
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_006_Recyclability_Claims/index.html b/site/6_Relationship_Lists/6_006_Recyclability_Claims/index.html new file mode 100644 index 00000000..03fcb633 --- /dev/null +++ b/site/6_Relationship_Lists/6_006_Recyclability_Claims/index.html @@ -0,0 +1,1435 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Recyclability Claims - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Recyclability Claims

+

The recyclability claims relationship list identifies organisations and schemes that provide the recyclability claims. This is used in the following schemas:

+ +

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
recyclabilityIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
recyclabilitySourcerecommendedStringWhat source provided the certificate? The entry should be the recyclability source controlled list identifier.
recyclabilityIssueDaterecommendedStringThe date that the certificate was provided/last updated. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+
+  COMPONENTS }o..o{ RECYCLABILITY_CLAIMS : within
+  COMPLETE_PACKAGING }o..o{ RECYCLABILITY_CLAIMS : within
+  RECYCLABILITY_CLAIMS {
+    recyclabilityIdentifier String
+    recyclabilitySource String
+    recyclabilityIssueDate String
+  }
+  RECYCLABILITY_CLAIMS }o--o{ CONTROLLED_LISTS : attributes
+      CONTROLLED_LISTS {
+    recyclabilitySource required }
+  }
+

Template

+

Recyclability claims should be provided as a separate csv file. The specification of this csv file is as follows:

+

Recyclability Claims Template

+

Example

+
+
+
+
1
+2
+3
+4
+5
+6
--Claim provided by OPRL.
+{
+  "recyclabilityIdentifier": "b101889f-87e5-4c42-abb7-0df5fc3d1a26",
+  "recyclabilitySource": "recyclability-source-0001",
+  "recyclabilityIssueDate": "01/08/2022"
+}
+
+
+
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_007_Component_End_of_Life_Routes/index.html b/site/6_Relationship_Lists/6_007_Component_End_of_Life_Routes/index.html new file mode 100644 index 00000000..00d733d4 --- /dev/null +++ b/site/6_Relationship_Lists/6_007_Component_End_of_Life_Routes/index.html @@ -0,0 +1,1412 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Component End of Life Routes - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Component End of Life Routes

+

The component end of life routes relationship list identifies the purposed and intended destination and process of this component once it has completed its role as packaging. This is only used in components.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
componentEndOfLifeRouteIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
componentEndOfLifeRouterequiredStringWhat is the intended end of life route for this component? The entry should be the end of life route controlled list identifier.
orderOfPrecedencerecommendedNumericThe order that end of life routes should be used. The preferred route denoted as 1, and the last best option being the biggest number.
componentDisruptorsrequiredListWhat challenges this end of life route for this component has. The entry should be the component end of life route disruptors controlled list identifier.
+

Diagram

+
erDiagram
+
+  COMPONENTS }o..o{ COMPONENT_END_OF_LIFE_ROUTES : within
+  COMPONENT_END_OF_LIFE_ROUTES {
+    componentEndOfLifeRouteIdentifier String
+    componentEndOfLifeRoute String
+    orderOfPrecedence String
+    componentDistruptors List
+  }
+  COMPONENT_END_OF_LIFE_ROUTES }o--o{ CONTROLLED_LISTS : attributes
+      CONTROLLED_LISTS {
+    endOfLifeRoute required
+    componentDistruptors required }
+  }
+

Template

+

Component end of life routes should be provided as a separate csv file. The specification of this csv file is as follows:

+

Component End of Life Routes

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/index.html b/site/6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/index.html new file mode 100644 index 00000000..e38df733 --- /dev/null +++ b/site/6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/index.html @@ -0,0 +1,1444 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Complete Packaging End of Life Routes - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Complete Packaging End of Life Routes

+

The complete packaging end of life routes relationship list identifies the purposed and intended destination and process of this complete packaging once it has completed its role as packaging. This is only used in complete packaging.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
completePackagingEndOfLifeRouteIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
completePackagingEndOfLifeRouterecommendedStringWhat is the intended end of life route for this complete packaging. The entry should be the end of life route controlled list identifier. To be filled in when complete packaging has an intended end of life route AS complete packaging, otherwise only fill out at component level.
orderOfPrecedencerecommendedNumericThe order that end of life routes should be used. The preferred route denoted as 1, and the last best option being the biggest number.
completePackagingDisruptorsrecommendedListWhat challenges this end of life route for this complete packaging has. The entry should be the complete packaging end of life route disruptors controlled list identifier.
+

Diagram

+
erDiagram
+
+  COMPLETE_PACKAGING }o..o{ COMPLETE_PACKAGING_END_OF_LIFE_ROUTES : within
+  COMPLETE_PACKAGING_END_OF_LIFE_ROUTES {
+    completePackagingEndOfLifeRouteIdentifier String
+    completePackagingEndOfLifeRoute String
+    orderOfPrecedence Numeric
+    completePackagingDistruptors List
+  }
+  COMPLETE_PACKAGING_END_OF_LIFE_ROUTES }o--o{ CONTROLLED_LISTS : attributes
+      CONTROLLED_LISTS {
+    endOfLifeRoute required
+    completePackagingDistruptors required }
+  }
+

Template

+

Complete packaging end of life routes should be provided as a separate csv file. The specification of this csv file is as follows:

+

Complete Packaging End of Life Routes Template

+

Example

+
+
+
+
1
+2
+3
+4
+5
+6
+7
+8
+9
--A complete packaging end of life route for recycling with food residue and a paper label being a disruptor.
+{
+  "completePackagingEndOfLifeRouteIdentifier": "1229f395-3065-4236-bc1e-2aa500f58a79",
+  "completePackagingEndOfLifeRoute": "end-of-life-route-0001",
+  "orderOfPrecedence": 1,
+  "completePackagingDistruptors": [
+      "cp-disruptors-0029", "cp-disruptors-0022"
+  ]
+}
+
+
+
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/6_Relationship_Lists/6_009_Recycled_Content_Claims/index.html b/site/6_Relationship_Lists/6_009_Recycled_Content_Claims/index.html new file mode 100644 index 00000000..864b7734 --- /dev/null +++ b/site/6_Relationship_Lists/6_009_Recycled_Content_Claims/index.html @@ -0,0 +1,1439 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Recycled Content Claims - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Recycled Content Claims

+

The recycled content claims relationship list identifies the document that details the recycled content claim. This is only used in components.

+

Data

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Column
Status
FormatNotes
recycledContentIdentifierrequiredStringA globally unique identifier. See identifiers section for information on how to construct this identifier
recycledContentEvidenceTyperecommendedStringWhat type of document provides the information regarding the claim? The entry should be the recycled content evidence type identifier.
recycledContentEvidenceReferencerecommendedStringAn accompanying reference number associated with the recycled content evidence type for the component.
recycledContentIssueDaterecommendedStringThe date that the recycled content evidence was issued. Use the format dd/mm/yyyy.
+

Diagram

+
erDiagram
+
+  COMPONENTS }o..o{ RECYCLED_CONTENT_CLAIMS : within
+  RECYCLED_CONTENT_CLAIMS {
+    recycledContentIdentifier String
+    recycledContentEvidenceType String
+    recycledContentEvidenceReference String
+    recycledContentIssueDate String
+  }
+  RECYCLED_CONTENT_CLAIMS }o--o{ CONTROLLED_LISTS : attributes
+      CONTROLLED_LISTS {
+    recycledContentEvidenceType required }
+  }
+

Template

+

Recycled content claims should be provided as a separate csv file. The specification of this csv file is as follows:

+

Recycled Content Claims

+

Example

+
+
+
+
1
+2
+3
+4
+5
+6
+7
--A certificate providing information about a recycled content claim.
+{
+  "recycledContentIdentifier": "23e8251a-4fe6-4b25-9966-b08acac9ba34",
+  "recycledContentEvidenceType": "c-recycled-evidence-0001",
+  "recycledContentEvidenceReference": "ABC-123-Example",
+  "recycledContentIssueDate": "01/08/2022"
+}
+
+
+
+
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/7_Supporting_Files/7_1_1_Base_Materials_Template.csv b/site/7_Supporting_Files/7_1_1_Base_Materials_Template.csv new file mode 100644 index 00000000..a4bf4f8d --- /dev/null +++ b/site/7_Supporting_Files/7_1_1_Base_Materials_Template.csv @@ -0,0 +1 @@ +identifier,baseMaterialName,baseMaterialType,materialChemCID,certification,certificationSource,certificationDate,manufacturedCountry,updateDate \ No newline at end of file diff --git a/site/7_Supporting_Files/7_1_2_Materials_Template.csv b/site/7_Supporting_Files/7_1_2_Materials_Template.csv new file mode 100644 index 00000000..e28c6881 --- /dev/null +++ b/site/7_Supporting_Files/7_1_2_Materials_Template.csv @@ -0,0 +1 @@ +identifier,materialIdentifier,baseMaterialIdentifier,materialName,materialPurpose,virginMaterial,layer,materialWeight,combinationPurpose,certification,certificationSource,certificationDate,manufacturedCountry,updateDate \ No newline at end of file diff --git a/site/7_Supporting_Files/7_1_3_Components_Template.csv b/site/7_Supporting_Files/7_1_3_Components_Template.csv new file mode 100644 index 00000000..919157fd --- /dev/null +++ b/site/7_Supporting_Files/7_1_3_Components_Template.csv @@ -0,0 +1 @@ +identifier,name,description,externalIdentifiers,imageURL,LOWcode,materialIdentifier,height,heightDate,width,widthDate,depth,depthDate,volume,volumeDate,weight,weightTolerance,weightDate,shape,function,flexibility,branding,componentRecyclingDisruptors,colour,opacity,loaned,reuseSystem,manufacturedCountry,recycledContent,recycledContentEvidenceType,recycledContentEvidenceReference,recyclability,recyclabilitySource,recyclabilityDate,partOfMultipack,certification,certificationSource,certificationDate,updateDate,releaseDate,discontinueDate \ No newline at end of file diff --git a/site/7_Supporting_Files/7_1_4_Complete_Packaging_Template.csv b/site/7_Supporting_Files/7_1_4_Complete_Packaging_Template.csv new file mode 100644 index 00000000..0148d908 --- /dev/null +++ b/site/7_Supporting_Files/7_1_4_Complete_Packaging_Template.csv @@ -0,0 +1 @@ +identifier,name,description,externalIdentifiers,imageURL,componentItems,LOWcodeWOproduct,productType,componentContactWithProduct,LOWcodeWproduct,onTheGo,householdWaste,depositReturnScheme,recyclingDisruptors,recyclability,recyclabilitySource,recyclabilityDate,height,heightDate,width,widthDate,depth,depthDate,volume,volumeDate,weight,weightTolerance,weightDate,servingCapacity,servingCapacityDate,partOfMultipack,certification,certificationSource,certificationDate,updateDate,releaseDate,discontinueDate \ No newline at end of file diff --git a/site/7_Supporting_Files/7_1_5_Multipack_Template.csv b/site/7_Supporting_Files/7_1_5_Multipack_Template.csv new file mode 100644 index 00000000..6280f28e --- /dev/null +++ b/site/7_Supporting_Files/7_1_5_Multipack_Template.csv @@ -0,0 +1 @@ +identifier,name,description,externalIdentifiers,multipackIdentifier,packagingItems,tier,identicalQuantity,updateDate,releaseDate,discontinueDate \ No newline at end of file diff --git a/site/7_Supporting_Files/7_1_6_Load_Catalogue_Template.csv b/site/7_Supporting_Files/7_1_6_Load_Catalogue_Template.csv new file mode 100644 index 00000000..c59308c0 --- /dev/null +++ b/site/7_Supporting_Files/7_1_6_Load_Catalogue_Template.csv @@ -0,0 +1 @@ +identifier,name,description,externalIdentifiers,loadIdentifier,packagingItems,quantityInLoad,level,updateDate \ No newline at end of file diff --git a/site/7_Supporting_Files/7_1_7_Load_Template.csv b/site/7_Supporting_Files/7_1_7_Load_Template.csv new file mode 100644 index 00000000..4a928bb4 --- /dev/null +++ b/site/7_Supporting_Files/7_1_7_Load_Template.csv @@ -0,0 +1 @@ +identifier,name,description,externalIdentifier,loadIdentifier,startDate,endDate,destinationAddressName,destinationAddressStreet,destinationAddressCountry,destinationPostalCode,timesSent,updateDate \ No newline at end of file diff --git a/site/7_Supporting_Files/7_2_Example_Files/index.html b/site/7_Supporting_Files/7_2_Example_Files/index.html new file mode 100644 index 00000000..ce1adc49 --- /dev/null +++ b/site/7_Supporting_Files/7_2_Example_Files/index.html @@ -0,0 +1,1393 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Supporting Files - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Supporting Files

+

This section of the guidance provides examples of different scenarios for providing information about packaging and download files for the templates

+

Excel Workbook

+

BETA VERSION

+

CSV blank

+

Core Schema

+
    +
  1. Base Materials
  2. +
  3. Materials
  4. +
  5. Components
  6. +
  7. Complete Packaging
  8. +
  9. Multipack
  10. +
  11. Load Catalogue
  12. +
  13. Load
  14. +
+

Relationship Lists

+
    +
  1. Material Constituents
  2. +
  3. Component Constituents
  4. +
  5. Complete Packaging Constituents
  6. +
  7. Multipack Constituents
  8. +
  9. Certification Claims
  10. +
  11. Recyclability Claims
  12. +
  13. Component End of Life Routes
  14. +
  15. Complete Packaging End of Life Routes
  16. +
  17. Recycled Content Claims
  18. +
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/8_Governance/8_1_Governance/index.html b/site/8_Governance/8_1_Governance/index.html new file mode 100644 index 00000000..0c14d14d --- /dev/null +++ b/site/8_Governance/8_1_Governance/index.html @@ -0,0 +1,1321 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Governance - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Governance

+

The Open 3P data standard has been developed to answer the data needs of the packaging industry. To ensure that the standard represents all stakeholders a comprehensive set of governance arrangements has been developed - to maintain trust, integrity and fairness.

+

Open Data Manchester (ODM) is a not-for-profit organisation that acts as the Data Standard Holding Body (DSHB) for Open 3P. It holds the intellectual property rights (IP) of the Open 3P data standard and is an independent and neutral entity, that has no stake in the packaging industry. It is a Community Interest Company (CIC) that has an ‘asset lock’, a legal mechanism that prevents predatory take over of its assets by third parties.

+

ODM’s role as the DSHB is four-fold.

+
    +
  • It holds the standard in an asset-lock.
  • +
  • It develops and maintains the standard on behalf of the Standard Custodian Board (SCB).
  • +
  • It provides secretariat services to the SCB.
  • +
  • It provides support services to individuals and organisations that want to adopt and exploit the potential of the data standard.
  • +
+

The SCB ensures that the standard is developed for and on-behalf of the packaging value chain. The board consists of industry stakeholders, domain and technical experts and is chaired by ODM. The board is elected through an open process with board members holding post for a maximum of three continuous years before stepping down.

+

Development of the standard follows a strict governance process where changes are either submitted to the board through the DSHB, the SCB itself or through external petition. Changes are assessed and if deemed to be beneficial are circulated for consultation. After the consultation period expires, the changes are then re-assessed and adopted if agreed. The SCB then mandates the DSHB to implement the change.

+

All proceedings and documents relating to the governance arrangements of the Open 3P standard can be found on the Governance Proceedings page of the Open 3P website. Meetings are quarterly with agenda, related documents circulated to the board 30 days before the meeting.

+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/9_Change_Log/8_1_Change_Log/index.html b/site/9_Change_Log/8_1_Change_Log/index.html new file mode 100644 index 00000000..254485cb --- /dev/null +++ b/site/9_Change_Log/8_1_Change_Log/index.html @@ -0,0 +1,2132 @@ + + + + + + + + + + + + + + + + + + + + + + + Latest Updates - Open3P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Latest Updates

+

A document that contains all the changes made to the standard.

+

September 29, 2023

+

Documents

+
    +
  • Reworked data formats page to include various wored examples
  • +
+

September 22, 2023

+

Documents

+
    +
  • Added blank Excel workbook to supporting files page
  • +
  • Added blank csvs for all core schema and all relationship lists to supporting files page and each schema page
  • +
+

September 7, 2023

+

Documents

+
    +
  • Added example for Recycled Content Claims
  • +
  • Added example for Recyclability Claims
  • +
  • Added example for Certification Claims
  • +
  • Added example for Components
  • +
  • Added example for Complete Packaging End of Life
  • +
  • Added example for Complete Packaging
  • +
+

August 11, 2023

+

Documents

+
    +
  • Added licence page so that users don’t need to navigate to Github
  • +
  • Improved homepage text regarding licencing
  • +
  • Improved sidebar navigation
  • +
  • Added licence to the footer
  • +
  • Added Relationship list, UUID and Single Source of Truth to Key Concepts page
  • +
  • Improved reability of Start Here Introduction
  • +
  • Fixed comestics typo to cosmetics in products types
  • +
  • Added product type descriptions
  • +
  • Various other typos
  • +
+

Data Fields

+
    +
  • Harmonised all boolean field descriptions so that they all stated “Answer as: ‘TRUE’ for yes and ‘FALSE’ for no.”
  • +
+

July 14, 2023

+

Documents

+
    +
  • Removed catalogue from the introduction area
  • +
  • Improved working about packaging levels
  • +
  • Reworked introduction
  • +
  • Improved key concepts page
  • +
  • Updated data flow
  • +
  • Improved Complete Packaging End of Life Route Relationship List
  • +
  • Added Controlled List information page
  • +
  • Improved the Goverance Page
  • +
  • Improved the branding to fit with the Open 3P brand guidelines
  • +
+

July 5, 2023

+

Documents

+
    +
  • Removed banner detailing that the standard is about plastic packaging.
  • +
  • Added Apache Licence to homepage
  • +
+

July 4, 2023

+

Documents, Model, Data Fields

+ +

March 17, 2023

+

Documents

+
    +
  • General improvements
  • +
+

March 10, 2023

+

Documents

+
    +
  • Added versioning control so that there can be parrellell versions
  • +
  • Updated Identifiers page to include information regarding UUID
  • +
+

March 9, 2023

+

Documents

+
    +
  • Variours changes to files for added function for versioning
  • +
+

February 7, 2023

+

Model

+
    +
  • Changed component catologue to components
  • +
+

Documents

+
    +
  • Added additional examples
  • +
  • Updated all data schema to based on changes
  • +
+

Data Fields

+
    +
  • Changed tags to external identifiers
  • +
+

February 3, 2023

+

Model

+
    +
  • Changed materials catologue to base materials
  • +
  • Added country to base materials
  • +
+

Documents

+
    +
  • Added examples to base materials
  • +
+

January 20, 2023

+

Documents

+
    +
  • Added schema images to all Data Specification pages
  • +
  • Added JSON example to all Data Specification pages
  • +
  • Added CSV examples
  • +
  • Added CSV templates
  • +
+

Data Fields

+
    +
  • Fixed Complete Packaging Recycling Disruptor List
  • +
+

January 06, 2023

+

Documents

+
    +
  • Neaten up tables so that the status column doesn’t go over multiple lines.
  • +
  • Updated schema image.
  • +
  • Fixed naming for material and material catalogue pages.
  • +
  • Added favicon.
  • +
+

December 20, 2022

+

Model

+
    +
  • separate out materials and material catalogue -> move to the front of the process
  • +
+

Data Fields

+
    +
  • Component Catalogue: add identifier to link materials
  • +
+

November 25, 2022

+

Documentation

+
    +
  • Add definitions of recycling and reuse
  • +
  • Bug fixes, typos and tweaks throughout
  • +
+

Data Fields

+
    +
  • Component Catalogue: branding added due to updated epr
  • +
  • Component Catalogue: loaned added due to epr
  • +
  • Multipack: outsideTier removed because encoded with tier level
  • +
+

Controlled Lists

+
    +
  • add none option to drs
  • +
+

November 18, 2022

+

Documents

+
    +
  • Complete Packaging: reformat component catalogue references by replacing independentComponent, previouslyAssembledComponent and allComponent with
  • +
  • Component Catalogue: created previouslyAssembledComponent as boolean and componentLink for addressing which components are attached when created.
  • +
  • Upload Schema
  • +
+

November 11, 2022

+

Documents

+
    +
  • Component Catalogue: Update measurement guidelines.
  • +
  • Complete Packaging: Update measurement guidelines.
  • +
+

October 21, 2022

+

Documents

+
    +
  • Complete Packaging: householdWaste turned into required field - representing the updated EPR
  • +
+

Controlled Lists

+
    +
  • Completed Definitions for shapes
  • +
  • Completed Definitions for opacity
  • +
  • Completed Definitions for level
  • +
  • Removed tertiary and replaced with ‘shipment’ and ‘transit’ to reflect updated EPR for level
  • +
+

September 30, 2022

+

Documents

+
    +
  • Fix typo in Key Concepts, Multipack
  • +
  • For measurements: Add rounding rule.
  • +
  • Change volume measurement to millilitres
  • +
  • For measurements: clarify why component measurements are slightly different to GS1’s complete packaging measurement guidance.
  • +
+

Data Fields

+
    +
  • Complete Packaging: Added weightTolerance to the complete packaging
  • +
+

September 26, 2022

+

Structural/Model Changes

+
    +
  • Controlled list material function -> material purpose
  • +
+

Data Fields

+
    +
  • Component Catalgoue: Moved level from component catalogue to load catalogue
  • +
  • Component Catalgoue: Removed importedUK since manufacturedCountry codes the same information
  • +
  • Component Catalogue: recycledContent description updated - Recycled Content as the minimum allowable recycled content
  • +
  • Component Catalogue: Added weightTolerance - definition to be updated.
  • +
  • Component Catalogue Materials: virginMaterial description updated - virigin material as the maximum allowable created for the component
  • +
  • Load: add the field loadIdentifier to link to the load catalogue
  • +
+

September 9, 2022

+

Data Fields

+
    +
  • required fields updated
  • +
  • All:uploaded changed to update
  • +
  • All: update added
  • +
  • All: discontinued changed to discontinue
  • +
  • Component Catalogue Materials: added materialName
  • +
  • Component Catalgoue: added partOfMultipack
  • +
  • Multipack: packagingItems replaced completePackaging and component
  • +
+

Structural/Model Changes

+
    +
  • Added downloadable csv files to Supporting Files
  • +
+

September 5, 2022

+

Structural/Model Changes

+
    +
  • Data Flow created
  • +
  • Introduction changed to Start Here; Key Concepts moved into Start Here and files updated to reflect these changes
  • +
+

Data Fields

+
    +
  • required fields updated (still in process)
  • +
+

September 2, 2022

+

Structural/Model Changes

+
    +
  • Removal of Unique Components (fields moved to Component Catalogue or Complete Packaging)
  • +
  • Addition of Load Catalogue: load split into load and load catalogue
  • +
+

Data Fields

+
    +
  • Component Catalgoue: format split into shape and function
  • +
  • Component Catalogue: Addition of level, reuseSystem, importedUK, and manufacturedCountry from unique components
  • +
  • Component Catalogue Materials: materialFunction turned into materialPurpose
  • +
  • Complete Packaging: Addition of componentContactWithProduct coverted from directContactWithProduct from unique components
  • +
  • All: tags converted into a dictionary; height, weight, depth, volume, and weight converted into numeric
  • +
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/assets/images/favicon.png b/site/assets/images/favicon.png new file mode 100644 index 00000000..1cf13b9f Binary files /dev/null and b/site/assets/images/favicon.png differ diff --git a/site/assets/javascripts/bundle.220ee61c.min.js b/site/assets/javascripts/bundle.220ee61c.min.js new file mode 100644 index 00000000..116072a1 --- /dev/null +++ b/site/assets/javascripts/bundle.220ee61c.min.js @@ -0,0 +1,29 @@ +"use strict";(()=>{var Ci=Object.create;var gr=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var ki=Object.getOwnPropertyNames,Ht=Object.getOwnPropertySymbols,Hi=Object.getPrototypeOf,yr=Object.prototype.hasOwnProperty,nn=Object.prototype.propertyIsEnumerable;var rn=(e,t,r)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))yr.call(t,r)&&rn(e,r,t[r]);if(Ht)for(var r of Ht(t))nn.call(t,r)&&rn(e,r,t[r]);return e};var on=(e,t)=>{var r={};for(var n in e)yr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Ht)for(var n of Ht(e))t.indexOf(n)<0&&nn.call(e,n)&&(r[n]=e[n]);return r};var Pt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Pi=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ki(t))!yr.call(e,o)&&o!==r&&gr(e,o,{get:()=>t[o],enumerable:!(n=Ri(t,o))||n.enumerable});return e};var yt=(e,t,r)=>(r=e!=null?Ci(Hi(e)):{},Pi(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e));var sn=Pt((xr,an)=>{(function(e,t){typeof xr=="object"&&typeof an!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(xr,function(){"use strict";function e(r){var n=!0,o=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(O){return!!(O&&O!==document&&O.nodeName!=="HTML"&&O.nodeName!=="BODY"&&"classList"in O&&"contains"in O.classList)}function f(O){var Qe=O.type,De=O.tagName;return!!(De==="INPUT"&&s[Qe]&&!O.readOnly||De==="TEXTAREA"&&!O.readOnly||O.isContentEditable)}function c(O){O.classList.contains("focus-visible")||(O.classList.add("focus-visible"),O.setAttribute("data-focus-visible-added",""))}function u(O){O.hasAttribute("data-focus-visible-added")&&(O.classList.remove("focus-visible"),O.removeAttribute("data-focus-visible-added"))}function p(O){O.metaKey||O.altKey||O.ctrlKey||(a(r.activeElement)&&c(r.activeElement),n=!0)}function m(O){n=!1}function d(O){a(O.target)&&(n||f(O.target))&&c(O.target)}function h(O){a(O.target)&&(O.target.classList.contains("focus-visible")||O.target.hasAttribute("data-focus-visible-added"))&&(o=!0,window.clearTimeout(i),i=window.setTimeout(function(){o=!1},100),u(O.target))}function v(O){document.visibilityState==="hidden"&&(o&&(n=!0),Y())}function Y(){document.addEventListener("mousemove",N),document.addEventListener("mousedown",N),document.addEventListener("mouseup",N),document.addEventListener("pointermove",N),document.addEventListener("pointerdown",N),document.addEventListener("pointerup",N),document.addEventListener("touchmove",N),document.addEventListener("touchstart",N),document.addEventListener("touchend",N)}function B(){document.removeEventListener("mousemove",N),document.removeEventListener("mousedown",N),document.removeEventListener("mouseup",N),document.removeEventListener("pointermove",N),document.removeEventListener("pointerdown",N),document.removeEventListener("pointerup",N),document.removeEventListener("touchmove",N),document.removeEventListener("touchstart",N),document.removeEventListener("touchend",N)}function N(O){O.target.nodeName&&O.target.nodeName.toLowerCase()==="html"||(n=!1,B())}document.addEventListener("keydown",p,!0),document.addEventListener("mousedown",m,!0),document.addEventListener("pointerdown",m,!0),document.addEventListener("touchstart",m,!0),document.addEventListener("visibilitychange",v,!0),Y(),r.addEventListener("focus",d,!0),r.addEventListener("blur",h,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var cn=Pt(Er=>{(function(e){var t=function(){try{return!!Symbol.iterator}catch(c){return!1}},r=t(),n=function(c){var u={next:function(){var p=c.shift();return{done:p===void 0,value:p}}};return r&&(u[Symbol.iterator]=function(){return u}),u},o=function(c){return encodeURIComponent(c).replace(/%20/g,"+")},i=function(c){return decodeURIComponent(String(c).replace(/\+/g," "))},s=function(){var c=function(p){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var m=typeof p;if(m!=="undefined")if(m==="string")p!==""&&this._fromString(p);else if(p instanceof c){var d=this;p.forEach(function(B,N){d.append(N,B)})}else if(p!==null&&m==="object")if(Object.prototype.toString.call(p)==="[object Array]")for(var h=0;hd[0]?1:0}),c._entries&&(c._entries={});for(var p=0;p1?i(d[1]):"")}})})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er);(function(e){var t=function(){try{var o=new e.URL("b","http://a");return o.pathname="c d",o.href==="http://a/c%20d"&&o.searchParams}catch(i){return!1}},r=function(){var o=e.URL,i=function(f,c){typeof f!="string"&&(f=String(f)),c&&typeof c!="string"&&(c=String(c));var u=document,p;if(c&&(e.location===void 0||c!==e.location.href)){c=c.toLowerCase(),u=document.implementation.createHTMLDocument(""),p=u.createElement("base"),p.href=c,u.head.appendChild(p);try{if(p.href.indexOf(c)!==0)throw new Error(p.href)}catch(O){throw new Error("URL unable to set base "+c+" due to "+O)}}var m=u.createElement("a");m.href=f,p&&(u.body.appendChild(m),m.href=m.href);var d=u.createElement("input");if(d.type="url",d.value=f,m.protocol===":"||!/:/.test(m.href)||!d.checkValidity()&&!c)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:m});var h=new e.URLSearchParams(this.search),v=!0,Y=!0,B=this;["append","delete","set"].forEach(function(O){var Qe=h[O];h[O]=function(){Qe.apply(h,arguments),v&&(Y=!1,B.search=h.toString(),Y=!0)}}),Object.defineProperty(this,"searchParams",{value:h,enumerable:!0});var N=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==N&&(N=this.search,Y&&(v=!1,this.searchParams._fromString(this.search),v=!0))}})},s=i.prototype,a=function(f){Object.defineProperty(s,f,{get:function(){return this._anchorElement[f]},set:function(c){this._anchorElement[f]=c},enumerable:!0})};["hash","host","hostname","port","protocol"].forEach(function(f){a(f)}),Object.defineProperty(s,"search",{get:function(){return this._anchorElement.search},set:function(f){this._anchorElement.search=f,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(s,{toString:{get:function(){var f=this;return function(){return f.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(f){this._anchorElement.href=f,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(f){this._anchorElement.pathname=f},enumerable:!0},origin:{get:function(){var f={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],c=this._anchorElement.port!=f&&this._anchorElement.port!=="";return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(c?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(f){},enumerable:!0},username:{get:function(){return""},set:function(f){},enumerable:!0}}),i.createObjectURL=function(f){return o.createObjectURL.apply(o,arguments)},i.revokeObjectURL=function(f){return o.revokeObjectURL.apply(o,arguments)},e.URL=i};if(t()||r(),e.location!==void 0&&!("origin"in e.location)){var n=function(){return e.location.protocol+"//"+e.location.hostname+(e.location.port?":"+e.location.port:"")};try{Object.defineProperty(e.location,"origin",{get:n,enumerable:!0})}catch(o){setInterval(function(){e.location.origin=n()},100)}}})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er)});var qr=Pt((Mt,Nr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof Mt=="object"&&typeof Nr=="object"?Nr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mt=="object"?Mt.ClipboardJS=r():t.ClipboardJS=r()})(Mt,function(){return function(){var e={686:function(n,o,i){"use strict";i.d(o,{default:function(){return Ai}});var s=i(279),a=i.n(s),f=i(370),c=i.n(f),u=i(817),p=i.n(u);function m(j){try{return document.execCommand(j)}catch(T){return!1}}var d=function(T){var E=p()(T);return m("cut"),E},h=d;function v(j){var T=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[T?"right":"left"]="-9999px";var H=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(H,"px"),E.setAttribute("readonly",""),E.value=j,E}var Y=function(T,E){var H=v(T);E.container.appendChild(H);var I=p()(H);return m("copy"),H.remove(),I},B=function(T){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},H="";return typeof T=="string"?H=Y(T,E):T instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(T==null?void 0:T.type)?H=Y(T.value,E):(H=p()(T),m("copy")),H},N=B;function O(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?O=function(E){return typeof E}:O=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},O(j)}var Qe=function(){var T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=T.action,H=E===void 0?"copy":E,I=T.container,q=T.target,Me=T.text;if(H!=="copy"&&H!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(q!==void 0)if(q&&O(q)==="object"&&q.nodeType===1){if(H==="copy"&&q.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(H==="cut"&&(q.hasAttribute("readonly")||q.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Me)return N(Me,{container:I});if(q)return H==="cut"?h(q):N(q,{container:I})},De=Qe;function $e(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?$e=function(E){return typeof E}:$e=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},$e(j)}function Ei(j,T){if(!(j instanceof T))throw new TypeError("Cannot call a class as a function")}function tn(j,T){for(var E=0;E0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof I.action=="function"?I.action:this.defaultAction,this.target=typeof I.target=="function"?I.target:this.defaultTarget,this.text=typeof I.text=="function"?I.text:this.defaultText,this.container=$e(I.container)==="object"?I.container:document.body}},{key:"listenClick",value:function(I){var q=this;this.listener=c()(I,"click",function(Me){return q.onClick(Me)})}},{key:"onClick",value:function(I){var q=I.delegateTarget||I.currentTarget,Me=this.action(q)||"copy",kt=De({action:Me,container:this.container,target:this.target(q),text:this.text(q)});this.emit(kt?"success":"error",{action:Me,text:kt,trigger:q,clearSelection:function(){q&&q.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(I){return vr("action",I)}},{key:"defaultTarget",value:function(I){var q=vr("target",I);if(q)return document.querySelector(q)}},{key:"defaultText",value:function(I){return vr("text",I)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(I){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return N(I,q)}},{key:"cut",value:function(I){return h(I)}},{key:"isSupported",value:function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],q=typeof I=="string"?[I]:I,Me=!!document.queryCommandSupported;return q.forEach(function(kt){Me=Me&&!!document.queryCommandSupported(kt)}),Me}}]),E}(a()),Ai=Li},828:function(n){var o=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,f){for(;a&&a.nodeType!==o;){if(typeof a.matches=="function"&&a.matches(f))return a;a=a.parentNode}}n.exports=s},438:function(n,o,i){var s=i(828);function a(u,p,m,d,h){var v=c.apply(this,arguments);return u.addEventListener(m,v,h),{destroy:function(){u.removeEventListener(m,v,h)}}}function f(u,p,m,d,h){return typeof u.addEventListener=="function"?a.apply(null,arguments):typeof m=="function"?a.bind(null,document).apply(null,arguments):(typeof u=="string"&&(u=document.querySelectorAll(u)),Array.prototype.map.call(u,function(v){return a(v,p,m,d,h)}))}function c(u,p,m,d){return function(h){h.delegateTarget=s(h.target,p),h.delegateTarget&&d.call(u,h)}}n.exports=f},879:function(n,o){o.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},o.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||o.node(i[0]))},o.string=function(i){return typeof i=="string"||i instanceof String},o.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(n,o,i){var s=i(879),a=i(438);function f(m,d,h){if(!m&&!d&&!h)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(h))throw new TypeError("Third argument must be a Function");if(s.node(m))return c(m,d,h);if(s.nodeList(m))return u(m,d,h);if(s.string(m))return p(m,d,h);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(m,d,h){return m.addEventListener(d,h),{destroy:function(){m.removeEventListener(d,h)}}}function u(m,d,h){return Array.prototype.forEach.call(m,function(v){v.addEventListener(d,h)}),{destroy:function(){Array.prototype.forEach.call(m,function(v){v.removeEventListener(d,h)})}}}function p(m,d,h){return a(document.body,m,d,h)}n.exports=f},817:function(n){function o(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var f=window.getSelection(),c=document.createRange();c.selectNodeContents(i),f.removeAllRanges(),f.addRange(c),s=f.toString()}return s}n.exports=o},279:function(n){function o(){}o.prototype={on:function(i,s,a){var f=this.e||(this.e={});return(f[i]||(f[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var f=this;function c(){f.off(i,c),s.apply(a,arguments)}return c._=s,this.on(i,c,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),f=0,c=a.length;for(f;f{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var rs=/["'&<>]/;Yo.exports=ns;function ns(e){var t=""+e,r=rs.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function W(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function D(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n1||a(m,d)})})}function a(m,d){try{f(n[m](d))}catch(h){p(i[0][3],h)}}function f(m){m.value instanceof et?Promise.resolve(m.value.v).then(c,u):p(i[0][2],m)}function c(m){a("next",m)}function u(m){a("throw",m)}function p(m,d){m(d),i.shift(),i.length&&a(i[0][0],i[0][1])}}function pn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ee=="function"?Ee(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,f){s=e[i](s),o(a,f,s.done,s.value)})}}function o(i,s,a,f){Promise.resolve(f).then(function(c){i({value:c,done:a})},s)}}function C(e){return typeof e=="function"}function at(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var It=at(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(n,o){return o+1+") "+n.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function Ve(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Ie=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Ee(s),f=a.next();!f.done;f=a.next()){var c=f.value;c.remove(this)}}catch(v){t={error:v}}finally{try{f&&!f.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var u=this.initialTeardown;if(C(u))try{u()}catch(v){i=v instanceof It?v.errors:[v]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var m=Ee(p),d=m.next();!d.done;d=m.next()){var h=d.value;try{ln(h)}catch(v){i=i!=null?i:[],v instanceof It?i=D(D([],W(i)),W(v.errors)):i.push(v)}}}catch(v){n={error:v}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new It(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)ln(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ve(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ve(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Sr=Ie.EMPTY;function jt(e){return e instanceof Ie||e&&"closed"in e&&C(e.remove)&&C(e.add)&&C(e.unsubscribe)}function ln(e){C(e)?e():e.unsubscribe()}var Le={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var st={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,o=this,i=o.hasError,s=o.isStopped,a=o.observers;return i||s?Sr:(this.currentObservers=null,a.push(r),new Ie(function(){n.currentObservers=null,Ve(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,o=n.hasError,i=n.thrownError,s=n.isStopped;o?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new F;return r.source=this,r},t.create=function(r,n){return new xn(r,n)},t}(F);var xn=function(e){ie(t,e);function t(r,n){var o=e.call(this)||this;return o.destination=r,o.source=n,o}return t.prototype.next=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,r)},t.prototype.error=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&o!==void 0?o:Sr},t}(x);var Et={now:function(){return(Et.delegate||Date).now()},delegate:void 0};var wt=function(e){ie(t,e);function t(r,n,o){r===void 0&&(r=1/0),n===void 0&&(n=1/0),o===void 0&&(o=Et);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=n,i._timestampProvider=o,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,n),i}return t.prototype.next=function(r){var n=this,o=n.isStopped,i=n._buffer,s=n._infiniteTimeWindow,a=n._timestampProvider,f=n._windowTime;o||(i.push(r),!s&&i.push(a.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),o=this,i=o._infiniteTimeWindow,s=o._buffer,a=s.slice(),f=0;f0?e.prototype.requestAsyncId.call(this,r,n,o):(r.actions.push(this),r._scheduled||(r._scheduled=ut.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,o){var i;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,o);var s=r.actions;n!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==n&&(ut.cancelAnimationFrame(n),r._scheduled=void 0)},t}(Wt);var Sn=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var o=this.actions,i;r=r||o.shift();do if(i=r.execute(r.state,r.delay))break;while((r=o[0])&&r.id===n&&o.shift());if(this._active=!1,i){for(;(r=o[0])&&r.id===n&&o.shift();)r.unsubscribe();throw i}},t}(Dt);var Oe=new Sn(wn);var M=new F(function(e){return e.complete()});function Vt(e){return e&&C(e.schedule)}function Cr(e){return e[e.length-1]}function Ye(e){return C(Cr(e))?e.pop():void 0}function Te(e){return Vt(Cr(e))?e.pop():void 0}function zt(e,t){return typeof Cr(e)=="number"?e.pop():t}var pt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Nt(e){return C(e==null?void 0:e.then)}function qt(e){return C(e[ft])}function Kt(e){return Symbol.asyncIterator&&C(e==null?void 0:e[Symbol.asyncIterator])}function Qt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function zi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Yt=zi();function Gt(e){return C(e==null?void 0:e[Yt])}function Bt(e){return un(this,arguments,function(){var r,n,o,i;return $t(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,et(r.read())];case 3:return n=s.sent(),o=n.value,i=n.done,i?[4,et(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,et(o)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Jt(e){return C(e==null?void 0:e.getReader)}function U(e){if(e instanceof F)return e;if(e!=null){if(qt(e))return Ni(e);if(pt(e))return qi(e);if(Nt(e))return Ki(e);if(Kt(e))return On(e);if(Gt(e))return Qi(e);if(Jt(e))return Yi(e)}throw Qt(e)}function Ni(e){return new F(function(t){var r=e[ft]();if(C(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function qi(e){return new F(function(t){for(var r=0;r=2;return function(n){return n.pipe(e?A(function(o,i){return e(o,i,n)}):de,ge(1),r?He(t):Dn(function(){return new Zt}))}}function Vn(){for(var e=[],t=0;t=2,!0))}function pe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new x}:t,n=e.resetOnError,o=n===void 0?!0:n,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,f=a===void 0?!0:a;return function(c){var u,p,m,d=0,h=!1,v=!1,Y=function(){p==null||p.unsubscribe(),p=void 0},B=function(){Y(),u=m=void 0,h=v=!1},N=function(){var O=u;B(),O==null||O.unsubscribe()};return y(function(O,Qe){d++,!v&&!h&&Y();var De=m=m!=null?m:r();Qe.add(function(){d--,d===0&&!v&&!h&&(p=$r(N,f))}),De.subscribe(Qe),!u&&d>0&&(u=new rt({next:function($e){return De.next($e)},error:function($e){v=!0,Y(),p=$r(B,o,$e),De.error($e)},complete:function(){h=!0,Y(),p=$r(B,s),De.complete()}}),U(O).subscribe(u))})(c)}}function $r(e,t){for(var r=[],n=2;ne.next(document)),e}function K(e,t=document){return Array.from(t.querySelectorAll(e))}function z(e,t=document){let r=ce(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ce(e,t=document){return t.querySelector(e)||void 0}function _e(){return document.activeElement instanceof HTMLElement&&document.activeElement||void 0}function tr(e){return L(b(document.body,"focusin"),b(document.body,"focusout")).pipe(ke(1),l(()=>{let t=_e();return typeof t!="undefined"?e.contains(t):!1}),V(e===_e()),J())}function Xe(e){return{x:e.offsetLeft,y:e.offsetTop}}function Kn(e){return L(b(window,"load"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>Xe(e)),V(Xe(e)))}function rr(e){return{x:e.scrollLeft,y:e.scrollTop}}function dt(e){return L(b(e,"scroll"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>rr(e)),V(rr(e)))}var Yn=function(){if(typeof Map!="undefined")return Map;function e(t,r){var n=-1;return t.some(function(o,i){return o[0]===r?(n=i,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),o=this.__entries__[n];return o&&o[1]},t.prototype.set=function(r,n){var o=e(this.__entries__,r);~o?this.__entries__[o][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,o=e(n,r);~o&&n.splice(o,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){!Wr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),va?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Wr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,o=ba.some(function(i){return!!~n.indexOf(i)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Gn=function(e,t){for(var r=0,n=Object.keys(t);r0},e}(),Jn=typeof WeakMap!="undefined"?new WeakMap:new Yn,Xn=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=ga.getInstance(),n=new La(t,r,this);Jn.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){Xn.prototype[e]=function(){var t;return(t=Jn.get(this))[e].apply(t,arguments)}});var Aa=function(){return typeof nr.ResizeObserver!="undefined"?nr.ResizeObserver:Xn}(),Zn=Aa;var eo=new x,Ca=$(()=>k(new Zn(e=>{for(let t of e)eo.next(t)}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function he(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ye(e){return Ca.pipe(S(t=>t.observe(e)),g(t=>eo.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(()=>he(e)))),V(he(e)))}function bt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function ar(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var to=new x,Ra=$(()=>k(new IntersectionObserver(e=>{for(let t of e)to.next(t)},{threshold:0}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function sr(e){return Ra.pipe(S(t=>t.observe(e)),g(t=>to.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(({isIntersecting:r})=>r))))}function ro(e,t=16){return dt(e).pipe(l(({y:r})=>{let n=he(e),o=bt(e);return r>=o.height-n.height-t}),J())}var cr={drawer:z("[data-md-toggle=drawer]"),search:z("[data-md-toggle=search]")};function no(e){return cr[e].checked}function Ke(e,t){cr[e].checked!==t&&cr[e].click()}function Ue(e){let t=cr[e];return b(t,"change").pipe(l(()=>t.checked),V(t.checked))}function ka(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Ha(){return L(b(window,"compositionstart").pipe(l(()=>!0)),b(window,"compositionend").pipe(l(()=>!1))).pipe(V(!1))}function oo(){let e=b(window,"keydown").pipe(A(t=>!(t.metaKey||t.ctrlKey)),l(t=>({mode:no("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),A(({mode:t,type:r})=>{if(t==="global"){let n=_e();if(typeof n!="undefined")return!ka(n,r)}return!0}),pe());return Ha().pipe(g(t=>t?M:e))}function le(){return new URL(location.href)}function ot(e){location.href=e.href}function io(){return new x}function ao(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)ao(e,r)}function _(e,t,...r){let n=document.createElement(e);if(t)for(let o of Object.keys(t))typeof t[o]!="undefined"&&(typeof t[o]!="boolean"?n.setAttribute(o,t[o]):n.setAttribute(o,""));for(let o of r)ao(n,o);return n}function fr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function so(){return location.hash.substring(1)}function Dr(e){let t=_("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Pa(e){return L(b(window,"hashchange"),e).pipe(l(so),V(so()),A(t=>t.length>0),X(1))}function co(e){return Pa(e).pipe(l(t=>ce(`[id="${t}"]`)),A(t=>typeof t!="undefined"))}function Vr(e){let t=matchMedia(e);return er(r=>t.addListener(()=>r(t.matches))).pipe(V(t.matches))}function fo(){let e=matchMedia("print");return L(b(window,"beforeprint").pipe(l(()=>!0)),b(window,"afterprint").pipe(l(()=>!1))).pipe(V(e.matches))}function zr(e,t){return e.pipe(g(r=>r?t():M))}function ur(e,t={credentials:"same-origin"}){return ue(fetch(`${e}`,t)).pipe(fe(()=>M),g(r=>r.status!==200?Ot(()=>new Error(r.statusText)):k(r)))}function We(e,t){return ur(e,t).pipe(g(r=>r.json()),X(1))}function uo(e,t){let r=new DOMParser;return ur(e,t).pipe(g(n=>n.text()),l(n=>r.parseFromString(n,"text/xml")),X(1))}function pr(e){let t=_("script",{src:e});return $(()=>(document.head.appendChild(t),L(b(t,"load"),b(t,"error").pipe(g(()=>Ot(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(l(()=>{}),R(()=>document.head.removeChild(t)),ge(1))))}function po(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function lo(){return L(b(window,"scroll",{passive:!0}),b(window,"resize",{passive:!0})).pipe(l(po),V(po()))}function mo(){return{width:innerWidth,height:innerHeight}}function ho(){return b(window,"resize",{passive:!0}).pipe(l(mo),V(mo()))}function bo(){return G([lo(),ho()]).pipe(l(([e,t])=>({offset:e,size:t})),X(1))}function lr(e,{viewport$:t,header$:r}){let n=t.pipe(ee("size")),o=G([n,r]).pipe(l(()=>Xe(e)));return G([r,t,o]).pipe(l(([{height:i},{offset:s,size:a},{x:f,y:c}])=>({offset:{x:s.x-f,y:s.y-c+i},size:a})))}(()=>{function e(n,o){parent.postMessage(n,o||"*")}function t(...n){return n.reduce((o,i)=>o.then(()=>new Promise(s=>{let a=document.createElement("script");a.src=i,a.onload=s,document.body.appendChild(a)})),Promise.resolve())}var r=class extends EventTarget{constructor(n){super(),this.url=n,this.m=i=>{i.source===this.w&&(this.dispatchEvent(new MessageEvent("message",{data:i.data})),this.onmessage&&this.onmessage(i))},this.e=(i,s,a,f,c)=>{if(s===`${this.url}`){let u=new ErrorEvent("error",{message:i,filename:s,lineno:a,colno:f,error:c});this.dispatchEvent(u),this.onerror&&this.onerror(u)}};let o=document.createElement("iframe");o.hidden=!0,document.body.appendChild(this.iframe=o),this.w.document.open(),this.w.document.write(` + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + +
+
+
+ + + + +
+
+ + + + +

Home

+ +

Open Data Manchester

+

Open 3P: Definition

+

A data standard for the packaging value chain.

+

Version

+

Version 2.0 Published 2023-06-06

+

Working with the Standard

+

The standard is open and free to use, copy and distribute. However, the standard is © copyright of Open Data Manchester CIC and released under the Apache License, Version 2.0 so you must use the correct attribution and licence.

+

Contents

+
    +
  1. Start Here
  2. +
  3. Data Formats
  4. +
  5. Data Specification
  6. +
  7. Identifiers
  8. +
  9. Controlled Lists
  10. +
  11. Relationship Lists
  12. +
  13. Supporting Files
  14. +
  15. Governance
  16. +
  17. Licence
  18. +
  19. Change Log
  20. +
+ + + + + + +
+
+ + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/site/search/search_index.json b/site/search/search_index.json new file mode 100644 index 00000000..4581e155 --- /dev/null +++ b/site/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Home","text":""},{"location":"#open-3p-definition","title":"Open 3P: Definition","text":"

A data standard for the packaging value chain.

"},{"location":"#version","title":"Version","text":"

Version 2.0 Published 2023-06-06

"},{"location":"#working-with-the-standard","title":"Working with the Standard","text":"

The standard is open and free to use, copy and distribute. However, the standard is \u00a9 copyright of Open Data Manchester CIC and released under the Apache License, Version 2.0 so you must use the correct attribution and licence.

"},{"location":"#contents","title":"Contents","text":"
  1. Start Here
  2. Data Formats
  3. Data Specification
  4. Identifiers
  5. Controlled Lists
  6. Relationship Lists
  7. Supporting Files
  8. Governance
  9. Licence
  10. Change Log
"},{"location":"10_Licence/10_01_Licence/","title":"Licence","text":"
                Copyright (c) 2021-23 Open Data Manchester CIC\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n                             Apache License\n                       Version 2.0, January 2004\n                    http://www.apache.org/licenses/\n

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

  1. Definitions.

    \u201cLicense\u201d shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.

    \u201cLicensor\u201d shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.

    \u201cLegal Entity\u201d shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, \u201ccontrol\u201d means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

    \u201cYou\u201d (or \u201cYour\u201d) shall mean an individual or Legal Entity exercising permissions granted by this License.

    \u201cSource\u201d form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.

    \u201cObject\u201d form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.

    \u201cWork\u201d shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).

    \u201cDerivative Works\u201d shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

    \u201cContribution\u201d shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, \u201csubmitted\u201d means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as \u201cNot a Contribution.\u201d

    \u201cContributor\u201d shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.

  2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.

  3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

  4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

    (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and

    (b) You must cause any modified files to carry prominent notices stating that You changed the files; and

    (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and

    (d) If the Work includes a \u201cNOTICE\u201d text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.

    You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

  5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.

  6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.

  7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an \u201cAS IS\u201d BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

  8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.

  9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

  To apply the Apache License to your work, attach the following\nboilerplate notice, with the fields enclosed by brackets \"[]\"\nreplaced with your own identifying information. (Don't include\n  the brackets!)  The text should be enclosed in the appropriate\n  comment syntax for the file format. We also recommend that a\n  file or class name and description of purpose be included on the\n  same \"printed page\" as the copyright notice for easier\n  identification within third-party archives.\n

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the \u201cLicense\u201d); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0\n

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \u201cAS IS\u201d BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

"},{"location":"1_Start_Here/1_1_Introduction/","title":"Introduction","text":""},{"location":"1_Start_Here/1_1_Introduction/#what-is-open-3p","title":"What is Open 3P?","text":"

Open 3P is an open standard for packaging data for the packaging industry, which is being developed by Open Data Manchester in collaboration with over 120 individuals from 70 organisations across the packaging supply chain. The goal of Open 3P is to establish a common language for exchanging and sharing data related to packaging materials and processes, which will help to improve transparency and accountability in the industry.

With Open 3P, stakeholders in the packaging supply chain will be able to share information about materials, components and packaging in a standardised format. This will allow for better collaboration between manufacturers, retailers, recyclers, regulators, and consumers. By creating a common understanding of the materials and processes involved in packaging, it will be easier to identify opportunities for reducing waste, increasing efficiency, and improving sustainability throughout the supply chain.

The first phase of the project brought together stakeholders from the entire packaging ecosystem to explore how we might create the foundations for systemic change in the packaging value chain. We had more than 120 individuals from over 70 organisations take part in our workshops, interviews and research and we are incredibly grateful to them for sharing their time, expertise and support.

Open 3P is based on the principles of open data, which means that it is freely accessible, sharable, and usable by anyone. It is designed to be flexible and adaptable to different contexts and use cases, so that it can evolve over time as new technologies and practices emerge. The development of Open 3P is guided by the OpenStand principles of:

  • Due process
  • Broad consensus
  • Transparency
  • Balance
  • Openness

which ensure that the standard is developed in a fair and inclusive manner, and that all stakeholders have a voice in the process.

Overall, Open 3P represents an important step forward for the packaging industry, as it provides a foundation for greater transparency and collaboration across the supply chain. By adopting a common language for sharing and exchanging data, stakeholders will be able to work together more effectively to reduce waste, improve sustainability, and create a more circular economy.

"},{"location":"1_Start_Here/1_1_Introduction/#what-is-an-open-data-standard","title":"What is an open data standard?","text":"

An open data standard is a set of guidelines that dictate the structure and composition of data. It enables people and organisations to communicate data about the same topic using the same language. Standardisation of data structure ensures consistency, comparability and interconnectivity. Open data standards are publicly accessible and can be used by anyone. This makes it easy to understand, share, and reuse data that has been published and shared by others. As a result of open data standards, multiple organisations can collaborate and create a larger and more comprehensive dataset when they publish data about the same topic. By adhering to a set of open standards, data can be shared more efficiently, allowing for greater collaboration, analysis and discovery.

"},{"location":"1_Start_Here/1_1_Introduction/#how-is-the-standard-being-developed","title":"How is the standard being developed?","text":"

The initial standard development was funded by Innovate UK, and is being developed through workshops with industry experts over a number of iterations. The project patners were OPRL Open Data Manchester, Dsposal, RECOUP, and Ecosurety.

"},{"location":"1_Start_Here/1_1_Introduction/#how-to-use-the-standard","title":"How to use the standard","text":"

To use the Open 3P standard, start by familiarising yourself with the terms and definitions outlined in the standard. These are used to describe the structure and components of packaging and the packaging supply chain. Next, map your data to the standard by using the terms and definitions as a guide. This will ensure that your data is consistent and can be easily shared and understood by others who are also using the standard.

It\u2019s important to note that the Open 3P standard is not a technology or platform, but rather a set of rules and guidelines for how to structure data related to packaging. It is used to help people create technology, applications, and integrations that can work together to improve transparency and sustainability in the packaging industry. By using the Open 3P standard, you can ensure that your data is accurate, consistent, and interoperable with other systems that also use the standard.

"},{"location":"1_Start_Here/1_2_Key_Concepts/","title":"Key Concepts","text":"

The Open 3P data standard is to provide information about what packaging is made out of and how these materials flow through the packaging supply chain. With Open 3P, stakeholders in the packaging supply chain will be able to share information about materials, components and packaging in a standardised format. This will allow for better collaboration between manufacturers, brands, retailers, consumers, recyclers, compliance schemes and regulators.

"},{"location":"1_Start_Here/1_2_Key_Concepts/#packaging-ecosystem-data-products-waste-flows","title":"Packaging Ecosystem Data, Products, Waste Flows","text":"

The diagram below can help you to visualise how information might flow across the packaging supply chain using Open 3P. The standard supports data exchange between necessary parties whilst preserving a single source of truth across the industry.

sequenceDiagram\n    participant manufacturers\n    participant brands\n    participant retailers\n    participant consumers\n    participant recyclers\n    participant complianceSchemes\n    participant regulators\n    manufacturers->>brands: products\n    manufacturers->>retailers: products\n    manufacturers->>complianceSchemes: data\n    manufacturers->>regulators: data\n    brands->>retailers: products\n    brands->>consumers: products\n    brands->>recyclers: waste\n    brands->>complianceSchemes: data\n    brands->>regulators: data\n    retailers->>consumers: products\n    retailers->>recyclers: waste\n    retailers->>complianceSchemes: data\n    retailers->>regulators: data\n    consumers->>recyclers: waste\n    recyclers->>manufacturers: material\n    complianceSchemes->>regulators: data

"},{"location":"1_Start_Here/1_2_Key_Concepts/#definitions","title":"Definitions","text":""},{"location":"1_Start_Here/1_2_Key_Concepts/#base-materials","title":"Base Materials","text":"
  • general template used to store information about a base level material
"},{"location":"1_Start_Here/1_2_Key_Concepts/#materials","title":"Materials","text":"
  • an individual substance (e.g., PET)
  • created from the base materials level
"},{"location":"1_Start_Here/1_2_Key_Concepts/#components","title":"Components","text":"
  • an individual unit (e.g., a bottle)
  • parts made from different materials (e.g., a window on a sandwich box)
  • zippers, taps, etc. (even though attached)
  • general template used for packaging manufacturers to store information.
  • these components can be used by multiple users and combined with other components in different ways
"},{"location":"1_Start_Here/1_2_Key_Concepts/#product","title":"Product","text":"
  • That which is contained inside of the packaging
"},{"location":"1_Start_Here/1_2_Key_Concepts/#complete-packaging","title":"Complete Packaging","text":"
  • Components are combined to make complete packaging
  • for example, a lid, a bottle and a label are all individual components. These would be combined to form a complete packaging item
"},{"location":"1_Start_Here/1_2_Key_Concepts/#multipack","title":"Multipack","text":"
  • Sometimes, multiple units of complete packaging are combined, and sold as a single unit
  • This is a multipack
"},{"location":"1_Start_Here/1_2_Key_Concepts/#load-catalogue","title":"Load Catalogue","text":"
  • Complete packaging units are combined into a delivery load
  • Usually wrapped in secondary and tertiary packaging
"},{"location":"1_Start_Here/1_2_Key_Concepts/#load","title":"Load","text":"
  • Collection of load catalogue broken into destinations and on-the-market packaging for specified reporting periods
"},{"location":"1_Start_Here/1_2_Key_Concepts/#packaging-item","title":"Packaging Item","text":"
  • A component, complete packaging, or multipack
"},{"location":"1_Start_Here/1_2_Key_Concepts/#controlled-list","title":"Controlled List","text":"
  • Controlled Lists serve as reference points for key terms and phrases that are commonly used in the packaging industry, which are maintained and administred by the Standard Custodian Board (SCB)
"},{"location":"1_Start_Here/1_2_Key_Concepts/#relationship-list","title":"Relationship List","text":"
  • Relationship lists are user-defined lists used in data standards to specify the relationships between different data elements. Unlike controlled lists relationship lists are populated by the user to provide context and clarity to the data being recorded
"},{"location":"1_Start_Here/1_2_Key_Concepts/#uuid","title":"UUID","text":"
  • A machine readable unique identifier generated for an entry conforming to the standard
  • UUIDs improve data flow by assigning an unambiguous tag to your data
  • These IDs are then used to link between layers of the standard e.g. to link components to complete packaging
"},{"location":"1_Start_Here/1_2_Key_Concepts/#single-source-of-truth","title":"Single Source of Truth","text":"
  • In information science and information technology, single source of truth (SSOT) architecture, or single point of truth (SPOT) architecture, for information systems is the practice of structuring information models and associated data schemas such that every data element is mastered (or edited) in only one place.
  • Singe source of truth wikipedia article
"},{"location":"1_Start_Here/1_3_Data_Flow/","title":"Data Flow","text":"

Here, we show examples of how data could flow using the open standard. This tells the story of how wine bottles are created with a packaging manufacturer, how that packaging manufacturer sends their packaging to a packer/filler and then how that packer/filler will put packaging together, filled with a product and then send them to a retailer. The eight flow diagrams below compliment each other to build a complete picture.

Shared responsiblity

When viewing the flows below be aware that no single individual and/or organisation is responsible for the entire data capture. It is the intent of Open 3P that experts in their part of the value chain are repsonsible for it\u2019s adherence to the data.

"},{"location":"1_Start_Here/1_3_Data_Flow/#the-flow","title":"The flow","text":"

Open 3P has been designed to allow information to flow from base materials all the way through to a load. Below you can see how these are connected.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_example[base material]\n    end\n    subgraph materials[Materials]\n        ma_example[material]\n    end\n    subgraph components[Components]\n        co_example[component]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_example[complete package]\n    end\n    subgraph loads[Loads]\n        lo_example[load]\n    end\n    bm_example --> ma_example\n    ma_example --> co_example\n    co_example --> cp_example\n    cp_example --> lo_example

"},{"location":"1_Start_Here/1_3_Data_Flow/#introducting-basic-items","title":"Introducting basic items","text":"

At its most basic Open 3P allows the minimal amount of infomation to be passed along. In this example cardboard is using used as the base material, then again as the material and also as the component. At the component step the cardboard box is combined with tape to create a complete package ready to be filled by a product before being sent out on a load.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_cardboard[cardboard]\n    end\n    subgraph materials[Materials]\n        ma_cardboard[cardboard]\n    end\n    subgraph components[Components]\n        co_cardboard[cardboard box]\n        co_example[tape]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_example[complete package]\n    end\n    subgraph loads[Loads]\n        lo_example[load]\n    end\n    bm_cardboard --> ma_cardboard\n    ma_cardboard --> co_cardboard\n    co_cardboard --> cp_example\n    co_example --> cp_example\n    cp_example --> lo_example

"},{"location":"1_Start_Here/1_3_Data_Flow/#combining-items-to-make-complex-items","title":"Combining items to make complex items","text":"

Although some items used within the packaging value chains are simple, others are complex. Open 3P allows the combination of items at each schema level. In the example bellow a packaging tape is created by the combination of cellulose and adhesive. This is the used in conjunction with the cardboard box to create the complete packaging.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_cellulose[cellulose]\n        bm_adhesive[adhesive]\n        bm_cardboard[cardboard]\n    end\n    subgraph materials[Materials]\n        ma_tape[tape]\n        ma_cardboard[cardboard]\n    end\n    subgraph components[Components]\n        co_cardboard[cardboard box]\n        co_tape[tape]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_cardboard[delivery box]\n    end\n    subgraph loads[Loads]\n        lo_example[load]\n    end\n    bm_cellulose --> ma_tape\n    bm_adhesive --> ma_tape\n    bm_cardboard --> ma_cardboard\n    ma_tape --> co_tape\n    ma_cardboard --> co_cardboard\n    co_cardboard --> cp_cardboard\n    co_tape --> cp_cardboard\n    cp_cardboard --> lo_example

"},{"location":"1_Start_Here/1_3_Data_Flow/#using-items-multiple-times","title":"Using items multiple times","text":"

Within the packaging value chain items are combined in different arrangements to create similar or completely distinct items. This can been seen below where the same sand and soda ash are used to make the two different types of glass; soda-lime glass and borosilicate glass. This information can be passed through the value chain, providing additional insights for stakeholders, clients and customers.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_sand[sand]\n        bm_sodaAsh[soda ash]\n        bm_limestone[limestone]\n        bm_cullet[cullet]\n        bm_boricOxide[boric oxide]\n    end\n    subgraph materials[Materials]\n        ma_glass1[\"glass\n        food and drink\"]\n        ma_glass2[\"glass\n        pharmaceutical\"]\n    end\n    subgraph components[Components]\n        co_glassBottle1[glass bottle]\n        co_glassBottle2[glass bottle]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_example1[complete packaging]\n        cp_example2[complete packaging]\n    end\n    subgraph loads[Loads]\n        lo_example1[load]\n        lo_example2[load]\n    end\n    bm_limestone --> ma_glass1\n    bm_cullet --> ma_glass1\n    bm_sand --> ma_glass1\n    bm_sand --> ma_glass2\n    bm_sodaAsh --> ma_glass1\n    bm_sodaAsh --> ma_glass2\n    bm_boricOxide --> ma_glass2\n    ma_glass1 --> co_glassBottle1\n    ma_glass2 --> co_glassBottle2\n    co_glassBottle1 --> cp_example1\n    co_glassBottle2 --> cp_example2\n    cp_example1 --> lo_example1\n    cp_example2 --> lo_example2

"},{"location":"1_Start_Here/1_3_Data_Flow/#creating-a-load","title":"Creating a load","text":"

Taken as a whole the cardboard, tape and glass are combined at various points to create a wine delivery. With the addition of cork and aluminium all the materials and components can be seen.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_cardboard[cardboard]\n        bm_sand[sand]\n        bm_sodaAsh[soda ash]\n        bm_limestone[limestone]\n        bm_cullet[cullet]\n        bm_aluminium[aluminium]\n        bm_cork[cork]\n        bm_cellulose[cellulose]\n        bm_adhesive[adhesive]\n    end\n    subgraph materials[Materials]\n        ma_cardboard[cardboard]\n        ma_glass[glass]\n        ma_cork[cork]\n        ma_aluminium[aluminium]\n        ma_tape[tape]\n    end\n    subgraph components[Components]\n        co_glassBottle[bottle]\n        co_corkCork[cork]\n        co_aluminiumCapsule[capsule]\n        co_cardboard[box]\n        co_tape[tape]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_wineBottle[wine bottle]\n        cp_cardboardBox[wine box]\n    end\n    subgraph loads[Loads]\n        lo_wineDelivery[wine delivery]\n    end\n    bm_cardboard --> ma_cardboard\n    bm_cullet --> ma_glass\n    bm_sand --> ma_glass\n    bm_limestone --> ma_glass\n    bm_sodaAsh --> ma_glass\n    bm_cork --> ma_cork\n    bm_aluminium --> ma_aluminium\n    bm_cellulose --> ma_tape\n    bm_adhesive --> ma_tape\n    ma_cardboard --> co_cardboard\n    ma_glass --> co_glassBottle\n    ma_aluminium --> co_aluminiumCapsule\n    ma_cork --> co_corkCork\n    ma_tape --> co_tape\n    co_glassBottle --> cp_wineBottle\n    co_corkCork --> cp_wineBottle\n    co_aluminiumCapsule  --> cp_wineBottle\n    co_cardboard --> cp_cardboardBox\n    co_tape --> cp_cardboardBox\n    cp_cardboardBox --> lo_wineDelivery\n    cp_wineBottle --> lo_wineDelivery

"},{"location":"1_Start_Here/1_3_Data_Flow/#within-schema-combinations","title":"Within schema combinations","text":"

The Open 3P standards allows further complexity when combining items within a schema. This is seen below where the two materials label and \u2018ssolvent free print substrate\u2019 are futher combined to create a \u2018printed label\u2019.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_paper[paper]\n        bm_adhesive[adhesive]\n        bm_glassine[glassine]\n        bm_ink[solvent free ink]\n        bm_varnish[solvent free varnish]\n    end\n    subgraph materials[Materials]\n        ma_label[label]\n        ma_coating[solvent free print substrate]\n        ma_label2[printed label]\n    end\n    subgraph components[Components]\n        co_topLabel[branded front label]\n        co_bottomLabel[branded back label]\n        co_example[bottle]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_example[complete package]\n    end\n    subgraph loads[Loads]\n        lo_example[load]\n    end\n    bm_paper --> ma_label\n    bm_adhesive --> ma_label\n    bm_glassine --> ma_label\n    bm_ink --> ma_coating\n    bm_varnish --> ma_coating\n    ma_label --> ma_label2\n    ma_coating --> ma_label2\n    ma_label2 --> co_topLabel\n    ma_label2 --> co_bottomLabel\n    co_topLabel --> cp_example\n    co_bottomLabel --> cp_example\n    co_example --> cp_example\n    cp_example --> lo_example

"},{"location":"1_Start_Here/1_3_Data_Flow/#laminates","title":"Laminates","text":"

Additionally base materials and materials can be layered in an ordered arrangement; known as lamination. In the example three base materials are layered together to create a laminate. Two of the materials are used twice within the material, with the third only being used the once.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_ep[ethylene-propylene]\n        bm_eva[ethylene-vinyl acetate]\n        bm_copolyester[copolyester]\n    end\n    subgraph materials[Materials]\n        ma_shrinkwrap[plastic laminate]\n    end\n    subgraph components[Components]\n        co_shrinkwrap[shrink wrap]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_shrinkwrap[shrink wrap]\n    end\n    subgraph loads[Loads]\n        lo_example[load]\n    end\n    bm_ep -- layer 1 --> ma_shrinkwrap\n    bm_eva -- layer 2 --> ma_shrinkwrap\n    bm_copolyester -- layer 3 --> ma_shrinkwrap\n    bm_eva -- layer 4 --> ma_shrinkwrap\n    bm_ep -- layer 5 --> ma_shrinkwrap\n    ma_shrinkwrap --> co_shrinkwrap\n    co_shrinkwrap --> cp_shrinkwrap\n    cp_shrinkwrap --> lo_example

"},{"location":"1_Start_Here/1_3_Data_Flow/#packaging-tier","title":"Packaging Tier","text":"

This final example shows how the above examples are combined to create a flow for the wine bottles, with the inclusion of tiers for the packaging at the load schema.

flowchart LR\n    subgraph baseMaterials[Base Materials]\n        bm_cardboard[cardboard]\n        bm_sand[sand]\n        bm_sodaAsh[soda ash]\n        bm_limestone[limestone]\n        bm_cullet[cullet]\n        bm_aluminium[aluminium]\n        bm_cork[cork]\n        bm_cellulose[cellulose]\n        bm_adhesive[adhesive]\n        bm_paper[paper]\n        bm_adhesive2[adhesive]\n        bm_glassine[glassine]\n        bm_ink[solvent free ink]\n        bm_varnish[solvent free varnish]\n        bm_ep[ethylene-propylene]\n        bm_eva[ethylene-vinyl acetate]\n        bm_copolyester[copolyester]\n    end\n    subgraph materials[Materials]\n        ma_cardboard[cardboard]\n        ma_glass[glass]\n        ma_cork[cork]\n        ma_aluminium[aluminium]\n        ma_tape[tape]\n        ma_label[label]\n        ma_coating[solvent free print substrate]\n        ma_label2[printed label]\n        ma_shrinkwrap[plastic laminate]\n    end\n    subgraph components[Components]\n        co_glassBottle[bottle]\n        co_corkCork[cork]\n        co_aluminiumCapsule[capsule]\n        co_cardboard[box]\n        co_tape[tape]\n        co_topLabel[branded front label]\n        co_bottomLabel[branded back label]\n        co_shrinkwrap[shrink wrap]\n    end\n    subgraph completePackages[Complete Packages]\n        cp_wineBottle[wine bottle]\n        cp_cardboardBox[wine box]\n        cp_shrinkwrap[shrink wrap]\n    end\n    subgraph loads[Loads]\n        lo_wineDelivery[wine delivery]\n    end\n    bm_cardboard --> ma_cardboard\n    bm_cullet --> ma_glass\n    bm_sand --> ma_glass\n    bm_limestone --> ma_glass\n    bm_sodaAsh --> ma_glass\n    bm_cork --> ma_cork\n    bm_aluminium --> ma_aluminium\n    bm_cellulose --> ma_tape\n    bm_adhesive2 --> ma_tape\n    bm_paper --> ma_label\n    bm_adhesive --> ma_label\n    bm_glassine --> ma_label\n    bm_ink --> ma_coating\n    bm_varnish --> ma_coating\n    bm_ep -- layer 1 --> ma_shrinkwrap\n    bm_eva -- layer 2 --> ma_shrinkwrap\n    bm_copolyester -- layer 3 --> ma_shrinkwrap\n    bm_eva -- layer 4 --> ma_shrinkwrap\n    bm_ep -- layer 5 --> ma_shrinkwrap\n    ma_label --> ma_label2\n    ma_coating --> ma_label2\n    ma_label2 --> co_topLabel\n    ma_label2 --> co_bottomLabel\n    ma_cardboard --> co_cardboard\n    ma_glass --> co_glassBottle\n    ma_aluminium --> co_aluminiumCapsule\n    ma_cork --> co_corkCork\n    ma_tape --> co_tape\n    ma_shrinkwrap --> co_shrinkwrap\n    co_glassBottle --> cp_wineBottle\n    co_corkCork --> cp_wineBottle\n    co_aluminiumCapsule  --> cp_wineBottle\n    co_topLabel --> cp_wineBottle\n    co_bottomLabel --> cp_wineBottle\n    co_cardboard --> cp_cardboardBox\n    co_tape --> cp_cardboardBox\n    co_shrinkwrap --> cp_shrinkwrap\n    cp_cardboardBox -- Secondary --> lo_wineDelivery\n    cp_wineBottle -- Primary --> lo_wineDelivery\n    cp_shrinkwrap -- Transit --> lo_wineDelivery

"},{"location":"1_Start_Here/1_4_Data_Schema/","title":"Data Schema","text":"
erDiagram\n  BASE_MATERIALS }o--o{ MATERIALS : within\n  MATERIALS }o--o{ COMPONENTS : within\n  COMPONENTS }o--o{ COMPLETE_PACKAGING : within\n  COMPLETE_PACKAGING }o..o{ MULTIPACK : within\n  COMPONENTS }o..o{ MULTIPACK : within\n  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within\n  MULTIPACK }o..o{ LOAD_CATALOGUE : within\n  COMPONENTS }o..o{ LOAD_CATALOGUE : within\n  LOAD_CATALOGUE }o--o{ LOAD : within
"},{"location":"2_Data_Formats/2_1_Data_Formats/","title":"Data Formats","text":"

The Open 3P data standard has been designed to facilitate seamless data exchange both within and between organisations. While the standard supports various file formats, including text files, CSV, and popular spreadsheet applications like Microsoft Excel, Apple Numbers, or Open Office, it\u2019s important to note that leveraging the standard solely through these formats might not fully harness its potential within the dynamic packaging value chain.

Given the intricacies of the packaging value chain, the optimal utilisation of the standard is achieved when it is integrated into a software solution, such as a web, desktop, or mobile application. By incorporating the standard into a dedicated software solution, organisations can unlock its complete functionality and realise its maximum benefits. Such an approach enables efficient data management, enhances collaboration, and streamlines processes across the entire value chain.

By embracing the Open 3P data standard through a software solution, organisations can harness its power to drive innovation, improve data accuracy, and ensure seamless interoperability among stakeholders. This approach will enable the packaging industry to overcome challenges, make informed decisions, and pave the way for a more sustainable and efficient future.

"},{"location":"3_Data_Specification/3_1_Base_Materials/","title":"Base Materials","text":"

The base materials schema contains information regarding the core materials. These are then combined together within the materials table to create more complicated materials.

"},{"location":"3_Data_Specification/3_1_Base_Materials/#table","title":"Table","text":"Column Status Format Notes identifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier baseMaterialName required String The name of the base material this row relates to. e.g., Polypropylene or Aluminium or Silica baseMaterialType recommended String Is the base material \u2018synthetic\u2019 or \u2018biobased\u2019? Use the identifier of the material type that this row relates to. The entry here should be drawn from the Material Type Controlled List. materialChemCID recommended String The PubChem CID for the exact base material used. The PubChem CID is PubChem\u2019s compound identifier, which is a non-zero integer for a unique chemical structure. PubChem CID can be found using their search. If for some reason the PubChem CID cannot be located, consider contributing to PubChem and create the compound identifier. However, if this cannot be done, please enter Unknown. externalIdentifiers recommended Dictionary A dictionary of identifiers that might be used to identify the base material in other systems. For example: manufacturer\u2019s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'} certification recommended Boolean Does the base material have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no. certificationClaims recommended List The information regarding the certification. The entries should be the Certification Claims Relationship List identifiers. manufacturedCountry recommended Numeric The country the component was manufactured in. Use the country numeric ISO codes as described in the ISO 3166 international standard. updateDate required String The date that the base material was provided/last updated. Use the format dd/mm/yyyy."},{"location":"3_Data_Specification/3_1_Base_Materials/#diagram","title":"Diagram","text":"
erDiagram\n  BASE_MATERIALS {\n    identifier String\n    baseMaterialName String\n    baseMaterialType String\n    materialChemCID String\n    externalIdentifiers Dictionary\n    certification Boolean\n    certificationClaims List\n    manufacturedCountry Numeric\n    updateDate String\n  }\n  BASE_MATERIALS }o..o{ CONTROLLED_LISTS : attributes\n  BASE_MATERIALS }o--o{ MATERIALS : within\n  BASE_MATERIALS }o..o{ RELATIONSHIP_LISTS : attributes\n      CONTROLLED_LISTS {\n    materialType recommended }\n      RELATIONSHIP_LISTS {\n    certificationClaims recommended\n      }\n  }
"},{"location":"3_Data_Specification/3_1_Base_Materials/#template","title":"Template","text":"

Base materials should be provided as a separate csv file. The specification of this csv file is as follows:

Base Materials Template

"},{"location":"3_Data_Specification/3_1_Base_Materials/#example","title":"Example","text":"JSON #1JSON #2CSV download
--FSC accredited wood grown in Spain\n{\n\"identifier\": \"a5e6b8bc-ade8-4660-857e-d397243f6b57\",\n\"baseMaterialName\": \"Spainish Softwood\",\n\"baseMaterialType\": \"\",\n\"materialChemCID\": \"\",\n\"externalIdentifiers\": {\n\"dbPK\":\"152314568888\",\n},\n\"certification\": \"TRUE\",\n\"certificationClaims\": [\"1\",\"35\"],\n\"certificationDate\": \"01/08/2022\",\n\"manufacturedCountry\": 724,\n\"updateDate\": \"01/08/2022\",\n}\n
--Food grade synthetic polyethylene terephthalate (PET) made in the UK - verbose data structure\n{\n\"identifier\": \"A4BAE07C-1847-CD8E-C933-6FD30478423B\",\n\"baseMaterialName\": \"PET\",\n\"baseMaterialType\": {\n\"identifier\":\"bm-material-type-0002\",\n\"category\":\"synthetic\",\n\"detailed\":\"derived from crude oil, natural gas or coal.\"\n},\n\"materialChemCID\": \"223961227\",\n\"externalIdentifiers\": {\n\"primaryKey\":\"9187e576-0dfd-46dd-809e-4af0a35f888d\",\n},\n\"certification\": \"TRUE\",\n\"certificationClaims\": [{\n\"certificationIdentifier\": \"2e32b7cc-5fa8-425f-a2c0-784340e43f36\",\n\"certificationSource\": {\n\"identifier\":\"certification-source-0002\",\n\"category\":\"FSA\",\n\"detailed\":\"The Food Standards Agency (FSA) is the independent government department working to protect public health and consumers\u2019 wider interests in relation to food in England, Wales and Northern Ireland.\"\n},\n\"certificationDate\": \"01/08/2022\",\n}],\n\"manufacturedCountry\": {\n\"Country\": \"United Kingdom of Great Britain and Northern Ireland (the)\",\n\"Numeric\": 826\n},\n\"updateDate\": \"01/08/2022\",\n}\n
  • Material Catalogue example download
"},{"location":"3_Data_Specification/3_2_Materials/","title":"Materials","text":"

The materials schema contains information regarding the materials that are used within components. These maybe a single material from the base materials catalogue, a combination of base materials and/or a material from the materials schema itself.

"},{"location":"3_Data_Specification/3_2_Materials/#table","title":"Table","text":"Column Status Format Notes identifier required String The globally unique identifier for the created material unique identifier. See identifiers section for information on how to construct this identifier materialName required String The name of the material this row relates to. (e.g., Aluminium 3000 Series or Borosilicate glass) externalIdentifiers recommended Dictionary A dictionary of identifiers that might be used to identify the material in other systems. For example: manufacturer\u2019s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'} materialConstituents required List The information regarding the consituents that are combined to create this material. The entries should be from the Material Constituents Relationship List identifier. combinationPurpose recommended String Why is this material being used? Use the identifier of the function that this row relates to. The entry here should be drawn from the Function Controlled List. certification recommended Boolean Does the material have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no. certificationClaims recommended List The information regarding the certification. The entries should be the Certification Claims Relationship List identifiers. manufacturedCountry recommended Numeric The country the component was manufactured in. Use the country numeric ISO codes as described in the ISO 3166 international standard. updateDate required String The date that the material was provided/last updated. Use the format dd/mm/yyyy."},{"location":"3_Data_Specification/3_2_Materials/#diagram","title":"Diagram","text":"
erDiagram\nBASE_MATERIALS }o--o{ MATERIALS : within\n  MATERIALS {\n    identifier String\n    materialName String\n    externalIdentifiers Dictionary\n    materialConstituents List\n    combinationPurpose String\n    certification Boolean\n    certificationClaims List\n    manufacturedCountry Numeric\n    updateDate String\n  }\n  MATERIALS }o..o{ CONTROLLED_LISTS : attributes\n  MATERIALS }o--o{ COMPONENTS : within\n  MATERIALS }o..o{ RELATIONSHIP_LISTS : attributes\n        CONTROLLED_LISTS {\n    function recommended\n    }\n        RELATIONSHIP_LISTS {\n    materialConstituents required\n    certificationClaims recommended\n      }
"},{"location":"3_Data_Specification/3_2_Materials/#template","title":"Template","text":"

Materials should be provided as a separate csv file. The specification of this csv file is as follows:

Materials Template

"},{"location":"3_Data_Specification/3_2_Materials/#example","title":"Example","text":"JSON #1JSON #2CSV download
--Food grade synthetic polyethylene terephthalate (PET) made in the UK. Only one base material.\n{\n\"identifier\": \"DCEE1F88-A83B-5BBC-D2D9-6A862B344977\",\n\"materialName\":\"PET\",\n\"externalIdentifiers\": {\n\"GTIN\":\"123456789101\",\n},\n\"materialConstituents\":[\"DCEE1F88-A83B-5BBC-D2D9-6A862B344977\"],\n\"combinationPurpose\": \"\",\n\"certification\": \"TRUE\",\n\"certificationClaims\": [\"1\"],\n\"manufacturedCountry\": 826,\n\"updateDate\": \"01/08/2022\",\n}\n
--Fibre based composite material to be used for a carton - semi verbose\n{\n\"identifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialName\": \"Classic Carton Board - EVOH\",\n\"externalIdentifiers\": {\n\"EAN\": \"0123456789101\",\n\"BatchNumber\": \"2145-23-po\"\n},\n\"materialConstituents\": [\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": {\n\"identifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"baseMaterialName\": \"Polyethylene\",\n\"baseMaterialType\": {\n\"identifier\":\"bm-material-type-0002\",\n\"category\":\"synthetic\",\n\"detailed\":\"derived from crude oil, natural gas or coal.\"\n},\n\"materialChemCID\": null,\n\"externalIdentifiers\": {\n\"pk\":\"12\",\n},\n\"certification\": \"FALSE\",\n\"certificationClaims\": null,\n\"manufacturedCountry\": {\n\"Country\": \"United Kingdom of Great Britain and Northern Ireland (the)\",\n\"Numeric\": 826\n},\n\"updateDate\": \"01/08/2022\",\n},\n\"materialPurpose\": {\n\"identifier\": \"m-material-purpose-0005\",\n\"category\": \"barrier\",\n\"detailed\": \"Used to reduce water and gas diffusion into and/or out of the material.\"\n},\n\"virginMaterial\": 100,\n\"layer\": 1,\n\"materialPercentage\": 7\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"96245c85-5671-4f3d-875f-82665005e9e8\",\n\"materialPurpose\": {\n\"identifier\": \"m-material-purpose-0015\",\n\"category\": \"structure\",\n\"detailed\": \"Providing strength and stability.\"\n},\n\"virginMaterial\": 100,\n\"layer\": 2,\n\"materialPercentage\": 27\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": {\n\"identifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"baseMaterialName\": \"Polyethylene\",\n\"baseMaterialType\": {\n\"identifier\":\"bm-material-type-0002\",\n\"category\":\"synthetic\",\n\"detailed\":\"derived from crude oil, natural gas or coal.\"\n},\n\"materialChemCID\": null,\n\"externalIdentifiers\": {\n\"pk\":\"12\",\n},\n\"certification\": \"FALSE\",\n\"certificationClaims\": null,\n\"manufacturedCountry\": {\n\"Country\": \"United Kingdom of Great Britain and Northern Ireland (the)\",\n\"Numeric\": 826\n},\n\"updateDate\": \"01/08/2022\",\n},\n\"materialPurpose\": {\n\"identifier\": \"m-material-purpose-0002\",\n\"category\": \"adhesive\",\n\"detailed\": \"Applied to one or both surfaces of two separate items that binds them together and resists their separation.\"\n},\n\"virginMaterial\": 100,\n\"layer\": 3,\n\"materialPercentage\": 7\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"ff249e1f-5015-46b8-8655-6c920fbf2606\",\n\"materialPurpose\": {\n\"identifier\": \"m-material-purpose-0003\",\n\"category\": \"antioxidant\",\n\"detailed\": \"Used to inhibit oxidation.\"\n},\n\"virginMaterial\": 100,\n\"layer\": 4,\n\"materialPercentage\": 18\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": {\n\"identifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"baseMaterialName\": \"Polyethylene\",\n\"baseMaterialType\": {\n\"identifier\":\"bm-material-type-0002\",\n\"category\":\"synthetic\",\n\"detailed\":\"derived from crude oil, natural gas or coal.\"\n},\n\"materialChemCID\": null,\n\"externalIdentifiers\": {\n\"pk\":\"12\",\n},\n\"certification\": \"FALSE\",\n\"certificationClaims\": null,\n\"manufacturedCountry\": {\n\"Country\": \"United Kingdom of Great Britain and Northern Ireland (the)\",\n\"Numeric\": 826\n},\n\"updateDate\": \"01/08/2022\",\n},\n\"materialPurpose\": {\n\"identifier\": \"m-material-purpose-0002\",\n\"category\": \"adhesive\",\n\"detailed\": \"Applied to one or both surfaces of two separate items that binds them together and resists their separation.\"\n},\n\"virginMaterial\": 100,\n\"layer\": 5,\n\"materialPercentage\": 7\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"96245c85-5671-4f3d-875f-82665005e9e8\",\n\"materialPurpose\": {\n\"identifier\": \"m-material-purpose-0015\",\n\"category\": \"structure\",\n\"detailed\": \"Providing strength and stability.\"\n},\n\"virginMaterial\": 100,\n\"layer\": 6,\n\"materialPercentage\": 27\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": {\n\"identifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"baseMaterialName\": \"Polyethylene\",\n\"baseMaterialType\": {\n\"identifier\":\"bm-material-type-0002\",\n\"category\":\"synthetic\",\n\"detailed\":\"derived from crude oil, natural gas or coal.\"\n},\n\"materialChemCID\": null,\n\"externalIdentifiers\": {\n\"pk\":\"12\",\n},\n\"certification\": \"FALSE\",\n\"certificationClaims\": null,\n\"manufacturedCountry\": {\n\"Country\": \"United Kingdom of Great Britain and Northern Ireland (the)\",\n\"Numeric\": 826\n},\n\"updateDate\": \"01/08/2022\",\n},\n\"materialPurpose\": {\n\"identifier\": \"m-material-purpose-0005\",\n\"category\": \"barrier\",\n\"detailed\": \"Used to reduce water and gas diffusion into and/or out of the material.\"\n},\n\"virginMaterial\": 100,\n\"layer\": 7,\n\"materialPercentage\": 7\n},\n],\n\"combinationPurpose\": {\n\"identifier\": \"function-0012\",\n\"category\": \"carton\",\n\"detailed\": \"Box or container used for transporting and storaging goods.\"\n},\n\"certification\": \"FALSE\",\n\"certificationClaims\": null,\n\"manufacturedCountry\": {\n\"Country\": \"United Kingdom of Great Britain and Northern Ireland (the)\",\n\"Numeric\": 826\n},\n\"updateDate\": \"01/08/2022\"\n}\n
  • Materials example download
"},{"location":"3_Data_Specification/3_2_Materials/#guide-for-how-to-take-measurements","title":"Guide for how to take measurements","text":""},{"location":"3_Data_Specification/3_2_Materials/#units","title":"Units","text":"

All measurements should be given using the metric system.

  • Weight: grams (g)

Numbers should be entered with a decimal place. Use the decimal / full stop / period character as a separator. Do not exceed 3 decimal places. When rounding, use convential rounding methods: for 5 and above round up, 4 and below round down. For example: volume = 0.67952 rounded to 0.68.

Important: When converting between systems of measurement, perform the conversion first and then apply the convential rounding. This will give more accuracy and consistency.

"},{"location":"3_Data_Specification/3_3_Components/","title":"Components","text":"

The components schema contains information regarding the individual components that are used to create complete packages. These maybe created from a single material or a combination of materials from the materials schema.

"},{"location":"3_Data_Specification/3_3_Components/#table","title":"Table","text":"Column Status Format Notes identifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier name recommended String The name of this component. description recommended String A brief description of this component. externalIdentifiers recommended Dictionary A dictionary of identifiers that might be used to identify the component in other systems. For example: manufacturer\u2019s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'} imageURLs recommended List A list of URLs that links to a picture of the component. Please see the guidelines below on how to capture the image and name the URL. LOWcode recommended String The list of waste code for only the component, by itself. LOW code is synonymous with European Waste Catalogue Code (EWC). For example: an empty bottle would have a LOWcode of 15 01 02. Please use Dsposal or legislation.gov to find the LOWcode. Note: The LOWcode can based on its combination with other components and the actual product contained in the completePackaging. Be sure to only include the component LOWcode. If you cannot find the code or are uncertain please enter Uncertain. componentConstituents required List The information regarding the consituents that are combined to create this component. The entries should be from the Component Constituents Relationship List identifier. height recommended Numeric The height of the component. Please see the guidelines below on how to properly measure and report the height. heightDate recommended String The date that the height was last verified/measured. Use the format dd/mm/yyyy. width recommended Numeric The width of the component. Please see the guidelines below on how to properly measure and report the width. widthDate recommended String The date that the width was last verified/measured. Use the format dd/mm/yyyy. depth recommended Numeric The depth of the component. Please see the guidelines below on how to properly measure and report the depth. depthDate recommended String The date that the depth was last verified/measured. Use the format dd/mm/yyyy. volume recommended Numeric The amount of space the component takes up. Note: this is related to the size of the component and is different to capacity. Using the height, width, and depth found using the measurement guidelines, calculate the component\u2019s volume using: height x width x depth. volumeDate recommended String The date that the volume was last verified/measured. Use the format dd/mm/yyyy. weight required Numeric The weight of the component. weightTolerance required Numeric The threshold of weight that components can vary by. This is given as +/- x%. weightToleranceType required String Either grams or percentage based on the value provided in weightTolerance weightDate recommended String The date that the weight was last verified/measured. Use the format dd/mm/yyyy. shape recommended String What is the shape of the component? The entry should contain the shape controlled list identifier for the component. function recommended String What is the function of the component? The entry should contain the function controlled list identifier for the component. flexibility recommended String Whether the component is considered flexible or rigid. The entry should be the flexibility controlled list identifier. branding required Boolean Does the component contain your own brand (logo, trademark, or any distinctive mark)? Answer as: TRUE for yes and FALSE for no. componentEndOfLifeRoutes recommended List The information regarding this component\u2019s proposed end of life routes. The entries should be the component end of life routes identifiers. colour recommended String The actual colour of the component at point of production using CMYK (Cyan-Magenta-Yellow-blacK) values. The format is specified according to cmyk(C%, M%, Y%, K%), where C, M, Y, and K are the percent values for the cyan, magenta, yellow, and black values of the color. For example: black is cmyk(0%,0%,0%,100%). If there are multiple colours input decorative. opacity recommended String The transparency of the colours. The entry should be the opacity controlled list identifier. loaned required Boolean Is the component hired or loaned out as reusable packaging? Answer as: TRUE for yes and FALSE for no. reuseSystems recommended List The system(s) that facilitates the reuse of the component e.g., Loop. The entries should be the reuse system controlled list identifier(s). partOfMultipack required Boolean Is the component part of a multipack? Answer as: TRUE for yes and FALSE for no. recycledContent recommended Numeric The minimum allowable percent of how much recycled content is included in the makeup of the component. t is \u2018required\u2019 for plastic packaging where for the purposes of this standard we refer to UK\u2019s HM Revenue & Customs definition of recycled content. \u201cRecycled plastic is plastic that has been reprocessed from recovered material by using a chemical or manufacturing process. This is so it can be used either for its original purpose or for other purposes. This does not include organic recycling. Recovered material is pre-consumer plastic or post-consumer plastic that both: a) is no longer suitable to be used in the process from which it was generated and would otherwise have been used for energy recovery (for example, by incineration) or disposed of as waste (for example, by being sent to landfill); b) has been collected and recovered for use as a material input for a recycling or manufacturing process, instead of new primary material\u201d recycledContentClaims required List The information regarding the recycled contents. The entries should be the recycled content claims relationship list indentifiers. recyclability recommended Boolean Is the component recyclable (as determined by a reputable source)? Answer as: TRUE for yes and FALSE for no. recyclabilityClaims recommended List The information regarding this recyclability claims. The entries should be the recyclability claims relationship list identifiers. certification recommended Boolean Does the component have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no. certificationClaims recommended List The information regarding the certifications. The entries should be the certification claims relationship list identifiers. manufacturedCountry recommended Numeric The country the component was manufactured in. Use the country numeric ISO codes as described in the ISO 3166 international standard. updateDate required String The date that the component was provided/last updated. Use the format dd/mm/yyyy. releaseDate recommended String The date that the component will be available to use. Use the format dd/mm/yyyy. discontinueDate recommended String The date that the component will no longer be available to use. Use the format dd/mm/yyyy."},{"location":"3_Data_Specification/3_3_Components/#diagram","title":"Diagram","text":"
erDiagram\nMATERIALS }o--o{ COMPONENTS : within\n  COMPONENTS {\n    identifier String\n    name String\n    description String\n    externalIdentifiers Dictionary\n    imageURLs List\n    LOWcode String\n    componentConstituents List\n    height Numeric\n    heightDate String\n    width Numeric\n    widthDate String\n    depth Numeric\n    depthDate String\n    volume Numeric\n    volumeDate String\n    weight Numeric\n    weightTolerance Numeric\n    weightDate String\n    shape String\n    function String\n    flexibility String\n    branding Boolean\n    componentEndOfLifeRoutes List\n    colour String\n    opacity String\n    loaned Boolean\n    reuseSystems String\n    manufacturedCountry Numeric\n    recycledContent Numeric\n    recycledContentClaims List\n    recyclability Boolean\n    recyclabilityClaims List\n    partOfMultipack Boolean\n    certification Boolean\n    certificationClaims List\n    updateDate String\n    releaseDate String\n    discontinueDate String\n  }\n  COMPONENTS }o..o{ CONTROLLED_LISTS : attributes\n  COMPONENTS }o..o{ RELATIONSHIP_LISTS : attributes\n  COMPONENTS }o--o{ COMPLETE_PACKAGING : within\n  COMPONENTS }o..o{ MULTIPACK : within\n  MULTIPACK }o..o{ LOAD_CATALOGUE : within\n  COMPLETE_PACKAGING }o..o{ MULTIPACK : within\n  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within\n  COMPONENTS }o..o{ LOAD_CATALOGUE : within\n    CONTROLLED_LISTS {\n    shape recommended\n    function recommended\n    flexibility recommended\n    opacity recommended\n    reuseSystem recommended\n  }\n  RELATIONSHIP_LISTS {\n    componentConstituents required\n    componentEndOfLifeRoutes recommended\n    recycledContentClaims required\n    recyclabilityClaims recommended\n    certificationClaims recommended\n  }

Components should be provided as a separate csv file. The specification of this csv file is as follows:

Components Template

"},{"location":"3_Data_Specification/3_3_Components/#example","title":"Example","text":"JSONCSV download
--Food grade PET pot made in Ireland\n{\n\"identifier\": \"9F459508-E365-0B9F-E3BB-FF4A7AED481B\",\n\"name\": \"Thermoformed rPET tray\",\n\"description\": \"Clear PET tray for food products\",\n\"externalIdentifiers\": {\n\"internalId\": \"14\",\n\"GTIN\": \"00123456789012\"\n},\n\"imageURLs\": [\n\"http://standard.open3p.org/2.0/img/measurements/figure1.measuring.png\"\n],\n\"LOWcode\": \"150102\",\n\"componentConstituents\": [\n\"DCEE1F88-A83B-5BBC-D2D9-6A862B344977\"\n],\n\"height\": 50,\n\"heightDate\": \"01/08/2022\",\n\"width\": 220,\n\"widthDate\": \"01/08/2022\",\n\"depth\": 170,\n\"depthDate\": \"01/08/2022\",\n\"volume\": 1870,\n\"volumeDate\": \"01/08/2022\",\n\"weight\": 23,\n\"weightTolerance\": 1.5,\n\"weightToleranceType\": \"grams\",\n\"weightDate\": \"01/08/2022\",\n\"shape\": \"c-shape-0004\",\n\"function\": \"function-0041\",\n\"flexibility\": \"c-flexibility-0002\",\n\"branding\": true,\n\"componentEndOfLifeRoutes\": [\n\"\"\n],\n\"colour\": \"cmyk(0%,0%,0%,10%)\",\n\"opacity\": \"c-opacity-0002\",\n\"loaned\": false,\n\"reuseSystems\": [\n\"c-reuse-system-0001\"\n],\n\"partOfMultipack\": false,\n\"recycledContent\": 0.3,\n\"recycledContentClaims\": [\n\"23e8251a-4fe6-4b25-9966-b08acac9ba34\"\n],\n\"recyclability\": true,\n\"recyclabilityClaims\": [\n\"b101889f-87e5-4c42-abb7-0df5fc3d1a26\"\n],\n\"certification\": true,\n\"certificationClaims\": [\n\"eed87ac3-6e3e-45fb-af2c-dd0f64fdb597\"\n],\n\"manufacturedCountry\": 372,\n\"updateDate\": \"01/08/2022\",\n\"releaseDate\": \"01/08/2022\",\n\"discontinueDate\": \"\"\n}\n
  • Component Catalogue example download
"},{"location":"3_Data_Specification/3_3_Components/#guide-for-how-to-take-measurements","title":"Guide for how to take measurements","text":""},{"location":"3_Data_Specification/3_3_Components/#units","title":"Units","text":"

All measurements should be given using the metric system.

  • Height: millimetre (mm)
  • Width: millimetre (mm)
  • Length: millimetre (mm)
  • Volume: cubic metre (m3)
  • Weight: grams (g)
  • Weight Tolerance: percent (%)

Numbers should be entered with a decimal place. Use the decimal / full stop / period character as a separator. Do not exceed 3 decimal places. When rounding, use convential rounding methods: for 5 and above round up, 4 and below round down. For example: volume = 0.67952 rounded to 0.68.

Important: When converting between systems of measurement, perform the conversion first and then apply the convential rounding. This will give more accuracy and consistency.

"},{"location":"3_Data_Specification/3_3_Components/#default-front-of-a-component","title":"Default Front of a component","text":"

Prior caputuring measurements, first determine the default front of the component, this is similar to GS1 (Note: GS1 rules are specified only for complete packaging and not components. Therefore, there are subtle differences to convert from taking a measurement for the complete packaging versus a component). In this standard, as with GS1, the default front is the face with the largest surface area, where area is equal to the width times the height.

Important: Determining of default front provides a consistent, repeatable process to find measurements for a given component.

Figure 1: An example for finding the default front of a component. The default front is the face of the with the largest area (Area = width X height)

Some components have the same surface area, thus more than one possible front. These components can be presented both vertically and horizontally. If a component has more than one possible front, the highest side is considered to be the default front.

Note: Calculating the area for a rectangular component is simple. However, for non-rectangular components (for example, components with a cylindrical or irregular form), the method to calculate the area is:

  • First break the component into multiple sides. Then, for:
    • a round component: do not use (=pi*r^2) to calculate the area. Instead, draw \u201ctwo dimensional\u201d rectangles around the round component\u2019s sides and then calculate the area for each side.
    • any other shape component: draw a \u201ctwo dimensional\u201d rectangle around the sides of the component, and then calculate the area for each side.
  • The side with the maximum area then becomes the default front of that component.

Figure 2: An example for finding the default front of an irregular shaped component. After drawing rectangles around the component, the default front is the face of the with the largest surface area (Area = width X height)

"},{"location":"3_Data_Specification/3_3_Components/#measuring-the-height-width-and-depth-of-a-component","title":"Measuring the height, width, and depth of a component","text":"

After the default front has been determined, as with GS1, it is possible to determine the height, width, and depth of a component.

  1. For rectangular components:
    • Height: from the base to the top
    • Width: from the left to the right
    • Depth: from the front to the back

Figure 3: Example of measuring the height, width, and depth for a rectangular component.

Note: If there are two different measurements for the height, width, or depth, always report the maximum measurement.

Figure 4: Example of reporting the maximum width, when there are two different size widths. Here, the width reported would be 12 mm because it is larger than the 8 mm. Additionally, there are two different sized depths. Here, the 9 mm depth would be reported because it is larger than the 5 mm depth.

  1. For irregular shaped components: Similar to finding the default front of an irregularly shaped component, draw a \u201cthree dimensional\u201d rectangle around the component.

    • Height: from the base to the top
    • Width: from the left to the right
    • Depth: from the front to the back
  2. For unformed, flexible components:

    • Take the measurements as if the component was fully formed and filled.
  3. For standing components:

    • Height: from the flat surface to the top most point
    • Width: from the left-most point to the right-most point
    • Depth: from the default front to the farthest opposite surface
  4. For components with leaning or irregular verticlas:

    • Height: from the flat surface to the top most point (parallel to the vertex)
    • Width: from the left most point to the right most point
    • Depth: from the default front to the farthest opposite surface
  5. For components that are cylindrical:

    • For cylindrical items two dimensions will be nominally equal. Which dimensions are equal is determined by the result of determination of the default front.
"},{"location":"3_Data_Specification/3_3_Components/#guide-for-component-images","title":"Guide for component images","text":"

As with providing measurements, please first find the default front of the component. The image capturing process and naming convention is similar to GS1. As with measurements, we altered the gs1 standard for capturing the component.

"},{"location":"3_Data_Specification/3_3_Components/#type-of-image","title":"Type of Image","text":"

For the purposes of this standard, we define the differences between photographic and rendered images. Note: both types are accepted but the naming convention will differ based on image type so that images have unique names and do not having naming conflicts.

  • Photographic image: the result of the electronic or chemical capture of a likeness of a physical object with the use of a camera.
  • Rendered image: the result of the creation of a digital likeness of a physical object with the use of a computer and software.
"},{"location":"3_Data_Specification/3_3_Components/#image-recommendations","title":"Image Recommendations","text":"
  • Provide coloured images. However, do not provide colour casts. Colour should be as rich, vibrant and eye-catching as possible
  • Contrast and exposure should be balanced; avoid high contrast effects and \u201cblown-out\u201d highlights
  • Images should not be overly sharpened
  • Components should be centred in Margins to cover 95% on the canvas.
  • Graphic rendering of a component should be realistic.
  • Do not provide layers, guides or rulers in the images.
  • Background layer should be white (RGB 255,255,255).
  • Remove signatures, \u201cfinger printing\u201d or visible watermarks. No compression artifacts. No interpolation (\u201cresizing up\u201d).
"},{"location":"3_Data_Specification/3_3_Components/#file-size","title":"File size","text":"
  • 900x900 to 2400x2400 pixels
"},{"location":"3_Data_Specification/3_3_Components/#component-faces","title":"Component faces","text":"

After determining the default front, the possible faces, in relation to the default front, are: 1. Default Front 2. Left 3. Top 7. Back 8. Right 9. Bottom

"},{"location":"3_Data_Specification/3_3_Components/#naming-convention-for-url","title":"Naming convention for URL","text":"

Please follow this naming convention: - component identifier - underscore _ - type of image (photographic or rendered) - underscore _ - component face (1: Default front, 2: Left, 3: Top, 7: Back, 8: Right, 9: Bottom) - orientation (C: Centre, L: left, R: right, N: No plunge angle)

Example: An image for a component that is rendered with a default front facing image and centred orientation. identifier123_rendered_1C.jpg

"},{"location":"3_Data_Specification/3_4_Complete_Packaging/","title":"Complete Packaging","text":"

The complete packaging schema contains information regarding the complete packages that are used to create loads. These maybe created from a single component or a combination of components from the components schema.

"},{"location":"3_Data_Specification/3_4_Complete_Packaging/#table","title":"Table","text":"Column Status Format Notes identifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier name recommended String The name of this complete packaging. description recommended String A brief description of this complete packaging. externalIdentifiers recommended Dictionary A dictionary of identifiers that might be used to identify the complete packaging in other systems. For example: manufacturer\u2019s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'} imageURLs recommended List URL(s) that links to a picture of the complete packaging. Please see the guidelines below on how to capture the image and name the URL. completePackagingConstituentsIdentifier required List The information regarding the consituents that are combined to create this complete packaging. The entries should be from the Complete Packaging Constituents Relationship List identifier. LOWcodeWOproduct recommended String The list of waste code for only the complete packaging, by itself (excluding the product). LOW code is synonymous with European Waste Catalogue Code (EWC). For example: an empty bottle would have a LOWcode of 15 01 02. Please use Dsposal or legislation.gov to find the LOWcode. Note: The LOWcode can based on its combination with other components and the actual product contained in the complete packaging. Be sure to only include the complete packaging LOWcode and not the complete packaging with the product. If you cannot find the code or are uncertain please enter Uncertain. productType recommended String Information about the product contained in the complete packaging. The entry here should be drawn from the product type controlled list. componentContactWithProduct required List What components (if any) come into direct contact with the product before purchased by a consumer? If none of the components come into contact with the product use NA. LOWcodeWproduct recommended String The list of waste code for everything in the complete packaging. LOW code is synonymous with European Waste Catalogue Code (EWC). For example: an empty bottle would have a LOWcode of 15 01 02. Please use Dsposal or legislation.gov to find the LOWcode. Note: The LOWcode can based on its combination with other components and the actual product contained in the complete packaging. Be sure to include the complete packaging LOWcode with the product. If you cannot find the code or are uncertain please enter Uncertain. onTheGo required Boolean Is the complete packaging often classed as packaging that will end up in street bins? Answer as: TRUE for yes and FALSE for no. householdWaste required Boolean Is the complete packaging often classed as packaging that will end up in kerbside collections? Answer as: TRUE for yes and FALSE for no. depositReturnSchemes required List Which countries support a deposit return scheme for this particular complete packaging? The entries here should be drawn from the deposit return scheme controlled list. completePackagingEndOfLifeRoutes recommended List The information regarding this complete packaging\u2019s proposed end of life routes. The entries should be the complete packaging end of life routes identifiers. recyclability recommended Boolean Is the complete packaging recyclable (as determined by a reputable source)? Answer as: TRUE for yes and FALSE for no. recyclabilityClaims recommended List The information regarding this recyclability claims. The entries should be the recyclability claims relationship list identifiers. height recommended Numeric The height of the complete packaging. Please see the guidelines below on how to properly measure and report the height. heightDate recommended String The date that the height was last verified/measured. Use the format dd/mm/yyyy. width recommended Numeric The width of the complete packaging. Please see the guidelines below on how to properly measure and report the width. widthDate recommended String The date that the width was last verified/measured. Use the format dd/mm/yyyy. depth recommended Numeric The depth of the complete packaging. Please see the guidelines below on how to properly measure and report the depth. depthDate recommended String The date that the depth was last verified/measured. Use the format dd/mm/yyyy. volume recommended Numeric Using the height, width, and depth found using the measurement guidelines, calculate the complete packaging\u2019s volume using: height x width x depth. volumeDate recommended String The date that the volume was last verified/measured. Use the format dd/mm/yyyy. weight required Numeric The weight of the complete packaging. weightTolerance required Numeric The threshold of weight that complete packaging can vary by. This can be given in grams or percentage. weightToleranceType required String Either grams or percentage based on the value provided in weightTolerance weightDate recommended String The date that the weight was last verified/measured. Use the format dd/mm/yyyy. servingCapacity recommended Numeric The serving capacity of the complete packaging - how much of a product that can be contained in the complete packaging. servingCapacityDate recommended String The date that the serving capacity was last verified/measured. Use the format dd/mm/yyyy. partOfMultipack required Boolean Is the complete packaging part of a multipack? Answer as: TRUE for yes and FALSE for no. certification recommended Boolean Does the complete packaging have a certificate (e.g. FSC, REACH, FSA etc.)? Answer as: TRUE for yes and FALSE for no. certificationClaims recommended List The information regarding the certifications. The entries should be the certification claims relationship list identifiers. updateDate required String The date that the complete packaging was provided/last updated. Use the format dd/mm/yyyy. releaseDate recommended String The date that the complete packaging will be available to use. Use the format dd/mm/yyyy. discontinueDate recommended String The date that the complete packaging will no longer be available to use. Use the format dd/mm/yyyy."},{"location":"3_Data_Specification/3_4_Complete_Packaging/#diagram","title":"Diagram","text":"
erDiagram\nCOMPONENTS }o--o{ COMPLETE_PACKAGING : within\n  COMPLETE_PACKAGING {\n    identifier String\n    name String\n    description String\n    externalIdentifiers Dictionary\n    imageURLs List\n    completePackagingConstituentsIdentifier List\n    LOWcodeWOproduct String\n    productType String\n    componentContactWithProduct List\n    LOWcodeWproduct String\n    onTheGo Boolean\n    householdWaste Boolean\n    depositReturnSchemes List\n    completePackagingEndOfLifeRoutes List\n    recyclability Boolean\n    recyclabilityClaims List\n    height Numeric\n    heightDate String\n    width Numeric\n    widthDate String\n    depth Numeric\n    depthDate String\n    volume Numeric\n    volumeDate String\n    weight Numeric\n    weightTolerance Numeric\n    weightToleranceType String\n    weightDate String\n    servingCapacity Numeric\n    servingCapacityDate String\n    partOfMultipack Boolean\n    certification Boolean\n    certificationClaims List\n    updateDate String\n    releaseDate String\n    discontinueDate String\n  }\n  COMPLETE_PACKAGING }o..o{ CONTROLLED_LISTS : attributes\n  COMPLETE_PACKAGING }O..O{ RELATIONSHIP_LISTS : attributes\n  COMPLETE_PACKAGING }o..o{ MULTIPACK : within\n  COMPONENTS }o..o{ MULTIPACK : within\n  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within\n  MULTIPACK }o..o{ LOAD_CATALOGUE : within\n  COMPONENTS }o..o{ LOAD_CATALOGUE : within\n      CONTROLLED_LISTS {\n      productType recommended\n      depositReturnScheme recommended\n    }\n    RELATIONSHIP_LISTS {\n      completePackagingEndOfLifeRoutes required\n      completePackagingConstituentsIdentifier required\n      recyclabilityClaims recommended\n      certificationClaims recommended\n    }
"},{"location":"3_Data_Specification/3_4_Complete_Packaging/#template","title":"Template","text":"

Complete packaging should be provided as a separate csv file. The specification of this csv file is as follows:

Complete Packaging Template

"},{"location":"3_Data_Specification/3_4_Complete_Packaging/#example","title":"Example","text":"JSONCSV download
{\n\"identifier\": \"63df4b40-ba4f-472e-a260-f8a944eb7961\",\n\"name\": \"4 Breaded Chicken Steaks packaging\",\n\"description\": \"PET tray, lidding film, top & base label\",\n\"externalIdentifiers\": {\n\"internalIdentifer\": \"85467889\",\n\"GTIN\": \"00123456789012\"\n},\n\"imageURLs\": [\n\"http://standard.open3p.org/2.0/img/measurements/figure1.measuring.png\"\n],\n\"completePackagingConstituentsIdentifier\": [\n\"9F459508-E365-0B9F-E3BB-FF4A7AED481B\", \"7197de37-8b77-4032-b0fd-84f27bae97be\", \"0e9a7265-6213-4a76-9a45-3acc5d83fa6f\", \"1c042eee-ec7a-400b-b05b-ca0d319e9067\"\n],\n\"LOWcodeWOproduct\": \"15 01 06\",\n\"productType\": \"cp-product-type-0001\",\n\"componentContactWithProduct\": [\n\"9F459508-E365-0B9F-E3BB-FF4A7AED481B\", \"7197de37-8b77-4032-b0fd-84f27bae97be\"\n],\n\"LOWcodeWproduct\": \"20 01 08\",\n\"onTheGo\": false,\n\"householdWaste\": true,\n\"depositReturnSchemes\": [\n\"cp-drs-0005\"\n],\n\"completePackagingEndOfLifeRoutes\": [\n\"1229f395-3065-4236-bc1e-2aa500f58a79\"\n],\n\"recyclability\": false,\n\"recyclabilityClaims\": [\n\"b101889f-87e5-4c42-abb7-0df5fc3d1a26\"\n],\n\"height\": 220,\n\"heightDate\": \"01/01/2023\",\n\"width\": 170,\n\"widthDate\": \"01/01/2023\",\n\"depth\": 60,\n\"depthDate\": \"01/01/2023\",\n\"volume\": 0.002,\n\"volumeDate\": \"01/01/2023\",\n\"weight\": 32.8,\n\"weightTolerance\": 5,\n\"weightToleranceType\": \"percentage\",\n\"weightDate\": \"01/01/2023\",\n\"servingCapacity\": 4,\n\"servingCapacityDate\": \"01/01/2023\",\n\"partOfMultipack\": false,\n\"certification\": true,\n\"certificationClaims\": [\n\"eed87ac3-6e3e-45fb-af2c-dd0f64fdb597\"\n],\n\"manufacturedCountry\": 826,\n\"updateDate\": \"01/01/2023\",\n\"releaseDate\": \"01/01/2023\",\n\"discontinueDate\": \"\"\n}\n
  • Complete Packaging example download
"},{"location":"3_Data_Specification/3_4_Complete_Packaging/#guide-for-how-to-take-measurements","title":"Guide for how to take measurements","text":""},{"location":"3_Data_Specification/3_4_Complete_Packaging/#units","title":"Units","text":"

All measurements should be given using the metric system.

  • Height: millimetre (mm)
  • Width: millimetre (mm)
  • Length: millimetre (mm)
  • Volume: cubic metre (m3)
  • Weight: grams (g)
  • servingCapacity: grams (g)

Numbers should be entered with a decimal place, a space between the number, and the unit as specified above. Use the decimal / full stop / period character as a separator. For example: volume = 20.000 mm3. Do not exceed 3 decimal places.

Important: When converting between systems of measurement, perform the conversion first and then apply rounding. This will give more accuracy and consistency.

"},{"location":"3_Data_Specification/3_4_Complete_Packaging/#default-front-of-a-complete-packaging","title":"Default Front of a complete packaging","text":"

As with taking and reporting measurements for components, we use the GS1 method for taking measurements. Now, with all the components put together to form the complete packaging, first find the default front, the the face with the largest area, where area is equal to the width times the height.

  • The side with the maximum area then becomes the default front of that complete packaging.
"},{"location":"3_Data_Specification/3_4_Complete_Packaging/#measuring-the-height-width-and-depth-of-a-complete-packaging","title":"Measuring the height, width, and depth of a complete packaging","text":"

After the default front has been determined, it is possible to determine the height, width, and depth of the complete packaging. Please follow the measurement guidelines provided by GS1

"},{"location":"3_Data_Specification/3_4_Complete_Packaging/#guide-for-complete-packaging-images","title":"Guide for complete packaging images","text":"

As with providing measurements, please first find the default front of the complete packaging. The image capturing process and naming convention is similar to GS1.

"},{"location":"3_Data_Specification/3_5_Multipack/","title":"Multipack","text":"

The multipack schema contains information regarding the multipacks that are used to create loads. These are created from a number of either identical or different complete packages from the complete packaging schema.

Note: The multipack portion is optional (only applies to multipacks). If the complete packaging or component is not in a multipack, all of the fields below are optional.

"},{"location":"3_Data_Specification/3_5_Multipack/#table","title":"Table","text":"Column Status Format Notes identifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier name recommended String The name of this multipack. description recommended String A brief description of this multipack. externalIdentifiers recommended Dictionary A dictionary of identifiers that might be used to identify the multipack in other systems. For example: manufacturer\u2019s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'} multipackConstituentsIdentifiers required List The information regarding the consituents that are combined to create this multipack. The entries should be from the Multipack Constituents Relationship List identifier. tier recommended Integer The tier associated with the multipack. The inner most tier denoted as 1, and the outermost tier is the biggest number. identicalQuantity required Numeric Number of identical units for the unique complete packaging item or a component this row corresponds to. updateDate required String The date that the multipack was provided/last updated. Use the format dd/mm/yyyy. releaseDate recommended String The date that the component will be available to use. Use the format dd/mm/yyyy. discontinueDate recommended String The date that the component will no longer be available to use. Use the format dd/mm/yyyy."},{"location":"3_Data_Specification/3_5_Multipack/#diagram","title":"Diagram","text":"
erDiagram\nCOMPONENTS }o..o{ MULTIPACK : within\nCOMPONENTS }o..o{ COMPLETE_PACKAGING : within\nCOMPLETE_PACKAGING }o..o{ MULTIPACK : within\n  MULTIPACK {\n    identifier String\n    name String\n    description String\n    externalIdentifiers Dictionary\n    multipackConstituentsIdentifiers List\n    tier String\n    identicalQuantity Numeric\n    updateDate String\n    releaseDate String\n    discontinueDate String\n  }\n  MULTIPACK }o--o{ RELATIONSHIP_LISTS : attributes\n  COMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within\n  MULTIPACK }o..o{ LOAD_CATALOGUE : within\n  COMPONENTS }o--o{ LOAD_CATALOGUE : within\n      RELATIONSHIP_LISTS {\n        multipackConstituentsIdentifier required\n    }
"},{"location":"3_Data_Specification/3_5_Multipack/#template","title":"Template","text":"

Multipack should be provided as a separate csv file. The specification of this csv file is as follows:

Multipack Template

"},{"location":"3_Data_Specification/3_5_Multipack/#example","title":"Example","text":"JSONCSV download
{\n\"identifier\": \"B9574E9A-A561-BCA6-0E36-448A2E46B2BF\",\n\"name\": \"4 pack of guacamole dip\",\n\"description\": \"4 tubs of guacamole that are sold together. Not to be sold seperately.\",\n\"externalIdentifiers\": {\n\"GTIN\":\"00123456789012\",\n},\n\"multipackIdentifier\": \"346C5546-282B-C040-CE74-DD0DD4688C0B\",\n\"packagingItems\": \"C29B4703-121C-7552-D905-FD5AB263D611\",\n\"tier\": \"1\",\n\"identicalQuantity\": \"4\",\n\"updateDate\": \"01/08/2022\",\n\"releaseDate\": \"01/08/2022\",\n\"discontinueDate\": \"\",\n}\n
  • Multipack example download
"},{"location":"3_Data_Specification/3_6_Load_Catalogue/","title":"Load Catalogue","text":"

All the complete packaging from different levels (primary, secondary, transit etc.), including multipacks, put together to send to the final destination. Each row corresponds to a single packaging item.

"},{"location":"3_Data_Specification/3_6_Load_Catalogue/#table","title":"Table","text":"Column Status Format Notes identifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier name recommended String The name of this load. description recommended String A brief description of this load. externalIdentifiers recommended Dictionary A dictionary of identifiers that might be used to identify the load catalogue in other systems. For example: manufacturer\u2019s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'} loadIdentifier required String The unique identifier of the created load. A globally unique identifier. See identifiers section for information on how to construct this identifier. packagingItems required List The complete packaging and/or the multipack identifiers used to create the load. There must be an equivalent record in the Complete Packaging or Multipack data. quantityInLoad required Numeric Number of units for the packaging items found in a load that this row corresponds to. level required String The intended use of the component for the packaging. The entry here should be drawn from the level controlled list. updateDate required String The date that the load catalogue was provided/last updated. Use the format dd/mm/yyyy."},{"location":"3_Data_Specification/3_6_Load_Catalogue/#diagram","title":"Diagram","text":"
erDiagram\nCOMPONENTS }o..o{ LOAD_CATALOGUE : within\nCOMPONENTS }o..o{ COMPLETE_PACKAGING : within\nCOMPONENTS }o..o{ MULTIPACK : within\nMULTIPACK }o..o{ LOAD_CATALOGUE : within\nCOMPLETE_PACKAGING }o..o{ LOAD_CATALOGUE : within\nCOMPLETE_PACKAGING }o..o{ MULTIPACK : within\n\n  LOAD_CATALOGUE {\n    identifier String\n    name String\n    description String\n    externalIdentifiers Dictionary\n    loadIdentifier String\n    packagingItems List\n    quantityInLoad Numeric\n    level String\n    updateDate String\n  }\n  LOAD_CATALOGUE }o..o{ CONTROLLED_LISTS : attributes\n  LOAD_CATALOGUE }o--o{ LOAD : within\n        CONTROLLED_LISTS {\n    level required\n    }
"},{"location":"3_Data_Specification/3_6_Load_Catalogue/#template","title":"Template","text":"

Loads should be provided as a separate csv file. The specification of this csv file is as follows:

Load Catalogue Template

"},{"location":"3_Data_Specification/3_6_Load_Catalogue/#example","title":"Example","text":"JSONCSV download
{\n\"identifier\": \"91F2060F-17CD-DA56-7746-0018A90AEF5A\",\n\"name\": \"Full pallet of multipack guacamole dip\",\n\"description\": \"24 cases of 3 x multipack tubs of guacamole dip\",\n\"externalIdentifiers\": {\n\"GTIN\":\"00123456789012\",\n},\n\"loadIdentifiers\": \"CA88F5CE-2D09-AFE0-08D7-44804780F924\",\n\"packagingItems\": \"346C5546-282B-C040-CE74-DD0DD4688C0B\",\n\"quantityInLoad\": \"72\",\n\"level\": {\n\"identifier\":\"lc-level-0001\",\n\"category\":\"primary\",\n\"detailed\":\"The individual container that you store goods in to sell to consumers. This is called a \"sales unit\". For example, if you sell peas in steel tins with paper labels, the primary packaging is \"steel tin\" and \"paper label\".\"\n},\n\"updateDate\": \"01/08/2022\",\n}\n
  • Load Catalogue example download
"},{"location":"3_Data_Specification/3_7_Load/","title":"Load","text":"

All the complete packaging from different levels (primary, secondary, transit etc.), including multipacks, put together to send to the final destination. Each row corresponds a unique complete packaging (or multipack) item sent to a specific location during a specific time period.

"},{"location":"3_Data_Specification/3_7_Load/#table","title":"Table","text":"Column Status Format Notes identifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier name recommended String The name of this load. description recommended String A brief description of this load. externalIdentifiers recommended Dictionary A dictionary of identifiers that might be used to identify the load in other systems. For example: manufacturer\u2019s own internal identifier, bar codes or global trade item number (gtin). To provide external identifiers please follow this format. {'externalIdentifierName1': 'identifier1', 'externalIdentifierName2': 'identifier2'} loadIdentifiers required List The unique identifier of the created load. There must be an equivalent identifier found in the Load Catalogue. startDate required String The date that the load began for the destination. Use the format dd/mm/yyyy. endDate required String The date that the load ended for the destination. Use the format dd/mm/yyyy. destinationAddressName recommended String The name of the load destination address. destinationAddressStreet required String The street address of this load destination. destinationAddressCountry required String The country of this load destination. destinationPostalCode required String The postal code of this load destination. timesSent required Numeric The number of times this load was sent to the destination during the specified time period. updateDate required String The date that the load was provided/last updated. Use the format dd/mm/yyyy."},{"location":"3_Data_Specification/3_7_Load/#diagram","title":"Diagram","text":"
erDiagram\nLOAD_CATALOGUE }o..o{ LOAD : within\n  LOAD {\n    identifier String\n    name numeric\n    description String\n    externalIdentifier Dictionary\n    loadIdentifiers List\n    startDate String\n    destinationAddressName String\n    destinationAddressStreet String\n    destinationAddressCountry String\n    destinationPostalCode String\n    timesSent Numeric\n    updateDate String\n  }
"},{"location":"3_Data_Specification/3_7_Load/#template","title":"Template","text":"

Loads should be provided as a separate csv file. The specification of this csv file is as follows:

Load Template

"},{"location":"3_Data_Specification/3_7_Load/#example","title":"Example","text":"JSONCSV download
{\n\"identifier\": \"ED051AFD-EC7F-0428-B054-8837118922FE\",\n\"name\": \"Weekly Load of Guacamole Dip\",\n\"description\": \"24 cases of 12 tubs of guacamole dip for example company on high street west\",\n\"externalIdentifiers\": {\n\"GTIN\":\"00123456789012\",\n},\n\"loadIdentifiers\": \"CA88F5CE-2D09-AFE0-08D7-44804780F924\",\n\"startDate\": \"01/08/2022\",\n\"endDate\": \"01/08/2022\",\n\"destinationAddressName\": \"Example Company\",\n\"destinationAddressStreet\": \"High Street West\",\n\"destinationAddressCountry\": \"England\",\n\"destinationPostalCode\": \"XX00 0XX\",\n\"timesSent\": \"2\",\n\"updateDate\": \"01/08/2022\",\n}\n
  • Load example download
"},{"location":"4_Identifiers/4_1_Identifiers/","title":"Identifiers","text":"

Identifiers are the way that humans and machines can know that a particular thing is that thing. In the context of Open 3P, there are different ways of talking about the various things involved. A packaging manufacturer may refer to a particular bottle as \u2018small clear bottle\u2019, but a filler may know it as \u2018500 ml clear bottle\u2019. In a database it may be recorded as \u20180.5L PET Bottle\u2019. While these are all referring to the same thing, it could be hard for a human to know that they are the same, and pretty much impossible for a computer.

To help get around this, we use identifiers. These are codes that we use to unambiguously reference a particular thing. Within the Open 3P data standard we need to uniquely identify every entry. Each record in each schema needs to have an identifier. Since the packaging supply chain is global, the Open 3P data standard needs to be global and thus the unique identifier also needs to be global. We are therefore using the Universally Unique Identifier (UUID) standard methodology to (probabilistically) guarantee uniqueness.

A universally unique identifier (UUID) is a 128-bit label used for information in computer systems. The term globally unique identifier (GUID) is also used.

-A Universally Unique IDentifier (UUID) URN Namespace

"},{"location":"4_Identifiers/4_1_Identifiers/#generating","title":"Generating","text":"

Generating a UUID must be done by a machine and there are various ways to create one.

"},{"location":"4_Identifiers/4_1_Identifiers/#online","title":"Online","text":"

There are various online tools available, including but not limited to and in no specific order:

  • Online UUID Generator
  • UUID Generator
  • Online UUID/GUID Generator
  • Generate UUID Online
  • Webtools - Online UUID (GUID) Generator
"},{"location":"4_Identifiers/4_1_Identifiers/#in-code","title":"In code","text":"PythonC#Excel FunctionvbaT-SQLPHP
import uuid\n\nuuid.uuid4()\n
using System;\nusing System.Diagnostics;\n\nnamespace SampleApplication {\nclass Program {\nstatic void Main(string[] args) {\nGuid myuuid = Guid.NewGuid();\nstring myuuidAsString = myuuid.ToString();\n\nDebug.WriteLine(\"Your UUID is: \" + myuuidAsString);\n}\n}\n}\n
=CONCATENATE(DEC2HEX(RANDBETWEEN(0,4294967295),8),\"-\",DEC2HEX(RANDBETWEEN(0,65535),4),\"-\",DEC2HEX(RANDBETWEEN(0,65535),4),\"-\",DEC2HEX(RANDBETWEEN(0,65535),4),\"-\",DEC2HEX(RANDBETWEEN(0,4294967295),8),DEC2HEX(RANDBETWEEN(0,65535),4))\n
Function GUID$(Optional lowercase As Boolean, Optional parens As Boolean)\n    Dim k&, h$\n    GUID = Space(36)\n    For k = 1 To Len(GUID)\n        Randomize\n        Select Case k\n            Case 9, 14, 19, 24: h = \"-\"\n            Case 15:            h = \"4\"\n            Case 20:            h = Hex(Rnd * 3 + 8)\n            Case Else:          h = Hex(Rnd * 15)\n        End Select\n        Mid$(GUID, k, 1) = h\n    Next\n    If lowercase Then GUID = LCase$(GUID)\n    If parens Then GUID = \"{\" & GUID & \"}\"\nEnd Function\n
NEWID ( )\n
function guidv4($data = null) {\n    // Generate 16 bytes (128 bits) of random data or use the data passed into the function.\n    $data = $data ?? random_bytes(16);\n    assert(strlen($data) == 16);\n\n    // Set version to 0100\n    $data[6] = chr(ord($data[6]) & 0x0f | 0x40);\n    // Set bits 6-7 to 10\n    $data[8] = chr(ord($data[8]) & 0x3f | 0x80);\n\n    // Output the 36 character UUID.\n    return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));\n}\n
"},{"location":"5_Controlled_Lists/5_000_Controlled_Lists/","title":"Controlled Lists","text":"

Controlled lists are essential components of open data standards used to establish consistency in data entry and ensure that the data is accurate and high quality. They serve as reference points for key terms and phrases that are commonly used in the packaging industry.

By using controlled lists, data contributors are able to select from a predefined set of terms instead of entering free-text, which can result in inconsistencies and errors. This helps to maintain data integrity and reduces the risk of inaccuracies that can lead to costly mistakes.

Controlled lists also enable easy querying and reporting of data across the packaging supply chain. This is because each term in the list has a standardised definition and value, which allows for more precise comparisons between materials, packages and loads.

Overall, controlled lists play a vital role in ensuring that data is reliable and can be easily analyzed, leading to more informed decision-making and better outcomes for all stakeholders in the packaging industry.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_001_Material_Type/","title":"Material Type","text":"

The Material Type controlled list identifies the type of the base material.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_001_Material_Type/#data","title":"Data","text":"identifier category detailed bm-material-type-0001 biobased from renewable products such as carbohydrates, starch, vegetable fats and oils, bacteria and other biological substances bm-material-type-0002 synthetic derived from crude oil, natural gas or coal"},{"location":"5_Controlled_Lists/5_002_Certification_Source/","title":"Certification Source","text":"

The certification source controlled list identifies the source of the certification document. This is used in certification claims relationship list.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_002_Certification_Source/#data","title":"Data","text":"identifier category detailed certification-source-0001 FSC The Forest Stewardship Council (FSC) is an international non-governmental organisation dedicated to promoting responsible management of the world\u2019s forests. certification-source-0002 FSA The Food Standards Agency (FSA) is the independent government department working to protect public health and consumers\u00e2\u20ac\u2122 wider interests in relation to food in England, Wales and Northern Ireland. certification-source-0003 BS 8905:2011 Framework for the assessment of the sustainable use of materials. certification-source-0004 PEFC The Programme for the Endorsement of Forest Certification (PEFC) is an international, non-profit, non-governmental organization which promotes sustainable forest management through independent third party certification."},{"location":"5_Controlled_Lists/5_003_Material_Purpose/","title":"Material Purpose","text":"

The material purpose controlled list identifies the purpose of this material in this combination of material constituents.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_003_Material_Purpose/#data","title":"Data","text":"identifier category detailed m-material-purpose-0001 acid scavenger Acid scavengers, also referred to as antacids, neutralize acidic impurities, especially those that release HCl. m-material-purpose-0002 adhesive Applied to one or both surfaces of two separate items that binds them together and resists their separation. m-material-purpose-0003 antioxidant Used to inhibit oxidation. m-material-purpose-0004 antistatic agent Used for treatment of materials or their surfaces in order to reduce or eliminate buildup of static electricity. m-material-purpose-0005 barrier Used to reduce water and gas diffusion into and/or out of the material. m-material-purpose-0006 coating m-material-purpose-0007 fire retardant Used to improve the fire resistance of materials. m-material-purpose-0008 light and heat stabilizer Used to inhibit photo-oxidation. m-material-purpose-0009 lubricant m-material-purpose-0010 pigment m-material-purpose-0011 plasticizer m-material-purpose-0012 preservation m-material-purpose-0013 print m-material-purpose-0014 slip compound m-material-purpose-0015 structure Providing strength and stability. m-material-purpose-0016 thermal stabilizer Used to minimize loss of HCl within PVC, a degradation process that starts above 70 \u00b0C. m-material-purpose-0017 metal deactivators Deactivators work by chelation to form an inactive coordination complex with the metal ion."},{"location":"5_Controlled_Lists/5_004_Function/","title":"Function","text":"

The function controlled list identifies the function of a material or a component. This is used in the following schemas:

  • Materials
  • Components

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_004_Function/#data","title":"Data","text":"identifier category detailed function-0001 aerosol function-0002 bag function-0003 barrel function-0004 blister pack function-0005 bottle function-0006 brick function-0007 bucket function-0008 cage function-0009 can function-0010 canister function-0011 cap function-0012 carton function-0013 case function-0014 container function-0015 crate function-0016 cup function-0017 dispense function-0018 envelope function-0019 film function-0020 gable function-0021 jar function-0022 jerrycan function-0023 jug function-0024 label function-0025 lid function-0026 net function-0027 pallet function-0028 peel pack function-0029 plug function-0030 pot function-0031 pouch function-0032 pump function-0033 rack function-0034 reel function-0035 rod function-0036 roll function-0037 sachet function-0038 shrinkwrap function-0039 sleeve function-0040 stretchwrap function-0041 tray function-0042 tub function-0043 tube function-0044 vial function-0045 wire function-0046 wrapper function-0047 window function-0048 box"},{"location":"5_Controlled_Lists/5_005_Recyclability_Source/","title":"Recyclability Source","text":"

The recyclability source controlled list identifies the source of the recyclability evidence. This is used in recyclability claims relationship list.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_005_Recyclability_Source/#data","title":"Data","text":"identifier category detailed recyclability-source-0001 OPRL OPRL is a not-for-profit company limited by guarantee, any surpluses being reinvested in our activities to promote recycling of packaging. recyclability-source-0002 Green Dot Green Dot is a license symbol used on packaging in some European markets which shows that a fee has been paid to fund the recycling of that packaging when it becomes waste. recyclability-source-0003 RecyClass A non-profit, cross-industry initiative facilitating the transition toward a circular plastic future."},{"location":"5_Controlled_Lists/5_006_Shape/","title":"Shape","text":"

The shape controlled list identifies the shape in components.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_006_Shape/#data","title":"Data","text":"identifier category detailed c-shape-0001 circle 2D shape where all points are a fixed distance from a central point c-shape-0002 cone 3D shape with circular base and narrows from the surface to the top c-shape-0003 cube 3D shape with 6 [square] faces, 8 vertices, and 12 edges c-shape-0004 cuboid 3D shape with 6 [rectangular] faces, 8 vertices, and 12 edges c-shape-0005 cylinder 3D shape with 2 parallel circular bases connected by a curved surface c-shape-0006 kite 2D shape quadrilateral with 2 pairs of sides, with each pair having of 2 adjacent sides which meet and that are equal in length c-shape-0007 parallelogram 2D shape quadrilateral with 2 pairs of equal-length adjacent (next to each other) sides and reflection symmetry across a diagonal c-shape-0008 polygons 2D shape with line segments and no curves. They include: pentagon, hexagon, octagon, nonagon, decagon, etc. c-shape-0009 rectangle 2D shape quadrilateral with 2 pairs of opposite sides equal in length c-shape-0010 rhombus 2D shape quadrilateral with all sides equal length, where opposite sides are parallel, and opposite angles are equal c-shape-0011 semi-circle 2D shape which is half of a circle c-shape-0012 sphere 3D shape with a radius that is extended to all three dimensions c-shape-0013 square 2D shape quadrilateral with 4 sides and 4 angles that are equal c-shape-0014 trapezium 2D shape quadrilateral with at least 1 pair of parallel sides c-shape-0015 triangle 2D shape polygon with 3 sides, 3 edges, and 3 vertices"},{"location":"5_Controlled_Lists/5_007_Flexibility/","title":"Flexibility","text":"

The flexibility controlled list identifies the flexibility in components.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_007_Flexibility/#data","title":"Data","text":"identifier category detailed c-flexibility-0001 Flexible capable of bending easily without breaking c-flexibility-0002 Rigid unable to bend or be forced out of shape"},{"location":"5_Controlled_Lists/5_008_Component_Disruptors/","title":"Component Disruptors","text":"

The component disruptors controlled list identifies what might cause disruption during the end of life process of a component. This is used in component end of life routes relationship list.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_008_Component_Disruptors/#data","title":"Data","text":"identifier category detailed c-disruptors-0001 Acrylic > 5% c-disruptors-0002 Acrylic Barriers c-disruptors-0003 Adhesives non water soluble at 80 degrees c-disruptors-0004 Biological residue c-disruptors-0005 Breakdown products of intentionally added substances c-disruptors-0006 Carbon Black c-disruptors-0007 Chemical residue c-disruptors-0008 Colour c-disruptors-0009 Compostable/ biodegradable c-disruptors-0010 Contains fragments of Glass c-disruptors-0011 EVA with Aluminium c-disruptors-0012 EVOH > 5 % c-disruptors-0013 Fillers that increase density PP above 0.97 g/cm2 c-disruptors-0014 Fillers that increase density of HDPE above 0.995 g/cm2 c-disruptors-0015 Foamed thermoplastic non-polyolefin elastomers c-disruptors-0016 Food residue c-disruptors-0017 \u201cHazardous Contents (chemicals, household cleaning)\u201d c-disruptors-0018 Inks that contain PVC c-disruptors-0019 Inks that bleed c-disruptors-0020 Laminated metal foil c-disruptors-0021 Labels > 30 % of surface area c-disruptors-0022 Metal components c-disruptors-0023 non PO > 10% c-disruptors-0024 Non-intentionally added substances c-disruptors-0025 Nylon Barriers c-disruptors-0026 Oxydegradable / OBD c-disruptors-0027 Paper Label c-disruptors-0028 PE Seal Layer c-disruptors-0029 Potential interaction between packaging and product c-disruptors-0030 Print covering > 50 % c-disruptors-0031 PS fragments c-disruptors-0032 PVC fragments c-disruptors-0033 PVdC c-disruptors-0034 PVOH > 5% c-disruptors-0035 Silicone Valves c-disruptors-0036 SiOX > 5% c-disruptors-0037 Substances of very high concern c-disruptors-0038 Too Big c-disruptors-0039 Too Small"},{"location":"5_Controlled_Lists/5_009_Opacity/","title":"Opacity","text":"

The opacity controlled list identifies the level of opacity a component has.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_009_Opacity/#data","title":"Data","text":"identifier category detailed c-opacity-0001 opaque does not allow light to pass through; not able to be seen through; solid colour c-opacity-0002 translucent allows light, but not detailed shapes, to pass through; semi-transparent; tinted colour c-opacity-0003 transparent allows light to pass through so that objects behind can be distinctly seen; no colour/ clear"},{"location":"5_Controlled_Lists/5_010_Reuse_System/","title":"Reuse System","text":"

The reuse system controlled list identifies the reuse system that this component is aligned to.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_010_Reuse_System/#data","title":"Data","text":"identifier category detailed c-reuse-system-0001 Loop Loop is a global reuse platform enabled by a multistakeholder coalition. c-reuse-system-0002 Reath Reath\u2019s Open Data Standard, designed for reusable packaging."},{"location":"5_Controlled_Lists/5_011_Recycled_Content_Evidence_Type/","title":"Recycled Content Evidence Type","text":"

The recycled content evidence type controlled list identifies the type of evidence provided for the recycled content claim for a component.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_011_Recycled_Content_Evidence_Type/#data","title":"Data","text":"identifier category detailed c-recycled-evidence-0001 certificate"},{"location":"5_Controlled_Lists/5_012_Product_Type/","title":"Product Type","text":"

The product type controlled list identifies the type of product contained within a complete packaging item.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_012_Product_Type/#data","title":"Data","text":"identifier category detailed cp-product-type-0001 food The product is fit and suitable to be eaten. cp-product-type-0002 beverage The product is fit and suitable to be drunk. cp-product-type-0003 cosmetic The product is used to enhance or alter the appearance of the face or body. cp-product-type-0004 medicinal The product has healing properties. cp-product-type-0005 electronic The product is electrical, electronic equipment. cp-product-type-0006 clothing The product is worn to cover and adorn the body. cp-product-type-0007 toy The product is meant for play and entertainment. cp-product-type-0008 book The product contains written or printed material for reading. cp-product-type-0009 cleaning The product is used to remove dirt and maintain cleanliness. cp-product-type-0010 pet The product is intended for the care and enjoyment of animals. cp-product-type-0011 automotive The product is related to vehicles and transportation. cp-product-type-0012 gardening The product is used for cultivating plants and maintaining a garden. cp-product-type-0013 hobby The product supports a specific leisure-time interest or activity. cp-product-type-0014 musical The product is related to creating or producing music. cp-product-type-0015 construction The product is used in building or assembling structures. cp-product-type-0016 office The product is designed for use in a work or professional setting. cp-product-type-9999 other The product is not in the list."},{"location":"5_Controlled_Lists/5_013_Deposit_Return_Scheme/","title":"Deposit Return Scheme","text":"

The deposit return scheme controlled list identifies which, if any, deposit return scheme that this complete packaging item is aligned with.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_013_Deposit_Return_Scheme/#data","title":"Data","text":"identifier category detailed cp-drs-0001 England cp-drs-0002 Scotland cp-drs-0003 Wales cp-drs-0004 Northern Ireland cp-drs-0005 none"},{"location":"5_Controlled_Lists/5_014_Complete_Packaging_Disruptors/","title":"Complete Packaging Disruptors","text":"

The complete packaging disruptors controlled list identifiers what might disrupt the end of life process of a complete packaging item. This is used in complete packaging end of life routes relationship list.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_014_Complete_Packaging_Disruptors/#data","title":"Data","text":"identifier category detailed cp-disruptors-0001 Acrylic > 5% cp-disruptors-0002 Adhesives non water soluble at 80 degrees cp-disruptors-0003 Breakdown products of intentionally added substances cp-disruptors-0004 Carbon Black cp-disruptors-0005 Colour cp-disruptors-0006 Compostable/ biodegradable cp-disruptors-0007 Contains fragments of Glass cp-disruptors-0008 Contains fragments of PS cp-disruptors-0009 Contains fragments of PVC cp-disruptors-0010 EVA with Aluminium cp-disruptors-0011 EVOH > 5 % cp-disruptors-0012 Foamed thermoplastic non-polyolefin elastomers cp-disruptors-0013 Hazardous Contents (chemicals, household cleaning, oils etc.) cp-disruptors-0014 Inks that bleed cp-disruptors-0015 Inks that contain PVC cp-disruptors-0016 Labels > 30 % of surface area cp-disruptors-0017 Laminated metal foil cp-disruptors-0018 Metal components cp-disruptors-0019 non PO > 10% cp-disruptors-0020 Nylon Barriers cp-disruptors-0021 Oxydegradable / OBD cp-disruptors-0022 Paper Label cp-disruptors-0023 PE Seal Layer cp-disruptors-0024 Print covering > 50 % cp-disruptors-0025 PVdC cp-disruptors-0026 PVOH > 5% cp-disruptors-0027 Residue - biological cp-disruptors-0028 Residue - chemical cp-disruptors-0029 Residue - food cp-disruptors-0030 Too Big cp-disruptors-0031 Too Small"},{"location":"5_Controlled_Lists/5_015_Level/","title":"Level","text":"

The level controlled list identifies the level or tier a complete packaging item is at.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_015_Level/#data","title":"Data","text":"identifier category detailed lc-level-0001 primary The individual container that you store goods in to sell to consumers. This is called a sales unit. For example, if you sell peas in steel tins with paper labels, the primary packaging is steel tin and paper label. lc-level-0002 secondary For grouping several sales units for selling or shipping purposes. Organisations may use secondary packaging to display goods in shops. For example, if you place one or more tins of peas into a cardboard box, then sell the box to a retailer or ship it to the consumer, the secondary packaging is cardboard box. lc-level-0003 shipment A type of secondary packaging for shipping single or multiple sales units to consumers. This includes cardboard boxes and mailing bags. For example, if you place a mobile phone in a cardboard box and then place the box into a mail bag before shipping it, the shipment packaging is mail bag. The primary packaging is cardboard box. lc-level-0004 transit Transit or tertiary packaging is used to group secondary packaging units together to protect them while being transported or handled. For example, if secondary packaging units are placed into larger cardboard boxes that are sealed with parcel tape and put onto wooden pallets to be transported, the transit packaging is cardboard box, parcel tape and wooden pallet. Transit packaging does not include road, rail, ship and air containers."},{"location":"5_Controlled_Lists/5_016_End_Of_Life_Route/","title":"End of Life Route","text":"

The end-of-life route controlled list identifies the routes that packaging can go down once it has fulfilled it\u2019s purpose.

Controlled lists are maintained by the SCB, if there are values that you believe need to be added then contact us and we can add new values to the lists.

"},{"location":"5_Controlled_Lists/5_016_End_Of_Life_Route/#data","title":"Data","text":"identifier category detailed end-of-life-route-0001 recycling The process of converting waste materials into new materials and objects. end-of-life-route-0002 home composting Home composting is the process of using household waste to make compost at home. end-of-life-route-0003 food waste collection The collection of food waste from a business or home by a business, charity or local authority. end-of-life-route-0004 green waste collection The collection of food waste and garden from a business or home by a business, charity or local authority. end-of-life-route-0005 take back scheme A system that allows customers to return used packaging to the manufacturer or retailer for recycling or reuse. end-of-life-route-0006 deposit return scheme A system that allows customers to return used packaging to the manufacturer or retailer for recycling or reuse in exchange for a deposit end-of-life-route-0007 landfill The disposal of waste materials by burying them in the ground end-of-life-route-0008 incineration A waste treatment process that involves the combustion of substances contained in waste materials. end-of-life-route-0009 informal reuse The practice of reusing items that would otherwise be thrown away without any formal system in place."},{"location":"6_Relationship_Lists/6_000_Relationship_Lists/","title":"Relationship Lists","text":"

Relationship lists are user-defined lists used in data standards to specify the relationships between different data elements. Unlike controlled lists, which are predefined within the data standard, relationship lists are populated by the user to provide context and clarity to the data being recorded.

For example, in the packaging industry, a relationship list could be used to specify the relationship between a component and its associated material or between a complete package and its components. By defining these relationships, the user can ensure that the data is consistent and accurate, which can help to improve decision-making, analysis, and reporting.

Relationship lists are flexible and can be customized to fit the needs of different users and applications, making them a powerful tool for managing complex data sets. However, they require careful planning and management to ensure that they are used consistently across the supply chain and that they remain relevant and up-to-date over time.

"},{"location":"6_Relationship_Lists/6_001_Material_Constituents/","title":"Material Constituents","text":"

The material constituents relationship list identifies the base_material and other materials that are combined to create materials. This is only used in materials.

"},{"location":"6_Relationship_Lists/6_001_Material_Constituents/#data","title":"Data","text":"Column Status Format Notes materialConstituentsIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier materialCombinationIdentifier required String The unique identifier of the materials that this component is made of. There must be an equivalent record in the Base_Materials OR Materials data. materialPurpose recommended String Why is this base material or material being used? Use the identifier of the material purpose that this row relates to. The entry here should be drawn from the Material Purpose Controlled List. virginMaterial recommended Numeric The maximum allowable percent of the material that was newly created for the material. layer recommended Numeric The layer associated with the material. The inner most layer (the layer closest to the product) denoted as 1, and the outermost layer is the biggest number. materialPercentage recommended Numeric The percentage of the total materials making-up the material. For every unique material, materialPercentage should add to 100%."},{"location":"6_Relationship_Lists/6_001_Material_Constituents/#diagram","title":"Diagram","text":"
erDiagram\n\n  MATERIALS }o..o{ MATERIAL_CONSTITUENTS : within\n  MATERIAL_CONSTITUENTS {\n    materialConstituentsIdentifier String\n    materialCombinationIdentifier String\n    materialPurpose String\n    virginMaterial Numeric\n    layer Numeric\n    materialPercentage Numeric\n  }\n  MATERIAL_CONSTITUENTS }o--o{ BASE_MATERIALS : attributes\n  MATERIAL_CONSTITUENTS }o--o{ MATERIALS : attributes\n  MATERIAL_CONSTITUENTS }o--o{ CONTROLLED_LISTS : attributes\n      CONTROLLED_LISTS {\n    materialPurposeControlledList required }\n  }
"},{"location":"6_Relationship_Lists/6_001_Material_Constituents/#template","title":"Template","text":"

Material constituents should be provided as a separate csv file. The specification of this csv file is as follows:

Material Constituents Template

"},{"location":"6_Relationship_Lists/6_001_Material_Constituents/#example","title":"Example","text":"JSON #1JSON #2
--Fibre based composite Polyethylene, EVOH, Paper multi layer\n{\n[\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"materialPurpose\": \"m-material-purpose-0005\",\n\"virginMaterial\": 100,\n\"layer\": 1,\n\"materialPercentage\": 7\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"96245c85-5671-4f3d-875f-82665005e9e8\",\n\"materialPurpose\": \"m-material-purpose-0015\",\n\"virginMaterial\": 100,\n\"layer\": 2,\n\"materialPercentage\": 27\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"materialPurpose\": \"m-material-purpose-0002\",\n\"virginMaterial\": 100,\n\"layer\": 3,\n\"materialPercentage\": 7\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"ff249e1f-5015-46b8-8655-6c920fbf2606\",\n\"materialPurpose\": \"m-material-purpose-0003\",\n\"virginMaterial\": 100,\n\"layer\": 4,\n\"materialPercentage\": 18\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"materialPurpose\": \"m-material-purpose-0002\",\n\"virginMaterial\": 100,\n\"layer\": 5,\n\"materialPercentage\": 7\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"96245c85-5671-4f3d-875f-82665005e9e8\",\n\"materialPurpose\": \"m-material-purpose-0015\",\n\"virginMaterial\": 100,\n\"layer\": 6,\n\"materialPercentage\": 27\n},\n{\n\"materialConstituentsIdentifier\": \"f87b9bb3-f141-41cf-986e-e3a32b223f09\",\n\"materialCombinationIdentifier\": \"3ca24db2-84d5-4681-aa16-136fbdba101f\",\n\"materialPurpose\": \"m-material-purpose-0005\",\n\"virginMaterial\": 100,\n\"layer\": 7,\n\"materialPercentage\": 7\n},\n]\n} 
--Cellulose - verbose data structure\n{\n\"materialConstituentsIdentifier\": \"a4ef4dec-eceb-417d-bded-9bd1e305a440\",\n\"materialCombinationIdentifier\": {\n\"identifier\": \"m-material-purpose-0015\",\n\"baseMaterialName\": \"Cellulose\",\n\"baseMaterialType\": {\n\"identifier\": \"bm-material-type-0001\",\n\"category\": \"biobased\",\n\"detailed\": \"from renewable products such as carbohydrates, starch, vegetable fats and oils, bacteria and other biological substances.\"\n},\n\"baseMaterialType\": \"bm-material-type-0001\",\n\"materialChemCID\": \"14055602\"\n},\n\"materialPurpose\":{\n\"identifier\": \"m-material-purpose-0015\",\n\"category\": \"structure\",\n\"detailed\": \"Providing strength and stability.\"\n},\n\"virginMaterial\": 100,\n\"layer\": null,\n\"materialPercentage\": 100\n}\n
"},{"location":"6_Relationship_Lists/6_002_Component_Constituents/","title":"Component Constituents","text":"

The component constituents relationship list identifies the materials that are combined to create components. This is only used in components.

"},{"location":"6_Relationship_Lists/6_002_Component_Constituents/#data","title":"Data","text":"Column Status Format Notes componentConstituentsIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier materialCombinationIdentifier required String The unique identifier of the materials that this component is made of. There must be an equivalent record in the Materials OR Components data."},{"location":"6_Relationship_Lists/6_002_Component_Constituents/#diagram","title":"Diagram","text":"
erDiagram\n  COMPONENTS }o..o{ COMPONENT_CONSTITUENTS : within\n  COMPONENT_CONSTITUENTS {\n    componentConstituentsIdentifier String\n    componentCombinationIdentifier String\n  }\n  COMPONENT_CONSTITUENTS }o--o{ MATERIALS : attributes\n  COMPONENT_CONSTITUENTS }o--o{ COMPONENTS : attributes
"},{"location":"6_Relationship_Lists/6_002_Component_Constituents/#template","title":"Template","text":"

Component constituents should be provided as a separate csv file. The specification of this csv file is as follows:

Component Constituents Template

"},{"location":"6_Relationship_Lists/6_003_Complete_Packaging_Constituents/","title":"Complete Packaging Constituents","text":"

The complete packaging constituents relationship list identifies the components and other complete packaging that are combined to create complete packages. This is only used in complete packaging.

"},{"location":"6_Relationship_Lists/6_003_Complete_Packaging_Constituents/#data","title":"Data","text":"Column Status Format Notes completePackagingConstituentsIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier completePackagingCombinationIdentifier required String The unique identifier of the components and/or complete packaging that this complete packaging is made of. There must be an equivalent record in the Components OR Complete Packaging data."},{"location":"6_Relationship_Lists/6_003_Complete_Packaging_Constituents/#diagram","title":"Diagram","text":"
erDiagram\n\n  COMPLETE_PACKAGING }o..o{ COMPLETE_PACKAGING_CONSTITUENTS : within\n  COMPLETE_PACKAGING_CONSTITUENTS {\n    completePackagingConstituentsIdentifier String\n    completePackagingCombinationIdentifier String\n  }\n  COMPLETE_PACKAGING_CONSTITUENTS }o--o{ COMPONENTS : attributes\n  COMPLETE_PACKAGING_CONSTITUENTS }o--o{ COMPLETE_PACKAGING : attributes
"},{"location":"6_Relationship_Lists/6_003_Complete_Packaging_Constituents/#template","title":"Template","text":"

Complete packaging constituents should be provided as a separate csv file. The specification of this csv file is as follows:

Complete Packaging Constituents

"},{"location":"6_Relationship_Lists/6_004_Multipack_Constituents/","title":"Multipack Constituents","text":"

The multipack constituents relationship list identifies the complete packaging items that are combined to create multipacks. This is only used in multipack.

"},{"location":"6_Relationship_Lists/6_004_Multipack_Constituents/#data","title":"Data","text":"Column Status Format Notes multipackConstituentsIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier multipackCombinationIdentifier required String The unique identifier of components and/or complete packaging that this multipack is made of. There must be an equivalent record in the Components OR Complete Packaging data."},{"location":"6_Relationship_Lists/6_004_Multipack_Constituents/#diagram","title":"Diagram","text":"
erDiagram\n\n  MULTIPACK }o..o{ MULTIPACK_CONSTITUENTS : within\n  MULTIPACK_CONSTITUENTS {\n    multipackConstituentsIdentifier String\n    multipackCombinationIdentifier String\n  }\n  MULTIPACK_CONSTITUENTS }o--o{ COMPLETE_PACKAGING : attributes\n  MULTIPACK_CONSTITUENTS }o--o{ COMPONENTS : attributes
"},{"location":"6_Relationship_Lists/6_004_Multipack_Constituents/#template","title":"Template","text":"

Multipack constituents should be provided as a separate csv file.

The specification of this csv file is as follows:

Multipack Constituents Template

"},{"location":"6_Relationship_Lists/6_005_Certification_Claims/","title":"Certification Claims","text":"

The Certification Claims relationship list identifies the certificates that can be assigned to various tables. This is used in the following schemas:

  • Base Materials
  • Materials
  • Components
  • Complete Packaging
"},{"location":"6_Relationship_Lists/6_005_Certification_Claims/#data","title":"Data","text":"Column Status Format Notes certificationIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier certificationSource required String What source provided the certificate? The entry should be the Certification Source Controlled List identifier. certificationIssueDate recommended String The date that the certificate was provided/last updated. Use the format dd/mm/yyyy."},{"location":"6_Relationship_Lists/6_005_Certification_Claims/#diagram","title":"Diagram","text":"
erDiagram\n  BASE_MATERIALS }o..o{ CERTIFICATION_CLAIMS : within\n  MATERIALS }o..o{ CERTIFICATION_CLAIMS : within\n  COMPONENTS}o..o{ CERTIFICATION_CLAIMS : within\n  COMPLETE_PACKAGING }o..o{ CERTIFICATION_CLAIMS : within\n  CERTIFICATION_CLAIMS {\n    certificationIdentifier String\n    certificationSource String\n    certificationIssueDate String\n  }\n  CERTIFICATION_CLAIMS }o--o{ CONTROLLED_LISTS : attributes\n      CONTROLLED_LISTS {\n    certificationSource required }\n  }
"},{"location":"6_Relationship_Lists/6_005_Certification_Claims/#template","title":"Template","text":"

Certification claims should be provided as a separate csv file. The specification of this csv file is as follows:

Certification Claims Template

"},{"location":"6_Relationship_Lists/6_005_Certification_Claims/#example","title":"Example","text":"JSON
--A certificate provided by the FSA.\n{\n\"certificationIdentifier\": \"eed87ac3-6e3e-45fb-af2c-dd0f64fdb597\",\n\"certificationSource\": \"certification-source-0002\",\n\"certificationIssueDate\": \"01/08/2022\"\n}\n
"},{"location":"6_Relationship_Lists/6_006_Recyclability_Claims/","title":"Recyclability Claims","text":"

The recyclability claims relationship list identifies organisations and schemes that provide the recyclability claims. This is used in the following schemas:

  • Components
  • Complete Packaging
"},{"location":"6_Relationship_Lists/6_006_Recyclability_Claims/#data","title":"Data","text":"Column Status Format Notes recyclabilityIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier recyclabilitySource recommended String What source provided the certificate? The entry should be the recyclability source controlled list identifier. recyclabilityIssueDate recommended String The date that the certificate was provided/last updated. Use the format dd/mm/yyyy."},{"location":"6_Relationship_Lists/6_006_Recyclability_Claims/#diagram","title":"Diagram","text":"
erDiagram\n\n  COMPONENTS }o..o{ RECYCLABILITY_CLAIMS : within\n  COMPLETE_PACKAGING }o..o{ RECYCLABILITY_CLAIMS : within\n  RECYCLABILITY_CLAIMS {\n    recyclabilityIdentifier String\n    recyclabilitySource String\n    recyclabilityIssueDate String\n  }\n  RECYCLABILITY_CLAIMS }o--o{ CONTROLLED_LISTS : attributes\n      CONTROLLED_LISTS {\n    recyclabilitySource required }\n  }
"},{"location":"6_Relationship_Lists/6_006_Recyclability_Claims/#template","title":"Template","text":"

Recyclability claims should be provided as a separate csv file. The specification of this csv file is as follows:

Recyclability Claims Template

"},{"location":"6_Relationship_Lists/6_006_Recyclability_Claims/#example","title":"Example","text":"JSON
--Claim provided by OPRL.\n{\n\"recyclabilityIdentifier\": \"b101889f-87e5-4c42-abb7-0df5fc3d1a26\",\n\"recyclabilitySource\": \"recyclability-source-0001\",\n\"recyclabilityIssueDate\": \"01/08/2022\"\n}\n
"},{"location":"6_Relationship_Lists/6_007_Component_End_of_Life_Routes/","title":"Component End of Life Routes","text":"

The component end of life routes relationship list identifies the purposed and intended destination and process of this component once it has completed its role as packaging. This is only used in components.

"},{"location":"6_Relationship_Lists/6_007_Component_End_of_Life_Routes/#data","title":"Data","text":"Column Status Format Notes componentEndOfLifeRouteIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier componentEndOfLifeRoute required String What is the intended end of life route for this component? The entry should be the end of life route controlled list identifier. orderOfPrecedence recommended Numeric The order that end of life routes should be used. The preferred route denoted as 1, and the last best option being the biggest number. componentDisruptors required List What challenges this end of life route for this component has. The entry should be the component end of life route disruptors controlled list identifier."},{"location":"6_Relationship_Lists/6_007_Component_End_of_Life_Routes/#diagram","title":"Diagram","text":"
erDiagram\n\n  COMPONENTS }o..o{ COMPONENT_END_OF_LIFE_ROUTES : within\n  COMPONENT_END_OF_LIFE_ROUTES {\n    componentEndOfLifeRouteIdentifier String\n    componentEndOfLifeRoute String\n    orderOfPrecedence String\n    componentDistruptors List\n  }\n  COMPONENT_END_OF_LIFE_ROUTES }o--o{ CONTROLLED_LISTS : attributes\n      CONTROLLED_LISTS {\n    endOfLifeRoute required\n    componentDistruptors required }\n  }
"},{"location":"6_Relationship_Lists/6_007_Component_End_of_Life_Routes/#template","title":"Template","text":"

Component end of life routes should be provided as a separate csv file. The specification of this csv file is as follows:

Component End of Life Routes

"},{"location":"6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/","title":"Complete Packaging End of Life Routes","text":"

The complete packaging end of life routes relationship list identifies the purposed and intended destination and process of this complete packaging once it has completed its role as packaging. This is only used in complete packaging.

"},{"location":"6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/#data","title":"Data","text":"Column Status Format Notes completePackagingEndOfLifeRouteIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier completePackagingEndOfLifeRoute recommended String What is the intended end of life route for this complete packaging. The entry should be the end of life route controlled list identifier. To be filled in when complete packaging has an intended end of life route AS complete packaging, otherwise only fill out at component level. orderOfPrecedence recommended Numeric The order that end of life routes should be used. The preferred route denoted as 1, and the last best option being the biggest number. completePackagingDisruptors recommended List What challenges this end of life route for this complete packaging has. The entry should be the complete packaging end of life route disruptors controlled list identifier."},{"location":"6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/#diagram","title":"Diagram","text":"
erDiagram\n\n  COMPLETE_PACKAGING }o..o{ COMPLETE_PACKAGING_END_OF_LIFE_ROUTES : within\n  COMPLETE_PACKAGING_END_OF_LIFE_ROUTES {\n    completePackagingEndOfLifeRouteIdentifier String\n    completePackagingEndOfLifeRoute String\n    orderOfPrecedence Numeric\n    completePackagingDistruptors List\n  }\n  COMPLETE_PACKAGING_END_OF_LIFE_ROUTES }o--o{ CONTROLLED_LISTS : attributes\n      CONTROLLED_LISTS {\n    endOfLifeRoute required\n    completePackagingDistruptors required }\n  }
"},{"location":"6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/#template","title":"Template","text":"

Complete packaging end of life routes should be provided as a separate csv file. The specification of this csv file is as follows:

Complete Packaging End of Life Routes Template

"},{"location":"6_Relationship_Lists/6_008_Complete_Packaging_End_of_Life_Routes/#example","title":"Example","text":"JSON
--A complete packaging end of life route for recycling with food residue and a paper label being a disruptor.\n{\n\"completePackagingEndOfLifeRouteIdentifier\": \"1229f395-3065-4236-bc1e-2aa500f58a79\",\n\"completePackagingEndOfLifeRoute\": \"end-of-life-route-0001\",\n\"orderOfPrecedence\": 1,\n\"completePackagingDistruptors\": [\n\"cp-disruptors-0029\", \"cp-disruptors-0022\"\n]\n}\n
"},{"location":"6_Relationship_Lists/6_009_Recycled_Content_Claims/","title":"Recycled Content Claims","text":"

The recycled content claims relationship list identifies the document that details the recycled content claim. This is only used in components.

"},{"location":"6_Relationship_Lists/6_009_Recycled_Content_Claims/#data","title":"Data","text":"Column Status Format Notes recycledContentIdentifier required String A globally unique identifier. See identifiers section for information on how to construct this identifier recycledContentEvidenceType recommended String What type of document provides the information regarding the claim? The entry should be the recycled content evidence type identifier. recycledContentEvidenceReference recommended String An accompanying reference number associated with the recycled content evidence type for the component. recycledContentIssueDate recommended String The date that the recycled content evidence was issued. Use the format dd/mm/yyyy."},{"location":"6_Relationship_Lists/6_009_Recycled_Content_Claims/#diagram","title":"Diagram","text":"
erDiagram\n\n  COMPONENTS }o..o{ RECYCLED_CONTENT_CLAIMS : within\n  RECYCLED_CONTENT_CLAIMS {\n    recycledContentIdentifier String\n    recycledContentEvidenceType String\n    recycledContentEvidenceReference String\n    recycledContentIssueDate String\n  }\n  RECYCLED_CONTENT_CLAIMS }o--o{ CONTROLLED_LISTS : attributes\n      CONTROLLED_LISTS {\n    recycledContentEvidenceType required }\n  }
"},{"location":"6_Relationship_Lists/6_009_Recycled_Content_Claims/#template","title":"Template","text":"

Recycled content claims should be provided as a separate csv file. The specification of this csv file is as follows:

Recycled Content Claims

"},{"location":"6_Relationship_Lists/6_009_Recycled_Content_Claims/#example","title":"Example","text":"JSON
--A certificate providing information about a recycled content claim.\n{\n\"recycledContentIdentifier\": \"23e8251a-4fe6-4b25-9966-b08acac9ba34\",\n\"recycledContentEvidenceType\": \"c-recycled-evidence-0001\",\n\"recycledContentEvidenceReference\": \"ABC-123-Example\",\n\"recycledContentIssueDate\": \"01/08/2022\"\n}\n
"},{"location":"7_Supporting_Files/7_2_Example_Files/","title":"Supporting Files","text":"

This section of the guidance provides examples of different scenarios for providing information about packaging and download files for the templates

"},{"location":"7_Supporting_Files/7_2_Example_Files/#excel-workbook","title":"Excel Workbook","text":"

BETA VERSION

"},{"location":"7_Supporting_Files/7_2_Example_Files/#csv-blank","title":"CSV blank","text":""},{"location":"7_Supporting_Files/7_2_Example_Files/#core-schema","title":"Core Schema","text":"
  1. Base Materials
  2. Materials
  3. Components
  4. Complete Packaging
  5. Multipack
  6. Load Catalogue
  7. Load
"},{"location":"7_Supporting_Files/7_2_Example_Files/#relationship-lists","title":"Relationship Lists","text":"
  1. Material Constituents
  2. Component Constituents
  3. Complete Packaging Constituents
  4. Multipack Constituents
  5. Certification Claims
  6. Recyclability Claims
  7. Component End of Life Routes
  8. Complete Packaging End of Life Routes
  9. Recycled Content Claims
"},{"location":"8_Governance/8_1_Governance/","title":"Governance","text":"

The Open 3P data standard has been developed to answer the data needs of the packaging industry. To ensure that the standard represents all stakeholders a comprehensive set of governance arrangements has been developed - to maintain trust, integrity and fairness.

Open Data Manchester (ODM) is a not-for-profit organisation that acts as the Data Standard Holding Body (DSHB) for Open 3P. It holds the intellectual property rights (IP) of the Open 3P data standard and is an independent and neutral entity, that has no stake in the packaging industry. It is a Community Interest Company (CIC) that has an \u2018asset lock\u2019, a legal mechanism that prevents predatory take over of its assets by third parties.

ODM\u2019s role as the DSHB is four-fold.

  • It holds the standard in an asset-lock.
  • It develops and maintains the standard on behalf of the Standard Custodian Board (SCB).
  • It provides secretariat services to the SCB.
  • It provides support services to individuals and organisations that want to adopt and exploit the potential of the data standard.

The SCB ensures that the standard is developed for and on-behalf of the packaging value chain. The board consists of industry stakeholders, domain and technical experts and is chaired by ODM. The board is elected through an open process with board members holding post for a maximum of three continuous years before stepping down.

Development of the standard follows a strict governance process where changes are either submitted to the board through the DSHB, the SCB itself or through external petition. Changes are assessed and if deemed to be beneficial are circulated for consultation. After the consultation period expires, the changes are then re-assessed and adopted if agreed. The SCB then mandates the DSHB to implement the change.

All proceedings and documents relating to the governance arrangements of the Open 3P standard can be found on the Governance Proceedings page of the Open 3P website. Meetings are quarterly with agenda, related documents circulated to the board 30 days before the meeting.

"},{"location":"9_Change_Log/8_1_Change_Log/","title":"Latest Updates","text":"

A document that contains all the changes made to the standard.

"},{"location":"9_Change_Log/8_1_Change_Log/#september-29-2023","title":"September 29, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents","title":"Documents","text":"
  • Reworked data formats page to include various wored examples
"},{"location":"9_Change_Log/8_1_Change_Log/#september-22-2023","title":"September 22, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_1","title":"Documents","text":"
  • Added blank Excel workbook to supporting files page
  • Added blank csvs for all core schema and all relationship lists to supporting files page and each schema page
"},{"location":"9_Change_Log/8_1_Change_Log/#september-7-2023","title":"September 7, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_2","title":"Documents","text":"
  • Added example for Recycled Content Claims
  • Added example for Recyclability Claims
  • Added example for Certification Claims
  • Added example for Components
  • Added example for Complete Packaging End of Life
  • Added example for Complete Packaging
"},{"location":"9_Change_Log/8_1_Change_Log/#august-11-2023","title":"August 11, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_3","title":"Documents","text":"
  • Added licence page so that users don\u2019t need to navigate to Github
  • Improved homepage text regarding licencing
  • Improved sidebar navigation
  • Added licence to the footer
  • Added Relationship list, UUID and Single Source of Truth to Key Concepts page
  • Improved reability of Start Here Introduction
  • Fixed comestics typo to cosmetics in products types
  • Added product type descriptions
  • Various other typos
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields","title":"Data Fields","text":"
  • Harmonised all boolean field descriptions so that they all stated \u201cAnswer as: \u2018TRUE\u2019 for yes and \u2018FALSE\u2019 for no.\u201d
"},{"location":"9_Change_Log/8_1_Change_Log/#july-14-2023","title":"July 14, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_4","title":"Documents","text":"
  • Removed catalogue from the introduction area
  • Improved working about packaging levels
  • Reworked introduction
  • Improved key concepts page
  • Updated data flow
  • Improved Complete Packaging End of Life Route Relationship List
  • Added Controlled List information page
  • Improved the Goverance Page
  • Improved the branding to fit with the Open 3P brand guidelines
"},{"location":"9_Change_Log/8_1_Change_Log/#july-5-2023","title":"July 5, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_5","title":"Documents","text":"
  • Removed banner detailing that the standard is about plastic packaging.
  • Added Apache Licence to homepage
"},{"location":"9_Change_Log/8_1_Change_Log/#july-4-2023","title":"July 4, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents-model-data-fields","title":"Documents, Model, Data Fields","text":"
  • Moved to verion 2.0. Read the release notes on Github.
"},{"location":"9_Change_Log/8_1_Change_Log/#march-17-2023","title":"March 17, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_6","title":"Documents","text":"
  • General improvements
"},{"location":"9_Change_Log/8_1_Change_Log/#march-10-2023","title":"March 10, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_7","title":"Documents","text":"
  • Added versioning control so that there can be parrellell versions
  • Updated Identifiers page to include information regarding UUID
"},{"location":"9_Change_Log/8_1_Change_Log/#march-9-2023","title":"March 9, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_8","title":"Documents","text":"
  • Variours changes to files for added function for versioning
"},{"location":"9_Change_Log/8_1_Change_Log/#february-7-2023","title":"February 7, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#model","title":"Model","text":"
  • Changed component catologue to components
"},{"location":"9_Change_Log/8_1_Change_Log/#documents_9","title":"Documents","text":"
  • Added additional examples
  • Updated all data schema to based on changes
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_1","title":"Data Fields","text":"
  • Changed tags to external identifiers
"},{"location":"9_Change_Log/8_1_Change_Log/#february-3-2023","title":"February 3, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#model_1","title":"Model","text":"
  • Changed materials catologue to base materials
  • Added country to base materials
"},{"location":"9_Change_Log/8_1_Change_Log/#documents_10","title":"Documents","text":"
  • Added examples to base materials
"},{"location":"9_Change_Log/8_1_Change_Log/#january-20-2023","title":"January 20, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_11","title":"Documents","text":"
  • Added schema images to all Data Specification pages
  • Added JSON example to all Data Specification pages
  • Added CSV examples
  • Added CSV templates
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_2","title":"Data Fields","text":"
  • Fixed Complete Packaging Recycling Disruptor List
"},{"location":"9_Change_Log/8_1_Change_Log/#january-06-2023","title":"January 06, 2023","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_12","title":"Documents","text":"
  • Neaten up tables so that the status column doesn\u2019t go over multiple lines.
  • Updated schema image.
  • Fixed naming for material and material catalogue pages.
  • Added favicon.
"},{"location":"9_Change_Log/8_1_Change_Log/#december-20-2022","title":"December 20, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#model_2","title":"Model","text":"
  • separate out materials and material catalogue -> move to the front of the process
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_3","title":"Data Fields","text":"
  • Component Catalogue: add identifier to link materials
"},{"location":"9_Change_Log/8_1_Change_Log/#november-25-2022","title":"November 25, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documentation","title":"Documentation","text":"
  • Add definitions of recycling and reuse
  • Bug fixes, typos and tweaks throughout
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_4","title":"Data Fields","text":"
  • Component Catalogue: branding added due to updated epr
  • Component Catalogue: loaned added due to epr
  • Multipack: outsideTier removed because encoded with tier level
"},{"location":"9_Change_Log/8_1_Change_Log/#controlled-lists","title":"Controlled Lists","text":"
  • add none option to drs
"},{"location":"9_Change_Log/8_1_Change_Log/#november-18-2022","title":"November 18, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_13","title":"Documents","text":"
  • Complete Packaging: reformat component catalogue references by replacing independentComponent, previouslyAssembledComponent and allComponent with
  • Component Catalogue: created previouslyAssembledComponent as boolean and componentLink for addressing which components are attached when created.
  • Upload Schema
"},{"location":"9_Change_Log/8_1_Change_Log/#november-11-2022","title":"November 11, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_14","title":"Documents","text":"
  • Component Catalogue: Update measurement guidelines.
  • Complete Packaging: Update measurement guidelines.
"},{"location":"9_Change_Log/8_1_Change_Log/#october-21-2022","title":"October 21, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_15","title":"Documents","text":"
  • Complete Packaging: householdWaste turned into required field - representing the updated EPR
"},{"location":"9_Change_Log/8_1_Change_Log/#controlled-lists_1","title":"Controlled Lists","text":"
  • Completed Definitions for shapes
  • Completed Definitions for opacity
  • Completed Definitions for level
  • Removed tertiary and replaced with \u2018shipment\u2019 and \u2018transit\u2019 to reflect updated EPR for level
"},{"location":"9_Change_Log/8_1_Change_Log/#september-30-2022","title":"September 30, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#documents_16","title":"Documents","text":"
  • Fix typo in Key Concepts, Multipack
  • For measurements: Add rounding rule.
  • Change volume measurement to millilitres
  • For measurements: clarify why component measurements are slightly different to GS1\u2019s complete packaging measurement guidance.
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_5","title":"Data Fields","text":"
  • Complete Packaging: Added weightTolerance to the complete packaging
"},{"location":"9_Change_Log/8_1_Change_Log/#september-26-2022","title":"September 26, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#structuralmodel-changes","title":"Structural/Model Changes","text":"
  • Controlled list material function -> material purpose
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_6","title":"Data Fields","text":"
  • Component Catalgoue: Moved level from component catalogue to load catalogue
  • Component Catalgoue: Removed importedUK since manufacturedCountry codes the same information
  • Component Catalogue: recycledContent description updated - Recycled Content as the minimum allowable recycled content
  • Component Catalogue: Added weightTolerance - definition to be updated.
  • Component Catalogue Materials: virginMaterial description updated - virigin material as the maximum allowable created for the component
  • Load: add the field loadIdentifier to link to the load catalogue
"},{"location":"9_Change_Log/8_1_Change_Log/#september-9-2022","title":"September 9, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_7","title":"Data Fields","text":"
  • required fields updated
  • All:uploaded changed to update
  • All: update added
  • All: discontinued changed to discontinue
  • Component Catalogue Materials: added materialName
  • Component Catalgoue: added partOfMultipack
  • Multipack: packagingItems replaced completePackaging and component
"},{"location":"9_Change_Log/8_1_Change_Log/#structuralmodel-changes_1","title":"Structural/Model Changes","text":"
  • Added downloadable csv files to Supporting Files
"},{"location":"9_Change_Log/8_1_Change_Log/#september-5-2022","title":"September 5, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#structuralmodel-changes_2","title":"Structural/Model Changes","text":"
  • Data Flow created
  • Introduction changed to Start Here; Key Concepts moved into Start Here and files updated to reflect these changes
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_8","title":"Data Fields","text":"
  • required fields updated (still in process)
"},{"location":"9_Change_Log/8_1_Change_Log/#september-2-2022","title":"September 2, 2022","text":""},{"location":"9_Change_Log/8_1_Change_Log/#structuralmodel-changes_3","title":"Structural/Model Changes","text":"
  • Removal of Unique Components (fields moved to Component Catalogue or Complete Packaging)
  • Addition of Load Catalogue: load split into load and load catalogue
"},{"location":"9_Change_Log/8_1_Change_Log/#data-fields_9","title":"Data Fields","text":"
  • Component Catalgoue: format split into shape and function
  • Component Catalogue: Addition of level, reuseSystem, importedUK, and manufacturedCountry from unique components
  • Component Catalogue Materials: materialFunction turned into materialPurpose
  • Complete Packaging: Addition of componentContactWithProduct coverted from directContactWithProduct from unique components
  • All: tags converted into a dictionary; height, weight, depth, volume, and weight converted into numeric
"}]} \ No newline at end of file diff --git a/site/sitemap.xml b/site/sitemap.xml new file mode 100644 index 00000000..0f8724ef --- /dev/null +++ b/site/sitemap.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/site/sitemap.xml.gz b/site/sitemap.xml.gz new file mode 100644 index 00000000..c41f347a Binary files /dev/null and b/site/sitemap.xml.gz differ