A modular Python package for Digital Product Passport modeling with identity, structure, lifecycle, risk, sustainability, provenance layers, and universal part classes.
Project description
Digital Product Passport
Contents
Description
A modular Python package that enables manufacturing companies to create interoperable Digital Product Passports (DPPs) by mapping their existing business data to standardized DPP data models using automated semantic matching and intuitive configuration tools.
Package Layout
remake_dpp/
├── docs/
│ ├── api-model.md
│ ├── api-schema-registry.md
│ ├── concepts-gas.md
│ ├── docs.json
│ ├── intro.md
│ ├── quickstart.md
│ ├── schemas-eclass.md
│ ├── schemas-isa95.md
│ └── usage-python.md
├── nmis_dpp/
│ ├── mappers/
│ │ ├── __init__.py
│ │ ├── eclass_mapper.py
│ │ └── isa95_mapper.py
│ ├── ontology_data/
│ │ ├── eclass_16/
│ │ │ ├── dictionary_assets_en/
│ │ │ │ ├── ECLASS16_0_ASSET_EN_SG_13.xml
│ │ │ │ ├── ...
│ │ │ │ └── ECLASS16_0_ASSET_EN_SG_90.xml
│ │ │ ├── unitsml_en/
│ │ │ │ └── ECLASS16_0_UNITSML_EN.xml
│ │ │ └── ECLASS_ASSET_XML_Read_Me_EN_v1.pdf
│ │ ├── isa95/
│ │ │ ├── Documentation/
│ │ │ │ ├── B2MML-BatchML-CodeGeneration.docx
│ │ │ │ ├── B2MML-Documentation.pdf
│ │ │ │ ├── B2MML-JSON-Documentation.pdf
│ │ │ │ ├── BatchML-BatchInformation.docx
│ │ │ │ ├── BatchML-BatchProductionRecord.docx
│ │ │ │ └── BatchML-GeneralRecipe.docx
│ │ │ ├── Examples/
│ │ │ │ ├── BatchML v02 Cough Syrup Example Files.zip
│ │ │ │ ├── BatchML v0401 Example with extensions.zip
│ │ │ │ ├── Courbon B2MML v0401 Example XML Files.zip
│ │ │ │ ├── Readme.txt
│ │ │ │ └── ReportAboutUseOfB2MMLinARTISAN.pdf
│ │ │ ├── Schema/
│ │ │ │ ├── AllSchemas.json
│ │ │ │ ├── B2MML-AllExtensions.xsd
│ │ │ │ ├── B2MML-Common.xsd
│ │ │ │ ├── B2MML-CommonExtensions.xsd
│ │ │ │ ├── ...
│ │ │ │ └── BatchML-GeneralRecipeExtensions.xsd
│ │ │ └── README.md
│ │ └── README.md
│ ├── __init__.py # Package initialization
│ ├── cli.py # Command line interface
│ ├── eclass_build_mapping.py # ECLASS build mapping
│ ├── isa95_build_mapping.py # ISA95 build mapping
│ ├── model.py # Core models for DPP layers
│ ├── part_class.py # Universal part class set
│ ├── schema_base.py # Base schema for DPP layers
│ ├── schema_registry.py # Schema registry
│ └── utils.py # Any helper functions
├── tests/
│ ├── test_mappers.py # Test mappers
│ ├── test_model.py # Test models
│ ├── test_part_class.py # Test part classes
│ ├── test_registry_extended.py # Test registry extended
│ ├── test_schema_registry.py # Test schema registry
│ └── test_schema_registry_second.py # Test schema registry second
├── .gitignore # Git ignore
├── .gitattributes # Git attributes
├── coffee_machine.json # Coffee machine DPP
├── eclass_part_class_mapping.yaml # ECLASS part class mapping
├── generate_dpp_json.py # Generate Coffee Machine DPP JSON
├── isa95_part_class_mapping.yaml # ISA95 part class mapping
├── LICENSE.txt # License
├── package.json # Package configuration
├── PRD_DPP.md # Product requirements document
├── pyproject.toml # Project configuration
├── README.md # README
└── usage.py # Usage example
Requirements
- Python 3.7+
- No external dependencies (uses Python dataclasses and standard library)
Installation
From PyPI
pip install remake_dpp
From Source
git clone git@github.com:nmis-group/remake_dpp.git
cd remake_dpp
pip install .
Usage Example
We have created a simple python file to showcase the usage.
cd remake_dpp
# 1. Generate a sample DPP JSON file (using helper script or usage_test logic)
python generate_dpp_json.py
# 2. Run the main usage script with input file and target schema
python usage.py coffee_machine.json ECLASS
# python usage.py coffee_machine.json ISA-95
Quick Start Steps
- Install with
pipor from source. - Import model layers and part classes.
- Create instances and assemble your passport.
License
Distributed under the MIT License. See LICENSE.txt for details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file remake_dpp-0.2.2.tar.gz.
File metadata
- Download URL: remake_dpp-0.2.2.tar.gz
- Upload date:
- Size: 35.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d3f38ba29310f4f64f254dfce016d565af447c2d3e5e5a0a75784549c8e56e8
|
|
| MD5 |
0f84407df0fc5bcf48b09cb9d7df83e8
|
|
| BLAKE2b-256 |
3a1a7fbb4a62ba94e2cd3db9627e19604acad048e4982689d4f298f83229f7c9
|
Provenance
The following attestation bundles were made for remake_dpp-0.2.2.tar.gz:
Publisher:
publish.yml on nmis-group/remake_dpp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
remake_dpp-0.2.2.tar.gz -
Subject digest:
1d3f38ba29310f4f64f254dfce016d565af447c2d3e5e5a0a75784549c8e56e8 - Sigstore transparency entry: 957892350
- Sigstore integration time:
-
Permalink:
nmis-group/remake_dpp@898b5d3f7defc2cdaa8071239e7dff4cead21d95 -
Branch / Tag:
refs/tags/v0.2.2 - Owner: https://github.com/nmis-group
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@898b5d3f7defc2cdaa8071239e7dff4cead21d95 -
Trigger Event:
push
-
Statement type:
File details
Details for the file remake_dpp-0.2.2-py3-none-any.whl.
File metadata
- Download URL: remake_dpp-0.2.2-py3-none-any.whl
- Upload date:
- Size: 30.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7718fc4940ac87f85499fa7173982bed8de8972f9848f4155cf54d38b2576a10
|
|
| MD5 |
02a4278c1c75ce540786c33640240e21
|
|
| BLAKE2b-256 |
a2de3bb50534fa7ad54fee094b53a867dcb798213d73158b42ea66d73c6f3085
|
Provenance
The following attestation bundles were made for remake_dpp-0.2.2-py3-none-any.whl:
Publisher:
publish.yml on nmis-group/remake_dpp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
remake_dpp-0.2.2-py3-none-any.whl -
Subject digest:
7718fc4940ac87f85499fa7173982bed8de8972f9848f4155cf54d38b2576a10 - Sigstore transparency entry: 957892372
- Sigstore integration time:
-
Permalink:
nmis-group/remake_dpp@898b5d3f7defc2cdaa8071239e7dff4cead21d95 -
Branch / Tag:
refs/tags/v0.2.2 - Owner: https://github.com/nmis-group
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@898b5d3f7defc2cdaa8071239e7dff4cead21d95 -
Trigger Event:
push
-
Statement type: