"prog:Programme", "foaf:primaryTopic" => $this_uri, "dc:title" => literal($programme["title"]." Programme"), )); $ts[] = array( "this:event", array( "rdf:type" => array( "prog:Event", "swc:ConferenceEvent", ), "swc:hasProgramme" => $this_uri, "swc:hasLocation" => "this:loc-conference_venue", "foaf:homepage" => $programme["homepage_url"], "foaf:based_near" => $programme["city"]["uri"], "cal:summary" => literal($programme["title"]), "cal:dtstart" => literal($programme["begins"]), "cal:dtend" => literal($programme["ends"]), "prog:hasTwitterTag" => literal($programme["twitter_tag"]), )); $ts[] = array( $programme["city"]["uri"], "rdfs:label", literal($programme["city"]["name"]) ); $ts[] = array( $programme["city"]["uri"], "rdf:type", "prog:Location" ); $ts[] = array( "this:loc-conference_venue", array( "rdf:type" => array( "prog:Location", "swc:ConferenceVenuePlace" ), "rdfs:label" => literal($programme["venue"]["name"]), )); if( $programme["venue"]["lat"] ) { $hash=$geohash->encode( $programme["venue"]["lat"], $programme["venue"]["long"] ); $ts[] = array( "this:loc-conference_venue", array( "geo:lat" => literal($programme["venue"]["lat"]), "geo:long" => literal($programme["venue"]["long"]), "geohash" => literal($hash), )); } foreach( $programme["locations"] as $location_id=>$location ) { if( !isset( $location["location"] )) { $location["location"] = "this:loc-conference_venue"; } $ts[] = array( "this:loc-$location_id", array( "rdf:type" => array( "prog:Location", $location["type"] ), "rdfs:label" => literal($location["name"]), "swc:hasLocation" => $location["location"], ) ); if( isset( $location["twitter_tag"] ) ) { $ts[] = array( "this:loc-$location_id", "prog:hasTwitterTag", literal( $location["twitter_tag"] ) ); } if( isset( $location["lat"] ) && isset( $location["long"] ) ) { $ts[] = array( "this:loc-$location_id", "geo:lat", literal( $location["lat"] ) ); $ts[] = array( "this:loc-$location_id", "geo:long", literal( $location["long"] ) ); $hash=$geohash->encode( $location["lat"], $location["long"] ); $ts[] = array( "this:loc-$location_id", "prog:geohash", literal( $hash ) ); } if( array_key_exists( "wiki", $location ) ) { $wiki_id = ucfirst(preg_replace( '/ /', '_', $location["wiki"] )); $ts[] = array( "this:loc-$location_id", "prog:hasWikiPage", $programme["wiki_prefix"].$wiki_id ); $ts[] = array( "this:loc-$location_id", "owl:sameAs", $programme["wiki_prefix"]."Special:URIResolver/".$wiki_id ); $ts[] = array( "this:loc-$location_id", "rdfs:seeAlso", $programme["wiki_prefix"]."Special:ExportRDF/".$wiki_id ); } } foreach( $programme["days"] as $day_id => $day ) { $ts[] = array( "this:event-$day_id", array( "rdf:type" => "prog:Event", "swc:isSubEventOf" => "this:event", "cal:summary" => literal($day["name"]), "cal:dtstart" => literal($day["date"]), "cal:dtend" => literal($day["date"]), ) ); $ts[] = array( "this:prog-$day_id", array( "rdf:type" => array("prog:Programme","prog:ProgrammeStreamedByLocation"), #"rdfs:label" => literal($programme["title"]." Programme: ".$day["name"]), "rdfs:label" => literal($day["name"]), "dc:title" => literal($day["name"]), ) ); $ts[] = array( $this_uri, "prog:hasSubProgramme", "this:prog-$day_id" ); if( !array_key_exists( "slots", $day ) ) { continue; } foreach( $day["slots"] as $slottime=>$slotdata ) { $sloturi = "this:slot-$day_id-$slottime"; $start = preg_replace( "/(..)(..)-(..)(..)/", "$1:$2", $slottime ); $end = preg_replace( "/(..)(..)-(..)(..)/", "$3:$4", $slottime ); $summary = "$start-$end"; if( array_key_exists( "summary", $slotdata ) ) { $summary.= " ".$slotdata["summary"]; } $dtstart = $day["date"]."T".$start."Z"; $dtend = $day["date"]."T".$end."Z"; $ts[] = array( $sloturi, array( "cal:summary" => literal($summary), "rdf:type" => "prog:TimeSlot", "cal:dtstart" => literal($dtstart), "cal:dtend" => literal($dtend), )); $ts[] = array( "this:prog-$day_id","prog:hasTimeSlot", $sloturi ); if( !array_key_exists( "events", $slotdata ) ) { continue; } foreach( $slotdata["events"] as $event_id=>$event ) { $sloturi = "this:event-$day_id-$slottime"; $e_dtstart = $dtstart; if( array_key_exists( "start", $event ) ) { $e_dtstart = $day["date"]."T".$event["start"]."Z"; } $e_dtend = $dtend; if( array_key_exists( "end", $event ) ) { $e_dtend = $day["date"]."T".$event["end"]."Z"; } $eventuri = "$sloturi-$event_id"; $ts[] = array( $eventuri, array( "cal:summary" => literal($event["summary"]), "rdf:type" => "prog:Event", "cal:dtstart" => literal($e_dtstart), "cal:dtend" => literal($e_dtend), "swc:isSubEventOf" => "this:event-$day_id", )); if( array_key_exists( "streamed", $event ) && !$event["streamed"] ) { $ts[] = array( "this:prog-$day_id","prog:hasUnstreamedEvent", $eventuri ); } else { $ts[] = array( "this:prog-$day_id","prog:hasStreamedEvent", $eventuri ); } if( array_key_exists( "type", $event ) ) { $ts[] = array( $eventuri, "rdf:type", $event["type"] ); } if( array_key_exists( "location", $event ) ) { $ts[] = array( $eventuri, "swc:hasLocation", "this:loc-".$event["location"] ); } if( array_key_exists( "wiki", $event ) ) { $wiki_id = ucfirst(preg_replace( '/ /', '_', $event["wiki"] )); $ts[] = array( $eventuri, "prog:hasWikiPage", $programme["wiki_prefix"].$wiki_id ); $ts[] = array( $eventuri, "owl:sameAs", $programme["wiki_prefix"]."Special:URIResolver/".$wiki_id ); $ts[] = array( $eventuri, "rdfs:seeAlso", $programme["wiki_prefix"]."Special:ExportRDF/".$wiki_id ); } } } } return array( "ns"=>$ns, "ts"=>$ts ); } array( "name" => "Workshop (3B)", "type" => "swc:MeetingRoomPlace", "twitter_tag" => "#dev8d #wk", "wiki"=>"Workshop", "lat"=>51.522556, "long"=>-0.131163 ), "project"=>array( "name" => "Project Zone (3C+3D)", "type" => "swc:MeetingRoomPlace", "twitter_tag" => "#dev8d #proj", "wiki"=>"Project_Zone", "lat"=>51.522686, "long"=>-0.131313 ), "expert"=>array( "name" => "Expert Sessions (3E)", "type" => "swc:MeetingRoomPlace", "twitter_tag" => "#dev8d #ex", "wiki" => "Expert_Zone", "lat"=>51.522766, "long"=>-0.131401 ), "lab"=>array( "name" => "Coding Lab (3A)", "type" => "swc:MeetingRoomPlace", "twitter_tag" => "#dev8d #lab", "wiki" => "Coding_Lab", "lat"=>51.522484, "long"=>-0.131072 ), "basecamp"=>array( "name" => "Dev8D 2010 BaseCamp (Upper Hall)", "type" => "swc:MeetingRoomPlace", "twitter_tag" => "#dev8d #bc", "wiki" => "BaseCamp", "lat"=>51.522854, "long"=>-0.131179 ), "thevenue"=>array( "name" => "The Venue (Floor One, Room 101)", "type" => "swc:CommunalPlace", ), "gallery"=>array( "name" => "Gallery", "type" => "swc:CommunalPlace", ), ); $programme["days"] = array( "wed"=>array( "date" => "2010-02-24", "name" => "Wed 24th: Challenges Announced!", ), "thu"=>array( "date" => "2010-02-25", "name" => "Thu 25th: Cloud, Mobile, Learning Tools and Miscellaneous" ), "fri"=>array( "date" => "2010-02-26", "name" => "Fri 26th: Linked Data, Mashups and Miscellaneous" ), "sat"=>array( "date" => "2010-02-27", "name" => "Sat 27th: Finale!" , ), ); $programme["days"]["wed"]["slots"]["1030-1200"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:BreakEvent", "summary"=>"Registration and Coffee", "location"=>"basecamp", ); $programme["days"]["wed"]["slots"]["1200-1330"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:MealEvent", "summary"=>"Lunch in Gallery", "location"=>"gallery", ); $programme["days"]["wed"]["slots"]["1330-1400"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:OrganisedEvent", "summary"=>"Orientation talk and housekeeping", "location"=>"basecamp", ); $programme["days"]["wed"]["slots"]["1730-1930"]["events"]["all"] = array( "streamed"=>0, "summary"=>"Check-in to your accommodation (or go to the \"Duck and Dive\" bar)", ); $programme["days"]["wed"]["slots"]["1930-2030"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:SocialEvent", "summary"=>"Welcome (with appetisers!)", "location"=>"gallery", ); #$programme["days"]["wed"]["slots"]["2000-2030"]["events"]["all"] = array( # "streamed"=>0, # "type"=>"swc:SocialEvent", # "summary"=>"Opening Address", # "location"=>"thevenue", # ); $programme["days"]["wed"]["slots"]["2030-2300"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:SocialEvent", "summary"=>"Games Night (bring a game!)", "location"=>"gallery", "wiki"=>"Wednesday_Evening", ); $programme["days"]["thu"]["slots"]["0930-1030"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:BreakEvent", "summary"=>"Registration, Coffee and Orientation Talk", "location"=>"basecamp", ); $programme["days"]["thu"]["slots"]["1300-1400"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:MealEvent", "summary"=>"Lunch (available 12:30-14:30)", "location"=>"gallery", "start"=>"12:30", "end"=>"14:30", ); $programme["days"]["thu"]["slots"]["1800-2200"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:SocialEvent", "summary"=>"Plan your own entertainment (see wiki!)", "wiki"=>"Thursday_Evening", ); $programme["days"]["fri"]["slots"]["0930-1030"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:BreakEvent", "summary"=>"Registration, Coffee and Orientation Talk", "location"=>"basecamp", ); $programme["days"]["fri"]["slots"]["1300-1400"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:MealEvent", "summary"=>"Lunch (available 12:30-14:30)", "location"=>"gallery", "start"=>"12:30", "end"=>"14:30", ); $programme["days"]["fri"]["slots"]["1800-1930"]["events"]["all"] = array( "streamed"=>0, "summary"=>"Free time", ); $programme["days"]["fri"]["slots"]["1930-2200"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:MealEvent", "summary"=>"Developer Recognition Awards Dinner (for those selected) / Plan your own Entertainment (see wiki)", "location"=>"thevenue", "wiki"=>"Friday_Evening", ); $programme["days"]["sat"]["slots"]["0930-1030"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:BreakEvent", "summary"=>"Registration, Coffee and Orientation Talk", "location"=>"basecamp", ); $programme["days"]["sat"]["slots"]["1300-1400"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:MealEvent", "summary"=>"Lunch (available 12:30-14:30)", "location"=>"gallery", "start"=>"12:30", "end"=>"14:30", ); $programme["days"]["sat"]["slots"]["1530-1600"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:BreakEvent", "summary"=>"Break", "location"=>"basecamp", ); $programme["days"]["sat"]["slots"]["1600-1630"]["events"]["all"] = array( "streamed"=>0, "type"=>"swc:OrganisedEvent", "summary"=>"Dev8D 2010 Awards", "location"=>"basecamp", ); $streamed_slots=array( "wed:1400-1730:Wednesday Session 1:Wed_PM", "thu:1030-1300:Thursday Session 1:Thu_AM", "thu:1400-1800:Thursday Session 2:Thu_PM", "fri:1030-1300:Friday Session 1:Fri_AM", "fri:1400-1800:Friday Session 2:Fri_PM", "sat:1030-1300:Saturday Session 1:Sat_AM", "sat:1400-1530:Saturday Session 2:Sat_PM", ); foreach( $streamed_slots as $session_data ) { list($day_id, $timeslot, $session_name, $wiki_code ) = preg_split( "/:/", $session_data ); $programme["days"][$day_id]["slots"][$timeslot]["events"]["basecamp"] = array( "type"=>"swc:SessionEvent", "summary"=>"Project discussions and networking", "location"=>"basecamp", "wiki"=>"BaseCamp_$wiki_code", ); $programme["days"][$day_id]["slots"][$timeslot]["events"]["expert"] = array( "type"=>"swc:SessionEvent", "summary"=>"Expert Lightning Talks ($session_name)", "location"=>"expert", "wiki"=>"Expert_Talks_$wiki_code", ); $programme["days"][$day_id]["slots"][$timeslot]["events"]["workshop"] = array( "type"=>"swc:SessionEvent", "summary"=>"Workshop ($session_name)", "location"=>"workshop", "wiki"=>"Workshop_$wiki_code", ); $programme["days"][$day_id]["slots"][$timeslot]["events"]["project"] = array( "type"=>"swc:SessionEvent", "summary"=>"Projects Zone ($session_name)", "location"=>"project", "wiki"=>"Project_Zone_$wiki_code", ); $programme["days"][$day_id]["slots"][$timeslot]["events"]["lab"] = array( "type"=>"swc:SessionEvent", "summary"=>"Coding Lab ($session_name)", "location"=>"lab", "wiki"=>"Lab_$wiki_code", ); } #################### # # BASECAMP # ##################### $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["basecamp"]["summary"] = "Discussions: Construction Challenge 1, Genetic Algorithms, Cloud Computing, Linked Data"; $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["basecamp"]["end"] = "16:45"; $programme["days"]["wed"]["slots"]["1700-1740"]["events"]["basecamp"] = array( "type"=>"swc:SessionEvent", "summary"=>"Final Linked Data Session (17:00-17:40)", "location"=>"basecamp", ); $programme["days"]["thu"]["slots"]["1030-1300"]["events"]["basecamp"]["summary"] = "Challenges + Discussions: Genetic Algorithms, Construction Challenge 1, Linked Data"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["basecamp"]["summary"] = "Challenges + Discussions: Genetic Algorithms, Construction Challenge 2, Linked Data"; $programme["days"]["fri"]["slots"]["1030-1300"]["events"]["basecamp"]["summary"] = "Challenges + Discussions: Genetic Algorithms, Construction Challenge 2, Linked Data, Cloud Computing"; $programme["days"]["fri"]["slots"]["1400-1800"]["events"]["basecamp"]["summary"] = "Challenges + Discussions: Genetic Algorithms, Construction Challenge 3, Linked Data, Cloud Computing"; $programme["days"]["sat"]["slots"]["1030-1300"]["events"]["basecamp"]["summary"] = "Dev8D 2010 Showcase (includes projects and API / Data Challenge Entries + Construction Challenge 3"; $programme["days"]["sat"]["slots"]["1400-1530"]["events"]["basecamp"]["summary"] = "Dev8D 2010 Showcase and Other Discussions"; #################### # # EXPERT ZONE # ##################### $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["expert"]["summary"] = "API Competition Challenges, Lightning Talks & followed by panel discussion/lightning talks"; $programme["days"]["thu"]["slots"]["1030-1300"]["events"]["expert"]["summary"] = "Expert Lightning Talks (See Wiki)"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["expert"]["summary"] = "Expert Lightning Talks (See Wiki) followed by panel discussion/lightning talks"; $programme["days"]["fri"]["slots"]["1030-1300"]["events"]["expert"]["summary"] = "Expert Lightning Talks (See Wiki)"; $programme["days"]["fri"]["slots"]["1400-1800"]["events"]["expert"]["summary"] = "Expert Lightning Talks (See Wiki) followed by panel discussion/lightning talks"; $programme["days"]["sat"]["slots"]["1030-1300"]["events"]["expert"]["summary"] = "Expert Lightning Talks (Best talks from the week)"; $programme["days"]["sat"]["slots"]["1400-1530"]["events"]["expert"]["summary"] = "Expert Lightning Talks (Best talks from the week)"; #################### # # WORKSHOP # ##################### $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["workshop"]["summary"] = "Linked Data Workshop"; $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["workshop"]["wiki"] = "Linked Data Workshop"; $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["workshop"]["end"] = "16:45"; $programme["days"]["wed"]["slots"]["1645-1730"]["events"]["workshop"] = array( "summary"=>"45 min free slot", "location"=>"workshop", ); $programme["days"]["thu"]["slots"]["1030-1300"]["events"]["workshop"]["summary"] = "Beginners Arduino Workshop"; $programme["days"]["thu"]["slots"]["1030-1300"]["events"]["workshop"]["wiki"] = "Beginners Arduino Workshop A"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["workshop"]["summary"] = "Cloud Workshop"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["workshop"]["wiki"] = "Cloud Workshop"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["workshop"]["end"] = "16:00"; $programme["days"]["thu"]["slots"]["1600-1800"]["events"]["workshop"] = array( "type"=>"swc:SessionEvent", "summary"=>"iPhone Workshop", "location"=>"workshop", "wiki"=>"iPhone_Workshop", ); $programme["days"]["fri"]["slots"]["1030-1300"]["events"]["workshop"]["summary"] = "Beginners Arduino Workshop"; $programme["days"]["fri"]["slots"]["1030-1300"]["events"]["workshop"]["wiki"] = "Beginners Arduino Workshop B"; $programme["days"]["fri"]["slots"]["1400-1800"]["events"]["workshop"]["summary"] = "Google Application Engine Workshop"; $programme["days"]["fri"]["slots"]["1400-1800"]["events"]["workshop"]["wiki"] = "Google Workshop"; $programme["days"]["sat"]["slots"]["1030-1300"]["events"]["workshop"]["summary"] = "Beginners Arduino Workshop"; $programme["days"]["sat"]["slots"]["1030-1300"]["events"]["workshop"]["wiki"] = "Beginners Arduino Workshop C"; $programme["days"]["sat"]["slots"]["1400-1530"]["events"]["workshop"]["summary"] = "Additional Expert Sessions 1"; $programme["days"]["sat"]["slots"]["1400-1530"]["events"]["workshop"]["wiki"] = "Additional_Expert_Sessions_1"; #################### # # PROJECT ZONE # ##################### $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["project"]["summary"] = "Scanning and Recognition / DIY Scientific Instruments / Multicore Processing"; $programme["days"]["thu"]["slots"]["1030-1300"]["events"]["project"]["summary"] = "Scanning and Recognition / DIY Scientific Instruments / Multicore Processing"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["project"]["summary"] = "Scanning and Recognition / DIY Scientific Instruments / Multicore Processing / Advanced Arduino Workshop / REPRAP 3D Printer Demo"; $programme["days"]["fri"]["slots"]["1030-1300"]["events"]["project"]["summary"] = "Image Processing and Augmentation / DIY Scientific Instruments / Multicore Processing"; $programme["days"]["fri"]["slots"]["1400-1800"]["events"]["project"]["summary"] = "Image Processing and Augmentation / DIY Scientific Instruments / Multicore Processing / Advanced Arduino Workshop"; $programme["days"]["sat"]["slots"]["1030-1300"]["events"]["project"]["summary"] = "Printing and book binding / DIY Scientific Instruments / Multicore Processing + Showcase"; $programme["days"]["sat"]["slots"]["1400-1530"]["events"]["project"]["summary"] = "Projects Showcase"; #################### # # CODING LAB # ##################### $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["lab"]["summary"] = "Pipes Lab"; $programme["days"]["wed"]["slots"]["1400-1730"]["events"]["lab"]["wiki"] = "Pipes_Lab"; $programme["days"]["thu"]["slots"]["1030-1300"]["events"]["lab"]["summary"] = "Clojure Lab"; $programme["days"]["thu"]["slots"]["1030-1300"]["events"]["lab"]["wiki"] = "Clojure Lab"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["lab"]["summary"] = "Ruby on Rails Lab"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["lab"]["wiki"] = "Ruby_Lab"; $programme["days"]["thu"]["slots"]["1400-1800"]["events"]["lab"]["end"] = "16:30"; $programme["days"]["thu"]["slots"]["1630-1800"]["events"]["lab"] = array( "summary"=>"Lab/Workshop TBC", "location"=>"lab", ); $programme["days"]["fri"]["slots"]["1030-1300"]["events"]["lab"]["summary"] = "Microsoft Zentity Lab"; $programme["days"]["fri"]["slots"]["1030-1300"]["events"]["lab"]["wiki"] = "Microsoft_Lab"; $programme["days"]["fri"]["slots"]["1400-1800"]["events"]["lab"]["summary"] = "Scala Lab"; $programme["days"]["fri"]["slots"]["1400-1800"]["events"]["lab"]["wiki"] = "Scala_Lab"; $programme["days"]["sat"]["slots"]["1030-1300"]["events"]["lab"]["summary"] = "Python Lab"; $programme["days"]["sat"]["slots"]["1030-1300"]["events"]["lab"]["wiki"] = "Python_Lab"; $programme["days"]["sat"]["slots"]["1400-1530"]["events"]["lab"]["summary"] = "Nature Publishing Network & OpenSocial Workshop"; #$programme["days"]["sat"]["slots"]["1400-1530"]["events"]["lab"]["wiki"] = "Additional_Expert_Sessions_2";