dmaClass_PropertyDescriptionObject

A metadata class object describing an object property.

Class ID: dmaClass_PropertyDescriptionObject
Superclass: Property Description

Interfaces

IUnknown
IdmaObject
IdmaProperties

Properties

Name

Impl. Required

System Gen'ed

Read-Only

Value Required

Type

Cardinality

Required Class

OIID

-

Yes

Yes

-

String

Scalar

Class Description

Yes

Yes

Yes

Yes

Object

Scalar

Class Description

This

-

Yes

Yes

Yes

Object

Scalar

Property Description Object

Create Pending

-

Yes

Yes

Yes

Boolean

Scalar

Update Pending

-

Yes

Yes

Yes

Boolean

Scalar

Delete Pending

-

Yes

Yes

Yes

Boolean

Scalar

Display Name

Yes

-

-

Yes

String

Scalar

Descriptive Text

Yes

-

-

Yes

String

Scalar

Ids

Yes

-

-

Yes

ID

List

Data Type

Yes

Yes

Yes

Yes

Integer32

Scalar

Cardinality

Yes

-

-

Yes

Integer32

Scalar

Is Selectable

Yes

-

-

Yes

Boolean

Scalar

Is Searchable

Yes

-

-

Yes

Boolean

Scalar

Is Orderable

Yes

-

-

Yes

Boolean

Scalar

Query Operator Descriptions

Yes

-

-

-

Object

List

Query Operator Description

Is System Generated

Yes

-

-

Yes

Boolean

Scalar

Is Read Only

Yes

-

-

Yes

Boolean

Scalar

Is Value Required

Yes

-

-

Yes

Boolean

Scalar

Is Hidden

Yes

-

-

Yes

Boolean

Scalar

Property Default Object

Yes

-

-

-

Object

Scalar

Property Selections Object

Yes

-

-

-

Object

List

Required Class

Yes

-

-

-

Object

Scalar

Class Description

Reflective Property Id

Yes

-

-

-

ID

Scalar

Detailed Description

The current object is an element in the Property List of a Class Description object. The current object describes a single property of the class being described by the Class Description object. The base datatype of the property being described is object.

Property Descriptions

• OIID {dmaProp_OIID}
Property Inherited from DMA

• Class Description {dmaProp_ClassDescription}
Property Inherited from DMA

• This {dmaProp_This}
Property Inherited from DMA

• Create Pending {dmaProp_CreatePending}
Property Inherited from DMA

• Update Pending {dmaProp_UpdatePending}
Property Inherited from DMA

• Delete Pending {dmaProp_DeletePending}
Property Inherited from DMA

• Display Name {dmaProp_DisplayName}
Property Inherited from Property Description

• Descriptive Text {dmaProp_DescriptiveText}
Property Inherited from Property Description

• Ids {dmaProp_Ids}
Property Inherited from Property Description

• Data Type {dmaProp_DataType}
Property Inherited from Property Description

• Cardinality {dmaProp_Cardinality}
Property Inherited from Property Description

• Is Selectable {dmaProp_IsSelectable}
Property Inherited from Property Description

• Is Searchable {dmaProp_IsSearchable}
Property Inherited from Property Description

• Is Orderable {dmaProp_IsOrderable}
Property Inherited from Property Description

• Query Operator Descriptions {dmaProp_QueryOperatorDescriptions}
Property Inherited from Property Description

• Is System Generated {dmaProp_IsSystemGenerated}
Property Inherited from Property Description

• Is Read Only {dmaProp_IsReadOnly}
Property Inherited from Property Description

• Is Value Required {dmaProp_IsValueRequired}
Property Inherited from Property Description

• Is Hidden {dmaProp_IsHidden}
Property Inherited from Property Description

• Property Default Object {dmaProp_PropertyDefaultObject}

The default object for this property.

• Property Selections Object {dmaProp_PropertySelectionsObject}

The list of objects that may be assigned to this property.

If a selection list is provided, only an object existing in the list can be assigned to this property.

• Required Class {dmaProp_RequiredClass}

Specifies the class to which all objects delivered by the enumeration will conform.

• Reflective Property Id {dmaProp_ReflectivePropertyId}

The current Property Description Object describes an object valued property P of some class A. Suppose that objects of class A are independently persistent. Suppose also that objects of the required class of P, B, are also independently persistent. Then we say that obtaining the value of P is "navigating" from one object instance to another. In some such cases, a property in class B may provide a reverse navigation path, from the instance of class B to an instance of Class A having the same OIID as the original object. The property of B that provides this reverse path is termed the reflective property, and the Reflective Property Id identifies this property by means of one of its Ids. (Any of the Ids of the reflective property).

An invariant holds amongst the classes and properties involved in a reflective relationship. Let P be the described property (in class A) and Q be its reflective property (in class B, the required class of P). Further, let C be the class that introduces P (a superclass of A if P is inherited, and otherwise A itself). The required class of Q must be a subclass of C for which A is a subclass, and the reflective property of Q must be P.