Defines a hierarchical relationship between two documents as components in a compound document.

One document is the designated parent component (ParentComponent property) and the other is the designated child component. The child component document can be either a P8 Content Engine document (ChildComponent property) or a URI document (URIValue property). A document can be referenced by more than one instance of this class and consequently can be designated as a component in more than one relationship; this capability allows documents to be networked together to form compound documents with numerous components.

The two documents in a component relationship might be bound to each other as a result of that relationship. Document binding means the child component document exists in the child documents collection (ChildDocuments property) for the parent component, and the parent component document exists in the parent documents collection (ParentDocuments property) for the child component. This binding can be conditional; for example, it can be conditional on the value for one of the properties on the child document matching an expected value. Also, the child component can be a URI document instead of a Document object. Consequently, not every component relationship results in a document binding. For more information on component relationship types and which properties you are required to set when you create a new ComponentRelationship object, see the ComponentRelationshipType property.

The two documents in a component relationship do not have to belong to the same object store. Also, these documents can continue to be used and referenced as individual documents, just as if they had never entered into a component relationship with each other.

The parent component document determines security for each instance of this class. Users with write permission (AccessRight.WRITE) to the parent component have the same rights to that component relationship instance. Permission to delete a component relationship instance requires AccessRight.DELETE or AccessRight.UNLINK rights on the parent component document.

Namespace:  FileNet.Api.Core
Assembly:  FileNet.Api (in FileNet.Api.dll)

ToggleSyntax

Visual Basic (Declaration)
Public Interface IComponentRelationship _
	Implements IRepositoryObject, IReplicable, ISubscribable, IIndependentlyPersistableObject,  _
	IIndependentObject, IEngineObject, ICloneable
C#
public interface IComponentRelationship : IRepositoryObject, 
	IReplicable, ISubscribable, IIndependentlyPersistableObject, IIndependentObject, IEngineObject, 
	ICloneable
Visual C++
public interface class IComponentRelationship : IRepositoryObject, 
	IReplicable, ISubscribable, IIndependentlyPersistableObject, IIndependentObject, IEngineObject, 
	ICloneable
JavaScript
FileNet.Api.Core.IComponentRelationship = function();
FileNet.Api.Core.IComponentRelationship.createInterface('FileNet.Api.Core.IComponentRelationship');

ToggleRemarks

Metadata

Auditable: true
AllowsInstances: true
AllowsSubClasses: true
ClassDefinitionName: ReplicableClassDefinition
IsDependent: false
IsHidden: false
Name: Name
Searchable: true
StorageType: ObjectStore
SuperclassName: Replicable

ToggleSee Also