The canonical identity and physical description of a destination. Carries every name variant, the full IMDF location hierarchy, coordinates, address, contact details, and access rules — the single definition a place holds across every system that consumes it.
The place object is the canonical source for everything a downstream system needs to identify, label, locate, and reach a destination. It carries every name variant a place holds across different audiences — patients, clinicians, voices, search engines — ensuring each channel renders the right form without guesswork or adaptation.
The place object is a root-level sibling of wim, topology, status, accessibility, and channels. Every WIM record of record_type: destination must include exactly one place object. The place.id is separate from wim.record_id — it identifies the physical place, not the record describing it.
Location hierarchy (campus → site → building → level → unit) follows the IMDF venue structure. Coordinates use WGS84 (EPSG:4326) as the default CRS. Language tags conform to BCP 47. Country codes use ISO 3166-1 alpha-2. Opening hours use the OSM opening_hours schema.
Globally unique, immutable identifier for this physical place. Unlike wim.record_id (which identifies the WIM document), place.id identifies the underlying physical entity. It persists across record versions, renames, and department relocations — enabling long-term data linkage in external systems.
Format: RFC 4122 UUID v4 — Immutable after creation
"id": "place-cardiology-a02-145"Top-level classification of the physical entity. Determines which channel renderers apply, which topology rules are enforced, and how the place appears in navigational hierarchies and wayfinding outputs.
Functional subclassification within a type. Enables domain-specific rendering — for example, kiosk interfaces render different icons and routing urgency for emergency vs. retail. Used by accessibility modules to infer appropriate route profiles.
Operational category of the place, orthogonal to type/subtype. Primarily used for access control logic, patient journey grouping, and analytics segmentation. A clinic may be outpatient or inpatient; a corridor may be public or restricted.
The canonical name of the place — the single authoritative name used in wayfinding outputs when no more specific variant applies. This is the name that appears on physical signs and is used as the fallback for all channel rendering. It must be unique within the site namespace.
Max: 120 chars — Unique within: site namespace
"primary": "Cardiology Clinic"The name in the local/native language of the site, when different from name.primary. Used by bilingual or multilingual sign systems and voice AI responses where the local language name carries administrative or legal significance.
Abbreviated form of the name for constrained display contexts: narrow sign panels, kiosk thumbnail cards, mobile list views. Should be immediately recognisable as referring to the same place. If absent, channels may truncate name.primary.
Max: 32 chars
"short": "Cardiology"The full legal or administrative name of the department or place as it appears in official documents, procurement contracts, or regulatory filings. May include donor names, faculty titles, or official designations that would be too verbose for signage.
"official": "Department of Cardiology — Outpatient Services"The name used in clinical information systems (EHR/EPD), scheduling software, and internal staff communication. May differ significantly from the public-facing name — used for reconciliation between WIM records and clinical system lookups.
"clinical": "CARDIOLOGIE-POLI-A"A plain-language, patient-facing variant of the name, optimised for public comprehension rather than clinical precision. Used on patient-facing portals, appointment letters, and public kiosk interfaces where avoiding medical jargon is a priority.
"public": "Heart Clinic"The name optimised for natural language rendering in voice AI responses, TTS systems, and audio guides. Written as it should be spoken — including articles ("the"), prepositions, and phrasing that sounds natural in a sentence rather than on a sign panel.
"voice_readable": "the Cardiology Clinic"Phonetic pronunciation guide for TTS systems and audio wayfinding. Particularly important for clinical department names, donor-named facilities, or foreign-language place names that standard TTS engines consistently mispronounce. Expressed in informal phonetic or IPA notation.
Formats accepted: IPA, respelling (e.g. kahr-dee-OL-uh-jee), SSML phoneme tag value
"pronunciation": "kahr-dee-OL-uh-jee"Array of informal names, common abbreviations, and alternate labels that users or staff might use to refer to this place. Used to broaden search matching and voice AI intent recognition — a patient saying "Cardio" or "heart place" should resolve to the same record.
Max: 20 entries — each max 80 chars
"aliases": ["Cardio", "Heart Clinic", "Cardiology Outpatient"]Semantically equivalent names in other languages or clinical vocabularies — distinct from aliases in that synonyms carry equivalent meaning rather than just informal recognition. Used by multilingual search and cross-lingual AI agents.
"synonyms": ["Hartpolikliniek", "Cardiologie", "Cardiology OPD"]Previous names this place has held that are no longer in use. Retained to support legacy system lookups, printed material that has not yet been updated, and older appointment letters patients may still hold. Deprecated names resolve to the current record but are not displayed in new outputs.
"deprecated_names": ["Cardiac Outpatient Unit", "Cardiology Department A"]The primary language of all text fields within this place object. Inherits from wim.language_default unless explicitly overridden here. Channels use this to select the correct localised output template and TTS voice model.
Format: ISO 639-1 + optional region (e.g. "en-GB", "nl-NL", "de-AT")
"default": "en-GB"Array of BCP 47 language tags for which translated name variants and channel outputs are available in this record. Consumers use this to know which languages they can request without falling back to language.default. Does not guarantee all name fields are populated for each language.
Human-readable name of the campus or top-level complex this place belongs to. The outermost geographic grouping, used in wayfinding outputs when a visitor may be arriving from outside the campus boundary. Maps to the IMDF venue concept at the macro level.
The named site or institutional location. In most deployments this is the name of the hospital, university, or facility as a whole. Used to scope the WIM record to a specific operational entity, particularly important when a tenant operates multiple sites.
"site": "UMC Utrecht"Named sub-site or venue within a campus, when the campus contains multiple distinct venues (e.g. a conference centre, a sports hall, a separate outpatient building). Maps directly to the IMDF venue feature type.
The named building this place is within. Used in all navigational instructions and as the primary structural unit for indoor mapping. Corresponds to the IMDF building feature. A place must belong to exactly one building.
Machine-readable code for the building as used in the facility management system or CAFM. Enables programmatic cross-referencing between WIM records and building asset databases without relying on name-matching.
Convention: uppercase, hyphens — Max: 16 chars
"building_code": "BLD-A"Named wing or section of a building. Used in hospitals and large campus buildings where a wing designation (North Wing, East Wing) is part of the standard wayfinding vocabulary and appears on physical signs.
"wing": "North"Functional or operational zone within a building or floor (e.g. Outpatient Zone 2, Red Zone, Secure Zone). Zones group destinations for capacity management, access control, and colour-coded wayfinding systems.
"zone": "Outpatient Zone 2"Organisational department this place belongs to. Used for administrative grouping, update workflow routing (department heads receive change notifications for their places), and analytics segmentation by clinical department.
"department": "Cardiology"Human-readable floor designation as it appears in wayfinding ("2", "Ground", "B1", "Mezzanine"). May differ from the numeric level field — in many facilities, the public-facing floor label diverges from the internal technical level numbering.
Zero-padded numeric level identifier as used in the IMDF data model and indoor mapping systems. This is the technical level reference that topology and coordinate data is anchored to. Consumers use this to resolve the correct floor tile in indoor maps.
Format: Zero-padded integer string — IMDF: maps to level.ordinal
Descriptive name for the level, used in voice AI responses and audio wayfinding where saying "Level 02" is less natural than "the Second Floor". Particularly useful in facilities where levels have named themes or clinical designations.
"level_name": "Second Floor"The IMDF unit identifier — the atomic spatial unit this place occupies. In most deployments this is the room or space ID from the indoor mapping data. This field is the primary join key between WIM records and IMDF geometry data in mapping systems.
Convention: BUILDING-LEVEL-SEQUENCE (e.g. A-02-145)
"unit": "A-02-145"Physical room number as marked on the door or in the estate management system. May differ from unit — room numbers often follow a different administrative convention than the IMDF unit schema.
Suite identifier for places that occupy a named suite of rooms rather than a single room. Common in outpatient facilities, research clusters, and multi-room clinical departments. If set, routing should direct visitors to the suite entrance, not a specific room.
"suite": "Cardiac Suite B"Reference to the primary door or opening for this place, as used in the topology graph. Corresponds to an IMDF opening feature ID. Routing instructions terminate at this door identifier — used by indoor navigation to confirm arrival.
Identifier for a specific desk or workstation within a larger space, used when the destination is a named service point rather than a whole room. Enables fine-grained routing for banks, service desks, and information points within open-plan areas.
"desk": "info-desk-lobby-a"Counter or service window identifier for places such as pharmacies, registration points, and cashier stations. Used to route visitors to the correct queue or counter number in facilities that operate numbered counter systems.
"counter": "pharmacy-counter-3"Reference to the associated waiting area for this place. When a patient arrives at a department, they are typically directed to a waiting area, not the room itself. This field enables routing outputs to include "proceed to Waiting Area B" as a final step before the appointment.
"waiting_area": "waiting-a02-west"Reference to the reception or check-in desk associated with this place. Separating the reception area from the clinical destination enables routing outputs that direct patients to check in first, then wait — matching the actual patient flow at most facilities.
"reception_area": "reception-a02-cardiology"WGS84 latitude of the place's representative point (centroid of the IMDF unit, or the door threshold if available). Required for all mapping channel outputs, geocoding services, and any consumer that needs to plot or cluster destinations on a map.
Range: -90.0 to +90.0 — Precision: min 6 decimal places (~11 cm)
"lat": 52.085412WGS84 longitude of the place's representative point. Combined with coordinates.lat and level, this provides a fully qualified 3D indoor location for mapping and AI agent spatial reasoning.
Range: -180.0 to +180.0 — Precision: min 6 decimal places
"lon": 5.122063Altitude above mean sea level in metres. Used for 3D world model integrations (World Labs / Marble), multi-floor outdoor facilities, and any consumer that reasons about vertical relationships between destinations.
Unit: metres above mean sea level — Datum: WGS84 ellipsoid
"altitude": 8.5Coordinate Reference System identifier for the coordinate values in this record. Defaults to EPSG:4326 (WGS84) if omitted. Explicitly providing this field is strongly recommended when coordinates use a local CRS (e.g. Dutch RD New / EPSG:28992) or a site-local coordinate system.
Default: "EPSG:4326" — Format: EPSG authority code
"crs": "EPSG:4326"Street address of the building this place is within — the postal address a visitor would use when navigating from outside, or that appears on appointment letters. For places within large campuses, this is typically the main campus postal address.
"street": "Heidelberglaan 100"Postal code in the format of the country's postal system. Used by external navigation systems (Google Maps, Apple Maps) for coarse-level location matching before the WIM record takes over for indoor precision.
"postcode": "3584 CX"City or municipality name. Used in full address rendering, search indexing, and any external mapping handoff where the city is a required field. Should match the official city name used in postal addressing.
"city": "Utrecht"ISO 3166-1 alpha-2 two-letter country code. Required by international navigation APIs and for any WIM deployment spanning multiple countries. Enables country-specific formatting of phone numbers, addresses, and accessibility standards.
Format: ISO 3166-1 alpha-2 (2-letter uppercase)
"country": "NL"Structured opening hours expression using the OpenStreetMap opening_hours schema — the most widely implemented machine-readable hours format, supported by Google, Apple Maps, and most routing APIs. Live closure and temporary exceptions are handled separately by the status object, which overrides this field in real time.
Format: OSM opening_hours (RFC 5545-compatible subset) — PH = Public Holiday
"opening_hours": "Mo-Fr 08:00-17:00; PH off"Direct phone number for this place in E.164 international format. Used in voice AI responses ("You can call them on..."), kiosk contact cards, and digital signage. For clinical departments, this should be the direct reception number, not the main hospital switchboard.
Format: E.164 (+CountryCodeNumber, no spaces)
"phone": "+31887557303"Contact email address for this place. Included in digital channel outputs for appointment queries and general contact. Should be a monitored departmental address, not an individual staff member's inbox.
"email": "cardiology@umcutrecht.nl"Canonical HTTPS URL of the department's or place's web presence. Used in kiosk and digital signage outputs for QR code generation and "Learn more" links. Should point directly to the department page, not the institution's homepage.
"website": "https://www.umcutrecht.nl/cardiology"Whether access to this place requires a prior appointment. When true, channel outputs include an appointment notice alongside routing instructions — preventing walk-in visitors from being directed to a closed outpatient reception.
Whether this place is publicly accessible without special credentials, a staff ID, or a specific appointment. Controls whether the place appears in public-facing wayfinding outputs at all. Places where public_access: false are still indexed in the WIM but suppressed from public channel rendering.
Marks this place as accessible to authorised staff only. When true, the place is entirely excluded from patient-facing and public channel outputs, and only returned via authenticated staff-facing API queries. Typically used for staff rooms, service corridors, and clinical back-of-house areas.
Named security or access zone this place belongs to — used in facilities with layered access control such as airports (airside/landside boundary), hospitals (clean/sterile zones), and government buildings. Channel outputs for restricted zones include an appropriate access-control notice and may suppress routing steps that require clearance the visitor doesn't hold.
Examples: "airside", "sterile-zone", "level-3-clearance", "controlled-drugs"
"security_zone": nullplace object — exampleA fully populated Place Definition object for the Cardiology Clinic. Required fields always present; optional fields shown with representative values.