Module occupant

Package com.here.mom.feature.indoor.occupant

Features

Parts


Occupant

feature Occupant extends MomFeature, VenueFeature

Module occupant

Occupant is a non-physical entity that occupies a space

Property Type Modifier Description
momType "indoor.Occupant"
id string
bbox BoundingBox optional
geometry MultiPoint Geometry of occupant may refer either to the referencePoint of the space or to the referencePoint of site.

If assigned to multiple spaces the geometry may be a multipoint.
properties OccupantProperties Occupant-specific properties
referencePoint Point optional This is the location of this feature, collapsed to a single point.

This is for any application where an approximate, but deterministic and consistent, location is useful. One

example is deciding where to "anchor" a feature within a tiled map database.

Any Reference to this feature should include this point.
nonSpatialPartitionKey string optional The partition id for a generically partitioned feature.

Generically partitioned features fall into two categories:

1. Features that have a spatial component but may not make sense to partition based on that geometry.

2. Features that don't have a strong spatial component.

How keys will be assigned and what value ranges will be used are not specified.

Examples of generically partitioned features are admin, zone, postal, phonetics, metadata, etc.
Constraint Expression Description
atMostOneDefinedProperty (is-empty(.referencePoint) is-empty(.nonSpatialPartitionKey)) At most one of non-spatial-partition-key and reference-point can be defined.

OccupantAttributes

part OccupantAttributes

Module occupant

Property Type Modifier Description
descriptions LanguageProperty list Occupant descriptions in different languages.

Description is not part of PlaceProperties, but is typically covered in separate properties,

so keep it here, but we should start moving new occupants to PlaceProperties format
relativeAddress string optional location, relativeAddress or shortAddress - some customers provide it for their venue maps - example 'Shop 51',

'B1-28/29/30'
location string optional
tags string list

OccupantProperties

part OccupantProperties extends Common, VenueFeatureProperties

Module occupant

Property Type Modifier Description
@ns:com:here:mom:meta Metadata optional
@ns:com:here:mom:rmob string optional Currently not specified - may be specified by each Feature individually in future
featureType FeatureType optional Deprecated. This property is redundant to MomFeature.momType and should not be used.

MOM clients before 2.6 release had this deprecated property set to required, so

if data needs to be JSON schema validated by clients before 2.6 this property must be

set by the writer.
isoCountryCode Country optional Deprecated. This indicates which country a Feature is in, with a couple caveats.

- It may be unknown ("NONE" is a valid value, in addition to "UNDEFINED" like all MOM enums) simply because the

writer has not tried to figure it out or has otherwise not had the means to do so.

- It may be outright incorrect or a simplification of reality, specifically when a Feature is close to a country

border or in a disputed area (e.g., two or more countries claim the same area).

In all cases, writers and readers of this data should understand that the semantics of this property must be

agreed upon (if it is used at all). The preferred method of relating a Feature to a Country is through a

(direct or transitive) Reference from the Feature to an Admin.
@ns:com:here:mom:delta Branch optional
@ns:com:here:mom:mapcreator MapCreator optional
@ns:com:here:xyz Xyz optional Generic Data Hub namespace
extensionOSM MomOsm optional Optional extension for OSM (Open Street Map) metadata,

in case the object came from OSM
@ns:com:here:groundTruth GroundTruth optional Ground truth namespace
confidence ConfidenceData optional Confidence of a feature, optional only for the features

that are not participating in Quality Index.
venueId string optional Deprecated. Id of the venue. Venue Id is generated outside of MOM, and is used by the different components/services of venues.

There is no venue object, hence this is not a reference to any object,

but conceptually venue is a collection of objects of momType "indoor.{Site, Structure, Level, Space, Occupant}".

This id is linking every object to the venue.

It may have the same value as the Site object, but it doesn't have to have.

Each feature could be considered to be identifiable by a 2-level id: the venueId + feature id.

The feature id is also unique by itself.
indoorMapId string Id of the indoor map. The id is generated outside of MOM, and is used by the different components/services

of the indoor map.

Indoor map is a collection of objects of momType "indoor.{Site, Structure, Level, Space, Occupant, ...}".

This id is linking every object to the specific indoor map.

It may have the same value as the Site object, but it doesn't have to have.

Each feature could be considered to be identifiable by a 2-level id: the indoor map id + feature id.

The feature id is also unique by itself.
renderProperties RenderProperties optional optional object, will appear only for following objects Site, Structure, Level, Space (Vectors)
placeProperties PlaceProperties PlaceProperties are reused here for two reasons:

- There is lot of commonality with Occupants, e.g. name, contact details, opening hours.

Those are not replicated but used from PlaceProperties for all occupants, even if there is no corresponding

HERE Places entry for it.

This will help e.g. in Map Creator-based apps to use the same functions for indoor occupants than for

HERE Places.

- There may be an option at some day to push occupant data from indoor maps to HERE Places, and if the

data structures

are aligned this is expected to be easier.

Even if we have a reference to a Place (below), we need to prepare for an option to maintain own copy of the

same properties,

as Venue maps are private.

Every member in PlaceProperties is optional, so this can be mandatory

Occupant category can be found in placeProperties as a string. The enumerations are defined

outside MOM, and the category set may be extended and possibly down-scoped.

This way we won't get the GeoJSON level properties to Occupant, but we don't need to,

as often the location of e.g. a shop is less accurate in HERE Places than it is in venues.

Further, please note that there are occupants who don't have a corresponding HERE Place,

e.g. a professor occupying an office room in a university.
spaces Space distinct-list Which venue space(s) this occupant is occupying, if any
attributes OccupantAttributes optional Additional attributes that are not part of PlaceProperties
customerReferenceId string optional Reference to customers MIS id with respect to this object, we are not obliged to manage it,

but will keep placeholder so that customer can edit value and use it with our products.
placeReference Place optional Place references are relevant sometimes, but not always. Depends on the Indoor Map type.

results matching ""

    No results matching ""