API Reference > ecschema-metadata > All ecschema-metadata Classes Name Description ArrayProperty Beta BaseDiagnostic The abstract base class for all IDiagnostic implementations. Beta ClassDiagnostic An IDiagnostic implementation used for ECClass diagnostics. Beta Constant A Constant is a specific type of Unit that represents a number. Beta CustomAttributeClass A Typescript class representation of an ECCustomAttributeClass. Beta CustomAttributeContainerDiagnostic An IDiagnostic implementation used for CustomAttributeContainerProps diagnostics. Beta DelayedPromise Similar to a normal Promise, a DelayedPromise represents the eventual completion (or failure) Beta ECClass A common abstract class for all of the ECClass types. Beta ECName The name of an item in a Schema, encoded to meet restrictions on the characters usable in such names. ECVersion Beta EntityClass A Typescript class representation of an ECEntityClass. Beta Enumeration A Typescript class representation of an ECEnumeration. Beta EnumerationArrayProperty Beta EnumerationProperty Beta Format Beta FormatDiagnosticReporter An abstract SuppressionDiagnosticReporter implementation that formats the Beta InvertedUnit An InvertedUnit is a specific type of Unit that describes the inverse of a single Unit whose dimensional derivation is unit-less. Beta KindOfQuantity A Typescript class representation of a KindOfQuantity. Beta LoggingDiagnosticReporter An IDiagnosticReporter for logging IDiagnostic objects. Beta Mixin A Typescript class representation of a Mixin. Beta NavigationProperty Beta OverrideFormat Overrides of a Format, from a Schema, and is SchemaItem that is used specifically on KindOfQuantity. Beta Phenomenon Beta PrimitiveArrayProperty Beta PrimitiveOrEnumPropertyBase Beta PrimitiveProperty Beta Property A common abstract class for all ECProperty types. Beta PropertyCategory Beta PropertyDiagnostic An IDiagnostic implementation used for Property diagnostics. Beta RelationshipClass A Typescript class representation of a ECRelationshipClass. Beta RelationshipConstraint A Typescript class representation of a ECRelationshipConstraint. Beta RelationshipConstraintDiagnostic An IDiagnostic implementation used for RelationshipConstraint diagnostics. Beta RelationshipMultiplicity Beta Schema Beta SchemaCache Beta SchemaContext The SchemaContext, context object is used to facilitate schema and schema item location. Beta SchemaDiagnostic An IDiagnostic implementation used for Schema diagnostics. Beta SchemaGraph Utility class for detecting cyclic references in a Schema graph. Beta SchemaItem An abstract class that supplies all of the common parts of a SchemaItem. Beta SchemaItemDiagnostic An IDiagnostic implementation used for SchemaItem diagnostics. Beta SchemaItemKey The SchemaItemKey contains a SchemaItem's name and SchemaKey. Beta SchemaKey The SchemaKey contains a Schemas name and version. Beta SchemaMap Beta SchemaPartVisitorDelegate A helper class to call methods on the provided ISchemaPartVisitor. Beta SchemaValidater Applies EC Rules, see ECRuleSet, to a given Schema and reports any violations. Beta SchemaValidationVisitor A SchemaWalkerVisitor interface implementation that is used to validate ECObjects schemas using Beta StructArrayProperty Beta StructClass A Typescript class representation of an ECStructClass. Beta StructProperty Beta SuppressionDiagnosticReporter An abstract base class for IDiagnosticReporter implementation that used the Beta Unit An abstract class that adds the ability to define Units and everything that goes with them, within an ECSchema as a Beta UnitSystem Beta Constants Name Description DelayedPromiseWithProps Beta DiagnosticCodes The unique diagnostic codes for ECObjects rules. Beta Diagnostics The list of IDiagnostic implementation classes used by the EC rule implementations. Beta ECRuleSet All schema validation rules that fall under the category of ECObjects. Beta SchemaCompareCodes The unique diagnostic codes for Schema comparison. Beta SchemaCompareDiagnostics The list of IDiagnostic implementation classes used by the Schema comparison framework. Beta Enumerations Name Description CustomAttributeContainerType Defines the valid CustomAttribute container types. Beta DecimalPrecision Beta DiagnosticCategory Defines the possible diagnostic categories. Beta DiagnosticType Defines the possible diagnostic types. Beta ECClassModifier Beta ECObjectsStatus Beta FormatTraits Beta FormatType Beta FractionalPrecision Beta PrimitiveType Primitive data types for ECProperties. Beta PropertyType Beta RelationshipEnd Identifer for an ECRelationshipConstraint. Beta SchemaItemType Beta SchemaMatchType Defines what sort of match should be used when locating a schema. Beta ScientificType Beta ShowSignOption Beta StrengthDirection Beta StrengthType Beta Global Functions Name Description classModifierToString Beta containerTypeToString Creates a string representing a valid CustomAttributeContainerType. Beta createClassDiagnosticClass Helper method for creating ClassDiagnostic child classes. Beta createCustomAttributeContainerDiagnosticClass Helper method for creating CustomAttributeContainerDiagnostic child classes. Beta createPropertyDiagnosticClass Helper method for creating PropertyDiagnostic child classes. Beta createRelationshipConstraintDiagnosticClass Helper method for creating RelationshipConstraintDiagnostic child classes. Beta createSchemaDiagnosticClass Helper method for creating SchemaDiagnostic child classes. Beta createSchemaItemDiagnosticClass Helper method for creating SchemaItemDiagnostic child classes. Beta diagnosticCategoryToString Beta diagnosticTypeToString Beta parseClassModifier Parses the provided string into an ECClassModifier if the string is a valid modifier. Beta parseCustomAttributeContainerType Parses the given string into the appropriate CustomAttributeContainerType if the string is valid. Beta parsePrimitiveType Tries to parse the given string as one of the 10 primitive types. Beta parseRelationshipEnd Beta parseSchemaItemType Tries to parse the given string as one of the 8 schema item types. Beta parseStrength Takes a string representing a StrengthType, will parse it and return the corresponding StrengthType. Beta parseStrengthDirection Beta primitiveTypeToString Beta propertyTypeToString Beta relationshipEndToString Beta schemaItemTypeToString Converts a valid SchemaItemType to a display string. Beta serializeCustomAttributes Beta strengthDirectionToString Beta strengthToString Beta validateCustomAttributeInstance Validates a custom attribute instance and yields EC-500, EC-501, and EC-502 rule violations. validateNavigationProperty Validates Navigation Properties. validateSchemaReferences Validates schema references against multiple EC rules. validateSchemaReferencesSync Interfaces Name Description ArrayPropertyProps Beta BaseRuleSuppressionMap Interface used to represent elements of a rule suppression Deprecated ClassProps Beta ConstantProps Beta CustomAttribute Beta CustomAttributeClassProps Beta CustomAttributeContainerProps Beta CustomAttributeSet Beta DelayedPromiseWithPropsConstructor Beta EntityClassProps Beta EnumerationPropertyProps Beta EnumerationProps Beta Enumerator Beta EnumeratorProps Beta FormatProps Beta IDiagnostic The interface implemented by all diagnostics used during schema validation. Beta IDiagnosticReporter Interface used to report IDiagnostic objects created during schema validation. Beta InvertedUnitProps Beta IRuleSet Interface used to represent logical collection of IRule instances. Beta IRuleSuppressionMap Interface used to represent elements of a rule suppression Beta IRuleSuppressionSet Interface used to represent logical collection of ISuppressionRule instances. Beta ISchemaItemLocater Beta ISchemaLocater The interface defines what is needed to be a ISchemaLocater, which are used in a SchemaContext. Beta ISchemaPartVisitor Interface to allow schema traversal/deserialization workflows to visit Beta KindOfQuantityProps Beta MixinProps Beta NavigationPropertyProps Beta NoDelayedPromiseMethods Beta PhenomenonProps Beta PrimitiveArrayPropertyProps Beta PrimitiveOrEnumPropertyBaseProps Beta PrimitivePropertyProps Beta PropertyCategoryProps Beta PropertyProps Beta ReferenceCycle Beta RelationshipClassProps Beta RelationshipConstraintProps Beta SchemaItemProps Beta SchemaKeyProps JSON Object interface used to deserialize into a SchemaKey. Beta SchemaProps Beta SchemaReferenceProps Beta StructArrayPropertyProps Beta StructPropertyProps Beta UnitProps Beta Namespaces Name Description PropertyTypeUtils Beta XmlSerializationUtils Namespace holding utility functions for serializing EC types to the EC XML format. Beta Type Aliases Name Description AnyArrayProperty Beta AnyClass Beta AnyClassProps Beta AnyDiagnostic Type which encapsulates all possible diagnostics. Beta AnyECType Beta AnyEnumerationProperty Beta AnyEnumerator Beta AnyPrimitiveProperty Beta AnyProperty Beta AnyPropertyProps Beta AnyRuleSuppressionMap AnySchemaItem Beta AnySchemaItemProps Beta AnyStructProperty Beta BaseRule Beta BaseSuppressionRule Beta DelayedPromiseWithProps Define the type of a DelayedPromiseWithProps instance Beta IRule ISuppressionRule LazyLoadedConstant Beta LazyLoadedCustomAttributeClass Beta LazyLoadedECClass Beta LazyLoadedEntityClass Beta LazyLoadedEnumeration Beta LazyLoadedFormat Beta LazyLoadedInvertedUnit Beta LazyLoadedKindOfQuantity Beta LazyLoadedMixin Beta LazyLoadedPhenomenon Beta LazyLoadedPropertyCategory Beta LazyLoadedRelationshipClass Beta LazyLoadedRelationshipConstraintClass Beta LazyLoadedSchema Beta LazyLoadedSchemaItem Beta LazyLoadedStructClass Beta LazyLoadedUnit Beta LazyLoadedUnitSystem Beta StructClassProps Beta UnitSystemProps Beta Last Updated: 11 June, 2024