ProductDefinition
ProductDefinition (definicja produktu) to zasób reprezentujący pozycję w katalogu – wzorzec towaru, usługi, szkolenia (HR) itd., bez danych konkretnej instancji (seria, partia, data ważności). Definicja zawiera identyfikatory katalogowe, nazwę (z DomainResource), typ, status oraz attribute[] (Attribute: jednostka miary, stawka VAT, producent, grupa towarowa itd.). Konkretna instancja (partia, numer seryjny, data ważności) to Product z referencją do ProductDefinition. W DocumentPosition valueReference może wskazywać na ProductDefinition (gdy pozycja odnosi się do pozycji katalogu) lub na Product (gdy odnosi się do konkretnej instancji). Wzorowany na UBL 2.3 (CatalogueLine / Item), SAP (Material master), FHIR (Medication – definicja).
Rozszerza DomainResource.
1. Zakres i zastosowanie
ProductDefinition to poziom „katalogu”: co to za produkt, jakie ma cechy wspólne dla wszystkich instancji. Nie ma tu numeru partii, numeru seryjnego ani daty ważności – te są w Product (instancja).
- Towar (good): type=good, atrybuty np. unit-of-measure (szt), vat-rate, producer, product-group.
- Usługa (service): type=service, atrybuty np. unit-of-measure (usł., godz.), vat-rate.
- Szkolenie (HR): type=training, atrybuty np. unit-of-measure (godz., os.), duration, category.
W dokumentach (zamówienie, faktura, PZ/WZ) pozycja może referować ProductDefinition (wystarczy pozycja katalogu) albo Product (wymagana konkretna partia/seria, data ważności).
2. Zawartość (struktura)
Oprócz elementów DomainResource (id, meta, text, comment, category, status, type, contained, attribute):
| Nazwa | Kard. | Typ | Opis |
|---|---|---|---|
| identifier | 0..* | Identifier | Identyfikatory katalogowe (symbol wewnętrzny, GTIN, EAN, kod dostawcy – rodzaj w type) |
| name | 0..1 | string | Nazwa definicji produktu (np. „Produkt A”, „Szkolenie BHP”) |
| attribute | 0..* | Attribute | Cechy definicji (jednostka miary, stawka VAT, kolor, czas trwania, producent, grupa itd.); struktura w Attribute |
3. Przykłady
- Product-Examples – towar materialny, usługa serwisowa, szkolenie (ProductDefinition + Product).
4. Odniesienia
- DomainResource, Product (instancja definicji), Attribute (attribute[]), DocumentPosition (valueReference → ProductDefinition lub Product)
- Identifier, CodeableConcept, Reference