Skip to main content

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

License Stars GitHub open issues GitHub open pull requests Repo Size Contributors

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 nmis_dpp_test

From Source

git clone https://github.com/nmis-group/nmis_dpp_test.git
cd nmis_dpp_test  
pip install .

Usage Example

We have created a simple python file to showcase the usage.

cd nmis_dpp_test

# 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

  1. Install with pip or from source.
  2. Import model layers and part classes.
  3. 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

remake_dpp-0.2.1.tar.gz (35.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

remake_dpp-0.2.1-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file remake_dpp-0.2.1.tar.gz.

File metadata

  • Download URL: remake_dpp-0.2.1.tar.gz
  • Upload date:
  • Size: 35.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for remake_dpp-0.2.1.tar.gz
Algorithm Hash digest
SHA256 8094719aa13933b4d744561313c4c82ab88c73bb018dcd0254fc8717d1840864
MD5 c1b2412e47f4e92bc817b7842eb085af
BLAKE2b-256 228ee6dd279de79464bfdb48fec21d2add8a6994499982c0ccf203ce4da05740

See more details on using hashes here.

Provenance

The following attestation bundles were made for remake_dpp-0.2.1.tar.gz:

Publisher: publish.yml on nmis-group/remake_dpp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file remake_dpp-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: remake_dpp-0.2.1-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

Hashes for remake_dpp-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ec872f2426e8bdf2fc164cbd2516c6eeb91d5680298769c1f64e54b4d02ddd2d
MD5 972ce4be7a44b3fce3e06fa390d5f459
BLAKE2b-256 3e2665e7a70081aea3837bd10980d9d85a79d7edf912365ce68a89e1a9d196f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for remake_dpp-0.2.1-py3-none-any.whl:

Publisher: publish.yml on nmis-group/remake_dpp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page