Microsoft.Data.Edm Defines a location in a XML file. Represents the location of an Edm item. Gets a string representation of the location. A string representation of the location. Gets a string representation of the location. A string representation of the location. Gets the line number in the file. Gets the position in the line. Exception type representing a failure to parse an EDM document. Carries the set of errors along with it. Initializes a new instance of the class. The errors encountered while parsing. Prevents a default instance of the class from being created. The parse errors. Constructs an appropriate exception message from the set of parsing errors. The parse errors. The exception message. Gets the set of errors that were encountered while parsing. Specifies what target of an EDMX file. The target is Entity Framework. The target is OData. Contains xml parsing methods for Edm. Common base type for a CSDL expression. Common base class for CSDL elements. Represents a CSDL Collection expression. Represents a CSDL enumeration type member. Common base class for all named CSDL elements. Base class for CSDL elements that have documentation. Gets or sets the underlying type value of the member. Value can be null only during deserialization of the declaring enumeration type. When the type's deserialization is complete, all its members get their values assigned. Represents a CSDL enumeration type. Represents a CSDL Path expression. Common base type for a CSDL type or value annotation. Represents a CSDL Annotations element. Represents a CSDL collection type. Represents an inline type expression, such as , and in the context of . Note that nominal type declarations, such as entity, complex, association and primitive types, are not considered to be type expressions in the context of - these types are handled in . Represents a CSDL constant expression. Represents a CSDL property value in an annotation. Represents a CSDL Record expression. Represents a reference to a CSDL primitive type. Represents a CSDL type reference based on a type referenced by name. Base type for the two kinds of type reference: and . Represents a semantically invalid EDM enumeration type. Represents an invalid EDM element. Common base interface for all EDM elements. Defines an Edm component who is invalid or whose validity is unknown at construction Gets an error if one exists with the current object. Represents an element that can be targeted by Vocabulary Annotations Represents the definition of an EDM type. Gets the kind of this type. Represents a definition of an EDM enumeration type. Represents an EDM type defined in an EDM schema. Common base interface for all named children of EDM schemata. Common base interface for all named EDM elements. Gets the name of this element. Gets the kind of this schema element. Gets the namespace this schema element belongs to. Gets the underlying type of this enumeration type. Gets the members of this enumeration type. Gets a value indicating whether the enumeration type can be treated as a bit field. Common base class for all EDM elements. Term to which an annotation can bind. Gets the kind of a term. Represents a definition of an EDM entity type. Common base interface for definitions of EDM structured types. Searches for a structural or navigation property with the given name in this type and all base types and returns null if no such property exists. The name of the property being found. The requested property, or null if no such property exists. Gets a value indicating whether this type is abstract. Gets a value indicating whether this type is open. Gets the base type of this type. Gets the properties declared immediately within this type. Gets the structural properties of the entity type that make up the entity key. Common base class for CsdlSemantics classes that have Annotations. Interface for all EDM elements that can be located. Gets the location of this element. Allocates a new list if needed, and adds the item to the list. Type of the list. List to add the item to. Item being added. List containing then new item. Represents an EDM expression. Gets the kind of this expression. Represents an EDM function application expression. Gets the applied function. Gets the arguments to the function. Represents an EDM type assertion expression. Gets the expression for which the type is asserted. Gets the asserted type. Provides semantics for a Csdl collection expression. Represents an EDM multi-value construction expression. Gets the declared type of the collection, or null if there is no declared type. Gets the constructed element values. Provides semantics for a Csdl datetime with offset constant expression. Represents an EDM datetime with offset constant expression. Represents an EDM datetime with offset value. Represents an EDM primitive value. Represents an EDM value. Gets the type of this value. Gets the kind of this value. Gets the definition of this value. Provides a CSDL-specific annotations manager. Direct-value annotations manager provides services for setting and getting transient annotations on elements. An object representing transient annotations is in one of these states: 1) Null, if the element has no transient annotations. 2) An EdmAnnotation, if the element has exactly one annotation. 3) A list of EdmAnnotation, if the element has more than one annotation. If the speed of annotation lookup for elements with many annotations becomes a concern, another option including a dictionary is possible. Manages getting and setting direct value annotations on EDM elements. Gets annotations associated with an element. The annotated element. The direct value annotations for the element. Sets an annotation value for an EDM element. If the value is null, no annotation is added and an existing annotation with the same name is removed. The annotated element. Namespace that the annotation belongs to. Name of the annotation within the namespace. The value of the annotation. Sets a set of annotation values. If a supplied value is null, no annotation is added and an existing annotation with the same name is removed. The annotations to set Retrieves an annotation value for an EDM element. Returns null if no annotation with the given name exists for the given element. The annotated element. Namespace that the annotation belongs to. Local name of the annotation. Returns the annotation value that corresponds to the provided name. Returns null if no annotation with the given name exists for the given element. Retrieves a set of annotation values. For each requested value, returns null if no annotation with the given name exists for the given element. The set of requested annotations Returns values that correspond to the provided annotations. A value is null if no annotation with the given name exists for the given element. Keeps track of transient annotations on elements. Used for locking during updates to the annotations dictionary; Elements for which normal comparison failed to produce a valid result, arbitrarily ordered to enable stable comparisons. Used for locking during updates to the unsorted elements list. Initializes a new instance of the class. Gets annotations associated with an element. The annotated element. The immediate value annotations for the element. Sets an annotation value for an EDM element. If the value is null, no annotation is added and an existing annotation with the same name is removed. The annotated element. Namespace that the annotation belongs to. Name of the annotation within the namespace. New annotation to set. Sets a set of annotation values. If a supplied value is null, no annotation is added and an existing annotation with the same name is removed. The annotations to set Retrieves an annotation value for an EDM element. Returns null if no annotation with the given name exists for the given element. The annotated element. Namespace that the annotation belongs to. Local name of the annotation. Returns the annotation that corresponds to the provided name. Returns null if no annotation with the given name exists for the given element. Retrieves a set of annotation values. For each requested value, returns null if no annotation with the given name exists for the given element. The set of requested annotations Returns values that correspond to the provided annotations. A value is null if no annotation with the given name exists for the given element. Retrieves the annotations that are directly attached to an element. The element in question. The annotations that are directly attached to an element (outside the control of the manager). Retrieves the transient annotations for an EDM element. The annotated element. The dictionary for looking up the element's annotations. The transient annotations for the element, in a form managed by the annotations manager. This method is static to guarantee that the annotations dictionary is not fetched more than once per lookup operation. Represents an EDM entity set reference expression. Gets the referenced entity set. Represents an EDM enumeration member reference expression. Gets the referenced enum member. Represents an EDM function reference expression. Gets the referenced function. Provides semantics for a Csdl guid constant expression. Represents an EDM guid constant expression. Represents an EDM integer value. Gets the definition of this guid value. Provides semantics for a Csdl binary constant expression. Represents an EDM binary constant expression. Represents an EDM binary value. Gets the definition of this binary value. Represents an EDM if expression. Gets the test expression. Gets the expression to evaluate if evaluates to true. Gets the expression to evaluate if evaluates to false. Represents an EDM type test expression. Gets the expression whose type is to be tested. Gets the type to be tested against. Represents an EDM labeled expression element. Gets the underlying expression. Represents a reference to an EDM labeled expression. Gets the referenced expression. Provides semantics for a CsdlDirectValueAnnotation. Represents an EDM annotation with an immediate value. Gets the namespace Uri of the annotation. Gets the value of this annotation. Provides semantics for a CsdlEnumMember. Represents a definition of an EDM enumeration type member. Gets the value of this enumeration type member. Gets the type that this member belongs to. Provides semantics for CsdlEnumType. Common base class for the semantics of EDM types. Represents a CSDL type annotation. Represents a CSDL value annotation. Represents a CSDL value term. Provides semantics for an out-of-line CSDL Annotations. Provides semantics for a Csdl Bool constant expression. Represents an EDM boolean constant expression. Represents an EDM boolean value. Gets a value indicating whether the value of this boolean value is true or false. Provides semantics for CsdlCollectionType. Represents a definition of an EDM collection type. Gets the element type of this collection. Provides semantics for . Represents a references to a type. Gets a value indicating whether this type is nullable. Gets the definition to which this type refers. Represents references to EDM Collection types. Provides semantics for a Csdl DateTime constant expression. Represents an EDM datetime constant expression. Represents an EDM datetime value. Gets the definition of this datetime value. Provides semantics for a Csdl Decimal constant expression. Represents an EDM decimal constant expression. Represents an EDM decimal value. Gets the definition of this decimal value. Provides semantics for a Csdl Float constant expression. Represents an EDM floating constant expression. Represents an EDM floating point value. Gets the definition of this floating value. Provides semantics for a Csdl Int constant expression. Represents an EDM integer constant expression. Represents an EDM integer value. Gets the definition of this integer value. Provides semantics for CsdlNamedTypeReference. Provides semantics for a Csdl null constant expression. Represents an EDM null expression. Represents an EDM null value. Represents an EDM parameter reference expression. Gets the referenced parameter. Provides semantics for a Csdl Path expression. Represents an EDM path expression. Gets the path as a decomposed qualified name. "A.B/C/D.E" is { "A.B", "C", "D.E" }. Provides semantics for a CsdlPropertyValue used in a record expression. Represents an EDM property constructor specified as part of a EDM construction record expression. Gets the name of the property. Gets the expression for the value of the property. Represents an EDM property reference expression. Gets the expression for the structured value containing the referenced property. Gets the referenced property. Provides semantics for a CsdlPropertyValue used in a type annotation. Represents a property binding specified as part of an EDM type annotation. Gets the property that is given a value by the annotation. Gets the expression producing the value of the annotation. Represents an EDM structural (i.e. non-navigation) property. Represents an EDM property. Gets the kind of this property. Gets the type of this property. Gets the type that this property belongs to. Gets the default value of this property. Gets the concurrency mode of this property. Provides semantics for a Csdl Record expression. Represents an EDM record construction expression. Gets the declared type of the record, or null if there is no declared type. Gets the constructed property values. Provides the semantics of a reference to an EDM primitive type. Represents references to primitive types. This doesn't need the full caching mechanism because the computation is cheap, and the likelyhood of computing a primitive type reference without needing its definition is remote. Represents a reference to an EDM spatial type. Gets the Spatial Reference Identifier of this spatial type. Provides semantics for a Csdl String constant expression. Represents an EDM string constant expression. Represents an EDM string value. Gets the definition of this string value. Provides semantics for a Csdl DateTime constant expression. Represents an EDM time constant expression. Represents an EDM time value. Gets the definition of this time value. Common base class for CsdlSemanticsTypeAnnotation and CsdlSemanticsValueAnnotation. Represents an EDM vocabulary annotation. Gets the qualifier used to discriminate between multiple bindings of the same property or type. Gets the term bound by the annotation. Gets the element the annotation applies to. Gets the type to use as a binding context for expressions in the annotation. If the target of the annotation is an entity type, that is the binding context. If the target is an entity set, the binding context is the element type of the set. Provides semantics for a CsdlTypeAnnotation. Represents an EDM type annotation. Gets the value annotations for the properties of the type. Provides semantics for a CsdlValueAnnotation. Represents an EDM value annotation. Gets the expression producing the value of the annotation. Provides semantics for a CsdlValueTerm. Represents an EDM value term. Gets the type of this term. Represents a definition of an EDM association type. Gets the namespace this association belongs to. Gets the first end of the association. Gets the second end of the association. Gets the referential constraint of the association. Represents an end of an EDM association. Gets the declaring association of this association end. Gets the entity type of this end of the association. Gets this end's multiplicity. Gets the action to execute on the deletion of this association end. Represents an EDM association set. Gets the association of this association set. Gets the first end of this association set. Gets the second end of this association set. Represents one of the ends of an EDM association set. Gets the association end that describes the role of this association set end. Gets the entity set this association set end corresponds to. Validates that a type reference refers to a type that can be represented in CSDL. Validates that a type reference refers to a type that can be represented in CSDL. Validates that an entity set refers to a type that can be represented in CSDL. Validates that a structured type's base type can be represented in CSDL. Validates that association names can be represented in CSDL. Validates that vocabulary annotations serialized out of line have a serializable target name. Validates that vocabulary annotations have a serializable term name. Represents whether a vocabulary annotation should be serialized within the element it applies to or in a seperate section of the CSDL. The annotation should be serialized within the element being annotated. The annotation should be serialized in a seperate section. Contains extension methods for interfaces that are useful to serialization. Gets the value for the EDMX version of the . Model the version has been set for. The version. Sets a value of EDMX version attribute of the . The model the version should be set for. The version. Sets an annotation on the IEdmModel to notify the serializer of preferred prefix mappings for xml namespaces. Reference to the calling object. XmlNamespaceManage containing mappings between namespace prefixes and xml namespaces. Gets the preferred prefix mappings for xml namespaces from an IEdmModel Reference to the calling object. Namespace prefixes that exist on the model. Sets a value for the DataServiceVersion attribute in an EDMX artifact. The model the attribute should be set for. The value of the attribute. Gets the value for the DataServiceVersion attribute used during EDMX serialization. Model the attribute has been set for. Value of the attribute. Sets a value for the MaxDataServiceVersion attribute in an EDMX artifact. The model the attribute should be set for. The value of the attribute. Gets the value for the MaxDataServiceVersion attribute used during EDMX serialization. Model the attribute has been set for Value of the attribute. Sets the location an annotation should be serialized in. The annotation the location is being specified for. Model containing the annotation. The location the annotation should appear. Gets the location an annotation should be serialized in. Reference to the calling annotation. Model containing the annotation. The location the annotation should be serialized at. Sets the schema an annotation should appear in. The annotation the schema should be set for. Model containing the annotation. The schema the annotation belongs in. Gets the schema an annotation should be serialized in. Reference to the calling annotation. Model containing the annotation. Name of the schema the annotation belongs to. Sets the name used for the association serialized for a navigation property. Model containing the navigation property. The navigation property. The association name. Gets the name used for the association serialized for a navigation property. Model containing the navigation property. The navigation property. The association name. Sets the namespace used for the association serialized for a navigation property. Model containing the navigation property. The navigation property. The association namespace. Gets the namespace used for the association serialized for a navigation property. Model containing the navigation property. The navigation property. The association namespace. Gets the fully-qualified name used for the association serialized for a navigation property. Model containing the navigation property. The navigation property. The fully-qualified association name. Sets the annotations for the association serialized for a navigation property. Model containing the navigation property. The navigation property. The association annotations. The annotations for association end 1. The annotations for association end 2. The annotations for the referential constraint. Gets the annotations associated with the association serialized for a navigation property. Model containing the navigation property. The navigation property. The association annotations. The annotations for association end 1. The annotations for association end 2. The annotations for the referential constraint. Sets the name used for the association end serialized for a navigation property. Model containing the navigation property. The navigation property. The association end name. Gets the name used for the association end serialized for a navigation property. Model containing the navigation property. The navigation property. The association end name. Sets the name used for the association set serialized for a navigation property of an entity set. Model containing the entity set. The entity set The navigation property. The association set name. Gets the name used for the association set serialized for a navigation property of an entity set. Model containing the entity set. The entity set. The navigation property. The association set name. Sets the annotations for the association set serialized for a navigation target of an entity set. Model containing the entity set. The entity set. The navigation property. The association set annotations. The annotations for association set end 1. The annotations for association set end 2. Gets the annotations associated with the association serialized for a navigation target of an entity set. Model containing the entity set. The entity set. The navigation property. The association set annotations. The annotations for association set end 1. The annotations for association set end 2. Gets the primary end of a pair of partnered navigation properties, selecting the principal end if there is one and making a stable, arbitrary choice otherwise. The navigation property. The primary end between the navigation property and its partner. Sets an annotation indicating whether the value of an enum member should be explicitly serialized. Member to set the annotation on. Model containing the member. If the value of the enum member should be explicitly serialized Gets an annotation indicating whether the value of an enum member should be explicitly serialized. The member the annotation is on. Model containing the member. Whether the member should have its value serialized. Sets an annotation indicating if the value should be serialized as an element. Value to set the annotation on. Model containing the value. Value indicating if the value should be serialized as an element. Gets an annotation indicating if the value should be serialized as an element. Value the annotation is on. Model containing the value. Value indicating if the string should be serialized as an element. Sets the serialization alias for a given namespace Model that will be serialized. The namespace to set the alias for. The alias for that namespace. Gets the serialization alias for a given namespace. Model that will be serialized. Namespace the alias is needed for. The alias of the given namespace, or null if one does not exist. Represents a CSDL function return type. Provides EDMX parsing services for EDM models. True when either Runtime or DataServices node have been processed. Returns an IEdmModel for the given EDMX artifact. XmlReader containing the EDMX artifact. The model generated by parsing Errors reported while parsing. Success of the parse operation. Returns an IEdmModel for the given EDMX artifact. XmlReader containing the EDMX artifact. The model generated by parsing. Returns an IEdmModel for the given EDMX artifact. XmlReader containing the EDMX artifact. Model to be referenced by the created model. The model generated by parsing Errors reported while parsing. Success of the parse operation. Returns an IEdmModel for the given EDMX artifact. XmlReader containing the EDMX artifact. Model to be referenced by the created model. The model generated by parsing. Returns an IEdmModel for the given EDMX artifact. XmlReader containing the EDMX artifact. Models to be referenced by the created model. The model generated by parsing Errors reported while parsing. Success of the parse operation. Returns an IEdmModel for the given EDMX artifact. XmlReader containing the EDMX artifact. Models to be referenced by the created model. The model generated by parsing. .TryParse does not exist on all platforms, so implementing it here. Input string. Parsed version. False in case of failure. All parse functions start with the reader pointing at the start tag of an element, and end after consuming the ending tag for the element. The current element name to be parsed. The parsers for child elements of the current element. Provides EDMX serialization services for EDM models. Outputs an EDMX artifact to the provided XmlWriter. Model to be written. XmlWriter the generated EDMX will be written to. Target implementation of the EDMX being generated. Errors that prevented successful serialization, or no errors if serialization was successfull. A value indicating whether serialization was successful. Represents references to entity reference types. Represents the common base type of EDM functions and function imports. Searches for a parameter with the given name, and returns null if no such parameter exists. The name of the parameter being found. The requested parameter or null if no such parameter exists. Gets the return type of this function. Gets the collection of parameters for this function. Represents an EDM function import. Represents the common elements of all EDM entity container elements. Gets the kind of element of this container element. Gets the container that contains this element. Gets a value indicating whether this function import has side-effects. cannot be set to true if is set to true. Gets a value indicating whether this functon import can be composed inside expressions. cannot be set to true if is set to true. Gets a value indicating whether this function import can be used as an extension method for the type of the first parameter of this function import. Gets the entity set containing entities returned by this function import. Represents an EDM entity set reference expression. Initializes a new instance of the class. Referenced entity set. Gets the referenced entity set. Gets the kind of this expression. Represents an EDM path expression. Initializes a new instance of the class. Path string containing segments seperated by '/'. For example: "A.B/C/D.E/Func1(NS.T,NS.T2)/P1". Initializes a new instance of the class. Path segments. Initializes a new instance of the class. Path segments. Gets the path as a decomposed qualified name. "A.B/C/D.E/Func1(NS.T,NS.T2)/P1" is { "A.B", "C", "D.E", "Func1(NS.T,NS.T2)", "P1" }. Gets the kind of this expression. Represents references to row types. Represents references to EDM structured types. When we see an entity container, we see if it has . If it does, then we attach it to that schema, otherwise we attached to the first existing schema. If there are no schemas, we create the one named "Default" and attach container to it. The entity container being processed. Represents a delegate for creating an instance of CLR type based on and . The delegate can be used to create CLR instances of polymorphic types. The for which the needs to be created. The expected CLR type of the object instance. In case of polymorphic properties and collections this may be a base type. The converter instance calling this delegate. The output parameter returning a CLR object instance created for the . The output parameter returning true if all properties of the created are initialized. False if properties of the created instance should be initialized using the default logic. True if the delegate produced a desired . If delegate returns false, the default logic will be applied to create and populate a CLR object instance. to CLR value converter. Initializes a new instance of the class. Initializes a new instance of the class. The delegate customizing conversion of structured values. Converts to a CLR value of the specified type. Supported values for are: CLR primitive types such as and , CLR enum types, , , , CLR classes with default constructors and public properties with setters and collection properties of the following shapes: EnumerableProperty { get; set; }, CollectionProperty { get; set; }, ListProperty { get; set; }, CollectionProperty { get { return this.nonNullCollection; } }, ListProperty { get { return this.nonNullList; } }. The CLR type. The EDM value to be converted. A CLR value converted from . This method performs boxing and unboxing for value types. Use value-type specific methods such as to avoid boxing and unboxing. Converts to a CLR value of the specified type. Supported values for are: CLR primitive types such as and , CLR enum types, , , , CLR classes with default constructors and public properties with setters and collection properties of the following shapes: EnumerableProperty { get; set; }, CollectionProperty { get; set; }, ListProperty { get; set; }, CollectionProperty { get { return this.nonNullCollection; } }, ListProperty { get { return this.nonNullList; } }. The EDM value to be converted. The CLR type. A CLR value converted from . This method performs boxing and unboxing for value types. Use value-type specific methods such as to avoid boxing and unboxing. Registers the corresponding to the . All subsequent conversions from this performed by this instance of will return the specified . Registration is required to support graph consistency and loops during conversion process. This method should be called inside the delegate if the delegate is calling back into in order to populate properties of the . The EDM value. The CLR object. Converts to a CLR byte array value. The EDM value to be converted. Converted byte array. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted string. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted boolean. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted integer. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted char. Exception is thrown if is not . Exception is thrown if cannot be converted to . Converts to a value. The EDM value to be converted. Converted byte. Exception is thrown if is not . Exception is thrown if cannot be converted to . Converts to a value. The EDM value to be converted. Converted integer. Exception is thrown if is not . Exception is thrown if cannot be converted to . Converts to a value. The EDM value to be converted. Converted integer. Exception is thrown if is not . Exception is thrown if cannot be converted to . Converts to a value. The EDM value to be converted. Converted double. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted single. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted decimal. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted DateTime. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted Time. Exception is thrown if is not . Converts to a value. The EDM value to be converted. Converted DateTimeOffset. Exception is thrown if is not . Searches the for a property with the . Handles the case of multiple properties with the same name (declared via C# "new") by choosing the one on the deepest derived type. The clr object type. The property name. The property or null. Used for error messages only. The EDM value. The EDM value interface name. The class contains method that are called thru reflection to produce values of correct CLR types. For example if one has an int value and a clr type represnting an enum : int, there is no other way to convert the int to the enum type object. Expression evaluator capable of producing CLR values. Expression evaluator. Initializes a new instance of the EdmExpressionEvaluator class. Builtin functions dictionary to the evaluators for the functions. Initializes a new instance of the EdmExpressionEvaluator class. Builtin functions dictionary to the evaluators for the functions. Function to call to evaluate an application of a function with no static binding. Evaluates an expression with no value context. Expression to evaluate. The expression must not contain paths, because no context for evaluating a path is supplied. The value that results from evaluating the expression in the context of the supplied value. Evaluates an expression in the context of a value. Expression to evaluate. Value to use as context in evaluating the expression. Cannot be null if the expression contains paths. The value that results from evaluating the expression in the context of the supplied value. Evaluates an expression in the context of a value and a target type. Expression to evaluate. Value to use as context in evaluating the expression. Cannot be null if the expression contains paths. Type to which the result value is expected to conform. The value that results from evaluating the expression in the context of the supplied value, asserted to be of the target type. Represents a lazily computed value. Gets the data stored in this value. Represents a value of an EDM property. Gets the name of the property this value is associated with. Represents an EDM collection value. Gets the values stored in this collection. Initializes a new instance of the class. Builtin functions dictionary to the evaluators for the functions. Initializes a new instance of the class. Builtin functions dictionary to the evaluators for the functions. Function to call to evaluate an application of a function with no static binding. Evaluates an expression with no value context. The CLR type of the value to be returned. Expression to evaluate. The expression must not contain paths, because no context for evaluating a path is supplied. The value that results from evaluating the expression in the context of the supplied value. Evaluates an expression in the context of a value. The CLR type of the value to be returned. Expression to evaluate. Value to use as context in evaluating the expression. The value that results from evaluating the expression in the context of the supplied value. Evaluates an expression in the context of a value and a target type. The CLR type of the value to be returned. Expression to evaluate. Value to use as context in evaluating the expression. Type to which the result value is expected to conform. The value that results from evaluating the expression in the context of the supplied value, asserted to be of the targetType. Gets or sets an instance of that is used to produce CLR values during evaluation. Contains IsEquivalentTo() extension methods. Returns true if the compared type is semantically equivalent to this type. Schema types () are compared by their object refs. Type being compared. Type being compared to. Equivalence of the two types. Returns true if the compared type reference is semantically equivalent to this type reference. Schema types () are compared by their object refs. Type reference being compared. Type referenced being compared to. Equivalence of the two type references. Returns true if function signatures are semantically equivalent. Signature includes function name () and its parameter types. Reference to the calling object. Function being compared to. Equivalence of signatures of the two functions. Returns true if the compared function parameter is semantically equivalent to this function parameter. Reference to the calling object. Function parameter being compared to. Equivalence of the two function parameters. Represents a mapping from an EDM navigation property to an entity set. Gets the navigation property. Gets the target entity set. Represents the combination of an EDM annotation with an immediate value and the element to which it is attached. Gets the element to which the annotation is attached Gets the namespace URI of the annotation. Gets the local name of this annotation. Gets the value of this annotation. Remembers the result of evaluating an expensive function so that subsequent evaluations are faster. Thread-safe. Type of the argument to the function. Type of the function result. Constructs the memoizer. Required. Function whose values are being cached. Optional. Comparer used to determine if two functions arguments are the same. Evaluates the wrapped function for the given argument. If the function has already been evaluated for the given argument, returns cached value. Otherwise, the value is computed and returned. Function argument. Function result. Encapsulates a 'deferred' result. The result is constructed with a delegate (must not be null) and when the user requests a value the delegate is invoked and stored. Represents an EDM navigation property info used during construction of navigation properties. Clones this object. A copy of this object. Gets or sets the name of this navigation property. Gets or sets the entity type that this navigation property belongs to. Gets or sets multiplicity of the navigation target. Gets or sets the dependent properties of the association this navigation property expresses. Gets or sets a value indicating whether the navigation target is contained inside the navigation source. Gets or sets the action to take when an instance of the declaring type is deleted. Represents a mapping from an EDM navigation property to an entity set. Creates a new navigation target mapping. The navigation property. The entity set that the navigation propertion targets. Gets the navigation property. Gets the target entity set. Represents an EDM time constant. Represents an EDM value. Initializes a new instance of the EdmValue class. Type of the value. Gets the type of this value. Gets the kind of this value. Initializes a new instance of the class. Time value represented by this value. Initializes a new instance of the class. Type of the Time. Time value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents a name binding to more than one item. Type of the ambiguous element. Represents an EDM entity container. Searches for an entity set with the given name in this entity container and returns null if no such set exists. The name of the element being found. The requested element, or null if the element does not exist. Searches for function imports with the given name in this entity container and returns null if no such function import exists. The name of the function import being found. A group of the requested function imports, or an empty enumerable if no such function import exists. Gets a collection of the elements of this entity container. Represents an EDM entity set. Finds the entity set that a navigation property targets. The navigation property. /// The entity set that the navigation propertion targets, or null if no such entity set exists. Gets the entity type contained in this entity set. Gets the navigation targets of this entity set. Represents an EDM function. Gets the defining expression of this function. Represents a labeled expression binding to more than one item. Gets the kind of this property. Gets the type that this property belongs to. Represents a name binding to more than one item. Represents a name binding to more than one item. Represents a reference to a semantically invalid EDM binary type. Represents a reference to an EDM binary type. Represents a reference to an EDM primitive type. Represents a reference to an EDM type. Initializes a new instance of the class. Type that describes this value. Denotes whether the type can be nullable. Returns the text representation of the current object. The text representation of the current object. Gets a value indicating whether this type is nullable. Gets the definition to which this type refers. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Represents a reference to an EDM binary type. Gets a value indicating whether this type specifies fixed length. Gets a value indicating whether this type specifies the maximum allowed length. Gets the maximum length of this type. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Denotes whether the max length is the maximum allowed value. Maximum length of a value of this type. Denotes whether the length can vary. Gets a value indicating whether this type specifies fixed length. Gets a value indicating whether this type specifies the maximum allowed length. Gets the maximum length of this type. Represents a semantically invalid EDM collection type. Represents a semantically invalid EDM complex type definition. Represents a semantically invalid EDM named structured type definition. Represents a semantically invalid EDM structured type definition. Represents a definition of an EDM complex type. Represents a reference to an EDM complex type. Represents references to EDM complex types. Initializes a new instance of the class. The type definition this reference refers to. Denotes whether the type can be nullable. Represents a reference to a semantically invalid EDM decimal type. Represents a reference to an EDM decimal type. Represents a reference to an EDM decimal type. Gets the precision of this type. Gets the scale of this type. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Precision of values with this type. Scale of values with this type. Gets the precision of this type. Gets the scale of this type. Represents a semantically invalid EDM entity container. Gets the kind of this schema element. Represents a semantically invalid EDM entity reference type. Represents a definition of an EDM entity reference type. Gets the entity type pointed to by this entity reference. Represents a semantically invalid EDM entity set. Represents a semantically invalid EDM entity type. Represents a reference to an EDM entity type. Represents references to entity types. Initializes a new instance of the class. The definition refered to by this reference. Denotes whether the type can be nullable. Represents a semantically invalid EDM enumeration type member. Represents a semantically invalid EDM labeled expression. Represents a semantically invalid EDM primitive type definition. Represents a definition of an EDM primitive type. Gets the primitive kind of this type. Represents a reference to a semantically invalid EDM primitive type. Gets the kind of this value. Represents a semantically invalid EDM property. Represents a semantically invalid EDM row type. Represents a definition of an EDM row type. Represents a reference to a semantically invalid EDM spatial type. Represents a reference to an EDM spatial type. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Spatial Reference Identifier for the spatial type being created. Gets the precision of this temporal type. Represents a reference to a semantically invalid EDM string type. Represents a reference to an EDM string type. Represents a reference to an EDM string type. Gets a value indicating whether this string type specifies fixed length. Gets a value indicating whether this string type specifies the maximum allowed length. Gets the maximum length of this string type. Gets a value indicating whether this string type supports unicode encoding. Gets a string representing the collation of this string type. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Denotes whether the max length is the maximum allowed value. Maximum length of a value of this type. Denotes whether the length can vary. Denotes if string is encoded using Unicode. Indicates the collation string to be used by the underlying store. Gets a value indicating whether this string type specifies fixed length. Gets a value indicating whether this string type specifies the maximum allowed length. Gets the maximum length of this string type. Gets a value indicating whether this string type supports unicode encoding. Gets a string representing the collation of this string type. Represents a reference to a semantically invalid EDM temporal (Time, DateTime, DateTimeOffset) type. Represents a reference to an EDM temporal (Time, DateTime, DateTimeOffset) type. Represents a reference to an EDM temporal (Time, DateTime, DateTimeOffset) type. Gets the precision of this temporal type. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Initializes a new instance of the class. The type this reference refers to. Denotes whether the type can be nullable. Precision of values with this type. Gets the precision of this temporal type. Represents an EDM complex type that cannot be determined due to a cyclic reference. Represents an EDM entity container that cannot be determined due to a cyclic reference. Represents an EDM entity type that cannot be determined due to a cyclic reference. Provides a dictionary that is thread safe by virtue of being immutable. Any update returns a new dictionary (which, for efficiency, may share some of the state of the old one). Key type of the dictionary. Value type of the dictionary. Provides a list that is thread safe by virtue of being immutable. "Mutating" operations return a new list (which, for efficiency, may share some of the state of the old one). Element type of the list. Provides an approximately-balanced binary search tree that is thread safe by virtue of being immutable. Updates return a new tree (which, for efficiency, may share some state with the old one). Key type of the tree. Value type of the tree. Initializes a new instance of VersioningTree. The key of the tree node. The value of the tree node. A tree with all keys less than the key of the tree node. May be null. A tree with all keys greater than the key of the tree node. May be null. Represents the combination of an EDM annotation with an immediate value and the element to which it is attached. Initializes a new instance of the class. Element to which the annotation is attached. Namespace URI of the annotation. Name of the annotation within the namespace. Value of the annotation Initializes a new instance of the class. Element to which the annotation is attached. Namespace URI of the annotation. Name of the annotation within the namespace. Gets the element to which the annotation is attached. Gets the namespace Uri of the annotation. Gets the local name of the annotation. Gets the value of this annotation. Represents the combination of an EDM annotation with an immediate value and the element to which it is attached. Type of the annotation value. Common base class for all named EDM elements. Initializes a new instance of the class. Name of the element. Gets the name of this element. Initializes a new instance of the class. Element to which the annotation is attached. Value of the annotation Gets the element to which the annotation is attached. Gets the namespace Uri of the annotation. Gets the value of this annotation. Defines an object as a location of itself. Gets a string representation of the location. A string representation of the location. Gets the object. Collection of extension methods to assert that an expression is of the required type. Determines if the type of an expression is compatible with the provided type The expression to assert the type of. The type to assert the expression as. Errors produced if the expression does not match the specified type. A value indicating whether the expression is valid for the given type or not. If the expression has an associated type, this function will check that it matches the expected type and stop looking further. If an expression claims a type, it must be validated that the type is valid for the expression. If the expression does not claim a type this method will attempt to check the validity of the expression itself with the asserted type. Determines if the type of an expression is compatible with the provided type The expression to assert the type of. The type to assert the expression as. The context paths are to be evaluated in. A value indicating whether the expression must match the asserted type exactly, or simply be compatible. Errors produced if the expression does not match the specified type. A value indicating whether the expression is valid for the given type or not. If the expression has an associated type, this function will check that it matches the expected type and stop looking further. If an expression claims a type, it must be validated that the type is valid for the expression. If the expression does not claim a type this method will attempt to check the validity of the expression itself with the asserted type. Contains ToTraceString() extension methods. Returns the text representation of the current object. Reference to the calling object. The text representation of the current object. Returns the text representation of the current object. Reference to the calling object. The text representation of the current object. Returns the text representation of the current object. Reference to the calling object. The text representation of the current object. Returns the text representation of the current object. Reference to the calling object. The text representation of the current object. Returns the text representation of the current object. Reference to the calling object. The text representation of the current object. Represents an EDM enumeration type value. Gets the underlying type value of the enumeration type. Represents references to EDM enumeration types. Represents an EDM value term reference expression. Gets the expression for the structured value containing the referenced term property. Gets the referenced value term. Gets the optional qualifier. Defines EDM term kinds. Represents a term with unknown or error kind. Represents a term implementing and . Represents a term implementing . Represents an EDM structured value. Finds the value corresponding to the provided property name. Property to find the value of. The found property, or null if no property was found. Gets the property values of this structured value. Defines Edm values Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value implementing . Represents a value with an unknown or error kind. Defines EDM expression kinds. Represents an expression with unknown or error kind. Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing . Represents an expression implementing Constants for CSDL XML. The local name of the annotation that stores EDMX version of a model. Version 1.0 of EDMX. Corresponds to EDMX namespace "http://schemas.microsoft.com/ado/2007/06/edmx". Version 2.0 of EDMX. Corresponds to EDMX namespace "http://schemas.microsoft.com/ado/2008/10/edmx". Version 3.0 of EDMX. Corresponds to EDMX namespace "http://schemas.microsoft.com/ado/2009/11/edmx". The current latest version of EDMX. Represents a CSDL annotation. Represents a CSDL association. Represents a CSDL association end. Represents a CSDL association set. Represents a CSDL association set end. Represents a reference to a CSDL Binary type. Represents a CSDL complex type. Common base class for CSDL entity and complex types. Common base class for CSDL entity, complex, and row Types. Represents a reference to a CSDL decimal type. Represents a CSDL documentation. Represents a CSDL entity container. Represents a CSDL entity reference type. Represents a CSDL Entity Set. Represents a CSDL entity type. Represents a CSDL type reference based on a type expression. Represents a CSDL function. Represents a base class for CSDL functions and function imports. Represents a CSDL function import. Represents a CSDL function parameter. Represents a CSDL key. Represents a CSDL model. Represents a CSDL navigation property. Represents a CSDL "on delete" action. Represents a CSDL property. Represents a CSDL property reference. Represents a CSDL referential constraint. Represents a CSDL referential constraint role. Represents a CSDL row type. Represents a CSDL schema. Represents a reference to a CSDL String type. Represents a reference to a CSDL temporal type. Represents a CSDL Using. Base class for parsers of XML documents CSDL document parser. Provides for the loading and conversion of one or more CSDL XML readers into Entity Data Model. Provides semantics for a CsdlAssociation. Provides semantics for a CsdlAssociationEnd. Provides semantics for a CsdlAssociationSet. Provides semantics for a CsdlAssociationSetEnd. Provides the semantics of a reference to an EDM Binary type. Provides semantics for CsdlComplexType. Provides semantics for CsdlStructuredType. Provides the semantics of a reference to an EDM Decimal type. Provides semantics for CsdlDocumentation. Represents an EDM documentation. Gets a summary of this documentation. Gets a long description of this documentation. Provides semantics for CsdlEntityContainer. Provides semantics for CsdlEntityTypeReference. Provides semantics for CsdlEntitySet. Provides semantics for CsdlEntityType. Provides semantics for a CsdlFunction. Provides semantics for a CsdlFunctionParameter. Represents a parameter of an EDM function. Gets the type of this function parameter. Gets the function or function import that declared this parameter. Gets the mode of this function parameter. Provides semantics for CsdlMetadataModel. Represents an EDM model. Semantic representation of an EDM model. This interface, and all interfaces reachable from it, preserve certain invariants: -- The backing implementation of an element can be loaded or created on demand. -- No direct element mutation occurs through the interfaces. Searches for an entity container with the given name in this model and returns null if no such entity container exists. The name of the entity container being found. The requested entity container, or null if no such entity container exists. Searches for a type with the given name in this model and returns null if no such type exists. The qualified name of the type being found. The requested type, or null if no such type exists. Searches for functions with the given name in this model and returns an empty enumerable if no such function exists. The qualified name of the function being found. A set of functions sharing the specified qualified name, or an empty enumerable if no such function exists. Searches for a value term with the given name in this model and returns null if no such value term exists. The qualified name of the value term being found. The requested value term, or null if no such value term exists. Searches for vocabulary annotations specified by this model. The annotated element. The vocabulary annotations for the element. Finds a list of types that derive directly from the supplied type. The base type that derived types are being searched for. A list of types from this model that derive directly from the given type. Gets the collection of schema elements that are contained in this model. Gets the collection of vocabulary annotations that are contained in this model. Gets the collection of models referred to by this model. Gets the model's annotations manager. Initializes a new instance of the class. Models to which this model refers. Annotations manager for the model to use. Searches for an entity container with the given name in this model and returns null if no such entity container exists. The name of the entity container being found. The requested entity container, or null if no such entity container exists. Searches for a type with the given name in this model and returns null if no such type exists. The qualified name of the type being found. The requested type, or null if no such type exists. Searches for a value term with the given name in this model and returns null if no such value term exists. The qualified name of the value term being found. The requested value term, or null if no such value term exists. Searches for a function with the given name in this model and returns null if no such function exists. The qualified name of the function being found. A group of functions sharing the specified qualified name, or an empty enumerable if no such function exists. Searches for vocabulary annotations specified by this model or a referenced model for a given element. The annotated element. The vocabulary annotations for the element. Finds a list of types that derive directly from the supplied type. The base type that derived types are being searched for. A list of types that derive directly from the base type. Adds a schema element to this model. The element to register. Adds a model reference to this model. The model to reference. Gets the collection of schema elements that are contained in this model. Gets the collection of vocabulary annotations that are contained in this model. Gets the collection of models referred to by this model. Gets the model's annotations manager. Searches for an association with the given name in this model and returns null if no such association exists. The qualified name of the type being found. The requested association, or null if no such type exists. Searches for vocabulary annotations specified by this model. The annotated element. The vocabulary annotations for the element. Gets an error if one exists with the current object. Provides semantics for a CsdlNavigationProperty. Represents an EDM navigation property. Gets the partner of this navigation property. Gets the action to execute on the deletion of this end of a bidirectional association. Gets whether this navigation property originates at the principal end of an association. Gets the dependent properties of this navigation property, returning null if this is the principal end or if there is no referential constraint. Gets a value indicating whether the navigation target is contained inside the navigation source. Represents a semantically invalid EDM association end. Represents a navigation property synthesized for an association end that does not have a corresponding navigation property. Represents a name binding to more than one item. Represents a property binding specified as part of an EDM type annotation. Initializes a new instance of the class. Property that is given a value by the annotation. Expression producing the value of the annotation. Gets the property that is given a value by the annotation. Gets the expression producing the value of the annotation. Represents an EDM type annotation. Represents an EDM annotation with an immediate value. Initializes a new instance of the class. Element the annotation applies to. Term bound by the annotation. Qualifier used to discriminate between multiple bindings of the same property or type. Gets the element the annotation applies to. Gets the term bound by the annotation. Gets the qualifier used to discriminate between multiple bindings of the same property or type. Initializes a new instance of the class. Element the annotation applies to. Term bound by the annotation. Value annotations for the properties of the type. Initializes a new instance of the class. Element the annotation applies to. Term bound by the annotation. Qualifier used to discriminate between multiple bindings of the same property or type. Value annotations for the properties of the type. Initializes a new instance of the class. Element the annotation applies to. Term bound by the annotation. Qualifier used to discriminate between multiple bindings of the same property or type. Value annotations for the properties of the type. Gets the value annotations for the properties of the type. Represents an EDM value annotation. Initializes a new instance of the class. Element the annotation applies to. Term bound by the annotation. Expression producing the value of the annotation. Initializes a new instance of the class. Element the annotation applies to. Term bound by the annotation. Qualifier used to discriminate between multiple bindings of the same property or type. Expression producing the value of the annotation. Gets the expression producing the value of the annotation. Represents a semantically invalid EDM association. Represents a member of an EDM enumeration type. Initializes a new instance of the class. The type that declares this member. Name of this enumeration member. Value of this enumeration member. Gets the type that this member belongs to. Gets the value of this enumeration type member. Represents the definition of an Edm enumeration type. Represents the definition of an EDM type. Returns the text representation of the current object. The text representation of the current object. Gets the kind of this type. Initializes a new instance of the class with underlying type. Namespace this enumeration type belongs to. Name of this enumeration type. Initializes a new instance of the class with underlying type. Namespace this enumeration type belongs to. Name of this enumeration type. A value indicating whether the enumeration type can be treated as a bit field. Initializes a new instance of the class with underlying type. Namespace this enumeration type belongs to. Name of this enumeration type. The underlying type of this enumeration type. A value indicating whether the enumeration type can be treated as a bit field. Initializes a new instance of the class. Namespace this enumeration type belongs to. Name of this enumeration type. The underlying type of this enumeration type. A value indicating whether the enumeration type can be treated as a bit field. Adds a new member to this enum type. The member to add. Creates and adds a new member to this enum type. Name of the member. Value of the member. Created member. Gets the kind of this type. Gets the kind of this schema element. Gets the namespace this schema element belongs to. Gets the name of this enumeration type. Gets the underlying type of this enumeration type. Gets the members of this enumeration type. Gets a value indicating whether the enumeration type can be treated as a bit field. Represents an EDM enumeration member reference expression. Initializes a new instance of the class. Referenced enum member. Gets the referenced enum member. Gets the kind of this expression. Represents an EDM labeled expression reference expression. Initializes a new instance of class with non-initialized property. Initializes a new instance of the class. This constructor will not allow changing property after the EdmLabeledExpressionReferenceExpression instance has been constructed. Referenced labeled element. Gets or sets the referenced labeled element. The referenced labeled element can be initialized only once either using the constructor or by assigning value directly to this property. Gets the kind of this expression. Represents an EDM null. Singleton instance. Initializes a new instance of the class. Gets the kind of this expression. Gets the kind of this value. Represents an EDM parameter reference expression. Initializes a new instance of the class. Referenced parameter Gets the referenced parameter. Gets the kind of this expression. Represents information about an EDM function that failed to resolve. Represents an EDM enumeration type value. Initializes a new instance of the class. A reference to the enumeration type that describes this value. The enumeration type value. Initializes a new instance of the class. A reference to the enumeration type that describes this value. The underlying type value. Gets the underlying type value of the enumeration type. Gets the kind of this value. Represents an EDM binary constant. Initializes a new instance of the class. Integer value represented by this value. Initializes a new instance of the class. Type of the integer. Integer value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents an EDM boolean constant. Initializes a new instance of the class. Boolean value represented by this value. Initializes a new instance of the class. Type of the boolean. Boolean value represented by this value. Gets a value indicating whether the value of this boolean value is true or false. Gets the kind of this expression. Gets the kind of this value. Represents an EDM datetime constant. Initializes a new instance of the class. DateTime value represented by this value. Initializes a new instance of the class. Type of the DateTime. DateTime value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents an EDM datetime with offset constant. Initializes a new instance of the class. DateTimeOffset value represented by this value. Initializes a new instance of the class. Type of the DateTimeOffset. DateTimeOffset value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents an EDM decimal constant. Initializes a new instance of the class. Decimal value represented by this value. Initializes a new instance of the class. Type of the decimal. Decimal value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents a reference to an EDM enumeration type. Initializes a new instance of the class. The definition refered to by this reference. Denotes whether the type can be nullable. Represents an EDM value term reference expression. Initializes a new instance of the class. Expression for the structured value containing the referenced term property. Referenced value term. Initializes a new instance of the class. Expression for the structured value containing the referenced term property. Referenced value term. Qualifier. Gets the expression for the structured value containing the referenced term property. Gets the referenced value term. Gets the optional qualifier. Gets the kind of this expression. Represents an EDM record construction expression. Initializes a new instance of the class. Property constructors. Initializes a new instance of the class. Declared type of the record. Property constructors. Initializes a new instance of the class. Property constructors. Initializes a new instance of the class. Optional declared type of the record. Property constructors. Gets the declared type of the record, or null if there is no declared type. Gets the constructed property values. Gets the kind of this expression. Represents an EDM property constructor specified as part of a EDM record construction expression. Initializes a new instance of the class. Property name. Property value. Gets the name of the property. Gets the expression for the value of the property. Represents an EDM property reference expression. Initializes a new instance of the class. Expression for the structured value containing the referenced property. Referenced property. Gets the expression for the structured value containing the referenced property. Gets the referenced property. Gets the kind of this expression. Represents an EDM type test expression. Initializes a new instance of the class. Expression whose type is to be tested. Type to test. Gets the expression whose type is to be tested. Gets the type to be tested against. Gets the kind of this expression. Represents an EDM if expression. Initializes a new instance of the class. Test expression Expression to evaluate if evaluates to true. Expression to evaluate if evaluates to false. Gets the test expression. Gets the expression to evaluate if evaluates to true. Gets the expression to evaluate if evaluates to false. Gets the kind of this expression. Represents an EDM function reference expression. Initializes a new instance of the class. Referenced function Gets the referenced function. Gets the kind of this expression. Represents an EDM function application expression. Initializes a new instance of the class. Function to apply. Application arguments. Value may be null, in which case it is treated as an empty enumerable. Initializes a new instance of the class. Function to apply. Application arguments. Value may be null, in which case it is treated as an empty enumerable. Initializes a new instance of the class. Function to apply. Application arguments. Value may be null, in which case it is treated as an empty enumerable. Gets the applied function. Gets the arguments to the function. Gets the kind of this expression. Represents an EDM labeled expression. Initializes a new instance of the class. Label of the expression. Underlying expression. Gets the label. Gets the underlying expression. Gets the expression kind. Represents an EDM multi-value construction expression. Initializes a new instance of the class. The constructed element values. Initializes a new instance of the class. Declared type of the collection. The constructed element values. Initializes a new instance of the class. The constructed element values. Initializes a new instance of the class. Declared type of the collection. The constructed element values. Gets the declared type of the collection. Gets the constructed element values. Gets the kind of this expression. Represents an EDM type assertion expression. Initializes a new instance of the class. Expression for which the type is asserted. Type to assert. Gets the expression for which the type is asserted. Gets the asserted type. Gets the kind of this expression. Represents an EDM floating point constant. Initializes a new instance of the class. Floating point value represented by this value. Initializes a new instance of the class. Type of the floating point. Floating point value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents an EDM guid constant. Initializes a new instance of the class. Integer value represented by this value. Initializes a new instance of the class. Type of the integer. Integer value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents an EDM value term. Initializes a new instance of class. The new value term will be of the nullable primitive . Namespace of the term. Name of the term. Type of the term. Initializes a new instance of the class. Namespace of the term. Name of the term. Type of the term. Gets the namespace of this term. Gets the kind of this term. Gets the type of this term. Gets the schema element kind of this term. Represents a definition of an EDM collection type. Initializes a new instance of the class. The type of the elements in this collection. Gets the kind of this type. Gets the element type of this collection type. Represents a reference to an EDM collection type. Initializes a new instance of the class. The type definition this reference refers to. Denotes whether the type can be nullable. Represents an EDM collection value. Initializes a new instance of the class. A reference to a collection type that describes this collection value The collection of values stored in this collection value Gets the values stored in this collection. Gets the kind of this value. Provides semantics for a CsdlProperty. Provides semantics for a CsdlReferentialConstraint. Provides semantics for CsdlRowType. Provides semantics for CsdlSchema. All of the labeled expressions in a schema are collected into a dictionary so that references to them can be bound. The elements of the dictionary are Csdl objects and not CsdlSemantics objects because the semantics objects are not created until and unless necessary. A dictionary containing entries for all labeled expressions in the schema. Gets the labeled element expressions dictionary. Each value in the dictionary is either a or a list of same. Provides the semantics of a reference to an EDM String type. Provides the semantics of a reference to an EDM temporal type. Contains extension methods for interfaces. Gets the value for the EDM version of the . Model the version has been set for. The version. Sets a value of EDM version attribute of the . The model the version should be set for. The version. Searches for a type with the given name in this model and all referenced models and returns null if no such type exists. The model to search. The qualified name of the type being found. The requested type, or null if no such type exists. Searches for a value term with the given name in this model and all referenced models and returns null if no such value term exists. The model to search. The qualified name of the value term being found. The requested value term, or null if no such value term exists. Searches for functions with the given name in this model and all referenced models and returns an empty enumerable if no such functions exist. The model to search. The qualified name of the functions being found. The requested functions. Searches for an entity container with the given name in this model and all referenced models and returns null if no such entity container exists. The model to search. The qualified name of the entity container being found. The requested entity container, or null if no such entity container exists. Gets the entity containers belonging to this model. Model to search for entity containers. Entity containers belonging to this model. Gets an annotatable element's vocabulary annotations defined in a specific model and models referenced by that model. The model to search. Element to check for annotations. Annotations attached to the element (or, if the element is a type, to its base types) by this model or by models referenced by this model. Gets an annotatable element's vocabulary annotations defined in a specific model and models referenced by that model. The model to search. Element to check for annotations. Annotations attached to the element by this model or by models referenced by this model. Gets an annotatable element's vocabulary annotations that bind a particular term. Type of the annotation being returned. Model to search. Element to check for annotations. Term to search for. Annotations attached to the element by this model or by models referenced by this model that bind the term. Gets an annotatable element's vocabulary annotations that bind a particular term. Type of the annotation being returned. Model to search. Element to check for annotations. Term to search for. Qualifier to apply. Annotations attached to the element by this model or by models referenced by this model that bind the term with the given qualifier. Gets an annotatable element's vocabulary annotations that bind a particular term. Type of the annotation being returned. Model to search. Element to check for annotations. Name of the term to search for. Annotations attached to the element by this model or by models referenced by this model that bind the term. Gets an annotatable element's vocabulary annotations that bind a particular term. Type of the annotation being returned. Model to search. Element to check for annotations. Name of the term to search for. Qualifier to apply. Annotations attached to the element by this model or by models referenced by this model that bind the term with the given qualifier. Gets the of a property of a term type that has been applied to the type of a value. Model to search for type annotations. Value to use as context in evaluation. Property to evaluate. Evaluator to use to perform expression evaluation. Value of the property evaluated against the supplied value, or null if no relevant type annotation exists. Gets the of a property of a term type that has been applied to the type of a value. Model to search for type annotations. Value to use as context in evaluation. Property to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the property evaluated against the supplied value, or null if no relevant type annotation exists. Gets the CLR value of a property of a term type that has been applied to the type of a value. The CLR type of the value to be returned. Model to search for type annotations. Value to use as context in evaluation. Property to evaluate. Evaluator to use to perform expression evaluation. Value of the property evaluated against the supplied value, or default() if no relevant type annotation exists. Gets the CLR value of a property of a term type that has been applied to the type of a value. The CLR type of the value to be returned. Model to search for type annotations. Value to use as context in evaluation. Property to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the property evaluated against the supplied value, or default() if no relevant type annotation exists. Gets the of a vocabulary term that has been applied to the type of a value. Model to search for term annotations. Value to use as context in evaluation. Name of the term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the of a vocabulary term that has been applied to the type of a value. Model to search for term annotations. Value to use as context in evaluation. Name of the term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the of a vocabulary term that has been applied to the type of a value. Model to search for term annotations. Value to use as context in evaluation. Term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the of a vocabulary term that has been applied to the type of a value. Model to search for term annotations. Value to use as context in evaluation. Term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to the type of a value. The CLR type of the value to be returned. Model to search for term annotations. Value to use as context in evaluation. Name of the term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to the type of a value. The CLR type of the value to be returned. Model to search for term annotations. Value to use as context in evaluation. Name of the term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to the type of a value. The CLR type of the value to be returned. Model to search for term annotations. Value to use as context in evaluation. Term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to the type of a value. The CLR type of the value to be returned. Model to search for term annotations. Value to use as context in evaluation. Term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the of a vocabulary term that has been applied to an element. Model to search for term annotations. Annotated element. Name of the term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the of a vocabulary term that has been applied to an element. Model to search for term annotations. Annotated element. Name of the term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the of a vocabulary term that has been applied to an element. Model to search for term annotations. Annotated element. Term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the of a vocabulary term that has been applied to an element. Model to search for term annotations. Annotated element. Term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to an element. The CLR type of the value to be returned. Model to search for term annotations. Annotated element. Name of the term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to an element. The CLR type of the value to be returned. Model to search for term annotations. Annotated element. Name of the term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to an element. The CLR type of the value to be returned. Model to search for term annotations. Annotated element. Term to evaluate. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets the CLR value of a vocabulary term that has been applied to an element. The CLR type of the value to be returned. Model to search for term annotations. Annotated element. Term to evaluate. Qualifier to apply. Evaluator to use to perform expression evaluation. Value of the term evaluated against the supplied value. Gets documentation for a specified element. The model containing the documentation. The element. Documentation that exists on the element. Otherwise, null. Sets documentation for a specified element. The model containing the documentation. The element. Documentation to set. Gets an annotation value corresponding to the given namespace and name provided. The model containing the annotation. The annotated element. Namespace of the annotation. Name of the annotation inside the namespace. The requested annotation value, if it exists. Otherwise, null. Gets an annotation value corresponding to the given namespace and name provided. Type of the annotation being returned. The model containing the annotation. The annotated element. Namespace of the annotation. Name of the annotation inside the namespace. The requested annotation value, if it exists. Otherwise, null. Gets an annotation value from an annotatable element. Type of the annotation being returned. The model containing the annotation. The annotated element. The requested annotation, if it exists. Otherwise, null. Strongly-typed wrappers for unnamed annotations keyed by CLR type. Sets an annotation value for an EDM element. If the value is null, no annotation is added and an existing annotation with the same name is removed. The model containing the annotation. The annotated element. Namespace that the annotation belongs to. Name of the annotation within the namespace. Value of the new annotation. Gets all schema elements from the model, and models referenced by it. Model to search for elements Schema elements from the model, and models referenced by it. Finds a list of types that derive from the supplied type directly or indirectly, and across models. The model types are being found on. The base type that derived types are being searched for. A list of types that derive from the type. Sets an annotation value on an annotatable element. Type of the annotation being set. The model containing the annotation. The annotated element. Value of the new annotation. Retrieves a set of annotation values. For each requested value, returns null if no annotation with the given name exists for the given element. The model in which to find the annotations. The set of requested annotations. Returns values that correspond to the provided annotations. A value is null if no annotation with the given name exists for the given element. Sets a set of annotation values. If a supplied value is null, no annotation is added and an existing annotation with the same name is removed. The model in which to set the annotations. The annotations to set. Gets the direct value annotations for an element. The model containing the annotations. The annotated element. The immediate value annotations of the element. Gets the location of this element. Reference to the calling object. The location of the element. Gets an annotatable element's vocabulary annotations as seen from a particular model. Reference to the calling object. Model to check for annotations. Annotations attached to the element by the model or by models referenced by the model. Gets the full name of the element. Reference to the calling object. The full name of the element. Returns entity sets belonging to an IEdmEntityContainer. Reference to the calling object. Entity sets belonging to an IEdmEntityContainer. Returns function imports belonging to an IEdmEntityContainer. Reference to the calling object. Function imports belonging to an IEdmEntityContainer. Gets the type kind of the type references definition. Reference to the calling object. The type kind of the reference. Gets the full name of the definition referred to by the type reference. Reference to the calling object. The full name of this references definition. Gets the definition of this primitive type reference. Reference to the calling object. Definition of this primitive type reference. Gets the primitive kind of the definition referred to by this type reference. Reference to the calling object. Primitive kind of the definition of this reference. Gets all properties of the structured type definition and its base types. Reference to the calling object. Properties of this type. Gets all structural properties declared in the IEdmStructuredTypeDefinition. Reference to the calling object. All structural properties declared in the IEdmStructuredTypeDefinition. Gets the structural properties declared in this type definition and all base types. Reference to the calling object. The structural properties declared in this type definition and all base types. Gets the definition of this structured type reference. Reference to the calling object. The definition of this structured type reference. Returns true if the definition of this reference is abstract. Reference to the calling object. If the definition of this reference is abstract. Returns true if the definition of this reference is open. Reference to the calling object. If the definition of this reference is open. Returns the base type of the definition of this reference. Reference to the calling object. The base type of the definition of this reference. Gets all structural properties declared in the definition of this reference. Reference to the calling object. All structural properties declared in the definition of this reference. Gets all structural properties declared in the definition of this reference and all its base types. Reference to the calling object. All structural properties declared in the definition of this reference and all its base types. Finds a property from the definition of this reference. Reference to the calling object. Name of the property to find. The requested property if it exists. Otherwise, null. Gets the base type of this entity type definition. Reference to the calling object. The base type of this entity type definition. Gets the navigation properties declared in this entity definition. Reference to the calling object. The navigation properties declared in this entity definition. Get the navigation properties declared in this entity type and all base types. Reference to the calling object. The navigation properties declared in this entity type and all base types. Gets the declared key of the most defined entity with a declared key present. Reference to the calling object. Key of this type. Checks whether the given entity type has the as one of the key properties. Given entity type. Property to be searched for. true if the type or base types has given property declared as key. false otherwise. Gets the definition of this entity reference. Reference to the calling object. The definition of this entity reference. Gets the base type of the definition of this reference. Reference to the calling object. The base type of the definition of this reference. Gets the entity key of the definition of this reference. Reference to the calling object. The entity key of the definition of this reference. Gets the navigation properties declared in the definition of this reference and its base types. Reference to the calling object. The navigation properties declared in the definition of this reference and its base types. Gets the navigation properties declared in the definition of this reference. Reference to the calling object. The navigation properties declared in the definition of this reference. Finds a navigation property declared in the definition of this reference by name. Reference to the calling object. Name of the navigation property to find. The requested navigation property if it exists. Otherwise, null. Gets the base type of this references definition. Reference to the calling object. The base type of this references definition. Gets the definition of this reference typed as an IEdmComplexTypeDefinition. Reference to the calling object. The definition of this reference typed as an IEdmComplexTypeDefinition. Gets the base type of this reference. Reference to the calling object. The base type of this reference. Gets the definition of this entity reference type reference. Reference to the calling object. The definition of this entity reference type reference. Gets the entity type referred to by the definition of this entity reference type reference. Reference to the calling object. The entity type referred to by the definition of this entity reference type reference. Gets the definition of this collection reference. Reference to the calling object. The definition of this collection reference. Gets the element type of the definition of this collection reference. Reference to the calling object. The element type of the definition of this collection reference. Gets the definition of this enumeration reference. Reference to the calling object. The definition of this enumeration reference. Gets the multiplicity of this end of a bidirectional relationship between this navigation property and its partner. Reference to the calling object. The multiplicity of this end of the relationship. Gets the entity type targeted by this navigation property. Reference to the calling object. The entity type targeted by this navigation property. Gets the entity type declaring this navigation property. Reference to the calling object. The entity type that declares this navigation property. Gets the definition of this row type reference. Reference to the calling object. The definition of this row type reference. Gets the binding of a property of the type term of a type annotation. Annotation to search. Property to search for. The binding of the property in the type annotation, or null if no binding exists. Gets the binding of a property of the type term of a type annotation. Annotation to search. Name of the property to search for. The binding of the property in the type annotation, or null if no binding exists. Gets the value term of this value annotation. Reference to the calling object. The value term of this value annotation. Analyzes .EntitySet expression and returns a static reference if available. The function import containing the entity set expression. The static entity set of the function import. True if the entity set expression of the contains a static reference to an , otherwise false. Analyzes .EntitySet expression and returns a relative path to an if available. The path starts with the and may have optional sequence of and type casts segments. The function import containing the entity set expression. The model containing the function import. The function import parameter from which the relative entity set path starts. The optional sequence of navigation properties. True if the entity set expression of the contains a relative path an , otherwise false. Finds a property of a record expression. The record expression. Name of the property to find. The property, if found, otherwise null. This method is only used for the function import entity set path parsing. The type of the segment. Non-null entity type that may be bad. Provides CSDL serialization services for EDM models. Outputs a CSDL artifact to the provided writer. Model to be written. XmlWriter the generated CSDL will be written to. Errors that prevented successful serialization, or no errors if serialization was successful. A value indicating whether serialization was successful. Outputs a CSDL artifact to the provided writers. Model to be written. A delegate that takes in a schema namespace name and returns an XmlWriter to write the schema to. Errors that prevented successful serialization, or no errors if serialization was successful. A value indicating whether serialization was successful. Provides CSDL parsing services for EDM models. Returns an IEdmModel for the given CSDL artifacts. Collection of XmlReaders containing the CSDL artifacts. The model generated by parsing. Errors reported while parsing. Success of the parse operation. Returns an IEdmModel for the given CSDL artifacts. Collection of XmlReaders containing the CSDL artifacts. Model to be references by the created model. The model generated by parsing. Errors reported while parsing. Success of the parse operation. Returns an IEdmModel for the given CSDL artifacts. Collection of XmlReaders containing the CSDL artifacts. Models to be references by the created model. The model generated by parsing. Errors reported while parsing. Success of the parse operation. Enumerates the kinds of Edm Primitives. Represents a primitive type of unknown kind. Represents a Binary type. Represents a Boolean type. Represents a Byte type. Represents a DateTime type. Represents a DateTimeOffset type. Represents a Decimal type. Represents a Double type. Represents a Guid type. Represents a Int16 type. Represents a Int32 type. Represents a Int64 type. Represents a SByte type. Represents a Single type. Represents a String type. Represents a Stream type. Represents a Time type. Represents an arbitrary Geography type. Represents a geography Point type. Represents a geography LineString type. Represents a geography Polygon type. Represents a geography GeographyCollection type. Represents a geography MultiPolygon type. Represents a geography MultiLineString type. Represents a geography MultiPoint type. Represents an arbitrary Geometry type. Represents a geometry Point type. Represents a geometry LineString type. Represents a geometry Polygon type. Represents a geometry GeometryCollection type. Represents a geometry MultiPolygon type. Represents a geometry MultiLineString type. Represents a geometry MultiPoint type. Enumerates the EDM property concurrency modes. Denotes a property that should be used for optimistic concurrency checks. Denotes a property that should not be used for optimistic concurrency checks. Provides a caching mechanism for semantic properties. Type of the element that contains the cached property Type of the cached property Helper for Cache class. Defines EDM container element types. Represents an element where the container kind is unknown or in error. Represents an element implementing . Represents an element implementing . Enumerates the modes of parameters of EDM functions. Denotes that a parameter with an unknown or error directionality. Denotes that a parameter is used for input. Denotes that a parameter is used for output. Denotes that a parameter is used for input and output. Enumerates the multiplicities of EDM navigation properties. The Multiplicity of the association end is unknown. The Multiplicity of the association end is zero or one. The Multiplicity of the association end is one. The Multiplicity of the association end is many. Enumerates the actions EDM can apply on deletes. Take no action on delete. On delete also delete items on the other end of the association. Defines EDM property types. Represents a property implementing . Represents a property implementing . Represents a property with an unknown or error kind. Defines EDM schema element types. Represents a schema element with unknown or error kind. Represents a schema element implementing . Represents a schema element implementing . Represents a schema element implementing . Represents a schema element implementing Defines EDM metatypes. Represents a type with an unknown or error kind. Represents a type implementing . Represents a type implementing . Represents a type implementing . Represents a type implementing . Represents a type implementing . Represents a type implementing . Represents a type implementing . Interface describing anything that can be depended upon in tracking semantic changes in an EDM model. Interface describing anything that can be dependent on a dependency trigger in tracking semantic changes in an EDM model. Interface describing anything that can have cached data that might need flushing. Represents a definition of an EDM complex type. Common base class for definitions of EDM structured types. Initializes a new instance of the class. Denotes a structured type that cannot be instantiated. Denotes if the type is open. Base type of the type Adds the to this type. of the must be this type. The property being added. Creates and adds a nullable structural property to this type. Name of the property. Type of the property. Created structural property. Creates and adds a nullable structural property to this type. Name of the property. Type of the property. Flag specifying if the property is nullable. Created structural property. Creates and adds a structural property to this type. Name of the property. Type of the property. Created structural property. Creates and adds a structural property to this type. Name of the property. Type of the property. The default value of this property. The concurrency mode of this property. Created structural property. Searches for a structural or navigation property with the given name in this type and all base types and returns null if no such property exists. The name of the property being found. The requested property, or null if no such property exists. Computes the the cached dictionary of properties for this type definition. Dictionary of properties keyed by their name. Gets a value indicating whether this type is abstract. Gets a value indicating whether this type is open. Gets the properties declared immediately within this type. Gets the base type of this type. Gets a dictionary of the properties in this type definition for faster lookup. Initializes a new instance of the class. The namespace this type belongs to. The name of this type within its namespace. Initializes a new instance of the class. Note: Complex type inheritance is not supported in EDM version 3.0 and above. The namespace this type belongs to. The name of this type within its namespace. The base type of this complex type. Denotes whether this complex type is abstract. Gets the schema element kind of this element. Gets the namespace of this element. Gets the name of this element. Gets the kind of this type. Gets the kind of this term. Represents an EDM documentation. Initializes a new instance of the class. Summary of the documentation. The documentation contents. Gets summary of this documentation. Gets documentation. Represents an EDM entity container. Initializes a new instance of the class. Namespace of the entity container. Name of the entity container. Adds an entity container element to this entity container. The element to add. Creates and adds an entity set to this entity container. Name of the entity set. The entity type of the elements in this entity set. Created entity set. Creates and adds a function import to this entity container. Name of the function import. Return type of the function import. Created function import. Creates and adds a function import to this entity container. Name of the function import. Return type of the function import. An entity set containing entities returned by this function import. The two expression kinds supported are and . Created function import. Creates and adds a function import to this entity container. Name of the function import. Return type of the function import. An entity set containing entities returned by this function import. The two expression kinds supported are and . A value indicating whether this function import has side-effects. A value indicating whether this functon import can be composed inside expressions. A value indicating whether this function import can be used as an extension method for the type of the first parameter of this function import. Created function import. Searches for an entity set with the given name in this entity container and returns null if no such set exists. The name of the element being found. The requested element, or null if the element does not exist. Searches for function imports with the given name in this entity container and returns null if no such function import exists. The name of the function import being found. A group of the requested function imports, or an empty enumerable if no such function import exists. Gets a collection of the elements of this entity container. Gets the namespace of this entity container. Gets the name of this entity container. Gets the kind of this schema element. Represents a definition of an EDM entity reference type. Initializes a new instance of the class. The entity referred to by this entity reference. Gets the kind of this type. Gets the entity type pointed to by this entity reference. Represents an EDM entity set. Initializes a new instance of the class. An containing this entity set. Name of the entity set. The entity type of the elements in this entity set. Adds a navigation target, specifying the destination entity set of a navigation property of an entity in this entity set. The navigation property the target is being set for. The destination entity set of the specified navigation property. Finds the entity set that a navigation property targets. The navigation property. /// The entity set that the navigation propertion targets, or null if no such entity set exists. Gets the entity type contained in this entity set. Gets the kind of element of this container element. Gets the container of this entity set. Gets the navigation targets of this entity set. Represents a definition of an EDM entity type. Initializes a new instance of the class. Namespace the entity belongs to. Name of the entity. Initializes a new instance of the class. Namespace the entity belongs to. Name of the entity. The base type of this entity type. Initializes a new instance of the class. Namespace the entity belongs to. Name of the entity. The base type of this entity type. Denotes an entity that cannot be instantiated. Denotes if the type is open. Adds the to the key of this entity type. The key properties. Adds the to the key of this entity type. The key properties. Creates and adds a unidirectional navigation property to this type. Default partner property is created, but not added to the navigation target type. Information to create the navigation property. Created navigation property. Creates and adds a unidirectional navigation property to this type. Navigation property partner is created, but not added to the navigation target type. Information to create the navigation property. Information to create the partner navigation property. Created navigation property. Creates and adds a navigation property to this type and adds its navigation partner to the navigation target type. Information to create the navigation property. Information to create the partner navigation property. Created navigation property. The puspose of this method is to make sure that some of the fields are set to valid partner defaults. For example if .Target is null, it will be set to this entity type. If .TargetMultiplicity is unknown, it will be set to 0..1, etc. Whenever this method applies new values to , it will return a copy of it (thus won't modify the original). If is null, a new info object will be produced. Primary navigation property info. Partner navigation property info. May be null. Partner info. Gets the structural properties of the entity type that make up the entity key. Gets the kind of this schema element. Gets the namespace this schema element belongs to. Gets the name of this element. Gets the kind of this type. Gets the term kind of the entity type. Represents an EDM function. Represents a base class for EDM functions and function imports. Initializes a new instance of the class. The name of the function. The return type of the function. Searches for a parameter with the given name in this function and returns null if no such parameter exists. The name of the parameter to be found. The requested parameter, or null if no such parameter exists. Creates and adds a parameter to this function (as the last parameter). The name of the parameter being added. The type of the parameter being added. Created parameter. Creates and adds a parameter to this function (as the last parameter). The name of the parameter being added. The type of the parameter being added. Mode of the parameter. Created parameter. Adds a parameter to this function (as the last parameter). The parameter being added. Gets the return type of this function. Gets the parameters of this function. Initializes a new instance of the class. Namespace of the function. Name of the function. Return type of the function. Initializes a new instance of the class. Namespace of the function. Name of the function. Return type of the function. Defining expression of the function (for example an eSQL expression). Gets the defining expression of this function. Gets the element kind of this function, which is always Function. Gets the namespace of this function. Represents an EDM function import. Initializes a new instance of class (side-effecting, non-composable, non-bindable). An containing this function import. Name of the function import. Return type of the function import. Initializes a new instance of class (side-effecting, non-composable, non-bindable). An containing this function import. Name of the function import. Return type of the function import. An entity set containing entities returned by this function import. The two expression kinds supported are and . Initializes a new instance of class. An containing this function import. Name of the function import. Return type of the function import. An entity set containing entities returned by this function import. The two expression kinds supported are and . A value indicating whether this function import has side-effects. A value indicating whether this functon import can be composed inside expressions. A value indicating whether this function import can be used as an extension method for the type of the first parameter of this function import. Gets a value indicating whether this function import has side-effects. cannot be set to true if is set to true. Gets a value indicating whether this functon import can be composed inside expressions. cannot be set to true if is set to true. Gets a value indicating whether this function import can be used as an extension method for the type of the first parameter of this function import. Gets the entity set containing entities returned by this function import. Gets the kind of this function, which is always FunctionImport. Gets the container of this function. Represents an EDM function parameter. Initializes a new instance of the class. Declaring function of the parameter. Name of the parameter. Type of the parameter. Initializes a new instance of the class. Declaring function of the parameter. Name of the parameter. Type of the parameter. Mode of the parameter. Gets the type of this parameter. Gets the function or function import that declared this parameter. Gets the mode of this parameter. Represents an EDM model. Initializes a new instance of the class. Adds a model reference to this model. The model to reference. Adds a schema element to this model. Element to be added. Adds a collection of schema elements to this model. Elements to be added. Adds a vocabulary annotation to this model. The annotation to be added. Searches for vocabulary annotations specified by this model. The annotated element. The vocabulary annotations for the element. Finds a list of types that derive directly from the supplied type. The base type that derived types are being searched for. A list of types from this model that derive directly from the given type. Gets the collection of schema elements that are contained in this model. Gets the collection of vocabulary annotations that are contained in this model. Represents an EDM navigation property. Represents an EDM property. Initializes a new instance of the class. The type that declares this property. Name of the property. Type of the property. Gets the type of this property. Gets the type that this property belongs to. Gets the kind of this property. Creates two navigation properties representing an association between two entity types. Information to create the navigation property. Information to create the partner navigation property. Created navigation property. Creates two navigation properties representing an association between two entity types. Navigation property name. Type of the navigation property. Dependent properties of the navigation source. A value indicating whether the navigation source logically contains the navigation target. Action to take upon deletion of an instance of the navigation source. Navigation partner property name. Type of the navigation partner property. Dependent properties of the navigation target. A value indicating whether the navigation target logically contains the navigation source. Action to take upon deletion of an instance of the navigation target. Navigation property. Gets the kind of this property. Gets a value indicating whether the navigation target is contained inside the navigation source. Gets the dependent properties of the association this navigation property expresses. Gets a value indicating whether this navigation property is from the principal end of the association. Gets the entity type that this navigation property belongs to. Gets the action to take when an instance of the declaring type is deleted. Gets the partner of this navigation property. Represents an EDM integer constant. Initializes a new instance of the class. Integer value represented by this value. Initializes a new instance of the class. Type of the integer. Integer value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents a value of an EDM property. Initializes a new instance of the class with non-initialized property. This constructor allows setting property once after has been constructed. Name of the property for which this provides a value. Initializes a new instance of the class. This constructor will not allow changing property after the EdmPropertyValue instance has been constructed. Name of the property for which this provides a value. Value of the property. Gets the name of the property for which this provides a value. Gets or sets the value of the property. The value can be initialized only once either using the constructor or by assigning value directly to this property. Represents an EDM structural (i.e. non-navigation) property. Initializes a new instance of the class. The type that declares this property. Name of the property. The type of the property. Initializes a new instance of the class. The type that declares this property. Name of the property. The type of the property. The default value of this property. The concurrency mode of this property. Gets the default value of this property. Gets the concurrency mode of this property. Gets the kind of this property. Represents a definition of an EDM row type. Initializes a new instance of the class. Gets the kind of this type. Represents an EDM string constant. Initializes a new instance of the class. String value represented by this value. Initializes a new instance of the class. Type of the string. String value represented by this value. Gets the definition of this value. Gets the kind of this expression. Gets the kind of this value. Represents an EDM structured value. Initializes a new instance of the class. Type that describes this value. Child values of this value. Retrieves the value corresponding to the given property name. Returns null if no such value exists. The property that describes the value being found. The requested value, or null if no such value exists. Gets the property values of this structured value. Gets the kind of this value. Represents an EDM annotation with an immediate native value. Initializes a new instance of the class. Namespace URI of the annotation. Name of the annotation within the namespace. Value of the annotation Initializes a new instance of the class. Namespace URI of the annotation. Name of the annotation within the namespace. The namespace Uri of the annotation. Gets the value of this annotation. Represents information about an EDM type definition that failed to resolve. Represents a reference to an EDM entity reference type. Initializes a new instance of the class. The definition referred to by this reference. Denotes whether the type can be nullable. Gets the entity reference definition to which this type refers. Contains constant values that apply to the EDM model, regardless of source (for CSDL/EDMX specific constants see ). The URI of annotations that will be serialized as documentation elements. The local name of annotations that will be serialized as documentation elements. The URI of annotations that are internal and will not be serialized. The local name of the annotation that stores the data services version attribute for EDMX serialization. The local name of the annotation that stores the max data services version attribute for EDMX serialization. The local name of the annotation that stores EDM version of a model. Version 1.0 of EDM. Corresponds to CSDL namespace "http://schemas.microsoft.com/ado/2006/04/edm". Version 1.1 of EDM. Corresponds to CSDL namespace "http://schemas.microsoft.com/ado/2007/05/edm". Version 1.2 of EDM. Corresponds to CSDL namespace "http://schemas.microsoft.com/ado/2008/01/edm". Version 2.0 of EDM. Corresponds to CSDL namespaces "http://schemas.microsoft.com/ado/2008/09/edm" and "http://schemas.microsoft.com/ado/2009/08/edm". Version 3.0 of EDM. Corresponds to CSDL namespace "http://schemas.microsoft.com/ado/2009/11/edm". The current latest version of EDM. This is a marker interface for core model elements that do not require validation. Provides predefined declarations relevant to EDM semantics. The default core EDM model. Gets a reference to a non-atomic collection type definition. Type of elements in the collection. A new non-atomic collection type reference. Searches for a type with the given name in this model and returns null if no such type exists. The qualified name of the type being found. The requested type, or null if no such type exists. Searches for a value term with the given name in this model and returns null if no such value term exists. The qualified name of the value term being found. The requested value term, or null if no such value term exists. Searches for functions with the given name in this model and returns an empty enumerable if no such function exists. The qualified name of the function being found. A set functions sharing the specified qualified name, or an empty enumerable if no such function exists. Searches for an entity container with the given name in this model and returns null if no such entity container exists. The name of the entity container being found. The requested entity container, or null if no such entity container exists. Gets primitive type by kind. Kind of the primitive type. Primitive type definition. Gets the EdmPrimitiveTypeKind by the type name. Name of the type to look up. EdmPrimitiveTypeKind of the type. Gets a reference to a primitive type of the specified kind. Primitive kind of the type reference being created. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to the Int16 primitive type definition. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to the Int32 primitive type definition. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to the Int64 primitive type definition. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to the Boolean primitive type definition. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to the Byte primitive type definition. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to the SByte primitive type definition. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to the Guid primitive type definition. Flag specifying if the referenced type should be nullable. A new primitive type reference. Gets a reference to a datetime primitive type definition. Flag specifying if the referenced type should be nullable. A new datetime type reference. Gets a reference to a datetime with offset primitive type definition. Flag specifying if the referenced type should be nullable. A new datetime with offset type reference. Gets a reference to a time primitive type definition. Flag specifying if the referenced type should be nullable. A new time type reference. Gets a reference to a decimal primitive type definition. Precision of values of this type. Scale of values of this type. Flag specifying if the referenced type should be nullable. A new decimal type reference. Gets a reference to a decimal primitive type definition. Flag specifying if the referenced type should be nullable. A new decimal type reference. Gets a reference to a single primitive type definition. Flag specifying if the referenced type should be nullable. A new decimal type reference. Gets a reference to a double primitive type definition. Flag specifying if the referenced type should be nullable. A new decimal type reference. Gets a reference to a stream primitive type definition. Flag specifying if the referenced type should be nullable. A new stream type reference. Gets a reference to a temporal primitive type definition. Primitive kind of the type reference being created. Precision of values of this type. Flag specifying if the referenced type should be nullable. A new temporal type reference. Gets a reference to a temporal primitive type definition. Primitive kind of the type reference being created. Flag specifying if the referenced type should be nullable. A new temporal type reference. Gets a reference to a binary primitive type definition. Flag specifying if max length is unbounded. Maximum length of the type. Flag specifying if the type will have a fixed length. Flag specifying if the referenced type should be nullable. A new binary type reference. Gets a reference to a binary primitive type definition. Flag specifying if the referenced type should be nullable. A new binary type reference. Gets a reference to a spatial primitive type definition. Primitive kind of the type reference being created. Spatial Reference Identifier for the spatial type being created. Flag specifying if the referenced type should be nullable. A new spatial type reference. Gets a reference to a spatial primitive type definition. Primitive kind of the type reference being created. Flag specifying if the referenced type should be nullable. A new spatial type reference. Gets a reference to a string primitive type definition. Flag specifying if max length is the maximum allowable value. Maximum length of the type. Flag specifying if the type will have a fixed length. Flag specifying if the type should support unicode encoding. String representing how data should be ordered. Flag specifying if the referenced type should be nullable. A new string type reference. Gets a reference to a binary string type definition. Flag specifying if the referenced type should be nullable. A new string type reference. Searches for vocabulary annotations specified by this model or a referenced model for a given element. The annotated element. The vocabulary annotations for the element. Finds a list of types that derive from the supplied type. The base type that derived types are being searched for. A list of types that derive from the type. Gets the namespace of this core model. Gets the types defined in this core model. Gets the vocabulary annotations defined in this model. Gets the collection of models referred to by this model. Gets the model's annotations manager. Gets the kind of this type. Represents a reference to an EDM row type. Initializes a new instance of the class. Type that describes this value. Denotes whether the type can be nullable. Provides semantics of the predefined EDM types. Returns true if this reference refers to a collection. Type reference. This reference refers to a collection. Returns true if this reference refers to an entity type. Type reference. This reference refers to an entity type. Returns true if this reference refers to an entity type. Type reference. This reference refers to an entity type. Returns true if this reference refers to a complex type. Type reference. This reference refers to a complex type. Returns true if this reference refers to an enumeration type. Type reference. This reference refers to an enumeration type. Returns true if this reference refers to a row type. Type reference. This reference refers to a row type. Returns true if this reference refers to a structured type. Type reference. This reference refers to a structured type. Returns true if this type kind represents a structured type. Reference to the calling object. This kind refers to a structured type. Returns true if this reference refers to a primitive type. Type reference. This reference refers to a primitive type. Returns true if this reference refers to a binary type. Type reference. This reference refers to a binary type. Returns true if this reference refers to a boolean type. Type reference. This reference refers to a boolean type. Returns true if this reference refers to a temporal type. Type reference. This reference refers to a temporal type. Returns true if this type kind represents a temporal type. Reference to the calling object. This kind refers to a temporal type. Returns true if this reference refers to a DateTime type. Type reference. This reference refers to a DateTime type. Returns true if this reference refers to a time type. Type reference. This reference refers to a time type. Returns true if this reference refers to a DateTimeOffset type. Type reference. This reference refers to a DateTimeOffset type. Returns true if this reference refers to a decimal type. Type reference. This reference refers to a decimal type. Returns true if this reference refers to a floating point type. Type reference. This reference refers to a floating point type. Returns true if this reference refers to a single type. Type reference. This reference refers to a single type. Returns true if this reference refers to a double type. Type reference. This reference refers to a double type. Returns true if this reference refers to a GUID type. Type reference. This reference refers to a GUID type. Returns true if this reference refers to a signed integral type. Type reference. This reference refers to a signed integral type. Returns true if this reference refers to an SByte type. Type reference. This reference refers to an SByte type. Returns true if this reference refers to an Int16 type. Type reference. This reference refers to an Int16 type. Returns true if this reference refers to an Int32 type. Type reference. This reference refers to an Int32 type. Returns true if this reference refers to an Int64 type. Type reference. This reference refers to an Int64 type. Returns true if this reference refers to an integer type. Type reference. This reference refers to an integer type. Returns true if this primitive type kind represents an integer type. Type reference. This kind refers to an integer type. Returns true if this reference refers to a byte type. Type reference. This reference refers to a byte type. Returns true if this reference refers to a string type. Type reference. This reference refers to a string type. Returns true if this reference refers to a stream type. Type reference. This reference refers to a stream type. Returns true if this reference refers to a spatial type. Type reference. This reference refers to a spatial type. Returns true if this definition refers to a spatial type. Type reference. This definition refers to a spatial type. Returns true if this type kind represents a spatial type. Type reference. This kind refers to a spatial type. If this reference is of a primitive type, this will return a valid primitive type reference to the type definition. Otherwise, it will return a bad primitive type reference. Reference to the calling object. A valid primitive type reference if the definition of the reference is of a primitive type. Otherwise a bad primitive type reference. If this reference is of a collection type, this will return a valid collection type reference to the type definition. Otherwise, it will return a bad collection type reference. Reference to the calling object. A valid collection type reference if the definition of the reference is of a collection type. Otherwise a bad collection type reference. If this reference is of a structured type, this will return a valid structured type reference to the type definition. Otherwise, it will return a bad structured type reference. Reference to the calling object. A valid structured type reference if the definition of the reference is of a structured type. Otherwise a bad structured type reference. If this reference is of an enumeration type, this will return a valid enumeration type reference to the type definition. Otherwise, it will return a bad enumeration type reference. Reference to the calling object. A valid enumeration type reference if the definition of the reference is of an enumeration type. Otherwise a bad enumeration type reference. If this reference is of an entity type, this will return a valid entity type reference to the type definition. Otherwise, it will return a bad entity type reference. Reference to the calling object. A valid entity type reference if the definition of the reference is of an entity type. Otherwise a bad entity type reference. If this reference is of an entity reference type, this will return a valid entity reference type reference to the type definition. Otherwise, it will return a bad entity reference type reference. Reference to the calling object. A valid entity reference type reference if the definition of the reference is of an entity reference type. Otherwise a bad entity reference type reference. If this reference is of a complex type, this will return a valid complex type reference to the type definition. Otherwise, it will return a bad complex type reference. Reference to the calling object. A valid complex type reference if the definition of the reference is of a complex type. Otherwise a bad complex type reference. If this reference is of a row type, this will return a valid row type reference to the type definition. Otherwise, it will return a bad row type reference. Reference to the calling object. A valid row type reference if the definition of the reference is of a row type. Otherwise a bad row type reference. If this reference is of a spatial type, this will return a valid spatial type reference to the type definition. Otherwise, it will return a bad spatial type reference. Reference to the calling object. A valid spatial type reference if the definition of the reference is of a spatial type. Otherwise a bad spatial type reference. If this reference is of a temporal type, this will return a valid temporal type reference to the type definition. Otherwise, it will return a bad temporal type reference. Reference to the calling object. A valid temporal type reference if the definition of the reference is of a temporal type. Otherwise a bad temporal type reference. If this reference is of a decimal type, this will return a valid decimal type reference to the type definition. Otherwise, it will return a bad decimal type reference. Reference to the calling object. A valid decimal type reference if the definition of the reference is of a decimal type. Otherwise a bad decimal type reference. If this reference is of a string type, this will return a valid string type reference to the type definition. Otherwise, it will return a bad string type reference. Reference to the calling object. A valid string type reference if the definition of the reference is of a string type. Otherwise a bad string type reference. If this reference is of a binary type, this will return a valid binary type reference to the type definition. Otherwise, it will return a bad binary type reference. Reference to the calling object. A valid binary type reference if the definition of the reference is of a binary type. Otherwise a bad binary type reference. Returns the primitive kind of the definition of this reference. Reference to the calling object. The primitive kind of the definition of this reference. Returns a reference to this row type definition. Reference to the calling object. Flag specifying if the referenced type should be nullable. A reference to this row type definition. Determines if the potential base type is in the inheritance hierarchy of the type being tested. Type to be tested for derivation from the other type. The potential base type of the type being tested. True if and only if the type inherits from the potential base type. Determines if a type is equivalent to or derived from another type. Type to be tested for equivalence to or derivation from the other type. Type that is the other type. True if and only if the thisType is equivalent to or inherits from otherType. Represents a reportable error in EDM Initializes a new instance of the EdmError class. The location where the error occurred. An integer code representing the error. A human readable message describing the error. Gets a string representation of the error. A string representation of the error. Gets the location of the error in the file in which it occurred. Gets an integer code representing the error. Gets a human readable string describing the error. Collection of validation methods. Validate the and all of its properties using the current version of the model. If the model has no version, is used. The root of the model to be validated. Errors encountered while validating the model. True if model is valid, otherwise false. Validate the and all of its properties given certain version. The root of the model to be validated. Version of Edm to validate against. Errors encountered while validating the model. True if model is valid, otherwise false. Validate the and all of its properties given certain version. The root of the model to be validated. Custom rule set to validate against. Errors encountered while validating the model. True if model is valid, otherwise false. This is a thread-safe cache of object type to interface visitors which is shared between all instances of the validator. Context that records errors reported by validation rules. Method returns true if the is known to have structural errors associated with it. The element to test. True if the has structural errors associated with it. Register an error with the validation context. Location of the error. Value representing the error. Message text discribing the error. Register an error with the validation context. Error to register. Gets the model being validated. Contains IsBad() and Errors() extension methods. Returns true if this element contains errors returned by the method. Reference to the calling object. This element is an invalid element. Gets the errors, if any, that belong to this element or elements that this element contains. For example errors for a structural type include the errors of the type itself and errors of its declared properties. The method does not analyze elements referenced by this element. For example errors of a property do not include errors from its type. Reference to the calling object. Any errors that belong to this element or elements that element contains. Gets the errors, if any, that belong to this type reference or its definition. The type reference. Any errors that belong to this type reference or its definition. Built in Edm validation rules. Validates that no direct value annotations share the same name and namespace. Validates that a name is not empty or whitespace. Validates that an element name is not too long according to the CSDL spec. Validates that an element name matches the allowed pattern of names according to the CSDL spec. Validates that an element namespace is not empty or whitespace. Validates that an element namespace is not too long according to the CSDL spec. Validates that an element namespace matches the allowed pattern of namespaces according to the CSDL spec. Validates that an element namespace is not a reserved system namespace. A schema element without other errors must not have kind of none. An entity container element without other errors must not have kind of none. Validates that there are no duplicate names in an entity container. Validates that there is no entity set whose entity type has no key. Validates that the entity type of an entity set can be found from the model being validated. Validates that an entity set can only have a single navigation property targetting it that has Contains set to true. Validates that if a navigation property is traversed to another entity set, and then the navigation properties partner is traversed, the destination will be the source entity set. Validates an association set's name is correct Validates that no navigation property is mapped to two different entity sets. Validates that if a navigation property mapping is of recursive containment, the mapping points back to the source entity set. Validates that the target of a navigation property mapping is valid for the target type of the property. Validates that a type does not have a property with the same name as that type. Validates that there are not duplicate properties in a type. Validates that the base type of a complex type is complex, and the base type of an entity type is an entity. Validates that the base type of a structured type can be found from the model being validated. Validates that the declaring type of a property contains that property. Open types are supported only in version 1.2 and after version 2.0. Open types are supported only on entity types. Raises an error if an enum type is found. Validates that there are not duplicate enum members in an enum. Raises an error if the underlying type of an enum type is not an integer type. Raises an error if the type of an enum member doesn't match the underlying type of the enum it belongs to. Validates that there are not duplicate properties in an entity key. Validates that no part of an entity key is nullable. Validates that all parts of an entity key are scalar. Validates that no part of an entity key is a binary primitive type. Validates that a key is not defined if there is already a key in the base type. Validates that the entity type has a key. Validates that all properties in the key of an entity blong to that entity. Validates that the entity type wrapped in this entity reference can be found through the model being validated. A type without other errors must not have kind of none. A primtive type without other errors must not have kind of none. Validates that a complex type is not abstract. Validates that a complex type does not inherit. Validates that a complex type contains at least one property. Validates that a row type does not have a base type. Validates that a row type contains at least one property. Validates that any property with a complex type is not nullable. Validates that the property is of an allowed type. Validates that if the concurrency mode of a property is fixed, the type is primitive. Validates that only one end of an association has an OnDelete operation. Validates that the type of a navigation property corresponds to the other end of the association and the multiplicity of the other end. Validates that the dependent properties of a navigation property contain no duplicates. Validates multiplicity of the principal end: 0..1 - if some dependent properties are nullable, 1 - if some dependent properties are not nullable. * - not allowed. Validates that if the dependent properties are equivalent to the key of the dependent end, the multiplicity of the dependent end cannot be 1 Validates multiplicity of the dependent end according to the following rules: 0..1, 1 - if dependent properties represent the dependent end key. * - if dependent properties don't represent the dependent end key. Validates that all dependent properties of a navigation property belong to the dependent entity type. Validates that all dependent properties are a subset of the dependent entity types key. Validates that the navigation property does not have both a multiplicity of many and an OnDelete operation. Validates that is not set prior to V3. Validates that if a navigation property has = true and the target entity type is the same as the declaring type of the property, then the multiplicity of the target of navigation is 0..1 or Many. This depends on there being a targetting cycle. Because of the rule , we know that either this is always true, or there will be an error Validates that if a navigation property has = true and the target entity type is the same as the declaring type of the property, then the multiplicity of the source of navigation is Zero-Or-One. This depends on there being a targetting cycle. Because of the rule , we know that either this is always true, or there will be an error Validates that if a navigation property has = true and the target entity type is defferent than the declaring type of the property, then the multiplicity of the source of navigation is One. Validates that if an entity does not directly contain itself, it cannot contain itself through a containment loop. Validates that each pair of properties between the dependent properties and the principal ends key are of the same type. Validates that an association name is valid. Validates that an association end name is valid. A property without other errors must not have kind of none. Raises an error if a function is found. Validates that no function parameters are output parameters. Validates that a function import has an allowed return type. Validates that a function import has an allowed return type. Validates that if a function import specifies an entity or collection of entities as its return type, it must also specify an entity set. Validates that the entity set of a function import is defined using a path or an entity set reference expression. Validates that the return type of a function import must match the type of the entity set of the function. Validates that if a function import is composable, it must have a return type. Validates that the type of a function imports parameter is correct. Validates that a function import is not sideeffecting. Validates that a function import is not composable. Validates that a function is not bindable. Validates that if a function is composable, it is not also sideeffecting. Validates that if a function is bindable, it must have parameters. Validates that no function import parameters have mode of none. Validates that a function does not have multiple parameters with the same name. Validates that a type reference refers to a type that can be found through the model being validated. References to EDM stream type are not supported before version 3.0. References to EDM spatial types are not supported before version 3.0. Validates that the scale is between 0 and the precision of the decimal type. Validates that the precision is between 0 and the max precision of the decimal type. Validates that the max length of a string is not negative. Validates that IsUnbounded cannot be true if MaxLength is non-null. Validates that the max length of a binary type is not negative. Validates that isUnbounded cannot be true if MaxLength is non-null. Validates that the precision is between 0 and the max precision of the temporal type. Validates every schema element in the current model (except for entity containers) is unique across all referenced models. Validates every schema element in the current model is unique across all referenced models. Validates that there are not duplicate properties in an entity key. Validates that an immediate value annotation has a name and a namespace. Validates that an immediate value annotation that is flagged to be serialized as an element can be serialized safely. Validates that the name of a direct value annotation can safely be serialized as XML. Vocabulary annotations are not supported before EDM 3.0. Validates that a vocabulary annotations target can be found through the model containing the annotation. Validates that if a value annotation declares a type, the expression for that annotation has the correct type. Validates that a vocabulary annotations term can be found through the model containing the annotation. Validates that a vocabulary annotations term can be found through the model containing the annotation. Validates that a type annotation implements its term type properly. Validates that the value of a property value binding is the correct type. Value terms are not supported before EDM 3.0. A term without other errors must not have kind of none. Validates that an if expression has a boolean condition. Validates that all properties of a collection expression are of the correct type. Validates that if a value record expression declares a type, the property types are correct. Validates the types of a function application are correct. Validates that there are no annotations that share the same term and qualifier. Validates that if a primitive value declares a type, the value is acceptable for the type. A semantic validation rule. A validation rule that is valid for a specific type. Type that the rule is valid for. Initializes a new instance of the ValidationRule class. Action to perform the validation. A set of rules to run during validation. Initializes a new instance of the ValidationRuleSet class. Ruleset whose rules should be contained in this set. Additional rules to add to the set. Initializes a new instance of the ValidationRuleSet class. Rules to be contained in this ruleset. Gets the default validation ruleset for the given version. The EDM version being validated. The set of rules to validate that the model conforms to the given version. Gets all of the rules in this ruleset. All of the rules in this ruleset. Gets all of the rules in this ruleset. All of the rules in this ruleset. EdmLib validation error codes Invalid error code References to EDM stream type are not supported before version 3.0. References to EDM spatial types are not supported before version 3.0. An exception was thrown by the underlying xml reader. Encountered an XML node that was never used Encountered an XML attribute that was never used Encountered an XML element that was never used Text was found in a location it was not allowed in An empty file was provided to the parser An XML element was missing a required attribute Invalid Name An XML attribute or element representing EDM type is missing. Element name is already defined in this context. The specified version number is not valid. Malformed boolean value. The property contains an error. The type of this property is invalid for the given context. Precision out of range Scale out of range Name is too long. The provided association is invalid Navigation property contains errors. Entity key is invalid. The value of the property must not be null. An object with an interface kind property does not implement the interface corresponding to the value of that property. For example this error will be reported for an object that implements interface with kind property reporting .Entity, but does not implement interface. The value of an interface kind property is not semantically valid. A semantically valid model must not contain elements of kind 'None'. An enumeration property must not contain null elements. The value of the enum type property is out of range. If property P1 is a navigation property and P2 is its parnter, then partner property of P2 must be P1. A chain of base types is cyclic. Multiplicity value was malformed The value for the Action attribute is invalid or not allowed in the current context An error occured processing the OnDelete element No complex type with that name exists. The extent name used in the EntittyContainerType End does not match the name of any of the EntityContainerProperties in the containing EntityContainer Function import specifies an entity set expression which is not supported in this context. Function import entity set expression can be either an entity set reference or a path starting with a function import parameter and traversing navigation properties. The target entity set must be able to hold an entity that is valid for the navigation property of a mapping. Invalid role value in the relationship constraint Invalid Property in relationship constraint Type mismatch between ToProperty and FromProperty in the relationship constraint Invalid multiplicty of the principal end of a navigation. The number of properties in the FromProperty and ToProperty in the relationship constraint must be identical Invalid multiplicty of the dependent end of a navigation. Open types are supported only in version 1.2 and after version 2.0. Only entity types can be open. Vocabulary annotations are not supported before EDM 3.0 Same role referred in the ToRole and FromRole of a referential constraint Properties that are part of entity key must be of scalar type Binary type properties which are part of entity key are currently supported before V2.0 End with * multiplicity cannot have operations specified EntitySet type has no keys ConcurrencyMode value was malformed Conurency can't change for any sub types of an EntitySet type. In version 1.0 function import can have no return type or return a collection of scalars or a collection of entities. In all other versions function import can have no return type or return a scalar, a complex type, an entity type or a collection of those. Composable function import cannot be side-effecting. Function import specifies entity type return but no entity set. Function import specifies entity type that does not derive from element type of entity set. Function import specifies a binding to an entity set but does not return entities. A composable function import must have return type. Same Entity Set Taking part in the same role of the relationship set in two different relationship sets Entity key refers to the same property twice Nullable complex Type not supported in version 1.0 and 2.0. No Key defined on Entity Type Need not specify system namespace in using Invalid qualification specified for type The value for an enumeration type member is ouf of range. The entity container name has already been assigned to a different entity container. Complex types were not allowed to be abstract here. Complex types cannot have base types in this version. A navigation property without direct containment cannot contain its declaring entity indirectly. If a navigation property mapping is of a recursive navigation property, the mapping must point back to the same entity set. Name collision makes this name ambiguous. Could not find a type with this name. Could not find a primitive type with this name. This complex type is part of a cycle. This Entity Container is bad because some part of its extends hierarchy is part of a cycle. This entity type is part of a cycle. Could not convert type reference to the requested type. This entity set became invalid because the entity that it was of the type of was removed from the model. Could not find an EntityContainer with that name. Could not find an EntitySet with that name. Could not find a property with that name Could not find an association end with that name Type of the navigation property was invalid because the association of the navigation property was invalid. The base type of an entity must also be an entity. The base type of a complex type must also be complex. Could not find a function with this name. Rows cannot have base types. The role of an association set end must be an association end belonging to the association type that defines the associaiton set. Every property in an entity key must be a property of the entity. The principal end of a referential constraint must be one of the ends of the association that defined the referential constraint. Dependent properties of a referential constraint must belong to the dependent entity set. If a structured type declares a property, that properties declaring type must be the declaring structured type. Functions are not supported before version 2.0. Value terms are not supported before EDM 3.0 Navigation property has a type that is not an entity or collection of entities. Underlying type of the enumeration type is bad because the enumeration type is bad. The type of the entity set on this association end is inconsistent with the association end. Only function parameters with mode of In are allowed in function imports. Complex types must contain at least one property. Unsupported function import parameter type. A row type must contain at least one property. A referential constraint cannot have multiple dependent properties with the same name. Bindable function import must have at least one parameter. Function imports with side-effecting setting are not supported before version 3.0. Function imports with composable setting are not supported before version 3.0. Function imports with bindable setting are not supported before version 3.0. Max length is out of range. Binding context for Path expression does not supply an entity type Invalid value for SRID Invalid value for max length Invalid value for long Invalid value for integer Invalid association set Invalid parameter mode No entity type with that name exists. Value is invalid Binary value is invalid. Floating point value is invalid. DateTime value is invalid. DateTimeOffset value is invalid. Decimal value is invalid. Guid value is invalid. The type kind None is not semantically valid. A semantically valid model must not contain elements of type kind None. The if expression is invalid because it does not have 3 elements. Enums were present in a model with a version below 3.0 The type of an enum member value must match the underlying of the parent enum. The IsType expression is invalid because it does not have 1 element. The type name is not fully qualified and not a primitive. The term name is not fully qualified. No model was parsed because no XmlReaders were provided. Model could not be parsed because one of the XmlReaders was null. IsUnbounded cannot be true if MaxLength is non-null. ImmediateValueAnnotation is invalid as an element annotation. The LabeledElement expression is invalid because it does not have 1 element. Could not find a LabeledElement with that name Could not find a enum member with that name The AssertType expression is invalid because it does not have 1 element. Could not find a Parameter with that name A navigation property with = true must point to an optional target. If a navigation property has = true and the target entity type is the same as the declaring type of the property, then the multiplicity of the source of navigation is Zero-Or-One. If a navigation property has = true and the target entity type is defferent than the declaring type of the property, then the multiplicity of the source of navigation is One. Navigation properties with setting are not supported before version 3.0. The annotation target path cannot possibly refer to an annotable element. A nullable type is not valid if a non-nullable type is required. The expression is a primitive constant, and cannot be valid for an non-primitive type. The primitive type is not valid for the requested type. Null is not valid in a non nullable expression. The expression is not valid for the asserted type. A collection expression is not valid for a non-collection type. A record expression is not valid for a non-structured type. The record expression does not have all of the properties required for the specified type. The record expression's type is not open, but the record expression has extra properties. Target has multiple annotations with the same term and same qualifier. Function application has wrong number of arguments for the function being applied. Is it invalid to have multiple using statements with the same alias in a single schema element. A model cannot be serialized to CSDL if it has references to types without fully qualified names. The model could not be serialized because multiple schemas were produced and only a single output stream was found. The Edmx version is not valid. The EdmVersion is not valid. Nothing was written because no schemas were produced. Model has multiple entity containers with the same name. The container name of a container element must be the full name of the container entity container. A primitive constant expression is not valid for a non-primitive type. The value of the integer constant is out of range for the asserted type. The length of the string constant is too large for the asserted type. The length of the binary constant is too large for the asserted type. None is not a valid mode for a function import parameter. A type without other errors must not have kind of none. A primitive type without other errors must not have kind of none. A property without other errors must not have kind of none. A term without other errors must not have kind of none. A schema element without other errors must not have kind of none. An entity container element without other errors must not have kind of none. A binary value must have content. There can only be a single navigation property mapping with containment that targets a particular entity set. The navigation properties partner does not point back to the correct type. An entity set can only have one navigation property with containment. If a navigation property is traversed from an entity set, and then it's partner is traversed from the target of the first mapping, the destination should be the originating entity set. There can only be a single mapping from a given EntitySet with a particular navigation property. An entity set must have a mapping for all of the navigation properties in its element type. Type annotation does not have a property binding for all required properties. Type annotation has a property binding for a non-existant property and its type is not open. Time value is invalid. The primitive type is invalid. An Enum type must have an underlying type of integer. Could not find a term with this name. The principal properties of a referential constraint must match the key of the referential constraint. A direct value annotation with the same name and namespace already exists. AssociationSetEnd cannot infer an entity set because no set exists of the given type. AssociationSetEnd cannot infer an entity set because more than one set exists of the given type. Invalid entity set path. Invalid enum member path. An annotation qualifier must be a simple name. Enum type could not be resolved. Could not find a target with this name. Path cannot be resolved in the given context. Helper methods that provide a common API surface on all platforms. Use this instead of Type.EmptyTypes. Use this instead of Uri.UriSchemeHttp. Use this instead of Uri.UriSchemeHttps. Replacement for Type.Assembly. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsValueType. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsGenericParameter. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsAbstract. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsGenericType. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsGenericTypeDefinition. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsVisible. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsInterface. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsClass. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.IsEnum. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.BaseType. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Type.ContainsGenericParameters. Type on which to call this helper method. See documentation for property being accessed in the body of the method. Replacement for Array.AsReadOnly(T[]). Type of items in the array. Array to use to create the ReadOnlyCollection. ReadOnlyCollection containing the specified array items. Converts a string to a DateTime. String to be converted. See documentation for method being accessed in the body of the method. Converts a string to a DateTimeOffset. String to be converted. See documentation for method being accessed in the body of the method. Adds the seconds padding as zeros to the date time string if seconds part is missing. String that needs seconds padding DateTime string after adding seconds padding Converts the DateTime to a string, internal method. DateTime to convert to String. Converted String. Converts a DateTime to a string. DateTime to be converted. See documentation for property being accessed in the body of the method. Gets the specified type. Name of the type to get. Throws if the type could not be found. Type instance that represents the specified type name. Gets the TypeCode for the specified type. Type on which to call this helper method. TypeCode representing the specified type. Gets the Unicode Category of the specified character. Character to get category of. Category of the character. Replacement for usage of MemberInfo.MemberType property. MemberInfo on which to access this method. True if the specified member is a property, otherwise false. Replacement for usage of Type.IsPrimitive property. Type on which to access this method. True if the specified type is primitive, otherwise false. Replacement for usage of Type.IsSealed property. Type on which to access this method. True if the specified type is sealed, otherwise false. Replacement for usage of MemberInfo.MemberType property. MemberInfo on which to access this method. True if the specified member is a method, otherwise false. Compares two methodInfos and returns true if they represent the same method. Need this for Windows Phone as the method Infos of the same method are not always instance equivalent. MemberInfo to compare. MemberInfo to compare. True if the specified member is a method, otherwise false. Gets public properties for the specified type. Type on which to call this helper method. True if method should return only instance properties, false if it should return both instance and static properties. Enumerable of public properties for the type. Gets public properties for the specified type. Type on which to call this helper method. True if method should return only instance properties, false if it should return both instance and static properties. True if method should return only properties that are declared on the type, false if it should return properties declared on the type as well as those inherited from any base types. Enumerable of public properties for the type. Gets instance constructors for the specified type. Type on which to call this helper method. True if method should return only public constructors, false if it should return only non-public constructors. Enumerable of instance constructors for the specified type. Gets a instance constructor for the type that takes the specified argument types. Type on which to call this helper method. True if method should search only public constructors, false if it should search only non-public constructors. Array of argument types for the constructor. ConstructorInfo for the constructor with the specified characteristics if found, otherwise null. Tries to the get method from the type, returns null if not found. The type. The name. The parameter types. Returns True if found. Gets a method on the specified type. Type on which to call this helper method. Name of the method on the type. True if method should search only public methods, false if it should search only non-public methods. True if method should search only static methods, false if it should search only instance methods. MethodInfo for the method with the specified characteristics if found, otherwise null. Gets a method on the specified type. Type on which to call this helper method. Name of the method on the type. Argument types for the method. True if method should search only public methods, false if it should search only non-public methods. True if method should search only static methods, false if it should search only instance methods. MethodInfo for the method with the specified characteristics if found, otherwise null. Gets all public static methods for a type. Type on which to call this helper method. Enumerable of all public static methods for the specified type. Replacement for Type.GetNestedTypes(BindingFlags.NonPublic) Type on which to call this helper method. All types nested in the current type Creates a Compiled Regex expression Pattern to match. Options to use. Regex expression to match supplied patter Is marked as compiled option only in platforms otherwise RegexOption.None is used Sets public key string for friend assemblies. ProductPublicKey is an official MS supported public key for external releases. TestPublicKey is an unsupported strong key for testing and internal use only Dont know what this is Used for comparison with external assemblies for silverlight like Microsoft.VisualBasic. Used for comparison with external assemblies for desktop like Microsoft.VisualBasic. AutoGenerated resource class. Usage: string s = EntityRes.GetString(EntityRes.MyIdenfitier); Strongly-typed and parameterized string resources. A string like "Annotations in the 'Documentation' namespace must implement 'IEdmDocumentation', but '{0}' does not." A string like "Annotation of type '{0}' cannot be interpreted as '{1}'." A string like "Navigation target entity type must be '{0}'." A string like "The type '{0}' could not be converted to be a '{1}' type." A string like "The value writer cannot write a value of kind '{0}'." A string like "Type '{0}' must have a single type annotation with term type '{1}'." A string like "Type '{0}' must have a single value annotation with term '{1}'." A string like "Element must have a single value annotation with term '{0}'." A string like "Expression with kind '{0}' cannot be evaluated." A string like "Function '{0}' is not present in the execution environment." A string like "Path segment '{0}' has no binding in the execution environment." A string like "Value fails to match type '{0}'." A string like "The namespace '{0}' is a system namespace and cannot be used by non-system types. Please choose a different namespace." A string like "The entity set '{0}' is based on type '{1}' that has no keys defined." A string like "An end with the name '{0}' is already defined." A string like "The key specified in entity type '{0}' is not valid. Property '{1}' is referenced more than once in the key element." A string like "The complex type '{0}' is marked as abstract. Abstract complex types are only supported in version 1.1 EDM models." A string like "The complex type '{0}' has a base type specified. Complex type inheritance is only supported in version 1.1 EDM models." A string like "The key part '{0}' for type '{1}' is not valid. All parts of the key must be non nullable." A string like "The property '{0}' in entity type '{1}' is not valid. All properties that are part of the entity key must be of primitive type." A string like "The key usage is not valid. '{0}' cannot define keys because one of its base classes '{1}' defines keys." A string like "The entity type '{0}' has no key defined. Define the key for this entity type." A string like "The navigation property '{0}' is not valid. The role '{1}' is not defined in relationship '{2}'." A string like "The navigation property '{0}'is not valid. The from role and to role are the same." A string like "The navigation property type could not be determined from the role '{0}'." A string like "The navigation property '{0}' cannot have 'OnDelete' specified since its multiplicity is '*'." A string like "Each name and plural name in a relationship must be unique. '{0}' is already defined." A string like "In relationship '{0}', the principal and dependent role of the referential constraint refers to the same role in the relationship type." A string like "The principal navigation property '{0}' has an invalid multiplicity. Valid values for the multiplicity of a principal end are '0..1' or '1'." A string like "The multiplicity of the principal end '{0}' is not valid. Because all dependent properties of the end '{1}' are non-nullable, the multiplicity of the principal end must be '1'." A string like "The multiplicity of the principal end '{0}' is not valid. Because all dependent properties of the end '{1}' are nullable, the multiplicity of the principal end must be '0..1'." A string like "The multiplicity of the dependent end '{0}' is not valid. Because the dependent properties represent the dependent end key, the multiplicity of the dependent end must be '0..1' or '1'." A string like "The multiplicity of the dependent end '{0}' is not valid. Because the dependent properties don't represent the dependent end key, the the multiplicity of the dependent end must be '*'." A string like "The properties referred by the dependent role '{0}' must be a subset of the key of the entity type '{1}'." A string like "The types of all properties in the dependent role of a referential constraint must be the same as the corresponding property types in the principal role. The type of property '{0}' on entity '{1}' does not match the type of property '{2}' on entity '{3}' in the referential constraint '{4}'." A string like "There is no property with name '{0}' defined in the type referred to by role '{1}'." A string like "The principal end properties in the referential constraint of the association '{0}' do not match the key of the type referred to by role '{1}'." A string like "The property '{0}' is of a complex type and is nullable. Nullable complex type properties are not supported in EDM versions 1.0 and 2.0." A string like "A property cannot be of type '{0}'. The property type must be a complex, a primitive or an enum type, or a collection of complex, primitive, or enum types." A string like "The function import '{0}' cannot be composable and side-effecting at the same time." A string like "The bindable function import '{0}' must have at least one parameter." A string like "The return type is not valid in function import '{0}'. In version 1.0 a function import can have no return type or return a collection of scalar values or a collection of entities." A string like "The return type is not valid in function import '{0}'. The function import can have no return type or return a scalar, a complex type, an entity type or a collection of those." A string like "The function import '{0}' returns entities but does not specify an entity set." A string like "The function import '{0}' returns entities of type '{1}' that cannot exist in the entity set '{2}' specified for the function import." A string like "The function import '{0}' returns entities of type '{1}' that cannot be returned by the entity set path specified for the function import." A string like "The function import '{0}' specifies an entity set expression of kind {1} which is not supported in this context. Function import entity set expression can be either an entity set reference or a path starting with a function import parameter and traversing navigation properties." A string like "The function import '{0}' specifies an entity set expression which is not valid. Function import entity set expression can be either an entity set reference or a path starting with a function import parameter and traversing navigation properties." A string like "The function import '{0}' specifies an entity set but does not return entities." A string like "The composable function import '{0}' must specify a return type." A string like "Each parameter name in a function must be unique. The parameter name '{0}' is already defined." A string like "Each member name in an EntityContainer must be unique. A member with name '{0}' is already defined." A string like "An element with the name '{0}' is already defined." A string like "The member name '{0}' cannot be used in a type with the same name. Member names cannot be the same as their enclosing type." A string like "Each property name in a type must be unique. Property name '{0}' is already defined." A string like "The key property '{0}' must belong to the entity '{1}'." A string like "The dependent property '{0}' must belong to the dependent entity '{1}'." A string like "The property '{0}' cannot belong to a type other than its declaring type. " A string like "The named type '{0}' could not be found from the model being validated." A string like "The named type '{0}' is ambiguous from the model being validated." A string like "The type of the navigation property '{0}' is invalid. The navigation target type must be an entity type or a collection of entity type. The navigation target entity type must match the declaring type of the partner property." A string like "The target multiplicity of the navigation property '{0}' is invalid. If a navigation property has 'ContainsTarget' set to true and declaring entity type of the property is the same or inherits from the target entity type, then the property represents a recursive containment and it must have an optional target represented by a collection or a nullable entity type." A string like "The source multiplicity of the navigation property '{0}' is invalid. If a navigation property has 'ContainsTarget' set to true and declaring entity type of the property is the same or inherits from the target entity type, then the property represents a recursive containment and the multiplicity of the navigation source must be zero or one." A string like "The source multiplicity of the navigation property '{0}' is invalid. If a navigation property has 'ContainsTarget' set to true and declaring entity type of the property is not the same as the target entity type, then the property represents a non-recursive containment and the multiplicity of the navigation source must be exactly one." A string like "The mode of the parameter '{0}' in the function '{1}' is invalid. Only input parameters are allowed in functions." A string like "The mode of the parameter '{0}' in the function import '{1}' is invalid." A string like "The type '{0}' of parameter '{1}' is invalid. A function import parameter must be one of the following types: A simple type or complex type." A string like "The complex type '{0}' is invalid. A complex type must contain at least one property." A string like "The dependent property '{0}' of navigation property '{1}' is a duplicate." A string like "A property with a fixed concurrency mode cannot be of type '{0}'. The property type must be a primitive type." A string like "The property '{0}' in entity type '{1}' is not valid. Binary types are not allowed in entity keys before version 2.0." A string like "The type of the value of enum member '{0}' must match the underlying type of the parent enum." A string like "Each member name of an enum type must be unique. Enum member name '{0}' is already defined." A string like "Cannot assert the nullable type '{0}' as a non-nullable type." A string like "Cannot promote the primitive type '{0}' to the specified primitive type '{1}'." A string like "The record expression does not have a constructor for a property named '{0}'." A string like "The type of the record expression is not open and does not contain a property named '{0}'." A string like "The annotated element '{0}' has multiple annotations with the term '{1}' and the qualifier '{2}'." A string like "The function application provides '{0}' arguments, but the function '{1}' expects '{2}' arguments." A string like "Each entity container name in a function must be unique. The name '{0}' is already defined." A string like "The value of the string constant is '{0}' characters long, but the max length of its type is '{1}'." A string like "The value of the binary constant is '{0}' characters long, but the max length of its type is '{1}'." A string like "A term without other errors must not have kind of none. The kind of term '{0}' is none." A string like "A schema element without other errors must not have kind of none. The kind of schema element '{0}' is none." A string like "A property without other errors must not have kind of none. The kind of property '{0}' is none." A string like "A primitive type without other errors must not have kind of none. The kind of primitive type '{0}' is none." A string like "An entity container element without other errors must not have kind of none. The kind of entity container element '{0}' is none." A string like "The entity set '{0}' should have only a single mapping for the property '{1}'." A string like "The mapping of the entity set '{0}' and navigation property '{1}' is invalid because the navigation property mapping must have a mapping with the navigation property's partner that points back to the originating entity set. " A string like "The entity set '{0}' is invalid because it is contained by more than one navigation property." A string like "The type annotation is missing a binding for the property '{0}'." A string like "They type of the type annotation is not open, and does not contain a property named '{0}'." A string like "The underlying type of '{0}' is not valid. The underlying type of an enum type must be an integral type. " A string like "The term '{0}' could not be found from the model being validated." A string like "The target '{0}' could not be found from the model being validated." A string like "An element already has a direct value annotation with the namespace '{0}' and name '{1}'." A string like "The association set '{0}' cannot assume an entity set for the role '{2}' because there are no entity sets for the role type '{1}'." A string like "The association set '{0}' must specify an entity set for the role '{2}' because there are multiple entity sets for the role type '{1}'." A string like "Because the navigation property '{0}' is recursive, the mapping from the entity set '{1}' must point back to itself." A string like "The navigation property '{0}' is invalid because it indirectly contains itself." A string like "The path cannot be resolved in the given context. The segment '{0}' failed to resolve." A string like "The entity set '{1}' is not a valid destination for the navigation property '{0}' because it cannot hold an element of the target entity type." A string like "The specified name must not be longer than 480 characters: '{0}'." A string like "The specified name is not allowed: '{0}'." A string like "The specified name must not be longer than 480 characters: '{0}'." A string like "The specified namespace name is not allowed: '{0}'." A string like "The value of the property '{0}.{1}' must not be null." A string like "The property '{0}.{1}' of type '{2}' has value '{3}' that is not a valid enum member." A string like "An object with the value '{0}' of the '{1}.{2}' property must implement '{3}' interface." A string like "An object implementing '{0}' interface has type definition of kind '{1}'. The type reference interface must match to the kind of the definition." A string like "The value '{0}' of the property '{1}.{2}' is not semantically valid. A semantically valid model must not contain elements of kind '{0}'." A string like "The value of the enumeration the property '{0}.{1}' contains a null element. Enumeration properties must not contain null elements." A string like "The partner of the navigation property '{0}' must not be the same property, and must point back to the navigation property." A string like "The chain of base types of type '{0}' is cyclic." A string like "The function import '{0}' could not be serialized because its return type cannot be represented inline." A string like "A referenced type can not be serialized with an invalid name. The name '{0}' is invalid." A string like "The annotation can not be serialized with an invalid target name. The name '{0}' is invalid." A string like "{0} does not contain a schema definition, or the XmlReader provided started at the end of the file." A string like "Required schema attribute '{0}' is not present on element '{1}'." A string like "The current schema element does not support text '{0}'." A string like "The attribute '{0}' was not expected in the given context." A string like "The schema element '{0}' was not expected in the given context." A string like "Unused schema element: '{0}'." A string like "Unexpected XML node type: {0}." A string like "The element '{0}' was unexpected for the root element. The root element should be {1}." A string like "The namespace '{0}' is invalid. The root element is expected to belong to one of the following namespaces: '{1}'." A string like "The root element has no namespace. The root element is expected to belong to one of the following namespaces: '{0}'." A string like "The alias '{0}' is not a valid simple name." A string like "The delete action '{0}' is not valid. Action must be: 'None', 'Cascade', or 'Restrict'." A string like "The association '{0}' is not valid. Associations must contain exactly two end elements." A string like "The association set '{0}' is not valid. Association sets must contain at most two end elements." A string like "The concurrency mode '{0}' is not valid. Concurrency mode must be: 'None', or 'Fixed'." A string like "Parameter mode '{0}' is not valid. Parameter mode must be: 'In', 'Out', or 'InOut'." A string like "There is no Role with name '{0}' defined in relationship '{1}'." A string like "The multiplicity '{0}' is not valid. Multiplicity must be: '*', '0..1', or '1'." A string like "The type name '{0}' is invalid. The type name must be that of a primitive type, a fully qualified name or an inline 'Collection' or 'Ref' type." A string like "The qualified name '{0}' is invalid. A qualified name must have a valid namespace or alias, and a valid name." A string like "'{0}' is not a valid entity set path." A string like "'{0}' is not a valid enum member path." A string like "The annotation target '{0}' could not be resolved because it cannot refer to an annotatable element." A string like "The schema '{0}' contains the alias '{1}' more than once." A string like "Unexpected {0} element while parsing Edmx. Edmx is expected to have at most one of 'Runtime' or 'DataServices' elements." A string like "Encountered the following errors when parsing the EDMX document: \r\n{0}" A string like "The value '{0}' is not a valid boolean. The value must be 'true' or 'false'." A string like "The value '{0}' is not a valid integer. The value must be a valid 32 bit integer." A string like "The value '{0}' is not a valid integer. The value must be a valid 64 bit integer." A string like "The value '{0}' is not a valid floating point value. " A string like "The value '{0}' is not a valid integer. The value must be a valid 32 bit integer or 'Max'." A string like "The value '{0}' is not a valid SRID. The value must either be a 32 bit integer or 'Variable'." A string like "The value '{0}' is not a valid Guid. " A string like "The value '{0}' is not a valid decimal." A string like "The value '{0}' is not a valid date time offset value." A string like "The value '{0}' is not a valid date time value." A string like "The value '{0}' is not a valid time value." A string like "The value '{0}' is not a valid binary value. The value must be a hexadecimal string and must not be prefixed by '0x'." A string like "Invalid multiplicity: '{0}'" A string like "Invalid schema element kind: '{0}'" A string like "Invalid type kind: '{0}'" A string like "Invalid primitive kind: '{0}'" A string like "Invalid container element kind: '{0}'" A string like "Invalid edmx target: '{0}'" A string like "Invalid function parameter mode: '{0}'" A string like "Invalid concurrency mode: '{0}'" A string like "Invalid property kind: '{0}'" A string like "Invalid term kind: '{0}'" A string like "Invalid expression kind: '{0}'" A string like "The name '{0}' is ambiguous." A string like "The type '{0}' could not be found." A string like "The complex type '{0}' could not be found." A string like "The entity type '{0}' could not be found." A string like "The primitive type '{0}' could not be found." A string like "The function '{0}' could not be found." A string like "The function '{0}' could not be resolved because more than one function could be used for this application." A string like "The function '{0}' could not be resolved because none of the functions with that name take the correct set of parameters." A string like "The entity set '{0}' could not be found." A string like "The entity container '{0}' could not be found." A string like "The enum type '{0}' could not be found." A string like "The enum member '{0}' could not be found." A string like "The property '{0}' could not be found." A string like "The parameter '{0}' could not be found." A string like "The labeled element '{0}' could not be found." A string like "The entity '{0}' is invalid because its base type is cyclic." A string like "The complex type '{0}' is invalid because its base type is cyclic." A string like "The entity container '{0}' is invalid because its extends hierarchy is cyclic." A string like "The association end '{0}' could not be computed." A string like "Conversion of EDM values to a CLR type with type code {0} is not supported." A string like "Cannot initialize a property '{0}' on an object of type '{1}'. The property already has a value." A string like "An EDM structured value contains multiple values for the property '{0}'. Conversion of an EDM structured value with duplicate property values is not supported." A string like "Conversion of an EDM value of the type '{0}' to the CLR type '{1}' is not supported." A string like "Conversion of an edm collection value to the CLR type '{0}' is not supported. EDM collection values can be converted to System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T> or System.Collections.Generic.ICollection<T>." A string like "The type '{0}' of the object returned by the TryCreateObjectInstance delegate is not assignable to the expected type '{1}'." A string like "Unexpected primitive type kind." A string like "The annotation must have non-null target." A string like "An entity type or a collection of an entity type is expected." A string like "An element with type 'None' cannot be used in a model." A string like "An element with type 'None' cannot be used in an entity container." A string like "Value has already been set." A string like "Path segments must not contain '/' character." A string like "An on delete action can only be specified on one end of an association." A string like "The number of properties in the dependent and principal role in a relationship constraint must be exactly identical." A string like "The base type kind of a structured type must be the same as its derived type." A string like "Row types cannot have a base type." A string like "Functions are not supported prior to version 2.0." A string like "The 'SideEffecting' setting of function imports is not supported before version 3.0." A string like "The 'Composable' setting of function imports is not supported before version 3.0." A string like "The 'Bindable' setting of function imports is not supported before version 3.0." A string like "The 'ContainsTarget' setting of navigation properties is not supported before version 3.0." A string like "The row type is invalid. A row must contain at least one property." A string like "The scale value can range from 0 through the specified precision value." A string like "Precision cannot be negative." A string like "The max length facet specifies the maximum length of an instance of the string type. For unicode equal to 'true', the max length can range from 1 to 2^30, or if 'false', 1 to 2^31." A string like "Max length can range from 1 to 2^31." A string like "Enums are not supported prior to version 3.0." A string like "Value terms are not supported prior to version 3.0." A string like "Vocabulary annotations are not supported prior to version 3.0." A string like "Open types are supported only in version 1.2 and after version 2.0." A string like "Only entity types can be open types." A string like "The string reference is invalid because if 'IsUnbounded' is true 'MaxLength' must be null." A string like "The declared name and namespace of the annotation must match the name and namespace of its xml value." A string like "The value of an annotation marked to be serialized as an xml element must have a well-formed xml value." A string like "The value of an annotation marked to be serialized as an xml element must be IEdmStringValue." A string like "The value of an annotation marked to be serialized as an xml element must be a string representing an xml element with non-empty name and namespace." A string like "Null value cannot have a non-nullable type." A string like "The type of the expression is incompatible with the asserted type." A string like "A collection expression is incompatible with a non-collection type." A string like "A primitive expression is incompatible with a non-primitive type." A string like "A record expression is incompatible with a non-structured type." A string like "References to EDM stream type are not supported before version 3.0." A string like "References to EDM spatial types are not supported before version 3.0." A string like "The primitive expression is not compatible with the asserted type." A string like "The value of the integer constant is out of range for the asserted type." A string like "A type without other errors must not have kind of none." A string like "The name is missing or not valid." A string like "The namespace name is missing or not valid." A string like "Single file provided but model cannot be serialized into single file." A string like "Unknown Edm version." A string like "Unknown Edmx version." A string like "No CSDL is written because no schema elements could be produced. This is likely because the model is empty." A string like "The source XmlReader does not contain a schema definition or started at the end of the file." A string like "Associations may have at most one constraint. Multiple constraints were specified for this association." A string like "An XML attribute or sub-element representing an EDM type is missing." A string like "Referential constraints requires one dependent role. Multiple dependent roles were specified for this referential constraint." A string like "Referential constraints requires one principal role. Multiple principal roles were specified for this referential constraint." A string like "If expression must contain 3 operands, the first being a boolean test, the second being being evaluated if the first is true, and the third being evaluated if the first is false." A string like "The IsType expression must contain 1 operand." A string like "The AssertType expression must contain 1 operand." A string like "The LabeledElement expression must contain 1 operand." A string like "A model could not be produced because no XML readers were provided." A string like "A model could not be produced because one of the XML readers was null." A string like " There was a mismatch in the principal and dependent ends of the referential constraint." A string like "The enumeration member value exceeds the range of its data type 'http://www.w3.org/2001/XMLSchema:long'." A string like "The EDMX version specified in the 'Version' attribute does not match the version corresponding to the namespace of the 'Edmx' element." A string like "The specified value of data service version is invalid." A string like "The specified value of max data service version is invalid." A string like "The same rule cannot be in the same rule set twice." A string like "Conversion of an EDM structured value is supported only to a CLR class." Strongly-typed and parameterized exception factory. The exception that is thrown when a null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument. The exception that is thrown when the value of an argument is outside the allowable range of values as defined by the invoked method. The exception that is thrown when the author has yet to implement the logic at this point in the program. This can act as an exception based TODO tag. The exception that is thrown when an invoked method is not supported, or when there is an attempt to read, seek, or write to a stream that does not support the invoked functionality.