What is the Datamodel?
The datamodel is a fundamental concept in our system that defines how data is structured and organized.
Our datamodel is inspired by schema.org and uses its types and properties as a base.
On top of schema.org, we extend the datamodel with additional types and properties under our custom namespace: venus.
Types
Types define the structure of entities within the datamodel.
They act as blueprints for the kind of data an entity can hold.
An entity can have multiple types, specified in a data field called types, which is an array of types.
For example:
schema:Thing: A generic type representing any entity.venus:Trail: A custom type for describing trails in the context of our system.
Types can extend other types, allowing for a hierarchical structure. schema:Thing is the most generic type and serves as the base for all other types.
Properties
Properties describe the attributes or relationships of a type.
For example:
schema:name: The name of an entity (Part of schema:Thing).venus:eventSchedule: A custom property to define the schedule of an event (Part of schema:Event).
Data Types
Each property can have a specific data type which defines the kind of data it can hold.
Data types can be simple (like strings or numbers) or complex (like arrays or objects).
Have a look at our Data Types to see all data types the datamodel provides.
Namespaces
Namespaces differentiate the origin of types and properties. Currently, our datamodel uses two namespaces:
schema: Refers to types and properties from the schema.org vocabulary.venus: Refers to our custom enhancements to the datamodel.
Documentation
To make it easier to understand and use our datamodel, you can visit the automatically generated datamodel documentation and explore the all available types and properties.