<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="bi"
targetNamespace="http://schemas.microsoft.com/sqlbi/2010/10/edm/extensions"
elementFormDefault="qualified"
xmlns:bi="http://schemas.microsoft.com/sqlbi/2010/10/edm/extensions"
xmlns:edm="http://schemas.microsoft.com/ado/2008/09/edm"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://schemas.microsoft.com/ado/2008/09/edm" schemaLocation="System.Data.Resources.CSDLSchema_2.xs"/>
<xs:element name="EntityContainer" type="bi:TEntityContainer"/>
<xs:element name="EntitySet" type="bi:TEntitySet"/>
<xs:element name="AssociationSet" type="bi:TAssociationSet"/>
<xs:element name="EntityType" type="bi:TEntityType"/>
<xs:element name="Property" type="bi:TProperty"/>
<xs:element name="NavigationProperty" type="bi:TNavigationProperty"/>
<xs:element name="Measure" type="bi:TMeasure"/>
<xs:element name="SourceDescription" type="xs:string" />
<xs:complexType name="TEntityContainer">
<xs:sequence>
<xs:element name="CompareOptions" type="bi:TCompareOptions" />
</xs:sequence>
<xs:attribute name="Caption" type="xs:string" use="optional"/>
<xs:attribute name="Culture" type="xs:string" />
<xs:attribute name="DirectQueryMode" type="bi:TDirectQueryMode" />
</xs:complexType>
<xs:simpleType name="TDirectQueryMode">
<xs:restriction base="xs:string">
<xs:enumeration value="InMemory" />
<xs:enumeration value="InMemoryWithDirectQuery" />
<xs:enumeration value="DirectQueryWithInMemory" />
<xs:enumeration value="DirectQuery" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TCompareOptions">
<xs:attribute name="IgnoreCase" type="xs:boolean" default="false" />
<xs:attribute name="IgnoreNonSpace" type="xs:boolean" default="false" />
<xs:attribute name="IgnoreKanaType" type="xs:boolean" default="false" />
<xs:attribute name="IgnoreWidth" type="xs:boolean" default="false" />
</xs:complexType>
<xs:complexType name="TEntitySet">
<xs:attribute name="Caption" type="xs:string" use="optional"/>
<xs:attribute name="CollectionCaption" type="xs:string" use="optional"/>
<xs:attribute name="ReferenceName" type="xs:string" use="optional"/>
<xs:attribute name="Hidden" type="xs:boolean" default="false" use="optional"/>
<xs:attribute name="LineageTag" type="xs:string" use="optional"/>
<xs:attribute name="Private" type="xs:boolean" default="false" use="optional"/>
<xs:attribute name="ShowAsVariationsOnly" type="xs:boolean" default="false" use="optional"/>
</xs:complexType>
<xs:complexType name="TAssociationSet">
<xs:attribute name="State" type="bi:TState" default="Active"/>
<xs:attribute name="Hidden" type="xs:boolean" default="false" />
</xs:complexType>
<xs:simpleType name="TState">
<xs:restriction base="xs:string">
<xs:enumeration value="Active" />
<xs:enumeration value="Inactive" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TEntityType">
<xs:sequence>
<xs:element name="DisplayKey" type="bi:TMemberRefs" minOccurs="0" maxOccurs="1" />
<xs:element name="DefaultDetails" type="bi:TMemberRefs" minOccurs="0" maxOccurs="1"/>
<xs:element name="DefaultImage" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="MemberRef" type="bi:TMemberRef" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DefaultMeasure" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="MemberRef" type="bi:TMemberRef" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SortMembers" type="bi:TMemberRefs" minOccurs="0" maxOccurs="1" />
<xs:element name="DisplayFolders" type="bi:TDisplayFolders" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="Contents" type="xs:string" default="Regular" use="optional"/>
<xs:attribute name="IsCalculationGroup" type="xs:boolean" default="false" use="optional"/>
</xs:complexType>
<xs:complexType name="TDisplayFolders">
<xs:sequence>
<xs:element name="DisplayFolder" type="bi:TDisplayFolder" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="TDisplayFolder">
<xs:sequence>
<xs:element name="PropertyRef" type="bi:TPropertyRef" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="DisplayFolder" type="bi:TDisplayFolder" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="Name" type="xs:string" use="required" />
<xs:attribute name="Caption" type="xs:string" use="optional" />
</xs:complexType>
<xs:complexType name="TMemberRefs">
<xs:sequence>
<xs:element name="MemberRef" type="bi:TMemberRef" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="TMemberRef">
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="TMember" abstract="true">
<xs:attribute name="Caption" type="xs:string" use="optional"/>
<xs:attribute name="ContextualNameRule" type="bi:TContextualNameRule" default="None" />
<xs:attribute name="Hidden" type="xs:boolean" default="false" />
<xs:attribute name="ReferenceName" type="xs:string" use="optional" />
</xs:complexType>
<xs:simpleType name="TContextualNameRule">
<xs:restriction base="xs:string">
<xs:enumeration value="None" />
<xs:enumeration value="Context" />
<xs:enumeration value="Merge" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TDocumentation">
<xs:sequence>
<xs:element name="Summary" type="xs:string" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="TProperty">
<xs:complexContent>
<xs:extension base="bi:TBaseProperty">
<xs:sequence>
<xs:element name="OrderBy" type="bi:TPropertyRefs" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Private" type="xs:boolean" default="false" use="optional"/>
<xs:attribute name="Contents" type="bi:TContents" use="optional" default="Regular"/>
<xs:attribute name="DefaultAggregateFunction" type="bi:TDefaultAggregateFunction" default="Default" />
<xs:attribute name="GroupingBehavior" type="bi:TGroupingBehavior" default="GroupOnValue"/>
<xs:attribute name="Stability" type="bi:TStability" default="Stable"/>
<xs:attribute name="AggregateBehavior" type="xs:boolean" default="true" use="optional"/>
<xs:attribute name="LocaleImpact" type="xs:boolean" default="false" use="optional"/>
<xs:attribute name="LineageTag" type="xs:string" use="optional" />
<xs:attribute name="IsError" type="xs:boolean" default="false" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TContents">
<xs:restriction base="xs:string" />
</xs:simpleType>
<xs:simpleType name="TDefaultAggregateFunction">
<xs:restriction base="xs:string">
<xs:enumeration value="Default" />
<xs:enumeration value="None" />
<xs:enumeration value="Sum" />
<xs:enumeration value="Count" />
<xs:enumeration value="Average" />
<xs:enumeration value="Min" />
<xs:enumeration value="Max" />
<xs:enumeration value="DistinctCount" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TGroupingBehavior">
<xs:restriction base="xs:string">
<xs:enumeration value="GroupOnValue" />
<xs:enumeration value="GroupOnEntityKey" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TStability">
<xs:restriction base="xs:string">
<xs:enumeration value="Stable" />
<xs:enumeration value="RowNumber" />
<xs:enumeration value="Volatile" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TBaseProperty" abstract="true">
<xs:complexContent>
<xs:extension base="bi:TMember">
<xs:attribute name="Alignment" type="bi:TAlignment" use="optional"/>
<xs:attribute name="FormatString" type="xs:string" use="optional"/>
<xs:attribute name="Units" type="xs:string" use="optional" />
<xs:attribute name="SortDirection" type="bi:TSortDirection" default="Default"/>
<xs:attribute name="IsRightToLeft" type="xs:boolean" default="false"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TAlignment">
<xs:restriction base="xs:string">
<xs:enumeration value="Default" />
<xs:enumeration value="Left" />
<xs:enumeration value="Right" />
<xs:enumeration value="Center" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TSortDirection">
<xs:restriction base="xs:string">
<xs:enumeration value="Default" />
<xs:enumeration value="Ascending" />
<xs:enumeration value="Descending" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TPropertyRefs">
<xs:sequence>
<xs:element name="PropertyRef" type="bi:TPropertyRef" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="TPropertyRef">
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="TMeasure">
<xs:complexContent>
<xs:extension base="bi:TBaseProperty">
<xs:sequence>
<xs:element name="DistributiveBy" type="bi:TDistributiveBy" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Private" type="xs:boolean" default="false" use="optional" />
<xs:attribute name="IsSimpleMeasure" type="xs:boolean" default="true"/>
<xs:attribute name="Contents" type="xs:string" />
<xs:attribute name="LineageTag" type="xs:string" use="optional" />
<xs:attribute name="IsError" type="xs:boolean" default="false"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TDistributiveBy">
<xs:sequence>
<xs:element name="EntityRef" type="bi:TEntityRef" minOccurs="1" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="AggregationKind" type="bi:TAggregationKind" use="required" />
</xs:complexType>
<xs:simpleType name="TAggregationKind">
<xs:restriction base="xs:string">
<xs:enumeration value="Sum" />
<xs:enumeration value="Min" />
<xs:enumeration value="Max" />
<xs:enumeration value="Count" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TEntityRef">
<xs:attribute name="Name" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="TNavigationProperty">
<xs:complexContent>
<xs:extension base="bi:TMember">
<xs:attribute name="CollectionCaption" type="xs:string" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>