Subject Class

A Subject is an information element that describes what this repository (or part thereof) is about. See [how to create a Subject element]$(docs/learning/backend/CreateElements.md#Subject).

Extends

Implements

Methods

Name Description
create(iModelDb: IModelDb, parentSubjectId: string, name: string, description?: string): Subject Static Create a Subject  
createCode(iModelDb: IModelDb, parentSubjectId: string, codeValue: string): Code Static Create a Code for a Subject given a name that is meant to be unique within the scope of its parent Subject.  
insert(iModelDb: IModelDb, parentSubjectId: string, name: string, description?: string): string Static Insert a Subject  

Inherited methods

Name Inherited from Description
buildConcurrencyControlRequest(opcode: DbOpcode): void InformationReferenceElement Add a request for locks, code reservations, and anything else that would be needed to carry out the specified operation.
collectPredecessorIds(predecessorIds: Id64Set): void Protected InformationReferenceElement Collect the Ids of this element's predecessors at this level of the class hierarchy.
delete(): void InformationReferenceElement Delete this Element from the iModel.
forEachProperty(func: PropertyCallback, includeCustom: boolean = true): void InformationReferenceElement Call a function for each property of this Entity.
InformationReferenceElement Get the class metadata for this element.
getDisplayLabel(): string InformationReferenceElement Get a display label for this Element.
getJsonProperty(nameSpace: string): any InformationReferenceElement Get a JSON property of this element, by namespace
getPredecessorIds(): Id64Set InformationReferenceElement Get the Ids of this element's predecessors.
getToolTipMessage(): string[] InformationReferenceElement Get a list of HTML strings that describe this Element for the tooltip.
getUserProperties(namespace: string): any InformationReferenceElement Get a set of JSON user properties by namespace
insert(): string InformationReferenceElement Insert this Element into the iModel.
removeUserProperties(nameSpace: string): void InformationReferenceElement Remove a set of JSON user properties, specified by namespace, from this Element
setJsonProperty(nameSpace: string, value: any): void InformationReferenceElement  
setUserProperties(nameSpace: string, value: any): void InformationReferenceElement Change a set of user JSON properties of this Element by namespace.
update(): void InformationReferenceElement Update this Element in the iModel.
is(otherClass: undefined): boolean Static InformationReferenceElement return whether this Entity class is a subclass of another Entity class
onAllInputsHandled(_id: string, _iModel: IModelDb): void ProtectedStatic InformationReferenceElement Called on an element in a graph after all of its inputs have been processed and before its outputs are processed.
onBeforeOutputsHandled(_id: string, _iModel: IModelDb): void ProtectedStatic InformationReferenceElement Called when a root element in a subgraph is changed and before its outputs are processed.
onChildAdd(_arg: OnChildElementPropsArg): void ProtectedStatic InformationReferenceElement Called when an existing element is about to be updated so that an instance of this class will become its new parent.
onChildAdded(_arg: OnChildElementIdArg): void ProtectedStatic InformationReferenceElement Called after an existing element has been updated so that an instance of this class is its new parent.
onChildDelete(_arg: OnChildElementIdArg): void ProtectedStatic InformationReferenceElement Called when an element with an instance of this class as its parent is about to be deleted.
onChildDeleted(_arg: OnChildElementIdArg): void ProtectedStatic InformationReferenceElement Called after an element with an instance of this class as its parent was successfully deleted.
onChildDrop(_arg: OnChildElementIdArg): void ProtectedStatic InformationReferenceElement Called when an element with an instance of this class as its parent is about to be updated change to a different parent.
onChildDropped(_arg: OnChildElementIdArg): void ProtectedStatic InformationReferenceElement Called after an element with an instance of this class as its previous parent was updated to have a new parent.
onChildInsert(_arg: OnChildElementPropsArg): void ProtectedStatic InformationReferenceElement Called when a new element with an instance of this class as its parent is about to be inserted.
onChildInserted(_arg: OnChildElementIdArg): void ProtectedStatic InformationReferenceElement Called after a new element with an instance of this class as its parent was inserted.
onChildUpdate(_arg: OnChildElementPropsArg): void ProtectedStatic InformationReferenceElement Called when an element with an instance of this class as its parent is about to be updated.
onChildUpdated(_arg: OnChildElementIdArg): void ProtectedStatic InformationReferenceElement Called after an element with an instance of this the class as its parent was updated.
onCloned(_context: IModelCloneContext, _sourceProps: ElementProps, _targetProps: ElementProps): void ProtectedStatic InformationReferenceElement Called during the iModel transformation process after an Element from the source iModel was cloned for the target iModel.
onDelete(arg: OnElementIdArg): void ProtectedStatic InformationReferenceElement Called before an Element is deleted.
onDeleted(_arg: OnElementIdArg): void ProtectedStatic InformationReferenceElement Called after an Element was deleted.
onInsert(arg: OnElementPropsArg): void ProtectedStatic InformationReferenceElement Called before a new Element is inserted.
onInserted(arg: OnElementIdArg): void ProtectedStatic InformationReferenceElement Called after a new Element was inserted.
onSubModelDelete(_arg: OnSubModelIdArg): void ProtectedStatic InformationReferenceElement Called when a sub-model of an instance of this class is being deleted.
onSubModelDeleted(_arg: OnSubModelIdArg): void ProtectedStatic InformationReferenceElement Called after a sub-model of an instance of this class was deleted.
onSubModelInsert(_arg: OnSubModelPropsArg): void ProtectedStatic InformationReferenceElement Called when an instance of this class is being sub-modeled by a new Model.
onSubModelInserted(_arg: OnSubModelIdArg): void ProtectedStatic InformationReferenceElement Called after an instance of this class was sub-modeled by a new Model.
onUpdate(arg: OnElementPropsArg): void ProtectedStatic InformationReferenceElement Called before an Element is updated.
onUpdated(arg: OnElementIdArg): void ProtectedStatic InformationReferenceElement Called after an Element was updated.
populateRequest(req: ConcurrencyControl.Request, props: ElementProps, iModel: IModelDb, opcode: DbOpcode, original: undefined | ElementProps): void Static InformationReferenceElement Disclose the codes and locks needed to perform the specified operation on this element

Properties

Name Type Description
description undefined | string    

Inherited properties

Name Type Inherited from Description
classFullName Accessor ReadOnly string InformationReferenceElement Get the full BIS class name of this Entity in the form "schema:class".
classFullName Accessor StaticReadOnly string InformationReferenceElement Get the full BIS class name of this Entity in the form "schema:class"
className Accessor ReadOnly string InformationReferenceElement The name of the BIS class associated with this class.
code Code InformationReferenceElement The Code for this element
federationGuid undefined | string InformationReferenceElement A FederationGuid assigned to this element by some other federated database
id string InformationReferenceElement The Id of this Entity.
iModel IModelDb InformationReferenceElement The IModelDb that contains this Entity
jsonProperties Readonly { T } InformationReferenceElement Optional json properties of this element.
model Readonly string InformationReferenceElement The ModelId of the Model containing this element
parent undefined | RelatedElement InformationReferenceElement The parent element, if present, of this element.
schema Static undefined InformationReferenceElement The Schema that defines this class.
schemaName Accessor ReadOnly string InformationReferenceElement The name of the BIS Schema that defines this class
userLabel undefined | string InformationReferenceElement A user-assigned label for this element.

Defined in

Last Updated: 12 June, 2024