Interface Schema
RecordV2 schema.
A schema describes data value format in terms of one or more record definitions. A record definition describes the layout of a record and comprises one or more field definitions.
Within the data value there can be multiple occurrences of a record or field described by a single definition. The defined (or allowed, when describing variable numbers) number of occurrences of each definition is referred to as its 'multiplicity'. The multiplicity can be fixed (the item occurs a fixed number of times), or variable (the item occurs from a minimum number of times to a maximum number of times). If a variable field is used it must be the last in a record definition and if a variable record is used it must be the last in the schema definition.
A field may be defined as of type 'string', 'integer' or 'decimal'. A decimal type has a further property of 'scale' which defines the number of digits to the right of the decimal point.
- Since:
- 6.0
- Author:
- DiffusionData Limited
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceField Definition.static interfaceSchema Node - ASchema.Recordor aSchema.Field.static interfaceRecord Definition. -
Method Summary
Modifier and TypeMethodDescriptionReturns the schema in a JSON format.Create a mutable model based upon the schema.Returns an immutable, ordered list of record definitions.
-
Method Details
-
getRecords
List<Schema.Record> getRecords()Returns an immutable, ordered list of record definitions.There will be at least one.
- Returns:
- a list of the record definitions in the schema
-
createMutableModel
MutableRecordModel createMutableModel()Create a mutable model based upon the schema.The model will be created with all mandatory record occurrences and all mandatory field occurrences initialized to default values.
Such a model may be mutated and used to generate updated
RecordV2occurrences for updating purposes.- Returns:
- a new initialized model
-
asJSONString
String asJSONString()Returns the schema in a JSON format.- Returns:
- schema in JSON string format
-