UOR Type System
- IRI
https://uor.foundation/type/- Prefix
type:- Space
- user
- Comment
- Runtime type declarations that parameterize the resolution pipeline. Types are declared by Prism applications and resolved to partitions of the ring.
Imports
https://uor.foundation/schema/https://uor.foundation/u/
Classes
| Name | IRI | Subclass Of | Disjoint With | Comment |
|---|---|---|---|---|
| TypeDefinition | https://uor.foundation/type/TypeDefinition | http://www.w3.org/2002/07/owl#Thing | A runtime type declaration. The root class for all UOR types. Each TypeDefinition, when resolved, produces a partition of the ring at the specified quantum level. | |
| PrimitiveType | https://uor.foundation/type/PrimitiveType | https://uor.foundation/type/TypeDefinition | A primitive type defined by a fixed bit width. The carrier is the entire ring Z/(2^n)Z at the specified quantum level. | |
| ProductType | https://uor.foundation/type/ProductType | https://uor.foundation/type/TypeDefinition | A product (Cartesian) type formed from multiple component types. The carrier is the product of the component carriers. | |
| SumType | https://uor.foundation/type/SumType | https://uor.foundation/type/TypeDefinition | A sum (disjoint union) type formed from multiple variant types. The carrier is the disjoint union of the variant carriers. | |
| ConstrainedType | https://uor.foundation/type/ConstrainedType | https://uor.foundation/type/TypeDefinition | A type formed by constraining a base type with a predicate. The carrier is the subset of the base carrier satisfying the constraint. |
Properties
| Name | Kind | Functional | Domain | Range | Comment |
|---|---|---|---|---|---|
| bitWidth | Datatype | true | https://uor.foundation/type/PrimitiveType | http://www.w3.org/2001/XMLSchema#positiveInteger | The bit width of a primitive type (the quantum level n). The carrier is Z/(2^n)Z. |
| component | Object | false | https://uor.foundation/type/ProductType | https://uor.foundation/type/TypeDefinition | A component type in a product type. |
| baseType | Object | true | https://uor.foundation/type/ConstrainedType | https://uor.foundation/type/TypeDefinition | The base type that a constrained type restricts. |
| constraint | Datatype | false | https://uor.foundation/type/ConstrainedType | http://www.w3.org/2001/XMLSchema#string | The constraint predicate applied to the base type. Expressed as a string in the Prism constraint language. |
| contentAddress | Object | true | https://uor.foundation/type/TypeDefinition | https://uor.foundation/u/Address | The content-derived address of this type definition, uniquely identifying the type in the UOR address space. |