SchemaView.RelationshipClass Class @beta
A relationship class with constraint and strength metadata. Created by createClass()
when the underlying ClassType is Relationship. Use cls.isRelationship() to narrow a
SchemaView.Class to this type.
Extends
Inherited methods
| Name | Inherited from | Description |
|---|---|---|
| assertRelationship(): this is SchemaView.RelationshipClass Inherited | SchemaView.Class | |
| getOwnProperties(): ReadonlyArray<SchemaView.Property> Inherited | SchemaView.Class | Own properties only (not inherited), in ordinal order. |
| getProperties(): ReadonlyArray<SchemaView.Property> Inherited | SchemaView.Class | All properties including inherited, in inheritance order (base first, then mixins, then own). |
| getProperty(name: string): SchemaView.Property | undefined Inherited | SchemaView.Class | Find a property by name (case-insensitive). |
| is(classOrName: string | SchemaView.Class): boolean Inherited | SchemaView.Class | IS-A check. |
| isCustomAttribute(): boolean Inherited | SchemaView.Class | |
| isEntity(): boolean Inherited | SchemaView.Class | |
| isMixin(): boolean Inherited | SchemaView.Class | |
| isRelationship(): this is SchemaView.RelationshipClass Inherited | SchemaView.Class | Type predicate - narrows to SchemaView.RelationshipClass for access to strength, direction, |
| isStruct(): boolean Inherited | SchemaView.Class | |
| isView(): boolean Inherited | SchemaView.Class |
Properties
| Name | Type | Description | |
|---|---|---|---|
| source Accessor ReadOnly | SchemaView.RelConstraint | undefined | ||
| strength Accessor ReadOnly | StrengthType | ||
| strengthDirection Accessor ReadOnly | StrengthDirection | ||
| target Accessor ReadOnly | SchemaView.RelConstraint | undefined |
Inherited properties
| Name | Type | Inherited from | Description |
|---|---|---|---|
| _ctx Protected Readonly Inherited | SchemaView | SchemaView.Class | |
| baseClass Accessor Inherited ReadOnly | SchemaView.Class | undefined | SchemaView.Class | Single base class. undefined for root classes. |
| derivedClasses Accessor Inherited ReadOnly | ReadonlyArray<SchemaView.Class> | SchemaView.Class | Direct derived classes. Expensive on first call (builds reverse map across all classes). |
| description Accessor Inherited ReadOnly | string | SchemaView.Class | |
| ecInstanceId Accessor Inherited ReadOnly | number | SchemaView.Class | Row ID from ec_Class. Matches ECInstanceId in ECDbMeta views, e.g.SELECT * FROM meta.ECClassDef WHERE ECInstanceId = ?. |
| fullName Accessor Inherited ReadOnly | string | SchemaView.Class | "SchemaName:ClassName" - colon-separated, matching the EC class full name convention. Use either ":" or "." as separator when passing to findClass(). |
| isAbstract Accessor Inherited ReadOnly | boolean | SchemaView.Class | |
| isEffectivelyHidden Accessor Inherited ReadOnly | boolean | SchemaView.Class | Computed hidden status that walks the base class chain (not mixins). Returns true if this class is hidden or any ancestor in the base class chain is hidden,unless this class or an intermediate class explicitly breaks the chain with HiddenClass(Show=true) (i.e. isHidden === false).Mixins are intentionally excluded - a hidden mixin represents a hidden capability, not a hidden identity. |
| isHidden Accessor Inherited ReadOnly | boolean | undefined | SchemaView.Class | Reflects the HiddenClass custom attribute from CoreCustomAttributes.Returns true when this class is directly hidden (via HiddenClass(Show!=true) orschema-level HiddenSchema(ShowClasses!=true)). Does NOT consider base class inheritance -use isEffectivelyHidden for that.Note: false means explicitly shown via HiddenClass(Show=true). undefined meansno HiddenClass CA and the schema does not hide its classes. Both are "not hidden" forthis property, but isEffectivelyHidden distinguishes them when walking the hierarchy. |
| isSealed Accessor Inherited ReadOnly | boolean | SchemaView.Class | |
| label Accessor Inherited ReadOnly | string | SchemaView.Class | |
| mixins Accessor Inherited ReadOnly | ReadonlyArray<SchemaView.Class> | SchemaView.Class | Applied mixins in declaration order. Only meaningful for entity classes. |
| modifier Accessor Inherited ReadOnly | ClassModifier | SchemaView.Class | |
| name Accessor Inherited ReadOnly | string | SchemaView.Class | |
| schema Accessor Inherited ReadOnly | SchemaView.Schema | SchemaView.Class | |
| type Accessor Inherited ReadOnly | ClassType | SchemaView.Class |
Defined in
- ecschema-metadata/src/SchemaView.ts Line 644
Last Updated: 27 May, 2026
Found something wrong, missing, or unclear on this page? Raise an issue in our repo.