Skip to content

inkind-knowledge-repo

Formal knowledge representation for in-kind donation coordination. Defines the domain schema, category schemas with constraint rules and dependent field maps, process templates, UI fragment bindings, and organisation configuration instances.

URI: https://inkind-at.github.io/inkind-knowledge-repo

Name: inkind-knowledge-repo

Classes

Class Description
Actor A person interacting with the system — volunteer, staff, or manager
AnyValue Current workaround before proper attributes are introduced
Campaign A public-facing appeal grouping related DemandSignals under a shared title, t...
CategoryMixin Abstract mixin base for all category classes except FoodCategory
        AccessoriesCategory Mixin for fashion and personal accessories
        BabyInfantCategory Mixin for baby and infant supply slots and UC rules
        BeddingTextilesCategory Mixin for bedding and textiles slots and UC rules
        BooksCategory Mixin for books and educational materials slots
        ClothingCategory Mixin carrying clothing-specific slots, value maps, and UC rules
        ElectronicsCategory Mixin for electronics slots and UC rules
        FootwearCategory Mixin for footwear slots and UC rules
        FurnitureCategory Mixin for furniture slots, value maps, and UC rules
        HouseholdCategory Mixin for household and kitchen goods slots
        MobilityAidsCategory Mixin for mobility aids and assistive device slots and UC rules
        PersonalCareCategory Mixin for personal care, hygiene, and health product slots and UC rules
        SportsCategory Mixin for sports equipment slots and UC rules
        StationeryCategory Mixin for stationery and office supply slots
        ToysCategory Mixin for toys and games slots and UC rules
DemandSignal A signal representing demand for a category of items
DonationCollection A general-purpose grouping of items with optional recursive parent-child stru...
DonationItem Abstract base for all donation items
        AccessoriesItem Fashion and personal accessories: hats, scarves, gloves, belts, bags, jewelle...
        BabyInfantItem Baby and infant supplies: pushchairs, cots, car seats, infant formula, feedin...
        BeddingTextilesItem Bedding and household textiles: blankets, duvets, mattresses, pillows, sleepi...
        BooksItem Books and educational materials
        ClothingItem Clothing garments: tops, bottoms, outerwear, underwear, nightwear, sportswear
        ElectronicsItem Consumer electronics: phones, tablets, laptops, cameras, audio devices, cable...
        FoodItem Food donation item
        FootwearItem Footwear: shoes, boots, sandals, slippers
        FurnitureItem Structural furniture: chairs, tables, beds, wardrobes, shelving
        HouseholdItem Household and kitchen goods: cookware, crockery, small appliances, cleaning t...
        MobilityAidsItem Mobility aids and assistive devices: wheelchairs, crutches, walking frames, h...
        OtherItem Catch-all for donation items not fitting any other category
        PersonalCareItem Personal care, hygiene, and health products
        SportsItem Sports and fitness equipment
        StationeryItem Stationery and office supplies: pens, notebooks, art supplies, calculators
        ToysItem Toys and games
DonationSource Supply-side abstraction representing the origin of a donation
FoodCategory Mixin for food-specific slots, value maps, and UC rules
GeoPoint Geographic coordinates for public map display of an organisation
NamedThing A generic grouping for any identifiable entity with an id, name, and descript...
OrgConfig Organisation-specific configuration parameters (timezone, locale, etc
ProvenanceRecord A single provenance record capturing one completed process step — who did it,...
SocialOrganisation A social organisation deploying the in-kind platform
StorageLocation A physical storage unit within an organisation's warehouse

Slots

Slot Description
actor_ref UUID reference to the Actor who performed this step
actor_role_ref Actor role captured at step time — role may change after the fact so it is sn...
age_range Age suitability
anonymous_donor_id Opaque UUID token linking items back to an anonymous donor for impact reporti...
assessment_result Category-specific structured assessment result
attribute_completeness Data quality tier set by the fragment engine on sorting completion
attributes Category-specific demand attribute filters
campaign FK to Campaign — set only for campaign signal_type
capacity Maximum item count for this location
category Type-defining slot on DonationItem
category_affinity Preferred item category — informational hint, not enforced by the engine
collection_type Operational type of this collection
completed_at Timestamp when the actor submitted the step
condition_grade Observed wear/quality grade at sorting time
config Inlined organisation configuration object (timezone, locale, etc
context_note Human-readable context note, e
corporate_donor_ref FK reference to CorporateDonor profile — Year 2 feature, nullable in Phase 1
cost_configured The c_s scalar from StepCost at time of execution — the configured cost for t...
created_at Timestamp when the entity was created
created_by FK — the Actor who created this collection
current_occupancy Current item count — derived from items linked to this location
deadline Deadline for fulfilment
demographic Combined age-and-gender demographic suitability of clothing items
description A human-readable description for a thing
device Device type used to complete this step
dimensions Physical dimensions in centimetres, e
donation_source Reference to the DonationSource — privacy boundary between item records and d...
duration_seconds Derived: completed_at - started_at in whole seconds
ends_at Campaign end date and time
experience_level Actor's experience level — informs whether the engine routes to guided or exp...
expiry_date Expiry or best-before date
food_type Primary food type classification
geo_point Geographic coordinates for public map display
has_small_parts Whether the item contains small parts posing a choking hazard
holder FK reference to Beneficiary or SocialOrganisation — used for specific signa...
id A unique identifier for the entity
includes_charger Whether a compatible charger is included
includes_original_accessories Whether standard accessories/components are included (e
includes_original_packaging Whether original retail packaging is present
intact_labels Whether care and composition labels are present and legible
is_active Whether this entity is currently active
is_pair_complete Whether both shoes of the pair are present
is_sealed Whether the item's original packaging/seal is intact
is_set_complete Whether all components of the set are present
is_winter_suitable Whether this item provides meaningful warmth in cold-weather conditions
item_count Count of items directly registered to this collection
item_description Free-text description of the item
label Human-readable label for the entity
language Language of item content (ISO 639-1 code, e
lat Latitude in decimal degrees
lifecycle_state Current lifecycle state of the entity
locale BCP-47 locale code (e
long Longitude in decimal degrees
manufacture_year Year of manufacture
material Primary material composition
name A human-readable name for a thing
notes Optional free-text notes
observations_ref JSON blob of field values submitted by the actor during this step
org Reference to the owning SocialOrganisation
organisation_ref FK to a SocialOrganisation — set for the Share disposal workflow (Phase 2+)
override_flag True if the actor acknowledged a constraint warning (UC or PC) and proceeded ...
override_reason Free-text reason provided by the actor when override_flag is true
packaging_intact Whether the item's original packaging is intact and uncompromised
parent Parent entity reference for hierarchical structures
provenance Who recorded this source, on which device, and when
public_visibility Whether to expose this signal on the public API and Donor Portal
quantity Quantity in natural units (items, cans, bags, kg, etc
quantity_fulfilled Items matched to this signal — derived at runtime
quantity_requested Target quantity
registered_at Timestamp when this demand signal was registered
role The actor's role within the organisation
season Seasonal suitability
shoe_size Shoe size as a string
shoe_size_system Sizing system for the shoe_size value
signal_type Discriminator — standing (permanent interest), campaign (time-bounded), or sp...
signals Inverse relation — DemandSignals with FK to this Campaign (signal_type = camp...
size Size of the clothing item
sorting_notes Free-text notes recorded by the sorter during sorting
source_collection FK — the DonationCollection (arrival type) this item was registered from
source_type Discriminator — anonymous_private is the only type used in Phase 1
sport_type Sport or activity type (free text, e
started_at Timestamp when the step fragment was presented to the actor
starts_at Campaign start date and time
step_type_ref Slug reference to the StepType that was executed (e
storage_requirement Required storage condition
storage_unit FK — set when lifecycle_state transitions to stored
style Style or design description (e
subcategory Subcategory within the item type
target_beneficiary_group Free-text description of the target beneficiary group, e
timezone IANA timezone identifier (e
title Human-readable campaign title, e
total_item_count Derived count — items in this collection plus all descendant collections (com...
updated_at Timestamp when the entity record was last modified
urgency_tier Urgency classification
usage Provenance condition — was the item ever used before donation? Orthogonal to ...

Enumerations

Enumeration Description
AccessoriesDemographicEnum Simplified age-group demographic for accessories
AccessoriesMaterialEnum Primary construction material of a fashion or personal accessory
AccessoriesSubcategoryEnum Fashion and personal accessories subcategories
ActorRoleEnum Valid actor roles within a SocialOrganisation
AttributeCompletenessEnum Data quality tier for a DonationItem's category-specific attributes
BabyEquipmentAssessmentEnum Structured safety assessment for safety-critical baby equipment (pushchairs, ...
BabyInfantSubcategoryEnum Baby and infant supplies subcategories
BeddingAssessmentEnum Structured hygiene and condition assessment for bedding and textiles
BeddingMaterialEnum Primary fibre or fabric composition of a bedding or textile item
BeddingTextilesSubcategoryEnum Bedding and household textiles subcategories
BookAgeRangeEnum Age suitability for books
BooksSubcategoryEnum Books and educational materials subcategories
CampaignLifecycleEnum Lifecycle states for a Campaign
CategoryEnum Canonical registry of all donation item categories
ClothingMaterialEnum Primary fibre or fabric composition of a clothing item
ClothingSizeEnum Clothing sizes covering infant, children's, and adult sizing
ClothingSubcategoryEnum Clothing garment subcategories
CollectionLifecycleEnum Lifecycle states for a DonationCollection
CollectionTypeEnum Operational type of a DonationCollection
ConditionEnum DEPRECATED
DemandSignalLifecycleEnum Lifecycle states for a DemandSignal
DemandSignalTypeEnum Discriminator for the type of demand signal
DemographicEnum Combined age-and-gender demographic for clothing and footwear items
DeviceTypeEnum Device type used to complete a process step
DonationSourceLifecycleEnum Lifecycle states for a DonationSource
DonationSourceTypeEnum Discriminator for the origin type of a donation
ElectronicsAssessmentEnum Structured functional and cosmetic assessment for electronic items
ElectronicsSubcategoryEnum Electronics subcategories
ExperienceLevelEnum Actor experience level for fragment mode selection
FoodSubcategoryEnum Optional subcategory for further food classification within a food_type
FoodTypeEnum Primary food type classification
FootwearMaterialEnum Primary upper-material of a footwear item — the dominant outer fabric or surf...
FootwearSubcategoryEnum Footwear subcategories
FurnitureAssessmentEnum Structured assessment of furniture structural integrity and quality
FurnitureMaterialEnum Primary furniture construction material
FurnitureSubcategoryEnum Furniture subcategories
HouseholdMaterialEnum Primary construction material of a household or kitchen item
HouseholdSubcategoryEnum Household and kitchen goods subcategories aligned with COICOP 05
ItemLifecycleStateEnum Lifecycle states for a DonationItem
ItemUsageEnum Provenance — was the item ever used before donation? Orthogonal to assessment
MobilityAidsSubcategoryEnum Mobility aids and assistive devices subcategories
MobilityAssessmentEnum Structured safety and hygiene assessment for mobility aids and assistive devi...
PersonalCareSubcategoryEnum Personal care, hygiene, and health product subcategories
SeasonEnum Seasonal suitability of a clothing or footwear item
ShoeSizeSystemEnum Shoe size measurement system
SportsProtectiveAssessmentEnum Structured safety assessment for protective gear (helmets, pads, life jackets...
SportsSubcategoryEnum Sports equipment subcategories
StationerySubcategoryEnum Stationery and office supply subcategories
StorageRequirementEnum Required storage condition for a food item
ToyAgeRangeEnum Age suitability for toys
ToysMaterialEnum Primary construction material of a toy or game item
ToysSubcategoryEnum Toys subcategories
UrgencyTierEnum Urgency classification for campaign and specific demand signals
UsedConditionGradeEnum Observed wear/quality grade at sorting time

Types

Type Description
Boolean A binary (true or false) value
Curie a compact URI
Date a date (year, month and day) in an idealized calendar
DateOrDatetime Either a date or a datetime
Datetime The combination of a date and time
Decimal A real number with arbitrary precision that conforms to the xsd:decimal speci...
Double A real number that conforms to the xsd:double specification
Float A real number that conforms to the xsd:float specification
Integer An integer
Jsonpath A string encoding a JSON Path
Jsonpointer A string encoding a JSON Pointer
Ncname Prefix part of CURIE
Nodeidentifier A URI, CURIE or BNODE that represents a node in a model
Objectidentifier A URI or CURIE that represents an object in the model
Sparqlpath A string encoding a SPARQL Property Path
String A character string
Time A time object represents a (local) time of day, independent of any particular...
Uri a complete URI
Uriorcurie a URI or a CURIE

Subsets

Subset Description