XML Schema Documentation

Table of Contents

top

Schema Document Properties

Target Namespace http://docs.oasis-open.org/odata/ns/edm
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations belong to this schema's target namespace.
  • By default, local attribute declarations have no namespace.
Documentation Entity Data Model part of the Common Schema Definition Language

Declared Namespaces

Prefix Namespace
xml http://www.w3.org/XML/1998/namespace
edm http://docs.oasis-open.org/odata/ns/edm
xs http://www.w3.org/2001/XMLSchema
Schema Component Representation
<xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified" targetNamespace="http://docs.oasis-open.org/odata/ns/edm">
...
</xs:schema>
top

Global Declarations

Element: Annotation

Name Annotation
Type Locally-defined complex type
Nillable no
Abstract no
XML Instance Representation
<edm:Annotation
Term="edm:TQualifiedName [1]"
Qualifier="edm:TSimpleIdentifier [0..1]"
Binary="edm:binary [0..1]"
Bool="edm:boolean [0..1]"
Date="edm:date [0..1]"
DateTimeOffset="edm:dateTimeStamp [0..1]"
Decimal="xs:decimal [0..1]"
Duration="edm:dayTimeDuration [0..1]"
EnumMember="edm:TEnumMemberList [0..1]"
Float="xs:double [0..1]"
Guid="edm:TGuidLiteral [0..1]"
Int="xs:integer [0..1]"
String="xs:string [0..1]"
TimeOfDay="edm:time [0..1]"
AnnotationPath="edm:TPathWithTermSegments [0..1]"
NavigationPropertyPath="edm:TPathWithTermSegments [0..1]"
Path="edm:TPathWithTermSegments [0..1]"
PropertyPath="edm:TPathWithTermSegments [0..1]"
UrlRef="xs:anyURI [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Group: edm:GExpression [0..1]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
End Group: edm:GExpression
</edm:Annotation>
Schema Component Representation
<xs:element name="Annotation">
<xs:complexType>
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="edm:GExpression" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Term" type="edm:TQualifiedName" use="required"/>
<xs:attribute name="Qualifier" type="edm:TSimpleIdentifier" use="optional"/>
<xs:attributeGroup ref="edm:GInlineExpressions"/>
</xs:complexType>
</xs:element>
top

Element: Schema

Name Schema
Type Locally-defined complex type
Nillable no
Abstract no
XML Instance Representation
<edm:Schema
Namespace="edm:TNamespaceName [1]"
Alias="edm:TSimpleIdentifier [0..1]">
Start Choice [1..*]
<edm:ComplexType> edm:TComplexType </edm:ComplexType> [1]
<edm:EntityType> edm:TEntityType </edm:EntityType> [1]
<edm:TypeDefinition> edm:TTypeDefinition </edm:TypeDefinition> [1]
<edm:EnumType> edm:TEnumType </edm:EnumType> [1]
<edm:Action> edm:TAction </edm:Action> [1]
<edm:Function> edm:TFunction </edm:Function> [1]
<edm:Term> edm:TTerm </edm:Term> [1]
<edm:Annotations> edm:TAnnotations </edm:Annotations> [1]
<edm:EntityContainer> edm:TEntityContainer </edm:EntityContainer> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</edm:Schema>
Schema Component Representation
<xs:element name="Schema">
<xs:complexType>
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="ComplexType" type="edm:TComplexType"/>
<xs:element name="EntityType" type="edm:TEntityType"/>
<xs:element name="TypeDefinition" type="edm:TTypeDefinition"/>
<xs:element name="EnumType" type="edm:TEnumType"/>
<xs:element name="Action" type="edm:TAction"/>
<xs:element name="Function" type="edm:TFunction"/>
<xs:element name="Term" type="edm:TTerm"/>
<xs:element name="Annotations" type="edm:TAnnotations"/>
<xs:element name="EntityContainer" type="edm:TEntityContainer"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attribute name="Namespace" type="edm:TNamespaceName" use="required"/>
<xs:attribute name="Alias" type="edm:TSimpleIdentifier" use="optional"/>
</xs:complexType>
</xs:element>
top

Global Definitions

Attribute Group: GInlineExpressions

Name GInlineExpressions
XML Instance Representation
Binary="edm:binary [0..1]"
Bool="edm:boolean [0..1]"
Date="edm:date [0..1]"
DateTimeOffset="edm:dateTimeStamp [0..1]"
Decimal="xs:decimal [0..1]"
Duration="edm:dayTimeDuration [0..1]"
EnumMember="edm:TEnumMemberList [0..1]"
Float="xs:double [0..1]"
Guid="edm:TGuidLiteral [0..1]"
Int="xs:integer [0..1]"
String="xs:string [0..1]"
TimeOfDay="edm:time [0..1]"
AnnotationPath="edm:TPathWithTermSegments [0..1]"
NavigationPropertyPath="edm:TPathWithTermSegments [0..1]"
Path="edm:TPathWithTermSegments [0..1]"
PropertyPath="edm:TPathWithTermSegments [0..1]"
UrlRef="xs:anyURI [0..1]"
Schema Component Representation
<xs:attributeGroup name="GInlineExpressions">
<-- Constant Expressions -->
<xs:attribute name="Binary" type="edm:binary" use="optional"/>
<xs:attribute name="Bool" type="edm:boolean" use="optional"/>
<xs:attribute name="Date" type="edm:date" use="optional"/>
<xs:attribute name="DateTimeOffset" type="edm:dateTimeStamp" use="optional"/>
<xs:attribute name="Decimal" type="xs:decimal" use="optional"/>
<xs:attribute name="Duration" type="edm:dayTimeDuration" use="optional"/>
<xs:attribute name="EnumMember" type="edm:TEnumMemberList" use="optional"/>
<xs:attribute name="Float" type="xs:double" use="optional"/>
<xs:attribute name="Guid" type="edm:TGuidLiteral" use="optional"/>
<xs:attribute name="Int" type="xs:integer" use="optional"/>
<xs:attribute name="String" type="xs:string" use="optional"/>
<xs:attribute name="TimeOfDay" type="edm:time" use="optional"/>
<-- Dynamic Expressions -->
<xs:attribute name="AnnotationPath" type="edm:TPathWithTermSegments" use="optional"/>
<xs:attribute name="NavigationPropertyPath" type="edm:TPathWithTermSegments" use="optional"/>
<xs:attribute name="Path" type="edm:TPathWithTermSegments" use="optional"/>
<xs:attribute name="PropertyPath" type="edm:TPathWithTermSegments" use="optional"/>
<xs:attribute name="UrlRef" type="xs:anyURI" use="optional"/>
</xs:attributeGroup>
top

Attribute Group: TActionAttributes

Name TActionAttributes
XML Instance Representation
Name="edm:TSimpleIdentifier [1]"
EntitySetPath="edm:TPath [0..1]"
IsBound="xs:boolean [0..1]"
Schema Component Representation
<xs:attributeGroup name="TActionAttributes">
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="EntitySetPath" type="edm:TPath" use="optional"/>
<xs:attribute name="IsBound" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
top

Attribute Group: TActionFunctionImportAttributes

Name TActionFunctionImportAttributes
XML Instance Representation
Name="edm:TSimpleIdentifier [1]"
EntitySet="edm:TPath [0..1]"
IncludeInServiceDocument="xs:boolean [0..1]"
Schema Component Representation
<xs:attributeGroup name="TActionFunctionImportAttributes">
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="EntitySet" type="edm:TPath" use="optional"/>
<xs:attribute name="IncludeInServiceDocument" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
top

Attribute Group: TActionFunctionParameterAttributes

Name TActionFunctionParameterAttributes
XML Instance Representation
Name="edm:TSimpleIdentifier [1]"
Type="edm:TTypeName [1]"
Nullable="xs:boolean [0..1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]"
Schema Component Representation
<xs:attributeGroup name="TActionFunctionParameterAttributes">
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="Type" type="edm:TTypeName" use="required"/>
<xs:attribute name="Nullable" type="xs:boolean" use="optional"/>
<xs:attributeGroup ref="edm:TFacetAttributes"/>
</xs:attributeGroup>
top

Attribute Group: TCommonPropertyAttributes

Name TCommonPropertyAttributes
XML Instance Representation
Name="edm:TSimpleIdentifier [1]"
Type="edm:TTypeName [1]"
Nullable="xs:boolean [0..1]"
DefaultValue="xs:string [0..1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]"
Unicode="edm:TUnicodeFacet [0..1]"
Schema Component Representation
<xs:attributeGroup name="TCommonPropertyAttributes">
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="Type" type="edm:TTypeName" use="required"/>
<xs:attribute name="Nullable" type="xs:boolean" default="true" use="optional"/>
<xs:attribute name="DefaultValue" type="xs:string" use="optional"/>
<xs:attributeGroup ref="edm:TFacetAttributes"/>
<xs:attributeGroup ref="edm:TPropertyFacetAttributes"/>
</xs:attributeGroup>
top

Attribute Group: TDerivableTypeAttributes

Name TDerivableTypeAttributes
XML Instance Representation

Name="edm:TSimpleIdentifier [1]"
BaseType="edm:TQualifiedName [0..1]"
Abstract="xs:boolean [0..1]"
Schema Component Representation
<xs:attributeGroup name="TDerivableTypeAttributes">
<xs:attributeGroup ref="edm:TTypeAttributes"/>
<xs:attribute name="BaseType" type="edm:TQualifiedName" use="optional"/>
<xs:attribute name="Abstract" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
top

Attribute Group: TEntitySetAttributes

Name TEntitySetAttributes
XML Instance Representation
Name="edm:TSimpleIdentifier [1]"
EntityType="edm:TQualifiedName [1]"
IncludeInServiceDocument="xs:boolean [0..1]"
Schema Component Representation
<xs:attributeGroup name="TEntitySetAttributes">
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="EntityType" type="edm:TQualifiedName" use="required"/>
<xs:attribute name="IncludeInServiceDocument" type="xs:boolean" use="optional" default="true"/>
</xs:attributeGroup>
top

Attribute Group: TFacetAttributes

Name TFacetAttributes
XML Instance Representation
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]"
Schema Component Representation
<xs:attributeGroup name="TFacetAttributes">
<xs:attribute name="MaxLength" type="edm:TMaxLengthFacet" use="optional"/>
<xs:attribute name="Precision" type="edm:TPrecisionFacet" use="optional"/>
<xs:attribute name="Scale" type="edm:TScaleFacet" use="optional"/>
<xs:attribute name="SRID" type="edm:TSridFacet" use="optional"/>
</xs:attributeGroup>
top

Attribute Group: TFunctionAttributes

Name TFunctionAttributes
XML Instance Representation
Name="edm:TSimpleIdentifier [1]"
EntitySetPath="edm:TPath [0..1]"
IsBound="xs:boolean [0..1]"
IsComposable="xs:boolean [0..1]"
Schema Component Representation
<xs:attributeGroup name="TFunctionAttributes">
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="EntitySetPath" type="edm:TPath" use="optional"/>
<xs:attribute name="IsBound" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="IsComposable" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
top

Attribute Group: TPropertyFacetAttributes

Name TPropertyFacetAttributes
XML Instance Representation
Unicode="edm:TUnicodeFacet [0..1]"
Schema Component Representation
<xs:attributeGroup name="TPropertyFacetAttributes">
<xs:attribute name="Unicode" type="edm:TUnicodeFacet" use="optional"/>
</xs:attributeGroup>
top

Attribute Group: TTypeAttributes

Name TTypeAttributes
XML Instance Representation
Name="edm:TSimpleIdentifier [1]"
Schema Component Representation
<xs:attributeGroup name="TTypeAttributes">
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
</xs:attributeGroup>
top

Complex Type: TAction

Super-types: None
Sub-types: None
Name TAction
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
EntitySetPath="edm:TPath [0..1]"
IsBound="xs:boolean [0..1]">
Start Choice [0..*]
<edm:Parameter> edm:TActionFunctionParameter </edm:Parameter> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
<edm:ReturnType> edm:TActionFunctionReturnType </edm:ReturnType> [0..1]
</...>
Schema Component Representation
<xs:complexType name="TAction">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Parameter" type="edm:TActionFunctionParameter"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:element name="ReturnType" type="edm:TActionFunctionReturnType" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attributeGroup ref="edm:TActionAttributes"/>
</xs:complexType>
top

Complex Type: TActionFunctionParameter

Super-types: None
Sub-types: None
Name TActionFunctionParameter
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Type="edm:TTypeName [1]"
Nullable="xs:boolean [0..1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TActionFunctionParameter">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attributeGroup ref="edm:TActionFunctionParameterAttributes"/>
</xs:complexType>
top

Complex Type: TActionFunctionReturnType

Super-types: None
Sub-types: None
Name TActionFunctionReturnType
Abstract no
XML Instance Representation
<...
Type="edm:TTypeName [1]"
Nullable="xs:boolean [0..1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]"/>
Schema Component Representation
<xs:complexType name="TActionFunctionReturnType">
<xs:attribute name="Type" type="edm:TTypeName" use="required"/>
<xs:attribute name="Nullable" type="xs:boolean" use="optional"/>
<xs:attributeGroup ref="edm:TFacetAttributes"/>
</xs:complexType>
top

Complex Type: TActionImport

Super-types: None
Sub-types: None
Name TActionImport
Abstract no
XML Instance Representation
<...
Action="edm:TQualifiedName [1]"
Name="edm:TSimpleIdentifier [1]"
EntitySet="edm:TPath [0..1]"
IncludeInServiceDocument="xs:boolean [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TActionImport">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Action" type="edm:TQualifiedName" use="required"/>
<xs:attributeGroup ref="edm:TActionFunctionImportAttributes"/>
</xs:complexType>
top

Complex Type: TAnnotations

Super-types: None
Sub-types: None
Name TAnnotations
Abstract no
XML Instance Representation
<...
Target="edm:TPath [1]"
Qualifier="edm:TSimpleIdentifier [0..1]">
<edm:Annotation> ... </edm:Annotation> [1..*]
</...>
Schema Component Representation
<xs:complexType name="TAnnotations">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Target" type="edm:TPath" use="required"/>
<xs:attribute name="Qualifier" type="edm:TSimpleIdentifier" use="optional"/>
</xs:complexType>
top

Complex Type: TApplyExpression

Super-types: None
Sub-types: None
Name TApplyExpression
Abstract no
XML Instance Representation
<...
Function="edm:TClientFunction [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Group: edm:GExpression [1..*]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
End Group: edm:GExpression
</...>
Schema Component Representation
<xs:complexType name="TApplyExpression">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="edm:GExpression" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Function" type="edm:TClientFunction" use="optional"/>
</xs:complexType>
top

Complex Type: TBinaryConstantExpression

Super-types: xs:string < binary (by restriction) < TBinaryConstantExpression (by extension)
Sub-types: None
Name TBinaryConstantExpression
Abstract no
XML Instance Representation
<...>
edm:binary
</...>
Schema Component Representation
<xs:complexType name="TBinaryConstantExpression">
<xs:simpleContent>
<xs:extension base="edm:binary"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TBoolConstantExpression

Super-types: boolean < boolean (by restriction) < TBoolConstantExpression (by extension)
Sub-types: None
Name TBoolConstantExpression
Abstract no
XML Instance Representation
<...>
edm:boolean
</...>
Schema Component Representation
<xs:complexType name="TBoolConstantExpression">
<xs:simpleContent>
<xs:extension base="edm:boolean"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TCastOrIsOfExpression

Super-types: None
Sub-types: None
Name TCastOrIsOfExpression
Abstract no
XML Instance Representation
<...
Type="edm:TTypeName [0..1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TCastOrIsOfExpression">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="edm:GExpression" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Type" type="edm:TTypeName" use="optional"/>
<xs:attributeGroup ref="edm:TFacetAttributes"/>
</xs:complexType>
top

Complex Type: TCollectionExpression

Super-types: None
Sub-types: None
Name TCollectionExpression
Abstract no
XML Instance Representation
<...>
Start Choice [0..*]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
End Choice
</...>
Schema Component Representation
<xs:complexType name="TCollectionExpression">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="edm:GExpression"/>
</xs:choice>
</xs:complexType>
top

Complex Type: TComplexType

Super-types: None
Sub-types: None
Name TComplexType
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
BaseType="edm:TQualifiedName [0..1]"
Abstract="xs:boolean [0..1]"
OpenType="xs:boolean [0..1]">
Start Choice [0..*]
<edm:Property> edm:TProperty </edm:Property> [1]
<edm:NavigationProperty> edm:TNavigationProperty </edm:NavigationProperty> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TComplexType">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Property" type="edm:TProperty"/>
<xs:element name="NavigationProperty" type="edm:TNavigationProperty"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attributeGroup ref="edm:TDerivableTypeAttributes"/>
<xs:attribute name="OpenType" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
top

Complex Type: TDateConstantExpression

Super-types: date < date (by restriction) < TDateConstantExpression (by extension)
Sub-types: None
Name TDateConstantExpression
Abstract no
XML Instance Representation
<...>
edm:date
</...>
Schema Component Representation
<xs:complexType name="TDateConstantExpression">
<xs:simpleContent>
<xs:extension base="edm:date"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TDateTimeOffsetConstantExpression

Super-types: xs:dateTime < dateTimeStamp (by restriction) < TDateTimeOffsetConstantExpression (by extension)
Sub-types: None
Name TDateTimeOffsetConstantExpression
Abstract no
XML Instance Representation
<...>
edm:dateTimeStamp
</...>
Schema Component Representation
<xs:complexType name="TDateTimeOffsetConstantExpression">
<xs:simpleContent>
<xs:extension base="edm:dateTimeStamp"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TDecimalConstantExpression

Super-types: xs:decimal < TDecimalConstantExpression (by extension)
Sub-types: None
Name TDecimalConstantExpression
Abstract no
XML Instance Representation
<...>
xs:decimal
</...>
Schema Component Representation
<xs:complexType name="TDecimalConstantExpression">
<xs:simpleContent>
<xs:extension base="xs:decimal"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TDurationConstantExpression

Super-types: xs:duration < dayTimeDuration (by restriction) < TDurationConstantExpression (by extension)
Sub-types: None
Name TDurationConstantExpression
Abstract no
XML Instance Representation
<...>
edm:dayTimeDuration
</...>
Schema Component Representation
<xs:complexType name="TDurationConstantExpression">
<xs:simpleContent>
<xs:extension base="edm:dayTimeDuration"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TEntityContainer

Super-types: None
Sub-types: None
Name TEntityContainer
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Extends="edm:TQualifiedName [0..1]">
Start Choice [1..*]
<edm:EntitySet> edm:TEntitySet </edm:EntitySet> [1]
<edm:ActionImport> edm:TActionImport </edm:ActionImport> [1]
<edm:FunctionImport> edm:TFunctionImport </edm:FunctionImport> [1]
<edm:Singleton> edm:TSingleton </edm:Singleton> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TEntityContainer">
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="EntitySet" type="edm:TEntitySet"/>
<xs:element name="ActionImport" type="edm:TActionImport"/>
<xs:element name="FunctionImport" type="edm:TFunctionImport"/>
<xs:element name="Singleton" type="edm:TSingleton"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="Extends" type="edm:TQualifiedName" use="optional"/>
</xs:complexType>
top

Complex Type: TEntityKeyElement

Super-types: None
Sub-types: None
Name TEntityKeyElement
Abstract no
XML Instance Representation
<...>
<edm:PropertyRef> edm:TPropertyRef </edm:PropertyRef> [1..*]
</...>
Schema Component Representation
<xs:complexType name="TEntityKeyElement">
<xs:sequence>
<xs:element name="PropertyRef" type="edm:TPropertyRef" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: TEntitySet

Super-types: None
Sub-types: None
Name TEntitySet
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
EntityType="edm:TQualifiedName [1]"
IncludeInServiceDocument="xs:boolean [0..1]">
Start Choice [0..*]
<edm:NavigationPropertyBinding> edm:TNavigationPropertyBinding </edm:NavigationPropertyBinding> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TEntitySet">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="NavigationPropertyBinding" type="edm:TNavigationPropertyBinding"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attributeGroup ref="edm:TEntitySetAttributes"/>
</xs:complexType>
top

Complex Type: TEntityType

Super-types: None
Sub-types: None
Name TEntityType
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
BaseType="edm:TQualifiedName [0..1]"
Abstract="xs:boolean [0..1]"
OpenType="xs:boolean [0..1]"
HasStream="xs:boolean [0..1]">
Start Choice [0..*]
<edm:Key> edm:TEntityKeyElement </edm:Key> [0..1]
<edm:Property> edm:TProperty </edm:Property> [1]
<edm:NavigationProperty> edm:TNavigationProperty </edm:NavigationProperty> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TEntityType">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Key" type="edm:TEntityKeyElement" minOccurs="0" maxOccurs="1"/>
<xs:element name="Property" type="edm:TProperty"/>
<xs:element name="NavigationProperty" type="edm:TNavigationProperty"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attributeGroup ref="edm:TDerivableTypeAttributes"/>
<xs:attribute name="OpenType" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="HasStream" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
top

Complex Type: TEnumType

Super-types: None
Sub-types: None
Name TEnumType
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
IsFlags="xs:boolean [0..1]"
UnderlyingType="edm:TTypeName [0..1]">
Start Choice [1..*]
<edm:Member> edm:TEnumTypeMember </edm:Member> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TEnumType">
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="Member" type="edm:TEnumTypeMember"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attributeGroup ref="edm:TTypeAttributes"/>
<xs:attribute name="IsFlags" type="xs:boolean" use="optional"/>
<xs:attribute name="UnderlyingType" type="edm:TTypeName" use="optional"/>
</xs:complexType>
top

Complex Type: TEnumTypeMember

Super-types: None
Sub-types: None
Name TEnumTypeMember
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Value="xs:long [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TEnumTypeMember">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="Value" type="xs:long" use="optional"/>
</xs:complexType>
top

Complex Type: TFloatConstantExpression

Super-types: xs:double < TFloatConstantExpression (by extension)
Sub-types: None
Name TFloatConstantExpression
Abstract no
XML Instance Representation
<...>
xs:double
</...>
Schema Component Representation
<xs:complexType name="TFloatConstantExpression">
<xs:simpleContent>
<xs:extension base="xs:double"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TFunction

Super-types: None
Sub-types: None
Name TFunction
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
EntitySetPath="edm:TPath [0..1]"
IsBound="xs:boolean [0..1]"
IsComposable="xs:boolean [0..1]">
Start Choice [0..*]
<edm:Parameter> edm:TActionFunctionParameter </edm:Parameter> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
<edm:ReturnType> edm:TActionFunctionReturnType </edm:ReturnType> [1]
</...>
Schema Component Representation
<xs:complexType name="TFunction">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Parameter" type="edm:TActionFunctionParameter"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:element name="ReturnType" type="edm:TActionFunctionReturnType" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
<xs:attributeGroup ref="edm:TFunctionAttributes"/>
</xs:complexType>
top

Complex Type: TFunctionImport

Super-types: None
Sub-types: None
Name TFunctionImport
Abstract no
XML Instance Representation
<...
Function="edm:TQualifiedName [1]"
Name="edm:TSimpleIdentifier [1]"
EntitySet="edm:TPath [0..1]"
IncludeInServiceDocument="xs:boolean [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TFunctionImport">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Function" type="edm:TQualifiedName" use="required"/>
<xs:attributeGroup ref="edm:TActionFunctionImportAttributes"/>
</xs:complexType>
top

Complex Type: TGuidConstantExpression

Super-types: xs:string < TGuidLiteral (by restriction) < TGuidConstantExpression (by extension)
Sub-types: None
Name TGuidConstantExpression
Abstract no
XML Instance Representation
<...>
edm:TGuidLiteral
</...>
Schema Component Representation
<xs:complexType name="TGuidConstantExpression">
<xs:simpleContent>
<xs:extension base="edm:TGuidLiteral"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TIfExpression

Super-types: None
Sub-types: None
Name TIfExpression
Abstract no
XML Instance Representation
<...>
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Group: edm:GExpression [2..3]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
End Group: edm:GExpression
</...>
Schema Component Representation
<xs:complexType name="TIfExpression">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<-- Condition, Then, optional Else -->
<xs:group ref="edm:GExpression" minOccurs="2" maxOccurs="3"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: TIntConstantExpression

Super-types: xs:integer < TIntConstantExpression (by extension)
Sub-types: None
Name TIntConstantExpression
Abstract no
XML Instance Representation
<...>
xs:integer
</...>
Schema Component Representation
<xs:complexType name="TIntConstantExpression">
<xs:simpleContent>
<xs:extension base="xs:integer"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TLabeledElementExpression

Super-types: None
Sub-types: None
Name TLabeledElementExpression
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Binary="edm:binary [0..1]"
Bool="edm:boolean [0..1]"
Date="edm:date [0..1]"
DateTimeOffset="edm:dateTimeStamp [0..1]"
Decimal="xs:decimal [0..1]"
Duration="edm:dayTimeDuration [0..1]"
EnumMember="edm:TEnumMemberList [0..1]"
Float="xs:double [0..1]"
Guid="edm:TGuidLiteral [0..1]"
Int="xs:integer [0..1]"
String="xs:string [0..1]"
TimeOfDay="edm:time [0..1]"
AnnotationPath="edm:TPathWithTermSegments [0..1]"
NavigationPropertyPath="edm:TPathWithTermSegments [0..1]"
Path="edm:TPathWithTermSegments [0..1]"
PropertyPath="edm:TPathWithTermSegments [0..1]"
UrlRef="xs:anyURI [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Group: edm:GExpression [0..1]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
End Group: edm:GExpression
</...>
Schema Component Representation
<xs:complexType name="TLabeledElementExpression">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="edm:GExpression" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attributeGroup ref="edm:GInlineExpressions"/>
</xs:complexType>
top

Complex Type: TLabeledElementReferenceExpression

Super-types: xs:NCName < TQualifiedName (by restriction) < TLabeledElementReferenceExpression (by extension)
Sub-types: None
Name TLabeledElementReferenceExpression
Abstract no
XML Instance Representation
<...>
edm:TQualifiedName
</...>
Schema Component Representation
<xs:complexType name="TLabeledElementReferenceExpression">
<xs:simpleContent>
<xs:extension base="edm:TQualifiedName"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TNavigationProperty

Super-types: None
Sub-types: None
Name TNavigationProperty
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Type="edm:TTypeName [1]"
Nullable="xs:boolean [0..1]"
Partner="edm:TPath [0..1]"
ContainsTarget="xs:boolean [0..1]">
Start Choice [0..*]
<edm:ReferentialConstraint> edm:TReferentialConstraint </edm:ReferentialConstraint> [1]
<edm:OnDelete> edm:TOnDelete </edm:OnDelete> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TNavigationProperty">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="ReferentialConstraint" type="edm:TReferentialConstraint"/>
<xs:element name="OnDelete" type="edm:TOnDelete"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="Type" type="edm:TTypeName" use="required"/>
<xs:attribute name="Nullable" type="xs:boolean" use="optional"/>
<xs:attribute name="Partner" type="edm:TPath" use="optional"/>
<xs:attribute name="ContainsTarget" type="xs:boolean" use="optional"/>
</xs:complexType>
top

Complex Type: TNavigationPropertyBinding

Super-types: None
Sub-types: None
Name TNavigationPropertyBinding
Abstract no
XML Instance Representation
<...
Path="edm:TPath [1]"
Target="edm:TPath [1]"/>
Schema Component Representation
<xs:complexType name="TNavigationPropertyBinding">
<xs:attribute name="Path" type="edm:TPath" use="required"/>
<xs:attribute name="Target" type="edm:TPath" use="required"/>
</xs:complexType>
top

Complex Type: TNullExpression

Super-types: None
Sub-types: None
Name TNullExpression
Abstract no
XML Instance Representation
<...>
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TNullExpression">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: TOnDelete

Super-types: None
Sub-types: None
Name TOnDelete
Abstract no
XML Instance Representation
<...
Action="edm:TOnDeleteAction [1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TOnDelete">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Action" type="edm:TOnDeleteAction" use="required"/>
</xs:complexType>
top

Complex Type: TOneChildExpression

Super-types: None
Sub-types: None
Name TOneChildExpression
Abstract no
XML Instance Representation
<...>
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TOneChildExpression">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="edm:GExpression" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: TPathExpression

Super-types: xs:string < TPathWithTermSegments (by restriction) < TPathExpression (by extension)
Sub-types: None
Name TPathExpression
Abstract no
XML Instance Representation
<...>
edm:TPathWithTermSegments
</...>
Schema Component Representation
<xs:complexType name="TPathExpression">
<xs:simpleContent>
<xs:extension base="edm:TPathWithTermSegments"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TProperty

Super-types: None
Sub-types: None
Name TProperty
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Type="edm:TTypeName [1]"
Nullable="xs:boolean [0..1]"
DefaultValue="xs:string [0..1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]"
Unicode="edm:TUnicodeFacet [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TProperty">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attributeGroup ref="edm:TCommonPropertyAttributes"/>
</xs:complexType>
top

Complex Type: TPropertyRef

Super-types: None
Sub-types: None
Name TPropertyRef
Abstract no
XML Instance Representation
<...
Name="edm:TPath [1]"
Alias="edm:TSimpleIdentifier [0..1]"/>
Schema Component Representation
<xs:complexType name="TPropertyRef">
<xs:attribute name="Name" type="edm:TPath" use="required"/>
<xs:attribute name="Alias" type="edm:TSimpleIdentifier" use="optional"/>
</xs:complexType>
top

Complex Type: TPropertyValue

Super-types: None
Sub-types: None
Name TPropertyValue
Abstract no
XML Instance Representation
<...
Property="edm:TSimpleIdentifier [1]"
Binary="edm:binary [0..1]"
Bool="edm:boolean [0..1]"
Date="edm:date [0..1]"
DateTimeOffset="edm:dateTimeStamp [0..1]"
Decimal="xs:decimal [0..1]"
Duration="edm:dayTimeDuration [0..1]"
EnumMember="edm:TEnumMemberList [0..1]"
Float="xs:double [0..1]"
Guid="edm:TGuidLiteral [0..1]"
Int="xs:integer [0..1]"
String="xs:string [0..1]"
TimeOfDay="edm:time [0..1]"
AnnotationPath="edm:TPathWithTermSegments [0..1]"
NavigationPropertyPath="edm:TPathWithTermSegments [0..1]"
Path="edm:TPathWithTermSegments [0..1]"
PropertyPath="edm:TPathWithTermSegments [0..1]"
UrlRef="xs:anyURI [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Group: edm:GExpression [0..1]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
End Group: edm:GExpression
</...>
Schema Component Representation
<xs:complexType name="TPropertyValue">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="edm:GExpression" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Property" type="edm:TSimpleIdentifier" use="required"/>
<xs:attributeGroup ref="edm:GInlineExpressions"/>
</xs:complexType>
top

Complex Type: TRecordExpression

Super-types: None
Sub-types: None
Name TRecordExpression
Abstract no
XML Instance Representation
<...
Type="edm:TQualifiedName [0..1]">
Start Choice [0..*]
<edm:PropertyValue> edm:TPropertyValue </edm:PropertyValue> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TRecordExpression">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="PropertyValue" type="edm:TPropertyValue"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attribute name="Type" type="edm:TQualifiedName" use="optional"/>
</xs:complexType>
top

Complex Type: TReferentialConstraint

Super-types: None
Sub-types: None
Name TReferentialConstraint
Abstract no
XML Instance Representation
<...
Property="edm:TPath [1]"
ReferencedProperty="edm:TPath [1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TReferentialConstraint">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Property" type="edm:TPath" use="required"/>
<xs:attribute name="ReferencedProperty" type="edm:TPath" use="required"/>
</xs:complexType>
top

Complex Type: TSingleton

Super-types: None
Sub-types: None
Name TSingleton
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Type="edm:TQualifiedName [1]">
Start Choice [0..*]
<edm:NavigationPropertyBinding> edm:TNavigationPropertyBinding </edm:NavigationPropertyBinding> [1]
<edm:Annotation> ... </edm:Annotation> [1]
End Choice
</...>
Schema Component Representation
<xs:complexType name="TSingleton">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="NavigationPropertyBinding" type="edm:TNavigationPropertyBinding"/>
<xs:element ref="edm:Annotation"/>
</xs:choice>
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="Type" type="edm:TQualifiedName" use="required"/>
</xs:complexType>
top

Complex Type: TStringConstantExpression

Super-types: xs:string < TStringConstantExpression (by extension)
Sub-types: None
Name TStringConstantExpression
Abstract no
XML Instance Representation
<...>
xs:string
</...>
Schema Component Representation
<xs:complexType name="TStringConstantExpression">
<xs:simpleContent>
<xs:extension base="xs:string"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TTerm

Super-types: None
Sub-types: None
Name TTerm
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
Type="edm:TTypeName [1]"
BaseTerm="edm:TQualifiedName [0..1]"
Nullable="xs:boolean [0..1]"
DefaultValue="xs:string [0..1]"
AppliesTo="edm:TAppliesTo [0..1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TTerm">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="Type" type="edm:TTypeName" use="required"/>
<xs:attribute name="BaseTerm" type="edm:TQualifiedName" use="optional"/>
<xs:attribute name="Nullable" type="xs:boolean" use="optional"/>
<xs:attribute name="DefaultValue" type="xs:string" use="optional"/>
<xs:attribute name="AppliesTo" type="edm:TAppliesTo" use="optional"/>
<xs:attributeGroup ref="edm:TFacetAttributes"/>
</xs:complexType>
top

Complex Type: TTimeOfDayConstantExpression

Super-types: time < time (by restriction) < TTimeOfDayConstantExpression (by extension)
Sub-types: None
Name TTimeOfDayConstantExpression
Abstract no
XML Instance Representation
<...>
edm:time
</...>
Schema Component Representation
<xs:complexType name="TTimeOfDayConstantExpression">
<xs:simpleContent>
<xs:extension base="edm:time"/>
</xs:simpleContent>
</xs:complexType>
top

Complex Type: TTwoChildrenExpression

Super-types: None
Sub-types: None
Name TTwoChildrenExpression
Abstract no
XML Instance Representation
<...>
<edm:Annotation> ... </edm:Annotation> [0..*]
Start Group: edm:GExpression [2..2]
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
End Group: edm:GExpression
</...>
Schema Component Representation
<xs:complexType name="TTwoChildrenExpression">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="edm:GExpression" minOccurs="2" maxOccurs="2"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: TTypeDefinition

Super-types: None
Sub-types: None
Name TTypeDefinition
Abstract no
XML Instance Representation
<...
Name="edm:TSimpleIdentifier [1]"
UnderlyingType="edm:TPrimitiveType [1]"
MaxLength="edm:TMaxLengthFacet [0..1]"
Precision="edm:TPrecisionFacet [0..1]"
Scale="edm:TScaleFacet [0..1]"
SRID="edm:TSridFacet [0..1]"
Unicode="edm:TUnicodeFacet [0..1]">
<edm:Annotation> ... </edm:Annotation> [0..*]
</...>
Schema Component Representation
<xs:complexType name="TTypeDefinition">
<xs:sequence>
<xs:element ref="edm:Annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Name" type="edm:TSimpleIdentifier" use="required"/>
<xs:attribute name="UnderlyingType" type="edm:TPrimitiveType" use="required"/>
<xs:attributeGroup ref="edm:TFacetAttributes"/>
<xs:attributeGroup ref="edm:TPropertyFacetAttributes"/>
</xs:complexType>
top

Model Group: GExpression

Name GExpression
XML Instance Representation
Start Choice [1]
<edm:Binary> edm:TBinaryConstantExpression </edm:Binary> [1]
<edm:Bool> edm:TBoolConstantExpression </edm:Bool> [1]
<edm:Date> edm:TDateConstantExpression </edm:Date> [1]
<edm:DateTimeOffset> edm:TDateTimeOffsetConstantExpression </edm:DateTimeOffset> [1]
<edm:Decimal> edm:TDecimalConstantExpression </edm:Decimal> [1]
<edm:Duration> edm:TDurationConstantExpression </edm:Duration> [1]
<edm:EnumMember> edm:TEnumMemberList </edm:EnumMember> [1]
<edm:Float> edm:TFloatConstantExpression </edm:Float> [1]
<edm:Guid> edm:TGuidConstantExpression </edm:Guid> [1]
<edm:Int> edm:TIntConstantExpression </edm:Int> [1]
<edm:String> edm:TStringConstantExpression </edm:String> [1]
<edm:TimeOfDay> edm:TTimeOfDayConstantExpression </edm:TimeOfDay> [1]
<edm:AnnotationPath> edm:TPathExpression </edm:AnnotationPath> [1]
<edm:Apply> edm:TApplyExpression </edm:Apply> [1]
<edm:Cast> edm:TCastOrIsOfExpression </edm:Cast> [1]
<edm:Collection> edm:TCollectionExpression </edm:Collection> [1]
<edm:If> edm:TIfExpression </edm:If> [1]
<edm:Eq> edm:TTwoChildrenExpression </edm:Eq> [1]
<edm:Ne> edm:TTwoChildrenExpression </edm:Ne> [1]
<edm:Ge> edm:TTwoChildrenExpression </edm:Ge> [1]
<edm:Gt> edm:TTwoChildrenExpression </edm:Gt> [1]
<edm:Le> edm:TTwoChildrenExpression </edm:Le> [1]
<edm:Lt> edm:TTwoChildrenExpression </edm:Lt> [1]
<edm:And> edm:TTwoChildrenExpression </edm:And> [1]
<edm:Or> edm:TTwoChildrenExpression </edm:Or> [1]
<edm:Not> edm:TOneChildExpression </edm:Not> [1]
<edm:IsOf> edm:TCastOrIsOfExpression </edm:IsOf> [1]
<edm:LabeledElement> edm:TLabeledElementExpression </edm:LabeledElement> [1]
<edm:LabeledElementReference> edm:TLabeledElementReferenceExpression </edm:LabeledElementReference> [1]
<edm:Null> edm:TNullExpression </edm:Null> [1]
<edm:NavigationPropertyPath> edm:TPathExpression </edm:NavigationPropertyPath> [1]
<edm:Path> edm:TPathExpression </edm:Path> [1]
<edm:PropertyPath> edm:TPathExpression </edm:PropertyPath> [1]
<edm:Record> edm:TRecordExpression </edm:Record> [1]
<edm:UrlRef> edm:TOneChildExpression </edm:UrlRef> [1]
End Choice
Schema Component Representation
<xs:group name="GExpression">
<xs:choice>
<-- Constant Expressions -->
<xs:element name="Binary" type="edm:TBinaryConstantExpression"/>
<xs:element name="Bool" type="edm:TBoolConstantExpression"/>
<xs:element name="Date" type="edm:TDateConstantExpression"/>
<xs:element name="DateTimeOffset" type="edm:TDateTimeOffsetConstantExpression"/>
<xs:element name="Decimal" type="edm:TDecimalConstantExpression"/>
<xs:element name="Duration" type="edm:TDurationConstantExpression"/>
<xs:element name="EnumMember" type="edm:TEnumMemberList"/>
<xs:element name="Float" type="edm:TFloatConstantExpression"/>
<xs:element name="Guid" type="edm:TGuidConstantExpression"/>
<xs:element name="Int" type="edm:TIntConstantExpression"/>
<xs:element name="String" type="edm:TStringConstantExpression"/>
<xs:element name="TimeOfDay" type="edm:TTimeOfDayConstantExpression"/>
<-- Dynamic Expressions -->
<xs:element name="AnnotationPath" type="edm:TPathExpression"/>
<xs:element name="Apply" type="edm:TApplyExpression"/>
<xs:element name="Cast" type="edm:TCastOrIsOfExpression"/>
<xs:element name="Collection" type="edm:TCollectionExpression"/>
<xs:element name="If" type="edm:TIfExpression"/>
<xs:element name="Eq" type="edm:TTwoChildrenExpression"/>
<xs:element name="Ne" type="edm:TTwoChildrenExpression"/>
<xs:element name="Ge" type="edm:TTwoChildrenExpression"/>
<xs:element name="Gt" type="edm:TTwoChildrenExpression"/>
<xs:element name="Le" type="edm:TTwoChildrenExpression"/>
<xs:element name="Lt" type="edm:TTwoChildrenExpression"/>
<xs:element name="And" type="edm:TTwoChildrenExpression"/>
<xs:element name="Or" type="edm:TTwoChildrenExpression"/>
<xs:element name="Not" type="edm:TOneChildExpression"/>
<xs:element name="IsOf" type="edm:TCastOrIsOfExpression"/>
<xs:element name="LabeledElement" type="edm:TLabeledElementExpression"/>
<xs:element name="LabeledElementReference" type="edm:TLabeledElementReferenceExpression"/>
<xs:element name="Null" type="edm:TNullExpression"/>
<xs:element name="NavigationPropertyPath" type="edm:TPathExpression"/>
<xs:element name="Path" type="edm:TPathExpression"/>
<xs:element name="PropertyPath" type="edm:TPathExpression"/>
<xs:element name="Record" type="edm:TRecordExpression"/>
<xs:element name="UrlRef" type="edm:TOneChildExpression"/>
</xs:choice>
</xs:group>
top

Simple Type: TAbstractType

Super-types: xs:string < TAbstractType (by restriction)
Sub-types: None
Name TAbstractType
Content
  • Base XSD Type: string
  • value comes from list: {'Edm.ComplexType'|'Edm.EntityType'|'Edm.PrimitiveType'|'Edm.Geography'|'Edm.Geometry'|'Edm.AnnotationPath'|'Edm.NavigationPropertyPath'|'Edm.PropertyPath'|'Collection(Edm.ComplexType)'|'Collection(Edm.EntityType)'|'Collection(Edm.PrimitiveType)'|'Collection(Edm.Geography)'|'Collection(Edm.Geometry)'|'Collection(Edm.AnnotationPath)'|'Collection(Edm.NavigationPropertyPath)'|'Collection(Edm.PropertyPath)'}
Schema Component Representation
<xs:simpleType name="TAbstractType">
<xs:restriction base="xs:string">
<xs:enumeration value="Edm.ComplexType"/>
<xs:enumeration value="Edm.EntityType"/>
<xs:enumeration value="Edm.PrimitiveType"/>
<xs:enumeration value="Edm.Geography"/>
<xs:enumeration value="Edm.Geometry"/>
<xs:enumeration value="Edm.AnnotationPath"/>
<xs:enumeration value="Edm.NavigationPropertyPath"/>
<xs:enumeration value="Edm.PropertyPath"/>
<xs:enumeration value="Collection(Edm.ComplexType)"/>
<xs:enumeration value="Collection(Edm.EntityType)"/>
<xs:enumeration value="Collection(Edm.PrimitiveType)"/>
<xs:enumeration value="Collection(Edm.Geography)"/>
<xs:enumeration value="Collection(Edm.Geometry)"/>
<xs:enumeration value="Collection(Edm.AnnotationPath)"/>
<xs:enumeration value="Collection(Edm.NavigationPropertyPath)"/>
<xs:enumeration value="Collection(Edm.PropertyPath)"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TAppliesTo

Super-types: None
Sub-types: None
Name TAppliesTo
Content
  • List of:
    • Locally defined type:
      • Base XSD Type: string
      • value comes from list: {'Action'|'ActionImport'|'Annotation'|'Apply'|'Cast'|'ComplexType'|'EntityContainer'|'EntitySet'|'EntityType'|'EnumType'|'Function'|'FunctionImport'|'If'|'IsOf'|'LabeledElement'|'Member'|'NavigationProperty'|'Null'|'OnDelete'|'Parameter'|'Property'|'PropertyValue'|'Record'|'Reference'|'ReferentialConstraint'|'Schema'|'Singleton'|'Term'|'TypeDefinition'|'UrlRef'}
Schema Component Representation
<xs:simpleType name="TAppliesTo">
<xs:list>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Action"/>
<xs:enumeration value="ActionImport"/>
<xs:enumeration value="Annotation"/>
<xs:enumeration value="Apply"/>
<xs:enumeration value="Cast"/>
<xs:enumeration value="ComplexType"/>
<xs:enumeration value="EntityContainer"/>
<xs:enumeration value="EntitySet"/>
<xs:enumeration value="EntityType"/>
<xs:enumeration value="EnumType"/>
<xs:enumeration value="Function"/>
<xs:enumeration value="FunctionImport"/>
<xs:enumeration value="If"/>
<xs:enumeration value="IsOf"/>
<xs:enumeration value="LabeledElement"/>
<xs:enumeration value="Member"/>
<xs:enumeration value="NavigationProperty"/>
<xs:enumeration value="Null"/>
<xs:enumeration value="OnDelete"/>
<xs:enumeration value="Parameter"/>
<xs:enumeration value="Property"/>
<xs:enumeration value="PropertyValue"/>
<xs:enumeration value="Record"/>
<xs:enumeration value="Reference"/>
<xs:enumeration value="ReferentialConstraint"/>
<xs:enumeration value="Schema"/>
<xs:enumeration value="Singleton"/>
<xs:enumeration value="Term"/>
<xs:enumeration value="TypeDefinition"/>
<xs:enumeration value="UrlRef"/>
</xs:restriction>
</xs:simpleType>
</xs:list>
</xs:simpleType>
top

Simple Type: TClientFunction

Super-types: None
Sub-types: None
Name TClientFunction
Content
  • Union of following types:
    • edm:TQualifiedName
    • Locally defined type:
      • Base XSD Type: string
      • value comes from list: {'odata.concat'|'odata.fillUriTemplate'|'odata.uriEncode'}
Schema Component Representation
<xs:simpleType name="TClientFunction">
<xs:union memberTypes="edm:TQualifiedName">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="odata.concat"/>
<xs:enumeration value="odata.fillUriTemplate"/>
<xs:enumeration value="odata.uriEncode"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
top

Simple Type: TEnumMemberList

Super-types: None
Sub-types: None
Name TEnumMemberList
Content
Schema Component Representation
<xs:simpleType name="TEnumMemberList">
<xs:list itemType="edm:TPath"/>
</xs:simpleType>
top

Simple Type: TGuidLiteral

Super-types: xs:string < TGuidLiteral (by restriction)
Sub-types:
Name TGuidLiteral
Content
  • Base XSD Type: string
  • pattern = [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}
Schema Component Representation
<xs:simpleType name="TGuidLiteral">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TMax

Super-types: xs:string < TMax (by restriction)
Sub-types: None
Name TMax
Content
  • Base XSD Type: string
  • value comes from list: {'max'}
Schema Component Representation
<xs:simpleType name="TMax">
<xs:restriction base="xs:string">
<xs:enumeration value="max"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TMaxLengthFacet

Super-types: None
Sub-types: None
Name TMaxLengthFacet
Content
  • Union of following types:
Schema Component Representation
<xs:simpleType name="TMaxLengthFacet">
<xs:union memberTypes="edm:TMax xs:nonNegativeInteger"/>
</xs:simpleType>
top

Simple Type: TNamespaceName

Super-types: xs:NCName < TNamespaceName (by restriction)
Sub-types: None
Name TNamespaceName
Content
  • Base XSD Type: NCName
  • pattern = [\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}(\.[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){0,}
  • length <= 511
Schema Component Representation
<xs:simpleType name="TNamespaceName">
<xs:restriction base="xs:NCName">
<xs:maxLength value="511"/>
<-- one or more SimpleIdentifiers separated by dots -->
<xs:pattern value="[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}(\.[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){0,}"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TOnDeleteAction

Super-types: xs:token < TOnDeleteAction (by restriction)
Sub-types: None
Name TOnDeleteAction
Content
  • Base XSD Type: token
  • value comes from list: {'Cascade'|'None'|'SetDefault'|'SetNull'}
Schema Component Representation
<xs:simpleType name="TOnDeleteAction">
<xs:restriction base="xs:token">
<xs:enumeration value="Cascade"/>
<xs:enumeration value="None"/>
<xs:enumeration value="SetDefault"/>
<xs:enumeration value="SetNull"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TPath

Super-types: xs:string < TPath (by restriction)
Sub-types: None
Name TPath
Content
  • Base XSD Type: string
  • pattern = [\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}([\./][\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){0,}
Schema Component Representation
<xs:simpleType name="TPath">
<xs:restriction base="xs:string">
<-- The below pattern represents the allowed identifiers in the ECMAScript specification plus the '.' for namespace qualification and the '/' for path segment separation -->
<xs:pattern value="[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}([\./][\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){0,}"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TPathWithTermSegments

Super-types: xs:string < TPathWithTermSegments (by restriction)
Sub-types:
Name TPathWithTermSegments
Content
  • Base XSD Type: string
  • pattern = @?[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}(([\./#@]|/@)[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){0,}(/$count)?
Schema Component Representation
<xs:simpleType name="TPathWithTermSegments">
<-- Note: this pattern is overly generous, for the strict definition see http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part3-csdl.html -->
<xs:restriction base="xs:string">
<-- The below pattern represents the allowed identifiers in the ECMAScript specification plus the '/' for path segment separation and the '.' for namespace qualification inside the segments. -->
<xs:pattern value="@?[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}(([\./#@]|/@)[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){0,}(/$count)?"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TPrecisionFacet

Super-types: xs:nonNegativeInteger < TPrecisionFacet (by restriction)
Sub-types: None
Name TPrecisionFacet
Content
  • Base XSD Type: nonNegativeInteger
Schema Component Representation
<xs:simpleType name="TPrecisionFacet">
<xs:restriction base="xs:nonNegativeInteger"/>
</xs:simpleType>
top

Simple Type: TPrimitiveType

Super-types: None
Sub-types: None
Name TPrimitiveType
Content
  • Union of following types:
    • Locally defined type:
      • Base XSD Type: token
      • value comes from list: {'Edm.Binary'|'Edm.Boolean'|'Edm.Byte'|'Edm.Date'|'Edm.DateTimeOffset'|'Edm.Duration'|'Edm.TimeOfDay'|'Edm.Decimal'|'Edm.Double'|'Edm.Single'|'Edm.GeographyPoint'|'Edm.GeographyLineString'|'Edm.GeographyPolygon'|'Edm.GeographyMultiPoint'|'Edm.GeographyMultiLineString'|'Edm.GeographyMultiPolygon'|'Edm.GeographyCollection'|'Edm.GeometryPoint'|'Edm.GeometryLineString'|'Edm.GeometryPolygon'|'Edm.GeometryMultiPoint'|'Edm.GeometryMultiLineString'|'Edm.GeometryMultiPolygon'|'Edm.GeometryCollection'|'Edm.Guid'|'Edm.Int16'|'Edm.Int32'|'Edm.Int64'|'Edm.String'|'Edm.SByte'|'Collection(Edm.Binary)'|'Collection(Edm.Boolean)'|'Collection(Edm.Byte)'|'Collection(Edm.Date)'|'Collection(Edm.DateTimeOffset)'|'Collection(Edm.Duration)'|'Collection(Edm.TimeOfDay)'|'Collection(Edm.Decimal)'|'Collection(Edm.Double)'|'Collection(Edm.Single)'|'Collection(Edm.GeographyPoint)'|'Collection(Edm.GeographyLineString)'|'Collection(Edm.GeographyPolygon)'|'Collection(Edm.GeographyMultiPoint)'|'Collection(Edm.GeographyMultiLineString)'|'Collection(Edm.GeographyMultiPolygon)'|'Collection(Edm.GeographyCollection)'|'Collection(Edm.GeometryPoint)'|'Collection(Edm.GeometryLineString)'|'Collection(Edm.GeometryPolygon)'|'Collection(Edm.GeometryMultiPoint)'|'Collection(Edm.GeometryMultiLineString)'|'Collection(Edm.GeometryMultiPolygon)'|'Collection(Edm.GeometryCollection)'|'Collection(Edm.Guid)'|'Collection(Edm.Int16)'|'Collection(Edm.Int32)'|'Collection(Edm.Int64)'|'Collection(Edm.String)'|'Collection(Edm.SByte)'}
    • Locally defined type:
      • Base XSD Type: token
      • pattern = Edm\..+
Schema Component Representation
<xs:simpleType name="TPrimitiveType">
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="Edm.Binary"/>
<xs:enumeration value="Edm.Boolean"/>
<xs:enumeration value="Edm.Byte"/>
<xs:enumeration value="Edm.Date"/>
<xs:enumeration value="Edm.DateTimeOffset"/>
<xs:enumeration value="Edm.Duration"/>
<xs:enumeration value="Edm.TimeOfDay"/>
<xs:enumeration value="Edm.Decimal"/>
<xs:enumeration value="Edm.Double"/>
<xs:enumeration value="Edm.Single"/>
<xs:enumeration value="Edm.GeographyPoint"/>
<xs:enumeration value="Edm.GeographyLineString"/>
<xs:enumeration value="Edm.GeographyPolygon"/>
<xs:enumeration value="Edm.GeographyMultiPoint"/>
<xs:enumeration value="Edm.GeographyMultiLineString"/>
<xs:enumeration value="Edm.GeographyMultiPolygon"/>
<xs:enumeration value="Edm.GeographyCollection"/>
<xs:enumeration value="Edm.GeometryPoint"/>
<xs:enumeration value="Edm.GeometryLineString"/>
<xs:enumeration value="Edm.GeometryPolygon"/>
<xs:enumeration value="Edm.GeometryMultiPoint"/>
<xs:enumeration value="Edm.GeometryMultiLineString"/>
<xs:enumeration value="Edm.GeometryMultiPolygon"/>
<xs:enumeration value="Edm.GeometryCollection"/>
<xs:enumeration value="Edm.Guid"/>
<xs:enumeration value="Edm.Int16"/>
<xs:enumeration value="Edm.Int32"/>
<xs:enumeration value="Edm.Int64"/>
<xs:enumeration value="Edm.String"/>
<xs:enumeration value="Edm.SByte"/>
<xs:enumeration value="Collection(Edm.Binary)"/>
<xs:enumeration value="Collection(Edm.Boolean)"/>
<xs:enumeration value="Collection(Edm.Byte)"/>
<xs:enumeration value="Collection(Edm.Date)"/>
<xs:enumeration value="Collection(Edm.DateTimeOffset)"/>
<xs:enumeration value="Collection(Edm.Duration)"/>
<xs:enumeration value="Collection(Edm.TimeOfDay)"/>
<xs:enumeration value="Collection(Edm.Decimal)"/>
<xs:enumeration value="Collection(Edm.Double)"/>
<xs:enumeration value="Collection(Edm.Single)"/>
<xs:enumeration value="Collection(Edm.GeographyPoint)"/>
<xs:enumeration value="Collection(Edm.GeographyLineString)"/>
<xs:enumeration value="Collection(Edm.GeographyPolygon)"/>
<xs:enumeration value="Collection(Edm.GeographyMultiPoint)"/>
<xs:enumeration value="Collection(Edm.GeographyMultiLineString)"/>
<xs:enumeration value="Collection(Edm.GeographyMultiPolygon)"/>
<xs:enumeration value="Collection(Edm.GeographyCollection)"/>
<xs:enumeration value="Collection(Edm.GeometryPoint)"/>
<xs:enumeration value="Collection(Edm.GeometryLineString)"/>
<xs:enumeration value="Collection(Edm.GeometryPolygon)"/>
<xs:enumeration value="Collection(Edm.GeometryMultiPoint)"/>
<xs:enumeration value="Collection(Edm.GeometryMultiLineString)"/>
<xs:enumeration value="Collection(Edm.GeometryMultiPolygon)"/>
<xs:enumeration value="Collection(Edm.GeometryCollection)"/>
<xs:enumeration value="Collection(Edm.Guid)"/>
<xs:enumeration value="Collection(Edm.Int16)"/>
<xs:enumeration value="Collection(Edm.Int32)"/>
<xs:enumeration value="Collection(Edm.Int64)"/>
<xs:enumeration value="Collection(Edm.String)"/>
<xs:enumeration value="Collection(Edm.SByte)"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:pattern value="Edm\..+"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
top

Simple Type: TQualifiedName

Super-types: xs:NCName < TQualifiedName (by restriction)
Sub-types:
Name TQualifiedName
Content
  • Base XSD Type: NCName
  • pattern = [\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}(\.[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){1,}
Schema Component Representation
<xs:simpleType name="TQualifiedName">
<xs:restriction base="xs:NCName">
<-- a NamespaceName followed by a dot and a SimpleIdentifier -->
<xs:pattern value="[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}(\.[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){1,}"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TScaleFacet

Super-types: None
Sub-types: None
Name TScaleFacet
Content
Schema Component Representation
<xs:simpleType name="TScaleFacet">
<xs:union memberTypes="edm:TVariable xs:nonNegativeInteger"/>
</xs:simpleType>
top

Simple Type: TSimpleIdentifier

Super-types: xs:NCName < TSimpleIdentifier (by restriction)
Sub-types: None
Name TSimpleIdentifier
Content
  • Base XSD Type: NCName
  • pattern = [\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}
  • length <= 128
Schema Component Representation
<xs:simpleType name="TSimpleIdentifier">
<xs:restriction base="xs:NCName">
<xs:maxLength value="128"/>
<-- ECMAScript identifiers not starting with a '$' -->
<xs:pattern value="[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: TSridFacet

Super-types: None
Sub-types: None
Name TSridFacet
Content
Schema Component Representation
<xs:simpleType name="TSridFacet">
<xs:union memberTypes="edm:TVariable xs:nonNegativeInteger"/>
</xs:simpleType>
top

Simple Type: TTypeName

Super-types: None
Sub-types: None
Name TTypeName
Content
  • Union of following types:
Schema Component Representation
<xs:simpleType name="TTypeName">
<xs:union memberTypes="edm:TPrimitiveType edm:TAbstractType edm:TQualifiedName">
<xs:simpleType>
<xs:restriction base="xs:token">
<-- The below pattern represents the allowed identifiers in the ECMAScript specification plus the '.' for namespace qualification and the Collection() wrapper -->
<xs:pattern value="Collection\([\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}(\.[\p{L}\p{Nl}_][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}\p{Cf}]{0,}){1,}\)"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
top

Simple Type: TUnicodeFacet

Super-types: boolean < boolean (by restriction) < TUnicodeFacet (by restriction)
Sub-types: None
Name TUnicodeFacet
Content
  • Base XSD Type: boolean
Schema Component Representation
<xs:simpleType name="TUnicodeFacet">
<xs:restriction base="xs:boolean"/>
</xs:simpleType>
top

Simple Type: TVariable

Super-types: xs:string < TVariable (by restriction)
Sub-types: None
Name TVariable
Content
  • Base XSD Type: string
  • value comes from list: {'variable'}
Schema Component Representation
<xs:simpleType name="TVariable">
<xs:restriction base="xs:string">
<xs:enumeration value="variable"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: binary

Super-types: xs:string < binary (by restriction)
Sub-types:
Name binary
Content
  • Base XSD Type: string
  • pattern = ([A-Za-z0-9_\-]{4})*([A-Za-z0-9_\-]{3}[A-Za-z0-9_\-]|[A-Za-z0-9_\-]{2}[AEIMQUYcgkosw048]=?|[A-Za-z0-9_\-][AQgw](==)?)?
Schema Component Representation
<xs:simpleType name="binary">
<xs:restriction base="xs:string">
<xs:pattern value="([A-Za-z0-9_\-]{4})*([A-Za-z0-9_\-]{3}[A-Za-z0-9_\-]|[A-Za-z0-9_\-]{2}[AEIMQUYcgkosw048]=?|[A-Za-z0-9_\-][AQgw](==)?)?"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: boolean

Super-types: boolean < boolean (by restriction)
Sub-types:
Name boolean
Content
  • Base XSD Type: boolean
  • pattern = true|false
Schema Component Representation
<xs:simpleType name="boolean">
<xs:restriction base="xs:boolean">
<xs:pattern value="true|false"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: date

Super-types: date < date (by restriction)
Sub-types:
  • date (by restriction)
Name date
Content
  • Base XSD Type: date
  • pattern = [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]
Schema Component Representation
<xs:simpleType name="date">
<xs:restriction base="xs:date">
<xs:pattern value="[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: dateTimeStamp

Super-types: xs:dateTime < dateTimeStamp (by restriction)
Sub-types:
Name dateTimeStamp
Content
  • Base XSD Type: dateTime
  • pattern = .*([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\.[0-9]{1,12})?(Z|(\+|-)[0-9][0-9]:[0-9][0-9])
Schema Component Representation
<xs:simpleType name="dateTimeStamp">
<xs:restriction base="xs:dateTime">
<xs:pattern value=".*([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\.[0-9]{1,12})?(Z|(\+|-)[0-9][0-9]:[0-9][0-9])"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: dayTimeDuration

Super-types: xs:duration < dayTimeDuration (by restriction)
Sub-types:
Name dayTimeDuration
Content
  • Base XSD Type: duration
  • pattern = [^YM]*[DT].*
Schema Component Representation
<xs:simpleType name="dayTimeDuration">
<xs:restriction base="xs:duration">
<xs:pattern value="[^YM]*[DT].*"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: time

Super-types: time < time (by restriction)
Sub-types:
  • time (by restriction)
Name time
Content
  • Base XSD Type: time
  • pattern = ([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\.[0-9]{1,12})?
Schema Component Representation
<xs:simpleType name="time">
<xs:restriction base="xs:time">
<xs:pattern value="([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\.[0-9]{1,12})?"/>
</xs:restriction>
</xs:simpleType>
top

Legend

Complex Type:

Schema Component Type

AusAddress

Schema Component Name
Super-types: Address < AusAddress (by extension)
Sub-types:
  • QLDAddress (by restriction)
If this schema component is a type definition, its type hierarchy is shown in a gray-bordered box.
Name AusAddress
Abstract no
The table above displays the properties of this schema component.
XML Instance Representation
<... country="Australia">
<unitNo> string </unitNo> [0..1]
<houseNo> string </houseNo> [1]
<street> string </street> [1]
Start Choice[1]
<city> string </city> [1]
<town> string </town> [1]
End Choice
<state> AusStates </state> [1]
<postcode> string <<pattern = [1-9][0-9]{3}>> </postcode> [1]?
</...>

The XML Instance Representation table above shows the schema component's content as an XML instance.

Schema Component Representation
<complexTypename="AusAddress">
<complexContent>
<extensionbase="Address">
<sequence>
<elementname="state" type="AusStates"/>
<elementname="postcode">
<simpleType>
<restrictionbase="string">
<patternvalue="[1-9][0-9]{3}"/>
</restriction>
</simpleType>
</element>
</sequence>
<attributename="country" type="string" fixed="Australia"/>
</extension>
</complexContent>
</complexType>
The Schema Component Representation table above displays the underlying XML representation of the schema component. (Annotations are not shown.)
top

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

top