<?xml version="1.0" encoding="utf-8"?>
<edmx:Edmx Version="2.0" xmlns:edmx="http://schemas.microsoft.com/ado/2008/10/edmx">
<!-- EF Runtime content -->
<edmx:Runtime>
<!-- SSDL content -->
<edmx:StorageModels>
<Schema Namespace="SchoolModel.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2008" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2009/02/edm/ssdl">
<EntityContainer Name="SchoolModelStoreContainer">
<EntitySet Name="Person" EntityType="SchoolModel.Store.Person" store:Type="Tables" Schema="dbo" />
<EntitySet Name="PersonDateInfo" EntityType="SchoolModel.Store.PersonDateInfo" store:Type="Tables" Schema="dbo" />
<AssociationSet Name="FK_PersonDateInfo_Person" Association="SchoolModel.Store.FK_PersonDateInfo_Person">
<End Role="Person" EntitySet="Person" />
<End Role="PersonDateInfo" EntitySet="PersonDateInfo" />
</AssociationSet>
</EntityContainer>
<EntityType Name="Person">
<Key>
<PropertyRef Name="PersonID" />
</Key>
<Property Name="PersonID" Type="int" Nullable="false" StoreGeneratedPattern="Identity" />
<Property Name="LastName" Type="nvarchar" Nullable="false" MaxLength="50" />
<Property Name="FirstName" Type="nvarchar" Nullable="false" MaxLength="10" />
<Property Name="PersonType" Type="tinyint" Nullable="false" />
</EntityType>
<EntityType Name="PersonDateInfo">
<Key>
<PropertyRef Name="PersonID" />
</Key>
<Property Name="PersonID" Type="int" Nullable="false" />
<Property Name="PersonDate" Type="datetime" />
<Property Name="DateType" Type="tinyint" Nullable="false" />
</EntityType>
<Association Name="FK_PersonDateInfo_Person">
<End Role="Person" Type="SchoolModel.Store.Person" Multiplicity="1" />
<End Role="PersonDateInfo" Type="SchoolModel.Store.PersonDateInfo" Multiplicity="0..1" />
<ReferentialConstraint>
<Principal Role="Person">
<PropertyRef Name="PersonID" />
</Principal>
<Dependent Role="PersonDateInfo">
<PropertyRef Name="PersonID" />
</Dependent>
</ReferentialConstraint>
</Association>
</Schema>
</edmx:StorageModels>
<!-- CSDL content -->
<edmx:ConceptualModels>
<Schema Namespace="SchoolModel" Alias="Self" xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation" xmlns="http://schemas.microsoft.com/ado/2008/09/edm">
<EntityContainer Name="SchoolEntities" annotation:LazyLoadingEnabled="true">
<EntitySet Name="People" EntityType="SchoolModel.Person" />
</EntityContainer>
<EntityType Name="Person" Abstract="true">
<Key>
<PropertyRef Name="PersonID" />
</Key>
<Property Name="PersonID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
<Property Name="LastName" Type="String" Nullable="false" MaxLength="50" Unicode="true" FixedLength="false" />
<Property Name="FirstName" Type="String" Nullable="false" MaxLength="10" Unicode="true" FixedLength="false" />
</EntityType>
<EntityType Name="Student" BaseType="SchoolModel.Person" >
<Property Type="DateTime" Name="EnrollementDate" Nullable="false" />
</EntityType>
<EntityType Name="Professor" BaseType="SchoolModel.Person" >
<Property Type="DateTime" Name="HireDate" Nullable="false" />
</EntityType>
</Schema>
</edmx:ConceptualModels>
<!-- C-S mapping content -->
<edmx:Mappings>
<Mapping Space="C-S" xmlns="http://schemas.microsoft.com/ado/2008/09/mapping/cs">
<EntityContainerMapping StorageEntityContainer="SchoolModelStoreContainer" CdmEntityContainer="SchoolEntities">
<EntitySetMapping Name="People">
<EntityTypeMapping TypeName="IsTypeOf(SchoolModel.Person)">
<MappingFragment StoreEntitySet="Person">
<ScalarProperty Name="PersonID" ColumnName="PersonID" />
<ScalarProperty Name="FirstName" ColumnName="FirstName" />
<ScalarProperty Name="LastName" ColumnName="LastName" />
</MappingFragment>
<MappingFragment StoreEntitySet="PersonDateInfo">
<ScalarProperty Name="PersonID" ColumnName="PersonID" />
</MappingFragment>
</EntityTypeMapping>
<EntityTypeMapping TypeName="IsTypeOf(SchoolModel.Professor)">
<MappingFragment StoreEntitySet="Person">
<ScalarProperty Name="PersonID" ColumnName="PersonID" />
<Condition ColumnName="PersonType" Value="1" />
</MappingFragment>
<MappingFragment StoreEntitySet="PersonDateInfo" >
<ScalarProperty Name="PersonID" ColumnName="PersonID" />
<ScalarProperty Name="HireDate" ColumnName="PersonDate" />
<Condition ColumnName="DateType" Value="1" />
</MappingFragment>
</EntityTypeMapping>
<EntityTypeMapping TypeName="IsTypeOf(SchoolModel.Student)">
<MappingFragment StoreEntitySet="Person">
<ScalarProperty Name="PersonID" ColumnName="PersonID" />
<Condition ColumnName="PersonType" Value="2" />
</MappingFragment>
<MappingFragment StoreEntitySet="PersonDateInfo" >
<ScalarProperty Name="PersonID" ColumnName="PersonID" />
<ScalarProperty Name="EnrollementDate" ColumnName="PersonDate" />
<Condition ColumnName="DateType" Value="2" />
</MappingFragment>
</EntityTypeMapping>
</EntitySetMapping>
</EntityContainerMapping>
</Mapping>
</edmx:Mappings>
</edmx:Runtime>
<!-- EF Designer content (DO NOT EDIT MANUALLY BELOW HERE) -->
<Designer xmlns="http://schemas.microsoft.com/ado/2008/10/edmx">
<Connection>
<DesignerInfoPropertySet>
<DesignerProperty Name="MetadataArtifactProcessing" Value="EmbedInOutputAssembly" />
</DesignerInfoPropertySet>
</Connection>
<Options>
<DesignerInfoPropertySet>
<DesignerProperty Name="ValidateOnBuild" Value="true" />
<DesignerProperty Name="EnablePluralization" Value="False" />
<DesignerProperty Name="IncludeForeignKeysInModel" Value="True" />
</DesignerInfoPropertySet>
</Options>
<!-- Diagram content (shape and connector positions) -->
<Diagrams>
<Diagram Name="SchoolModel">
<EntityTypeShape EntityType="SchoolModel.Person" Width="1.5" PointX="1.25" PointY="2.875" Height="1.5956835937499996" IsExpanded="true" />
<EntityTypeShape EntityType="SchoolModel.Student" Width="1.5" PointX="4.25" PointY="5.375" Height="1.2110807291666665" />
<InheritanceConnector EntityType="SchoolModel.Student" >
<ConnectorPoint PointX="2" PointY="4.47068359375" />
<ConnectorPoint PointX="2" PointY="5" />
<ConnectorPoint PointX="5" PointY="5" />
<ConnectorPoint PointX="5" PointY="5.375" />
</InheritanceConnector>
<EntityTypeShape EntityType="SchoolModel.Professor" Width="1.5" PointX="6.5" PointY="5.375" Height="1.2110807291666665" />
<InheritanceConnector EntityType="SchoolModel.Professor" >
<ConnectorPoint PointX="2" PointY="4.47068359375" />
<ConnectorPoint PointX="2" PointY="5" />
<ConnectorPoint PointX="7.25" PointY="5" />
<ConnectorPoint PointX="7.25" PointY="5.375" />
</InheritanceConnector>
</Diagram>
</Diagrams>
</Designer>
</edmx:Edmx>