PREFIX ical: PREFIX xs: SELECT ?start1 ?stop1 ?loc1 ?summ1 ?summ2 ?summ3 FROM FROM FROM WHERE { ?event1 a ical:Vevent; ical:summary ?summ1 ; ical:dtstart ?start1 ; ical:dtend ?stop1 ; ical:location ?loc1. ?event2 a ical:Vevent; ical:summary ?summ2 ; ical:dtstart ?start2; ical:dtend ?stop2; ical:location ?loc2. ?event3 a ical:Vevent; ical:summary ?summ3 ; ical:dtstart ?start3; ical:dtend ?stop3; ical:location ?loc3. FILTER ( ?event1 != ?event2 && ?event2 != ?event3 && ?event1 != ?event3 ) . FILTER ( xs:string(?start1) = xs:string(?start2) ). FILTER ( xs:string(?stop1) = xs:string(?stop2) ). FILTER ( xs:string(?loc1) = xs:string(?loc2) ). FILTER ( xs:string(?start1) = xs:string(?start3) ). FILTER ( xs:string(?stop1) = xs:string(?stop3) ). FILTER ( xs:string(?loc1) = xs:string(?loc3) ). FILTER ( xs:string(?start3) = xs:string(?start2) ). FILTER ( xs:string(?stop3) = xs:string(?stop2) ). FILTER ( xs:string(?loc3) = xs:string(?loc2) ). FILTER ( xs:string(?summ1) <= xs:string(?summ2) ). FILTER ( xs:string(?summ2) <= xs:string(?summ3) ). }