property lName { minOccurs 1; type PolyString; }
Core Concepts
OUT OD DATE |
Axiom shares core concepts with Prism, since it is intended to model data structures intended for use in Prism.
Model
Base concept of Axiom is model. Model is named set of object, type and extension definitions.
Each model should
Object
Item
Items represents attributes of an object. Items have
Property
Container
container address { type Address; }
Object Reference
objectReference owner { type User; }
Value Metadata
Value metadata are modeled using keyword valueMetadata
. The argument is
name of metadata.
valueMetadata modification { objectReference { type midpoint:User; } }
Type
Type system in Axiom is hierarchical, each type could have one supertype.
Simple Type
Simple type is type, which usually does not have structured form. It is used to represent simple values such as numbers or strings.
The simple type may have structured form (eg. PolyString), but modifications of nested items is considered as modification of whole item.
Complex Type
Complex type is type, which have multiple different items and is used to represent structured data, which may be modified individually.
A good example of complex type is Address which have several structured properties such as country, city, postal number. |
type Address { property type { type string; } property street { type PolyString; } property streetNo { type string; } property city { type PolyString; } ... }