I have already made a structure like this:
Group Home "My home" <house> ["Building"]
Group AU "Automatik" <settings> (Home) ["Automatik"]
Group CE "Keller" <cellar> (Home) ["Basement"]
Group OU "Draußen" <garden> (Home) ["Outdoor"]
Group GF "Erdgeschoss" <groundfloor> (Home) ["GroundFloor"]
Group FF "Erster Stock" <firstfloor> (Home) ["FirstFloor"]
Group AT "Dachgeschoss" <attic> (Home) ["Attic"]
Group NW "Nordflügel" <house> (Home) ["North Wing"]
Group WW "Westflügel" <house> (Home) ["West Wing"]
Group SW "Südflügel" <house> (Home) ["South Wing"]
Group EW "Ostflügel" <house> (Home) ["East Wing"]
Group CE_Kitchencellar "Küchenkeller" <cellar> (Home, CE) ["Cellar"]
Group CE_Winecellar "Weinkeller" <cellar> (Home, CE) ["Cellar"]
Group CE_Oilcellar "Ölkeller" <cellar> (Home, CE) ["Cellar"]
Group OU_Entryway "Zufahrt" <returnpipe> (Home, OU) ["Room"]
Group OU_Garden "Garten" <garden> (Home, OU) ["Garden"]
Group OU_SportsField "Sportplatz" <motion-open> (Home, OU) ["SportsField"]
Group OU_GarageCJ "Garage CJ" <garage_detached_selected> (Home, OU) ["Garage"]
Group OU_WestEntry "Eingang West" <frontdoor> (Home, OU) ["WestEntry"]
Group OU_Patio "Innenhof" <terrace> (Home, OU) ["Outside"]
Group GF_Entrance "Eingangsbereich" <frontdoor> (Home, GF) ["Room"]
Group GF_Wardrobe "Garderobe" <wardrobe> (Home, GF) ["Room"]
Group GF_Office "Arbeitszimmer" <office> (Home, GF) ["Room"]
Group GF_Lounge "Salon" <sofa> (Home, GF) ["Room"]
Group GF_Kitchen "Küche" <kitchen> (Home, GF) ["Kitchen"]
Group GF_HWR "Hauswirtschaftsraum" <washingmachine> (Home, GF) ["Room"]
Group GF_Fireplace "Kaminzimmer" <fire> (Home, GF) ["Room"]
Group GF_Library "Bibliothek" <office> (Home, GF) ["Room"]
Group GF_GuestRoom "Gästezimmer" <parents_4_3> (Home, GF) ["Room"]
Group GF_Bathroom "Gästebad" <bath> (Home, GF) ["Bathroom"]
Group FF_Hallway "Korridor" <corridor> (Home, FF) ["Corridor"]
Group FF_MasterBedroom "Schlafzimmer" <bedroom_red> (Home, FF) ["Bedroom"]
Group FF_MasterBathroom "Masterbad" <bath> (Home, GF) ["Bathroom"]
Group FF_GuestRoom "Gästezimmer" <parents_4_3> (Home, FF) ["Room"]
Group FF_Bathroom "Gästebad" <bath> (Home, FF) ["Bathroom"]
Group FF_KidsRoom "Kinderzimmer" <girl_3> (Home, FF) ["Room"]
Group FF_Studio "Atelier" <firstfloor> (Home, FF) ["Room"]
Group AT_Bathroom "Gästebad" <bath> (Home, AT) ["Bathroom"]
Group AT_Studio "Dachstudio" <attic> (Home, AT) ["Room"]
Group NW_Office1 "Büro 1" <office> (Home, NW) ["N01"]
Group NW_Office2 "Büro 2" <office> (Home, NW) ["N02"]
Group NW_Shower "Dusche" <bath> (Home, NW) ["Shower"]
Group NW_Lab "Labor" <line> (Home, NW) ["N03"]
Group NW_Korridor "Korridor" <corridor> (Home, NW)
Group NW_GardenKitchen "Gartenküche" <kitchen> (Home, NW)
Group NW_Heating "Heizungsraum" <gas> (Home, NW) ["Room"]
Group WW_Bathroom "FeWo Badezimmer" <bath> (Home, WW) ["Bathroom"]
Group WW_Livingroom "FeWo Wohnzimmer" <sofa> (Home, WW) ["Room"]
Group WW_Bedroom "FeWo Schlafzimmer" <bedroom_blue> (Home, WW) ["Bedroom"]
Group WW_Korridor "FeWo Korridor" <corridor> (Home, WW) ["Corridor"]
Group WW_Workshop "Gartenwerkstatt" <greenhouse> (Home, WW) ["Gartenwerkstatt"]
Group SW_Studio "Musikstudio" <firstfloor> (Home, SW)
Group SW_Barn "Scheune" <house> (Home, SW) ["Scheune"]
Group SW_GarageMS "Garage MS" <groundfloor> (Home, SW) ["Garage2"]
Group SW_MPR "Mehrzweckraum" <groundfloor> (Home, SW)
Group EW_Storage "Abstellraum" <pantry> (Home, EW)
Group EW_Stable "Pferdestall" <garage_detached> (Home, EW)
Group gSignalstaerke "HM Signal" <qualityofservice> (Home)
Group gWiFiSignal "WiFi Signal" <qualityofservice> (Home)
Group:Switch:OR(ON, OFF) gBatterie "Batteriestände [%d]" <battery> (Home)
Group:Switch:OR(OFF, ON) gNetwork "Offline [%d]" <error> (Home)
Group:Contact:OR(OPEN, CLOSED) gFenster "Offene Fenster [%d]" <window> (Home)
My sitemaps connect groups of items (as things) and items to the respective locations.
What would be the best way to put this into a semantic model ? I am afraid that Openhab 4 or 5 will finally force me to get rid of text files - in addition it takes quite a while to create them, so if the semantic model saves time in the future I am willing to invest preparation time now.