| 1 Definition | 2 Functional Requirements | 3 Syntax |
| 4 Semantics | 5 Conformance Testing | 6 Performance Assessment |
1 Definition
A Data Type including:
- Visual Data perceptible by a visual device or visible to a human when rendered.
- Descriptive Data regarding Sub-Types, Formats and Attributes of the Visual Data (optionally).
In the following, Data, Qualifier, and Object should be read as Visual Data, Visual Qualifiers, and Visual Object, respectively.
2 Functional Requirements
A Basic Object may include:
- The ID of a Virtual Space (M-Instance) where it is or is intended to be located.
- The ID of the Basic Object.
- The ID(s) of Objects at a preceding time (Parent Objects) supporting two cases:
- The Parent Object has spawned two (or more) Objects.
- Two (or more) Parent Objects have merged into one.
- The Space-Time information of Parent Objects in an M-Instance.
- The ID(s) of Objects at a following time (Child Objects).
- The Space-Time information of Child Objects in an M-Instance.
- The Space-Time information of the Basic Object in an M-Instance.
- The Qualifier of the Visual Data.
- Additional Basic Visual Object information.
– Mass of the Object
– Material Property – is material or immaterial
– Gravity Property – is subject to gravity or not
– Texture Map – the Objects texture map
– Object Audio Characteristics – the audio characteristics of the Object. - The set of Annotations including, for each Annotation:
- Space-Time information of the Annotation.
- Rights to perform Actions on the Annotation.
- The Rights that can be exercised on the Basic Object.
3 Syntax
https://schemas.mpai.community/OSD/V1.4/data/BasicVisualObject.json
4 Semantics
| Label | Description |
| Header | Visual Object Header |
| – Standard-VisualObject | The characters “OSD-BVO-V” |
| – Version | Major version – 1 or 2 characters |
| – Dot-separator | The character “.” |
| – Subversion | Minor version – 1 or 2 characters |
| MInstanceID | Identifier of M-Instance. |
| VisualObjectID | Identifier of the Visual Object. |
| ParentVisualObjects[] | Identifier(s) of Parent Visual Objects. |
| – ParentVisualObjectID | Identifier of a Parent Visual Object. |
| – ParentVisualDataSpaceTime | SpaceTime of a Parent Visual Object. |
| ChildVisualObjects[] | Identifier(s) of Parent Visual Objects. |
| – ChildVisualObjectID | Identifier of a Child Visual Object. |
| – ChildVisualDataSpaceTime | SpaceTime of a Child Visual Object. |
| BasicObjectSpace-Time | Space-Time info of Visual Data. |
| BasicVisualObjectData | Data of Basic Object. |
| VisualDataQualifier | Qualifier of Visual Data. |
| BasicVisualObjectProperties | Additional information on Object |
| – Mass | Mass of the Object |
| – MaterialProperty | Object has material consistence (0=No, 1=Yes) |
| – GravityProperty | Object is subject to gravity (0=No, 1-Yes) |
| – TextureMap | Texture Map |
| – ObjectAudioCharacteristics | Basic Visual Object’s Audio Characteristics |
| – EulerAngles | The three axes of the Basic 3D Model Object with respect to the coordinate system. |
| BasicVisualObjectsAnnotations[] | Annotations of Visual Data |
| – Annotation | ID of Annotation |
| – AnnotationSpaceTime | Where/when Annotation is attached. |
| – RightsID | What is possible to do with the Annotation |
| BasicVisualObjectRights | Rights to Act on the Basic Visual Object. |
| DescrMetadata | Descriptive Metadata |
5 Conformance Testing
A Data instance Conforms with Basic Object if:
- The Data validates against the Basic Object’s JSON Schema.
- All Data in the Basic Object’s JSON Schema
- Have the specified type
- Validate against their JSON Schemas
- Conform with their Data Qualifiers, if present.