Skip to main content

IPPC Data Model

PyPI version Python License: AGPL v3

Pydantic v2 datový model pro systém Integrovaného povolení a kontroly znečišťování (IPPC) dle zákona č. 76/2002 Sb. a směrnice IED (2010/75/EU).

Vyvinuto společností SYSNET s.r.o.


Co projekt řeší

IPPC Data Model je Python knihovna poskytující typovaný, validovaný datový model pro informační systém IPPC. Pokrývá celý životní cyklus řízení – od žádosti o integrované povolení přes kontroly a zprávy o plnění až po ukončení provozu nebo sloučení zařízení.

Slouží jako sdílená datová vrstva pro aplikace (FastAPI, ETL pipeline, CLI nástroje) komunikující s registrem IPPC.


Instalace

pip install ippc-model

Rychlý start

from ippc_model import (
    ContainerType, EquipmentType, DocumentType, ActivityType, ExpertType,
    IppcDocCodeEnum, IppcStatusEnum,
)
from sysnet_pyutils.models.general import MetadataType

# Vytvoření kontejneru řízení s primárním identifikátorem
container = ContainerType(
    name="Výroba obuvnických podešví (PUR-PLASTICS s.r.o.)",
    metadata=MetadataType(uuid="550e8400-e29b-41d4-a716-446655440000"),
)
print(container.metadata.uuid)   # → '550e8400-e29b-41d4-a716-446655440000'

# Kódy typů dokumentů
print(IppcDocCodeEnum.REQUEST.value)    # → 'request'
print(IppcDocCodeEnum.DECISION.value)   # → 'decision'
print(IppcDocCodeEnum.MERGED.value)     # → 'merged'

# Serializace / deserializace (Pydantic v2)
data = container.model_dump()
container2 = ContainerType.model_validate(data)

Závislosti

Balíček Verze Účel
pydantic ~2.11.7 Validace dat, typový systém
sysnet-pyutils >=1.7.2 Sdílené základní typy SYSNET

Přehled modulů

Modul Hlavní třídy Popis
ippc_common IppcDocCodeEnum, IppcStatusEnum, PermittingType, InspectionType, … Výčty, sdílené typy, konstanty, helper funkce
ippc_activity ActivityType, ActivityListType, ActivityViewItemType Kategorie zařízení (příloha č. 1 zák. 76/2002)
ippc_equipment EquipmentType, EquipmentMigration, EquipmentReporting Zařízení podléhající režimu IPPC
ippc_container ContainerType, ContainerTypeLight, ContainerListType Kontejnery dokumentů – jedno řízení
ippc_document DocumentType, DocumentEntryType, DocumentListType Dokumenty řízení
ippc_expert ExpertType, ExpertTypeBase, ExpertListType Odborně způsobilé osoby (OZO)

Všechny veřejné symboly jsou dostupné přímo z balíčku:

from ippc_model import ContainerType, IppcDocCodeEnum, PROCEEDING_TRANSITION

Konvence identifikátorů

Každý hlavní datový objekt ukládá primární identifikátor do metadata.uuid:

obj.metadata.uuid  # str (UUID4) – platí pro všechny hlavní typy

Životní cyklus řízení

Knihovna pokrývá všechny fáze IPPC řízení:

Fáze Kódy dokumentů (IppcDocCodeEnum)
Zahájení request
Průběh summarize, statement, statement-cenia, decision, re-decision
Odvolání appeal, appdec, appeal-result
Změny IP change, minorchange, exceptions, exemption
Kontroly a zprávy report-check, report-review, report-conditions
Provoz validate, interrupted, resumed, additional
Ukončení terminated, closed, canceled, merged, xchg-company

Instalace pro vývoj

git clone https://github.com/SYSNET-CZ/models.git
cd models/ippc

python -m venv .venv
.venv\Scripts\activate       # Windows
# source .venv/bin/activate  # Linux / macOS

pip install -e ".[dev]"

Spuštění testů:

# Windows
.venv\Scripts\python.exe -m pytest tests/ -v

# Linux / macOS
.venv/bin/python -m pytest tests/ -v

Licence

GNU Affero General Public License v3 – viz LICENSE.

© SYSNET s.r.o. | https://www.sysnet.cz

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ippc_model-1.5.3.tar.gz (58.5 kB view details)

Uploaded Source

Built Distribution

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

ippc_model-1.5.3-py3-none-any.whl (40.6 kB view details)

Uploaded Python 3

File details

Details for the file ippc_model-1.5.3.tar.gz.

File metadata

  • Download URL: ippc_model-1.5.3.tar.gz
  • Upload date:
  • Size: 58.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.15

File hashes

Hashes for ippc_model-1.5.3.tar.gz
Algorithm Hash digest
SHA256 5e7993c956de2bed160798d7981c7ab6e254fe19a83eb5b013f22f995165e33b
MD5 0d6412af02496be84ab5ac8aa14179e1
BLAKE2b-256 a00e3aac204760c6f358cdee71d3ac8780ebe4e15253590277988b343f835363

See more details on using hashes here.

File details

Details for the file ippc_model-1.5.3-py3-none-any.whl.

File metadata

  • Download URL: ippc_model-1.5.3-py3-none-any.whl
  • Upload date:
  • Size: 40.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.15

File hashes

Hashes for ippc_model-1.5.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7ac790cd266b7033b50574d7c234526af358d6fc88d52da4ea5e796abe95e160
MD5 d2ce8283c03934c497c271149b6f3c93
BLAKE2b-256 da9917fa8def69b0c1b72ba4999d91d4d7a8a28925435c34ea08fdb42b70a412

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.5.3 This release

2 files

1.5.2

2 files

1.5.1

2 files

1.5.0

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 files

1.3.0

2 files

1.2.0

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page