semvec/pypi-packages huggingface dataset:
peh-model 0.4.0
Python package for the PEH data model.
License: MIT
Requires Python: >=3.10

# Personal Exposure and Health (or PEH) Data Model

## Introduction:
The PEH data model is the result of consolidation and harmonisation efforts in the Human Biomonitoring research field as well as an initiative to broaden the scope and support the inclusion of additional, relevant sources of information. Examples are project contexts and data from exposure related domains, such as environmental and geospatial observations.

The [PEH data model](https://github.com/eu-parc/parco-hbm/tree/main/linkml/schema) is defined using the [linkml](https://linkml.io/) modeling language.

## The data model and its purpose
The aim of this data model is to provide a domain specific structure for the data and metadata involved in typical human biomonitoring and personal exposure research projects, a terminology that supports expressing and annotating the (meta)data using harmonised vocabularies and a simple, more generic abstraction layer (at the "observed data records" level) that facilitates broader, cross-domain interoperability efforts.

In addition to adding semantic context and meaning to projects, studies and datasets that leverage it, the data model provides a stable ground for the development of supporting tools.

## Citing the PEH model
mixed-fraction 0.1.0
Mixed fraction representation with arithmetic operations
License: MIT
Requires Python: >=3.10

# mixed-fraction

A Python library for working with **mixed fractions** (integer + proper fraction)
with clean ASCII-style formatting and operator support.

## Features

- Mixed fraction representation (integer + fraction)
- Clean aligned ASCII output
- Supports addition, subtraction, multiplication, division
- Built on Python's `fractions.Fraction`
- Fully tested with `pytest`

## Installation

```bash
pip install mixed-fraction

For local development:
pip install -e .

    Usage

from mixed_fraction import MixedFraction

a = MixedFraction(20, 3)
b = MixedFraction(5, 3)

print(a + b)

    Output:

  1
8 —
  3

    Examples

print(MixedFraction(7, 2))

  1
3 —
  2

print(MixedFraction(88, 7))

   4
12 —
   7

print(MixedFraction(-25, 4))

   1
-6 —
   4

    Error Handling

 Invalid divisor:

MixedFraction(5, 0)

ZeroDivisionError: Divisor cannot be zero.

 Invalid parameter type:

MixedFraction("5", 2)

TypeError: dividend must be an integer

 Invalid operation:

MixedFraction(3, 2) + 5

TypeError: Unsupported operand type(s) for +: 'MixedFraction' and 'int'
    
    Testing

All tests are written using pytest.

Run tests from the project root:

 pytest

 Expected output:

======================== 5 passed in 0.05s ========================
 
 Project Structure

mixed_fraction/
│
├── mixed_fraction/
│   ├── __init__.py
│   └── mixed_fraction.py
│
├── tests/
│   └── test_mixed_fraction.py
│
├── pyproject.toml
├── README.md
└── LICENSE

## License

This project is licensed under the MIT License.  
See the [LICENSE](LICENSE) file for details.