vinv-schema

vinv Schema

https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json

Lightweight data standard for individual tree based forest management, visualisation & analytics

Abstract Extensible Status Identifiable Custom Properties Additional Properties Access Restrictions Defined In
Can be instantiated Yes Unknown status No Forbidden Forbidden none vinv.min.json

vinv Type

object (vinv)

vinv Properties

Property Type Required Nullable Defined by
v string Required cannot be null vinv
id string Required cannot be null vinv
created string Required cannot be null vinv
$schema string Optional cannot be null vinv
inventory object Optional cannot be null vinv
areas object Optional cannot be null vinv
extensions object Optional cannot be null vinv

v

Version of the used vinv schema, the file should be validated against

v

v Type

string (Version)

v Constraints

pattern: the string must match the following regular expression:

^[0-9]\.[0-9]\.[0-9](-alpha\.[0-9]|-beta\.[0-9])?$

try pattern

v Examples

"0.0.1"
"0.0.1-beta.0"

id

Once created, this ID should never change.

id

id Type

string (Document ID)

id Constraints

pattern: the string must match the following regular expression:

^[A-Za-z0-9_-]{1,36}$

try pattern

id Examples

"tWJBpKAEMMOKzEOwdr49CV1ETJvGDrD8Zzvv"

created

Date and time this document was created.

created

created Type

string (Created)

created Constraints

date time: the string must be a date time string, according to RFC 3339, section 5.6

created Examples

"2018-11-13T20:20:39+00:00"

$schema

$schema

$schema Type

string

$schema Examples

"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json"

inventory

inventory

inventory Type

object (Inventory)

areas

areas

areas Type

object (Areas)

extensions

List of functional extensions

extensions

extensions Type

object (Extensions)

vinv Definitions

Definitions group tree

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/tree"}
Property Type Required Nullable Defined by
id string Optional cannot be null vinv
location object Required cannot be null vinv
species string Required cannot be null vinv
dbh number Required cannot be null vinv
height number Optional cannot be null vinv
trunk array Optional cannot be null vinv
crown array Optional cannot be null vinv
birth string Optional cannot be null vinv
image array Optional cannot be null vinv

id

id

id Type

string (Tree Id)

id Constraints

pattern: the string must match the following regular expression:

^[A-Za-z0-9_-]{1,36}$

try pattern

id Examples

"ZUMLoqZeuWdYCtHBWTOexYvGl1NDTlp4yacX"

location

location

location Type

object (Location)

species

Tree Species values taken from https://github.com/b-lack/tree-species

species

species Type

string (Tree species)

species Constraints

pattern: the string must match the following regular expression:

^[a-zA-Z0-9_-]{3}$

try pattern

species Examples

"JM2"

dbh

Diameter in centimeter

dbh

dbh Type

number (Diameter at Breast Height)

dbh Constraints

multiple of: the value of this number must be a multiple of: 1

maximum: the value of this number must smaller than or equal to: 100

minimum: the value of this number must greater than or equal to: 1

dbh Examples

34
56

height

Height in centimeter

height

height Type

number (Height)

height Constraints

multiple of: the value of this number must be a multiple of: 1

maximum: the value of this number must smaller than or equal to: 1000

minimum: the value of this number must greater than or equal to: 10

height Examples

134
156

trunk

Diameter per height

trunk

trunk Type

object[] (Diameter at height)

trunk Constraints

minimum number of items: the minimum number of items for this array is: 1

unique items: all items in this array must be unique. Duplicates are not allowed.

crown

Diameter per height

crown

crown Type

object[] (Diameter at height)

crown Constraints

minimum number of items: the minimum number of items for this array is: 1

unique items: all items in this array must be unique. Duplicates are not allowed.

birth

Birthday of the tree

birth

birth Type

string (Birthday)

birth Constraints

date: the string must be a date string, according to RFC 3339, section 5.6

birth Examples

"2010-09-13"

image

List of absolute or relative path to file

image

image Type

string[] (Images)

Definitions group trees_history

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/trees_history"}
Property Type Required Nullable Defined by
id string Required cannot be null vinv
changedAt string Required cannot be null vinv
definition object Required cannot be null vinv
uId string Optional cannot be null vinv

id

URL-friendly id

id

id Type

string (Tree Id)

id Constraints

maximum length: the maximum number of characters for this string is: 36

pattern: the string must match the following regular expression:

^[A-Za-z0-9_-]{1,36}$

try pattern

id Examples

"5ifq8QepMG_kSfuj6fKVBMynxNbRLN2tBKvF"
"8ETHsYK6eJcEn79HegkqCESvaAvQGr_qchRW"

changedAt

Date and time when change happened.

changedAt

changedAt Type

string (Time of Change)

changedAt Constraints

date time: the string must be a date time string, according to RFC 3339, section 5.6

changedAt Examples

"2018-11-13T20:20:39+00:00"

definition

Tree definition

definition

definition Type

object (Tree)

uId

uId

uId Type

string (UserId)

uId Constraints

pattern: the string must match the following regular expression:

^[A-Za-z0-9_-]{1,36}$

try pattern

uId Examples

"FJet9-q0pzhhPhi4vw4M-0qMZ0FtQ5r1VLTR"

Definitions group track

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/track"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group track_history

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/track_history"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group area

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/area"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group area_history

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/area_history"}
Property Type Required Nullable Defined by
id string Optional cannot be null vinv
changedAt string Optional cannot be null vinv
definition array Optional cannot be null vinv
uId string Optional cannot be null vinv

id

URL-friendly id

id

id Type

string (Track Id)

id Constraints

maximum length: the maximum number of characters for this string is: 36

pattern: the string must match the following regular expression:

^[A-Za-z0-9_-]*$

try pattern

id Examples

"ZUMLoqZeuWdYCtHBWTOexYvGl1NDTlp4yacX"

changedAt

Date and time when change happened.

changedAt

changedAt Type

string (Change)

changedAt Constraints

date time: the string must be a date time string, according to RFC 3339, section 5.6

changedAt Examples

"2018-11-13T20:20:39+00:00"

definition

definition

definition Type

object[][][] (Location)

definition Constraints

minimum number of items: the minimum number of items for this array is: 1

uId

uId

uId Type

string (UserId)

uId Constraints

pattern: the string must match the following regular expression:

^[A-Za-z0-9_-]{1,36}$

try pattern

uId Examples

"FJet9-q0pzhhPhi4vw4M-0qMZ0FtQ5r1VLTR"

Definitions group location

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/location"}
Property Type Required Nullable Defined by
coordinates object Required cannot be null vinv
accuracy number Optional cannot be null vinv

coordinates

Anchor point of the Object on a map. Array of longitude, latitude and [altitude] coordinate. Reference system: WGS84 Web Mercator with longitude and latitude units of decimal degrees.

coordinates

coordinates Type

object (Coordinates)

coordinates Constraints

maximum number of items: the maximum number of items for this array is: 3

minimum number of items: the minimum number of items for this array is: 2

accuracy

The decimal accuracy of coordinates in meter (2 decimal places max).

accuracy

accuracy Type

number (Accuracy)

accuracy Constraints

minimum: the value of this number must greater than or equal to: 0

accuracy Examples

3
12

Definitions group coordinates

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/coordinates"}
Property Type Required Nullable Defined by
longitude number Optional cannot be null vinv
latitude number Optional cannot be null vinv
altitude number Optional cannot be null vinv

longitude

The decimal east–west position of a point. (7 decimal places max)

longitude

longitude Type

number (Longitude)

longitude Constraints

maximum: the value of this number must smaller than or equal to: 180

minimum: the value of this number must greater than or equal to: -180

longitude Examples

12.4563
-130.5627874

latitude

The decimal north–south position of a point. (7 decimal places max)

latitude

latitude Type

number (Latitude)

latitude Constraints

maximum: the value of this number must smaller than or equal to: 90

minimum: the value of this number must greater than or equal to: -90

latitude Examples

-12.4563
50.5627874

altitude

The altitude of the position in meters above mean sea level. (2 decimal places max)

altitude

altitude Type

number ([Altitude])

altitude Constraints

minimum: the value of this number must greater than or equal to: 0

altitude Examples

0
130

Definitions group dbh

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/dbh"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group species

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/species"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group dimensions_trunk

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/dimensions_trunk"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group dimensions_crown

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/dimensions_crown"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group diameter_height

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/diameter_height"}
Property Type Required Nullable Defined by
height number Optional cannot be null vinv
diameter number Optional cannot be null vinv

height

Height of tree in PERCENT where diameter is measured

height

height Type

number (Height)

height Constraints

maximum: the value of this number must smaller than or equal to: 1

minimum: the value of this number must greater than or equal to: 0.1

height Examples

0.5
0.1

diameter

Diameter in CENTIMETER at measured height

diameter

diameter Type

number (Diameter)

diameter Constraints

maximum: the value of this number must smaller than or equal to: 100

minimum: the value of this number must greater than or equal to: 10

diameter Examples

34
38

Definitions group filter

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/filter"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |

Definitions group image

Reference this group by using

{"$ref":"https://schema.vinv.io/0.0.1-alpha.0/vinv.min.json#/definitions/image"}

| Property | Type | Required | Nullable | Defined by | | :——- | —- | ——– | ——– | :——— |