API Reference > ecschema-metadata > SchemaPartVisitorDelegate > ISchemaPartVisitor ISchemaPartVisitor Interface Beta Interface to allow schema traversal/deserialization workflows to visit each part, item, class, etc. that exists in a given schema. Implemented by SchemaValidationVisitor Methods Name Description visitClass(ecClass: AnyClass): Promise<void> Optional Called for each AnyClass instance. visitClassSync(ecClass: AnyClass): void Optional Called for each AnyClass instance. visitConstant(constant: Constant): Promise<void> Optional Called for each Constant instance. visitConstantSync(constant: Constant): void Optional Called for each Constant instance. visitCustomAttributeClass(customAttributeClass: CustomAttributeClass): Promise<void> Optional Called for each CustomAttributeClass instance. visitCustomAttributeClassSync(customAttributeClass: CustomAttributeClass): void Optional Called for each CustomAttributeClass instance. visitCustomAttributeContainer(customAttributeContainer: CustomAttributeContainerProps): Promise<void> Optional Called for each CustomAttribute container in the schema. visitCustomAttributeContainerSync(customAttributeContainer: CustomAttributeContainerProps): void Optional Called for each CustomAttribute container in the schema. visitEmptySchema(schema: Schema): Promise<void> Optional Called for a partially loaded schema. visitEmptySchemaSync(schema: Schema): void Optional Called for a partially loaded schema. visitEntityClass(entityClass: EntityClass): Promise<void> Optional Called for each EntityClass instance. visitEntityClassSync(entityClass: EntityClass): void Optional Called for each EntityClass instance. visitEnumeration(enumeration: Enumeration): Promise<void> Optional Called for each Enumeration instance. visitEnumerationSync(enumeration: Enumeration): void Optional Called for each Enumeration instance. visitFormat(format: Format): Promise<void> Optional Called for each Format instance. visitFormatSync(format: Format): void Optional Called for each Format instance. visitFullSchema(schema: Schema): Promise<void> Optional Called for a fully loaded schema. visitFullSchemaSync(schema: Schema): void Optional Called for a fully loaded schema. visitInvertedUnit(invertedUnit: InvertedUnit): Promise<void> Optional Called for each InvertedUnit instance. visitInvertedUnitSync(invertedUnit: InvertedUnit): void Optional Called for each InvertedUnit instance. visitKindOfQuantity(koq: KindOfQuantity): Promise<void> Optional Called for each KindOfQuantity instance. visitKindOfQuantitySync(koq: KindOfQuantity): void Optional Called for each KindOfQuantity instance. visitMixin(mixin: Mixin): Promise<void> Optional Called for each Mixin instance. visitMixinSync(mixin: Mixin): void Optional Called for each Mixin instance. visitPhenomenon(phenomena: Phenomenon): Promise<void> Optional Called for each Phenomenon instance. visitPhenomenonSync(phenomena: Phenomenon): void Optional Called for each Phenomenon instance. visitProperty(property: AnyProperty): Promise<void> Optional Called for each AnyProperty instance of an ECClass. visitPropertyCategory(category: PropertyCategory): Promise<void> Optional Called for each PropertyCategory instance. visitPropertyCategorySync(category: PropertyCategory): void Optional Called for each PropertyCategory instance. visitPropertySync(property: AnyProperty): void Optional Called for each AnyProperty instance of an ECClass. visitRelationshipClass(relationshipClass: RelationshipClass): Promise<void> Optional Called for each RelationshipClass instance. visitRelationshipClassSync(relationshipClass: RelationshipClass): void Optional Called for each RelationshipClass instance. visitRelationshipConstraint(relationshipConstraint: RelationshipConstraint): Promise<void> Optional Called for each RelationshipConstraint of each RelationshipClass. visitRelationshipConstraintSync(relationshipConstraint: RelationshipConstraint): void Optional Called for each RelationshipConstraint of each RelationshipClass. visitSchemaItem(schemaItem: SchemaItem): Promise<void> Optional Called for each SchemaItem instance. visitSchemaItemSync(schemaItem: SchemaItem): void Optional Called for each SchemaItem instance. visitStructClass(structClass: StructClass): Promise<void> Optional Called for each StructClass instance. visitStructClassSync(structClass: StructClass): void Optional Called for each StructClass instance. visitUnit(unit: Unit): Promise<void> Optional Called for each Unit instance. visitUnitSync(unit: Unit): void Optional Called for each Unit instance. visitUnitSystem(unitSystem: UnitSystem): Promise<void> Optional Called for each UnitSystem instance. visitUnitSystemSync(unitSystem: UnitSystem): void Optional Called for each UnitSystem instance. Defined in core/ecschema-metadata/src/SchemaPartVisitorDelegate.ts Line 32 Last Updated: 12 June, 2024