Difference between revisions of "MetaProperty"
(→See also) |
|||
Line 37: | Line 37: | ||
* [[MetaClass]] | * [[MetaClass]] | ||
* [[Requirements_for_a_MetaProperty|Requirements]] | * [[Requirements_for_a_MetaProperty|Requirements]] | ||
+ | * [[Create_a_new_MetaProperty|Create a new MetaProperty]] | ||
[[Category:UBIK Object]] | [[Category:UBIK Object]] |
Revision as of 13:40, 23 September 2013
Contents
Basics
In UBIK, a MetaProperty describes a single feature of a certain MetaClass. A MetaProperty will never hold own values, but it serves as a definition for a resulting BaseProperty on a derived ContentClass.
For enhanced reuse, MetaProperties can be organized in a Pool and linked to many MetaClasses, using the Systemrelation MetaProperty
Initial value
The initial value of a MetaProperty defines which value will be set to the property initially when a new instance of it is created. Once the value is changed, the initial value is lost for this instance.
Default value
The default value of a MetaProperty defines which value will be delivered by a property if it doesn't have an own value set.
Editing a MetaProperty
Once a MetaProperty is used on a single MetaClass editing of properties is restricted to properties that may not effect data validity. The System uses a Rule to validate the edited properties and creates a RuleViolation whenever a "locked" property is edited. Following properties may not be changed/edited for a "used" MetaProperty:
- Name
- PropertyType
Released To LiveMode
A MetaProperty is marked as released to live mode when:
- It is used on at least one MetaClass which is already released.
- It is referenced by at least one PoolMetaProperty which is used on at least one MetaClass which is already released.
Editing a released MetaProperty is restricted to properties that have no effect on the released table structure. The System uses a Rule to validate the edited properties and creates a RuleViolation whenever a "locked" property is edited. Following properties may not be changed/edited for a released MetaProperty:
- Name
- PropertyType
- StringLen
- Multilanguage
- Indexcount
- Serialize
- NeedsValidation
- IndexType