1     Definition 2     Functional Requirements 3     Syntax
4     Semantics 5    Conformance Testing 6     Performance Assessment

1      Definition

A Data Type that conveys geometric spatial regions used to define areas of interest, constraints, or target zones within a three‑dimensional coordinate system.
It supports a standard set of geometric solids used in MPAI‑OSD V1.5: Right Parallelepiped, Sphere, and Cylinder.

Region definitions are used by higher‑level spatial structures (e.g., Spatial Cue) to localise cues, validate positions, and constrain spatial interpretation.

2      Functional Requirements

Geometric Region Representation

The Data Type must support geometric region primitives:

Right Parallelepiped
– Defined through Min and Max corner positions
– Edges aligned to the coordinate axes
– Equivalent to the “Right Parallelepiped” structure described in OSD SimpleLocation semantics [mpai.community]

Sphere
– Defined by Center and Radius

Cylinder
– Defined by Center, Radius, and Height
– Axis aligned with the Z axis

Parameter Validation

Numerical parameters (Radius, Height) must be non‑negative.

Position references must validate against the Position Data Type.

Region definitions must match the selected Type.

Reference Frame Compatibility

Regions must be placeable within any valid OSD coordinate frame (World, Entity, Device, Object), consistent with how Position and SpatialCue are used.

Metadata and Traceability

Must allow descriptive metadata for documentation or debugging.

Must support AIF trace information for workflow provenance.

Integration With Other OSD Components

Must be usable by:
– SpatialCue.Region
– Location objects
– Higher‑level AIMs needing spatial filtering

Must interoperate with externally referenced schemas (Position.json, RightParallelepiped.json).

Extensibility

The Data Type must allow new region shapes (e.g., Mesh, Mask, Polygonal Prism) to be added in future versions without breaking existing implementations.

3      Syntax

https://schemas.mpai.community/OSD/V1.5/data/GeometricSolid.json

4      Semantics

Table 1 provides the semantics of the components of Geometric Solid.

Table 1 – Semantics of the Geometric Solid

Label Description
Header Geometric Solid Header – Standard “OSD-GMS-Vx,y”.
MInstanceID ID of Virtual Space the cue refers to.
SpatialCueID Identifier of Spatial Cue entry.
SpatialCueData General descriptors for cue context.
Type Discriminator selecting the geometric region shape: RightParallelepiped, Sphere, Cylinder.
RightParallelepiped Axis‑aligned box region. Defined externally in RightParallelepiped.json. Corresponds to the “Right Parallelepiped” construct described in OSD SimpleLocation [mpai.community].
Sphere Region defined by a 3D center point and radius. Useful for radial cue zones or proximity regions.
Cylinder Vertical cylinder region aligned with the Z‑axis, defined by center, radius, height. Useful for columnar regions (e.g., volumetric audio sources, standing zones).
Center Reference point of either Sphere or Cylinder; must validate as Position.
Radius Non‑negative radius in Position units (meters in OSD).
Height Vertical extent for Cylinder; non‑negative.
Trace The AIF trace object providing metadata on the AIM instance and production time.
DescrMetadata Optional textual metadata (max 2048 chars) describing the region or its context.

5     Conformance Testing

A Data instance Conforms with V1.5 Geometric Solid (OSD-GMS) if:

  1. Its JSON Object validates against its JSON Schema.
  2. Any included  JSON Object validates against its JSON Schema.
  3. All Data in the JSON Object:
    1. Have the specified Data Types.
    2. Conform with the Qualifiers signaled in their JSON Schemas.

6     Performance Assessment