RelationshipConstraint Class @beta
A Typescript class representation of a ECRelationshipConstraint.
Implements
Methods
| Name | Description | |
|---|---|---|
| constructor(relClass: RelationshipClass, relEnd: RelationshipEnd, roleLabel?: string, polymorphic?: boolean): RelationshipConstraint | ||
| addClass(constraint: EntityClass | Mixin | RelationshipClass): void | Adds the provided class as a constraint class to this constraint. | |
| addCustomAttribute(customAttribute: CustomAttribute): void Protected | ||
| fromJSON(relationshipConstraintProps: RelationshipConstraintProps): Promise<void> | ||
| fromJSONSync(relationshipConstraintProps: RelationshipConstraintProps): void | ||
| removeClass(constraint: EntityClass | Mixin | RelationshipClass): void Protected | Removes the provided class as a constraint class from this constraint. | |
| supportsClass(ecClass: ECClass): Promise<boolean> | Indicates if the provided ECClass is supported by this RelationshipConstraint. | |
| toJSON(): RelationshipConstraintProps | Save this RelationshipConstraint's properties to an object for serializing to JSON. | |
| classCompatibleWithConstraint(constraintClass: ECClass, testClass: ECClass, isPolymorphic: boolean): Promise<boolean> Static | Indicates if an ECClass is of the type or applies to the type (if a mixin) of the ECClass specified by the constraintClass parameter. | 
Properties
| Name | Type | Description | |
|---|---|---|---|
| _abstractConstraint Protected | LazyLoadedRelationshipConstraintClass | undefined | ||
| _constraintClasses Protected | LazyLoadedRelationshipConstraintClass[] | undefined | ||
| _multiplicity Protected | RelationshipMultiplicity | undefined | ||
| _polymorphic Protected | boolean | undefined | ||
| _relationshipClass Protected | RelationshipClass | ||
| _relationshipEnd Protected | RelationshipEnd | ||
| _roleLabel Protected | string | undefined | ||
| abstractConstraint Accessor | undefined | LazyLoadedRelationshipConstraintClass | ||
| abstractConstraint Setter | abstractConstraint(abstractConstraint: LazyLoadedRelationshipConstraintClass): void | ||
| constraintClasses Accessor ReadOnly | undefined | LazyLoadedRelationshipConstraintClass[] | ||
| customAttributes Accessor ReadOnly | undefined | | ||
| fullName Accessor ReadOnly | string | Returns the constraint name, ie. | |
| isSource Accessor ReadOnly | boolean | True if this RelationshipConstraint is the Source relationship end. | |
| multiplicity Accessor | RelationshipMultiplicity | ||
| multiplicity Setter | multiplicity(multiplicity: RelationshipMultiplicity): void | ||
| polymorphic Accessor | boolean | ||
| polymorphic Setter | polymorphic(polymorphic: boolean): void | ||
| relationshipClass Accessor ReadOnly | RelationshipClass | ||
| relationshipEnd Accessor | RelationshipEnd | ||
| relationshipEnd Setter | relationshipEnd(relationshipEnd: RelationshipEnd): void | ||
| roleLabel Accessor | undefined | string | ||
| roleLabel Setter | roleLabel(roleLabel: string): void | ||
| schema Accessor ReadOnly | Schema | Returns the schema of the RelationshipClass. | 
Defined in
Last Updated: 24 June, 2025
Found something wrong, missing, or unclear on this page? Raise an issue in our repo.