dmaClass_DocVersion

A document version is a single document stored in a Document Space.

with additions for the CSDocs Foundation revision 0.02

Class ID: dmaClass_DocVersion
Superclass: Versionable

Interfaces

IUnknown
IdmaObject
IdmaProperties
IdmaEditProperties [Optional]
IdmaConnection [Optional]
IdmaVersionable [Optional]

Properties

Name Impl.
Required
System
Gen'ed
Read-
Only
Value
Required
Type Cardinality Required Class Reflective
Property
OIID - Yes Yes - String Scalar    
Class Description Yes Yes Yes Yes Object Scalar Class Description  
This - Yes Yes Yes Object Scalar Doc Version This
Create Pending - Yes Yes Yes Boolean Scalar    
Update Pending - Yes Yes Yes Boolean Scalar    
Delete Pending - Yes Yes Yes Boolean Scalar    
Instance Id - Yes Yes - DmaId Scalar    
Parent - Yes Yes - Object Scalar Direct Containment Relationship Head
Parent Container - Yes Yes - Object Scalar Container n/a
Containers - Yes Yes - Object Enum Referential Containment Relationship Head
Version Descriptions - Yes Yes - Object Enum Version Description Version
Current Of Series Count - Yes Yes - Integer32 Scalar    
Renditions Present - Yes Yes - String List    
Renditions - - - - Object List Rendition n/a
CSRoots - Yes Yes - Object Enum CSRelationship Head
CSComponents - Yes Yes - Object Enum CSRelationship Tail
CSRoot Style - - - - DmaId Scalar    

Detailed Description

This is the base class for objects representing "documents". It introduces the properties which support the representation of document content (if supported) and inherits properties which support versioning and containment of documents (if supported). A document space may allow actual instances of DocVersion to be created, or it may only allow instances of subclasses of DocVersion.

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

Instance Id {dmaProp_InstanceId}
Property Inherited from DMA

[This addition is made to all well-known classes]

• Parent {dmaProp_Parent}
Property Inherited from Containable

• Parent Container {dmaProp_ParentContainer}
Property Inherited from Containable

• Containers {dmaProp_Containers}
Property Inherited from Containable

• Version Descriptions {dmaProp_VersionDescriptions}
Property Inherited from Versionable

• Current Of Series Count {dmaProp_CurrentOfSeriesCount}
Property Inherited from Versionable

• Renditions Present {dmaProp_RenditionsPresent}

List of the types of renditions contained within the DocVersion at the time is was last made persistent.

A system-generated (and read-only) list of Strings which reflect the rendition types of the renditions in the document. This property is static except over a Refresh and does not dynamically track the state of the Renditions list. Therefore, the client application may not in general assume that the number or order of elements in this list correspond to that of the Renditions list.

However, if neither the Rendition list nor any of the rendition objects it contains have been modified since the DocVersion was connected or last refreshed, then it is required that the two lists be synchronized.

• Renditions {dmaProp_Renditions}

List of Renditions contained within this DocVersion

CSRoots {dmaProp_CSRoots}

This optional property is meaningful only on objects that may be employed as CSComponents in CSDocs structures.  The reflective property of CSRoots is always the dmaProp_Head property of an admissable dmaClass_CSRelationship subclass instance.   The property represents all of the CSRelationships in which this DocVersion occurs in some way as a CSComponent.

CSComponents {dmaProp_CSComponents}

This optional property is meaningful only on objects that may be employed as CSRoots in CSDocs structures.  The reflective property of CSComponents is always the dmaProp_Tail property of an admissable dmaClass_CSRelationship subclass instance.  The property represents all of the CSRelationships in which this DocVersion occurs in some way as a CSRoot.

CSRoot Style {dmaProp_CSRootStyle}

This optional property is meaningful only on objects that may be employed as CSRoots.  When present, it specifies whether any renditions of the DocVersion are complete documents or whether some style of consolidation must be applied to derive a complete rendition.

If CSRoot Style is not supported or it is supported and has no value, interpretation is the same as when CSRoot Style is supported and the value is the NULL DmaId (DMA_CSR_STYLE_COMPLETE).

When CSRoot Style is supported and it has a value other than DMA_CSR_STYLE_COMPLETE, the value is the DmaId of a registered scheme for how a rendition of the complete document can be obtained or derived.  For any value but DMA_CSR_STYLE_COMPLETE, it must be understood that no CSRoot Renditions is guaranteed to be a complete rendition of the compound/structured document represented by that DocVersion.  

It is expected that particular CSRoot DocVersion subclasses may fix the value of CSRoot Style as read-only and system-derived as part of subclass-specific realization of particular CSDoc structures.  Subclasses may also limit the values to selections from a particular set of allowed values.

The following values are defined for CSRoot Style:

  • DMA_CSR_STYLE_COMPLETE

    Any renditions of the CSRoot are complete renditions which can be used to render the complete document using the CSRoot rendition alone.  This is the corresponding default interpretation of any DMA 1.0 DocVersion that has renditions, without regard to the DocVersion's involvement in an explicit or implicit compound/structured document relationship

  • DMA_CSR_STYLE_INCOMPLETE

    The CSRoot Renditions do not by themselves provide complete renditions.  A complete rendition is obtained by other means specific to the implementation of this CSRoot DocVersion.   The particular means is made known by application agreement.  No particular means is specified with this value of CSRoot Style.

  • other values

    Other values of CSRoot Style are safely interpreted as DMA_CSR_STYLE_INCOMPLETE if the actual value is not one with a definition that the application is designed to recognize.  These other values are introduced as part of application agreements so that interoperable use can be made of the CSRoot DocVersion and its renditions.

CSRoot Style is implemented with a DmaId so that the definition and advertising of particular CSRoot styles can occur on a decentralized basis without need for a central assignment authority. 

$$Author: Orcmid $
$$Date: 99-08-31 20:47 $
$$Revision: 5 $