ElementDrivesTextAnnotation Class @beta

A relationship in which the source element hosts one or more properties that are displayed by a target ITextAnnotation element. This relationship is used to automatically update the FieldRuns contained in the target element when the source element is modified. An ITextAnnotation element should invoke updateFieldDependencies from its onInserted and onUpdated functions to establish or update the relationships required for the FieldRuns it contains.

@note This relationship was introduced in version 01.00.22 of the BisCore schema. FieldRuns created in iModels that have not been upgraded to that version or newer will not automatically update. Use isSupportedForIModel to check.

Extends

Methods

Name Description
constructor(props: ElementDrivesElementProps, iModel: IModelDb): ElementDrivesTextAnnotation Protected    
isSupportedForIModel(iModel: IModelDb): boolean Static Returns true if iModel contains a version of the BisCore schema new enough to support this relationship.  
updateFieldDependencies(annotationElementId: string, iModel: IModelDb): void Static Examines all of the FieldRuns within the specified ITextAnnotation and ensures that the appropriate  

Inherited methods

Name Inherited from Description
collectReferenceIds(referenceIds: EntityReferenceSet): void Protected Inherited ElementDrivesElement Collect the Ids of this entity's references at this level of the class hierarchy.
delete(): void Inherited ElementDrivesElement Delete this Relationship from the iModel.
forEach(func: PropertyHandler, includeCustom: booleantrue): void Inherited ElementDrivesElement Call a function for each property of this Entity.
forEachProperty(func: PropertyCallback, includeCustom: booleantrue): void Inherited ElementDrivesElement Call a function for each property of this Entity.
ElementDrivesElement Query metadata for this relationship class from the iModel's schema.
getReferenceIds(): EntityReferenceSet Inherited ElementDrivesElement Get the set of this entity's entity references, EntityReferenceSet.
insert(): string Inherited ElementDrivesElement Insert this Relationship into the iModel.
toJSON(): ElementDrivesElementProps Inherited ElementDrivesElement Obtain the JSON representation of this Entity.
update(): void Inherited ElementDrivesElement Update this Relationship in the iModel.
create<T extends ElementDrivesElement>(iModel: IModelDb, sourceId: string, targetId: string, priority: number0): T Static Inherited ElementDrivesElement  
deserialize(props: DeserializeEntityArgs): EntityProps Static Inherited ElementDrivesElement Converts an ECSqlRow of an Entity to an EntityProps.
getInstance<T extends Relationship>(iModel: IModelDb, criteria: string | SourceAndTarget): T Static Inherited ElementDrivesElement  
is(otherClass: ): boolean Static Inherited ElementDrivesElement return whether this Entity class is a subclass of another Entity class
serialize(props: EntityProps, _iModel: IModelDb): ECSqlRow Static Inherited ElementDrivesElement Converts an EntityProps to an ECSqlRow.

Properties

Name Type Description
className Accessor Static ReadOnly string The name of the BIS class associated with this class.  

Inherited properties

Name Type Inherited from Description
_customHandledProps Protected Static Readonly Inherited CustomHandledProperty[] ElementDrivesElement List of properties that are need to be custom handled during deserialization and serialization.
EntityClass | RelationshipClass ElementDrivesElement Cached Metadata for the ECClass
classFullName Accessor Inherited ReadOnly string ElementDrivesElement Get the full BIS class name of this Entity in the form "schema:class".
classFullName Accessor Static Inherited ReadOnly string ElementDrivesElement Get the full BIS class name of this Entity in the form "schema:class"
className Accessor Inherited ReadOnly string ElementDrivesElement The name of the BIS class associated with this class.
id Inherited string ElementDrivesElement The Id of this Entity.
iModel Inherited IModelDb ElementDrivesElement The IModelDb that contains this Entity
isInstanceOfEntity Readonly Inherited "true" ElementDrivesElement An immutable property used to discriminate between Entity and EntityProps, used to inform the TypeScript compiler that these two types
priority Inherited number ElementDrivesElement Affects the order in which relationships are processed in the case where two relationships have the same output.
schema Static Inherited ElementDrivesElement The Schema that defines this class.
schemaItemKey Accessor Inherited ReadOnly SchemaItemKey ElementDrivesElement Get the item key used by the ecschema-metadata package to identify this entity class
schemaItemKey Accessor Static Inherited ReadOnly SchemaItemKey ElementDrivesElement Serves as a unique identifier for this class. Typed variant of classFullName.
schemaName Accessor Inherited ReadOnly string ElementDrivesElement The name of the BIS Schema that defines this class
sourceId Readonly Inherited string ElementDrivesElement  
status Inherited number ElementDrivesElement Relationship status
targetId Readonly Inherited string ElementDrivesElement  

Defined in

Last Updated: 29 July, 2025