Share via


Microsoft.Data.Schema.SchemaModel Namespace

This namespace houses the various base and core types for the Schema Model. The Schema Model makes up an important part of the DSP implementation, and there are many types of interest in this section.

Classes

  Class Description
Public class AnnotationClass The metadata class for annotations.
Public class DataSchemaModel The DataSchemaModel is a specialization of the ModelStore. All DSPs must implement a class that inherits this base class.
Public class ElementClass The metadata class for elements.
Public class ElementSource Provides information about the model element source.
Public class IdentifierGroup This class defines an identifier group. Every element belongs to an identifier group.
Public class ModelCollation Defines the type of model collations.
Public class ModelElementOwnerInfo Represents model element owner information.
Public class ModelStore Implements physical storage for a SchemaModel instance.
Public class ModelStore.Annotation Used as a proxy to the annotation.
Public class ModelStore.Identifier Used as a proxy to the identifier.
Public class PropertyClass Represents the metadata class for properties.
Public class PropertyContainerClass Represents the class of an entity, which can contain properties.
Public class RelationshipClass The metadata class for relationships.
Public class RelationshipEntrySource Holds information about a relationship entry source.

Interfaces

  Interface Description
Public interface IExternalReferenceParts Represents the parts that define the external reference.
Public interface IModelAnnotation Represents the model annotations used to store feature-specific information on store elements.
Public interface IModelAnnotationHolder Represents the class that has annotations.
Public interface IModelElement The elements in the model derive from this interface.
Public interface IModelEntity Represents an entity linked to a ModelStore.
Public interface IModelMultiRelationship<TRelating, TRelated> Used to add multiple relationships.
Public interface IModelNamed The elements in the model that are named should derive from this interface.
Public interface IModelPropertyContainer Represents an entity, which can contain properties.
Public interface IModelRelationship Used to get both sides of a relationship.
Public interface IModelRelationship<TRelating, TRelated> Used to get both sides of a relationship.
Public interface IModelRelationshipEntry Represents a reference from one element to another, which might be unresolved.
Public interface IModelReverseMultiRelationship<TRelating, TRelated> Represents the reverse multi relationship.
Public interface IModelReverseSingleRelationship<TRelating, TRelated> Represents the reverse single relationship.
Public interface IModelSingleRelationship<TRelating, TRelated> If this interface is used, there can be a single element on the right side.
Public interface IScriptSourcedElement Interface for all Model Elements that have an element script source.

Enumerations

  Enumeration Description
Public enumeration ElementQueryFilter This enumeration is used to specify the desired elements.
Public enumeration ModelElementResolutionStatus Specifies the model element resolution status.
Public enumeration ModelElementValidationStatus Specifies the model element validation status.
Public enumeration ModelRelationshipCardinalityStyle Defines the cardinality style of a relationship.
Public enumeration ModelRelationshipType Defines the type of relationship.