Gå til innholdet

Datamodell


EntitetNøkkelfeltRolle
Propertyaddress, area_m2, build_yearToppnivå — alt tilhører en eiendom
Floorfloor_number, nameEtasje under Property
Roomname, area_m2, ceiling_height_cm, room_typeRom med dimensjoner og funksjon
OutdoorSpacename, space_type, area_m2Hage, terrasse, innkjørsel
SupportSpacename, space_typeGarasje, bod, teknisk rom
EntitetNøkkelfeltRolle
BuildingSystemsystem_type (varme/ventilasjon/vann/…), statusSystemkategori
Equipmentname, model, manufacturer, install_yearKonkret utstyr
Manualtitle, doc_url, content_chunksManualinnhold for AI-søk
EntitetNøkkelfeltRolle
Issuetitle, tg_code (TG1/TG2/TG3), severity, statusTeknisk avvik
SafetyItemdescription, risk_level, affects_children, statusSikkerhetsforhold
Measurementmeasurement_type, value, unit, measured_atRadon, fukt, CO2
EntitetNøkkelfeltRolle
ImprovementIdeatitle, motivation, status, cost_min_nok, cost_max_nokForbedringsønske
ImprovementDependencyfrom_idea_id, to_idea_id, dependency_typeStrukturert avhengighet
Tasktitle, status, execution_type (diy/professional), due_dateKonkret oppgave
MaintenancePlanseason, itemsSesongbasert sjekkpunkt
EntitetNøkkelfeltRolle
Observationdescription, category, observed_at, source_typeErfaring fra daglig bruk
SeasonalNoteseason, year, summarySesongoppsummering
DecisionNotetitle, decision, rationale, decided_atDokumentert beslutning
EntitetNøkkelfeltRolle
DesignDirectiondomain (interior/exterior/garden), style_words[], avoid[]Stilretning
InteriorAssetname, category, status (owned/considering/wishlist), style_tags[]Møbel/dekor
LayoutIntentroom_id, functional_zones[], traffic_flowRomintensjon
EntitetNøkkelfeltRolle
Documenttitle, doc_type, file_url, ingestion_statusPDF-er og dokumenter
Photofile_url, caption, taken_at, entity_type, entity_idBilder koblet til entiteter
ExtractionJobdocument_id, status, facts_countPipeline-sporing for PDF-onboarding
ExtractedFactfield_path, suggested_value, confidence, user_actionAI-forslag med brukerhandling

Entiteter som Issue, Observation, Task og SafetyItem kan knyttes til ulike stedstyper (Room, OutdoorSpace, BuildingSystem). Dette løses med to-kolonne polymorfisk referanse:

location_ref_type TEXT -- 'room' | 'outdoor_space' | 'building_system' | 'support_space'
location_ref_id UUID -- ID til den aktuelle entiteten

Svakhet: ingen databasemessig fremmednøkkel-integritet. Kompenseres med applikasjonsvalidering i service-laget.


Relevante entiteter får en embedding vector(1536) kolonne for semantisk søk:

  • Room.embedding
  • Issue.embedding
  • Observation.embedding
  • DesignDirection.embedding
  • Manual-chunks

Embeddings genereres ved opprettelse og oppdatering via text-embedding-3-small (OpenAI). Søk skjer med cosine similarity i pgvector.


Se entities.md for fullstendig feltdefinisjon per entitet.