<?xml version="1.0" encoding="UTF-8"?>
<d2r:Map xmlns:d2r="http://www.wiwiss.fu-berlin.de/suhl/bizer/D2RMap/0.1#" d2r:versionInfo="$Id: AtlasMap.d2r,xml, v 0.1 2003/01/27 Peter Exp $">
	<d2r:ProcessorMessage d2r:outputFormat="RDF/XML-ABBREV"/>
	<d2r:DBConnection d2r:odbcDSN="AtlasDB"/>
	<d2r:Namespace d2r:prefix="hybrid" d2r:namespace="http://project.kahosl.be/cofftea/2003/01/hybrid.daml#"/>
	<d2r:Namespace d2r:prefix="daml" d2r:namespace="http://www.daml.org/2001/03/daml+oil#"/>
	<d2r:Namespace d2r:prefix="rdf" d2r:namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
	<d2r:Namespace d2r:prefix="schooltimetabling" d2r:namespace="http://project.kahosl.be/cofftea/2003/01/schooltimetabling.daml#"/>

<d2r:ClassMap d2r:type="hybrid:SESSION" d2r:sql="SELECT * FROM ((Session INNER JOIN TimeSlot ON Session.TimeSlotID=TimeSlot.TimeSlotID) INNER JOIN Room ON Session.RoomID=Room.RoomID) INNER JOIN TimeDate ON TimeDate.TimeDateID=Session.TimeDateID" d2r:groupBy="Session.SessionID">
		<d2r:DatatypePropertyBridge d2r:property="hybrid:SESSION-ID" d2r:column="Session.SessionID"/>
		<d2r:ObjectPropertyBridge d2r:property="hybrid:timeslot" d2r:referredClass="hybrid:TIMESLOT" d2r:referredGroupBy="TimeSlot.TimeSlotID"/>
		<d2r:ObjectPropertyBridge d2r:property="hybrid:location" d2r:referredClass="hybrid:LOCATION" d2r:referredGroupBy="Room.RoomID"/>
		<d2r:ObjectPropertyBridge d2r:property="hybrid:date" d2r:referredClass="hybrid:DATE" d2r:referredGroupBy="TimeDate.TimeDateID"/>
		<d2r:ObjectPropertyBridge d2r:property="hybrid:attendee" d2r:referredClass="hybrid:ATTENDEE" d2r:referredGroupBy="Session.SessionID"/>
	</d2r:ClassMap>

	<d2r:ClassMap d2r:type="hybrid:DATE" d2r:sql="SELECT * FROM TimeDate" d2r:groupBy="TimeDate.TimeDateID">
		<d2r:DatatypePropertyBridge d2r:property="hybrid:DATE-ID" d2r:column="TimeDate.TimeDateID"/>
		<d2r:DatatypePropertyBridge d2r:property="hybrid:Day" d2r:column="TimeDate.TDate"/>
		<d2r:DatatypePropertyBridge d2r:property="hybrid:WeekNr" d2r:column="TimeDate.WeekNR"/>
		<d2r:DatatypePropertyBridge d2r:property="hybrid:NAME" d2r:column="TimeDate.WeekDay"/>
	</d2r:ClassMap>

	<d2r:ClassMap d2r:type="hybrid:TIMESLOT" d2r:sql="SELECT * FROM TimeSlot" d2r:groupBy="TimeSlot.TimeSlotID">
		<d2r:DatatypePropertyBridge d2r:property="hybrid:TIMESLOT-ID" d2r:column="TimeSlot.TimeSlotID"/>
		<d2r:DatatypePropertyBridge d2r:property="hybrid:DTSTART" d2r:column="TimeSlot.StartTime"/>
		<d2r:DatatypePropertyBridge d2r:property="hybrid:DTEND" d2r:column="TimeSlot.EndTime"/>
	</d2r:ClassMap>

	<d2r:ClassMap d2r:type="hybrid:ATTENDEE" d2r:sql="SELECT * FROM (((((((((((Session INNER JOIN TGroup ON Session.TGroupID=TGroup.TGroupID) INNER JOIN Teacher ON TGroup.TeacherID=Teacher.TeacherID) INNER JOIN Sgroup ON Session.SGroupID=SGroup.SGroupID) INNER JOIN SRelClass ON SGroup.SRelClassID= SRelClass.SRelClassID) INNER JOIN ClassGroup ON SRelClass.ClassGroupID= ClassGroup.ClassGroupID) INNER JOIN Room ON Session.RoomID=Room.RoomID) INNER JOIN OSub ON Session.Subid= OSub.OSubID) INNER JOIN OO ON OSub.OOAid= OO.OOID) INNER JOIN Activity ON OSub.ActivityID = Activity.ActivityID) INNER JOIN TimeSlot ON Session.TimeSlotID = TimeSlot.TimeSlotID) INNER JOIN TimeDate ON Session.TimeDateID = TimeDate.TimeDateID)" d2r:groupBy="Session.SessionID">
		<d2r:DatatypePropertyBridge d2r:property="schooltimetabling:teacher" d2r:column="Teacher.TLastName"/>
		<d2r:DatatypePropertyBridge d2r:property="schooltimetabling:teacher-id" d2r:column="Teacher.TeacherID"/>
		<d2r:DatatypePropertyBridge d2r:property="schooltimetabling:classgroup" d2r:column="ClassGroup.ClassName"/>
		<d2r:DatatypePropertyBridge d2r:property="schooltimetabling:classgroup-id" d2r:column="ClassGroup.ClassGroupID"/>
	</d2r:ClassMap>

	<d2r:ClassMap d2r:type="hybrid:LOCATION" d2r:sql="SELECT * FROM Room" d2r:groupBy="Room.RoomID">
		<d2r:DatatypePropertyBridge d2r:property="hybrid:LOCATION-ID" d2r:column="Room.RoomID"/>
		<d2r:DatatypePropertyBridge d2r:property="hybrid:NAME" d2r:column="Room.RoomNR"/>
	</d2r:ClassMap>
</d2r:Map>

