Quantity
Quantity (wielkość) to typ danych oznaczający wartość numeryczną z jednostką niepieniężną – ilość sztuk, waga, czas trwania, powierzchnia itd. Wzorowany na FHIR Quantity: wartość (value) plus jednostka w formie tekstowej (unit) lub kodowanej (system + code).
Rozdzielenie od Money: Kwoty w walucie (PLN, EUR) modeluje się typem Money. Quantity służy wyłącznie do miar niepieniężnych (szt., kg, m, h, m² itd.).
1. Zakres i zastosowanie
Quantity służy do:
- Ilości – ilość sztuk, waga, objętość – unit lub system + code (np. UCUM: szt, kg, m).
- Czasu trwania – godziny, dni – unit (h, d) lub UCUM.
- Wartości mierzalnych – powierzchnia, długość itd. – rozszerzalność przez system (URI) i code.
Reguła: value jest wymagane; zalecane podanie jednostki – unit (tekst) lub system + code (np. UCUM). Nie używa się Quantity z jednostką walutową (PLN, EUR) – do kwot pieniężnych stosuje się Money.
2. Zawartość (struktura)
| Nazwa | Kard. | Typ | Opis |
|---|---|---|---|
| value | 0..1 | decimal | Wartość numeryczna (wymagana w typowych użyciach) |
| comparator | 0..1 | code | Operator porównania: |
| unit | 0..1 | string | Jednostka w formie tekstowej (np. „szt.”, „kg”) – do wyświetlania |
| system | 0..1 | uri | System kodów jednostki (np. UCUM dla miar – nie dla walut) |
| code | 0..1 | code | Kod jednostki w danym systemie (np. szt, kg, m, h) |
Reguła: przynajmniej value; dla ilości i miar zalecane system + code (lub unit). Dla walut używać Money.
3. Przykłady systemów (URI)
- Jednostki miary (UCUM):
http://unitsofmeasure.org– szt, kg, m, h, m² itd. - Własne:
https://api-erp.kamsoft.pl/ns/quantity-unit– jednostki specyficzne (np. opakowanie, paleta).
Nie używa się Quantity z systemem ISO 4217 (waluty) – zamiast tego Money.
4. Odniesienia
- FHIR R5 – Quantity
- Money (kwoty pieniężne), DocumentPosition (valueQuantity – ilości), ProductDefinition, Attribute