Jump to: navigation, search

Difference between revisions of "MetaProperty"


Line 1: Line 1:
 
 
==Basics==
 
==Basics==
  
Line 5: Line 4:
  
 
For enhanced reuse, MetaProperties can be organized in a Pool and linked to many MetaClasses, using the [[SYSREL_METAPROPERTY|Systemrelation MetaProperty]]
 
For enhanced reuse, MetaProperties can be organized in a Pool and linked to many MetaClasses, using the [[SYSREL_METAPROPERTY|Systemrelation MetaProperty]]
 
  
 
==Initial value==
 
==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.
 
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==
 
==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.
 
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==
 
==Editing a MetaProperty==
Line 21: Line 17:
 
*Name
 
*Name
 
*PropertyType
 
*PropertyType
 
  
 
==Released To LiveMode==
 
==Released To LiveMode==
Line 27: Line 22:
 
* It is used on at least one [[MetaClass]] which is already [[Released_to_LiveMode|released]].
 
* It is used on at least one [[MetaClass]] which is already [[Released_to_LiveMode|released]].
 
* It is referenced by at least one [[PoolMetaProperty]] which is used on at least one [[MetaClass]] which is already [[Released_to_LiveMode|released]].
 
* It is referenced by at least one [[PoolMetaProperty]] which is used on at least one [[MetaClass]] which is already [[Released_to_LiveMode|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.
 
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.
Line 39: Line 33:
 
*NeedsValidation
 
*NeedsValidation
 
*IndexType
 
*IndexType
 
 
 
  
 
==See also==
 
==See also==

Revision as of 13:30, 23 September 2013

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:

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

See also