We start with the following SPARQL query:

SELECT DISTINCT ?event ?title ?date 
WHERE {
  ?event <http://linkedevents.org/ontology/inSpace> ?space .
  ?space <http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?lat. 
  ?space <http://www.w3.org/2003/01/geo/wgs84_pos#long> ?lon.
  ?event <http://purl.org/dc/elements/1.1/title> ?title .
  ?event <http://linkedevents.org/ontology/atTime> ?odate .
  ?odate <http://www.w3.org/2006/time#inXSDDateTime> ?date .
  FILTER ( ( xsd:float(?lat) - 45.22 ) > -0.5  && ( xsd:float(?lat) - 45.22 ) < 0.5 
        && ( xsd:float(?lon) - 5.81 ) > -0.5  && ( xsd:float(?lon) - 5.81 ) < 0.5 )
}
LIMIT 10
which, when evaluated against http://eventmedia.eurecom.fr/sparql/, returns the following answers:

event title date
http://data.linkedevents.org/event/0444df15-c745-45f8-ae39-20fd802d0904 OWUN 2009-10-07T22:30:00+01:00
http://data.linkedevents.org/event/1ca0d6a3-92c0-42cc-8c14-a9dd5e2eeed5 icone party 2008-11-08T00:00:00+01:00
http://data.linkedevents.org/event/2c424da5-2f7b-4027-a458-6f33617ca7fe Rufus Wainwright 2007-11-22T20:30:00+01:00
http://data.linkedevents.org/event/519e4387-76da-459f-8b6c-27b54646035e Gonzales 2008-03-27T18:47:01+01:00
http://data.linkedevents.org/event/a689873a-a839-496a-8e58-db78f4bf99f9 Venus 2006-11-22T21:00:00+01:00
http://data.linkedevents.org/event/312bd66c-3d9e-4008-81ec-335e3fded86e FĂȘte de la musique 2009 2009-06-21T10:41:01+01:00
http://data.linkedevents.org/event/7351e445-460a-4e9e-ad39-a925ff9fa96b Zazie 2007-09-28T22:00:00+01:00
http://data.linkedevents.org/event/780384d9-0d49-46a2-ae74-2840f649ed50 Renan Luce 2008-03-15T16:45:01+01:00
http://data.linkedevents.org/event/83071303-73d1-4dbb-8653-bb8a93ff1932 Renaud 2007-05-30T22:00:00+01:00
http://data.linkedevents.org/event/7e675575-2922-4228-ba5f-20e171748a98 ICONE PARTY 2008-01-26T00:00:00+01:00

The exercise is as follows:

  1. Provide an RDF graph which is an answer for this query.
  2. Provide an RDF graph which is not an answer for this query.
  3. Given that the data to be queried is expressed in the LODE ontology [http://linkedevents.org/ontology/ | ontos/lode.rdf], can you provide the types of your data?
  4. The schema.org ontology [http://schema.org/docs/schemaorg.owl | ontos/schemaorg.owl] provides the classes:
    <owl:Class rdf:about="http://schema.org/Event">
        <rdfs:label xml:lang="en">Event</rdfs:label>
        <rdfs:subClassOf rdf:resource="http://schema.org/Thing"/>
        <rdfs:comment xml:lang="en">An event happening at a certain time at a certain location.</rdfs:comment>
    </owl:Class>
    
    <owl:DatatypeProperty rdf:about="http://schema.org/name">
        <rdfs:label xml:lang="en">name</rdfs:label>
        <rdfs:comment xml:lang="en">The name of the item.</rdfs:comment>
        <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
        <rdfs:domain>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/Thing"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:domain>
    </owl:DatatypeProperty>
    
    <owl:DatatypeProperty rdf:about="http://schema.org/startDate">
        <rdfs:label xml:lang="en">startDate</rdfs:label>
        <rdfs:comment xml:lang="en">The first broadcast date of the TV season or series.</rdfs:comment>
        <rdfs:comment xml:lang="en">The start date and time of the event (in <a href="http://en.wikipedia.org/wiki/ISO_8601&quot; target="new">ISO 8601 date format</a>).</rdfs:comment>
        <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
        <rdfs:domain>
            <rdf:Description rdf:about="http://schema.org/Event"/>
        </rdfs:domain>
    </owl:DatatypeProperty>
    
    <owl:ObjectProperty rdf:about="http://schema.org/location">
        <rdfs:label xml:lang="en">location</rdfs:label>
        <rdfs:comment xml:lang="en">The location of the event or organization.</rdfs:comment>
        <rdfs:range>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/Place"/>
                    <rdf:Description rdf:about="http://schema.org/PostalAddress"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:range>
        <rdfs:domain>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/Event"/>
                    <rdf:Description rdf:about="http://schema.org/Organization"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:domain>
    </owl:ObjectProperty>
    
    <owl:Class rdf:about="http://schema.org/Place">
        <rdfs:label xml:lang="en">Place</rdfs:label>
        <rdfs:subClassOf rdf:resource="http://schema.org/Thing"/>
        <rdfs:comment xml:lang="en">Entities that have a somewhat fixed, physical extension.</rdfs:comment>
    </owl:Class>
    
    <owl:ObjectProperty rdf:about="http://schema.org/geo">
        <rdfs:label xml:lang="en">geo</rdfs:label>
        <rdfs:comment xml:lang="en">The geo coordinates of the place.</rdfs:comment>
        <rdfs:domain>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/Place"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:domain>
        <rdfs:range>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/GeoCoordinates"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:range>
    </owl:ObjectProperty>
    
    <owl:Class rdf:about="http://schema.org/GeoCoordinates">
        <rdfs:label xml:lang="en">GeoCoordinates</rdfs:label>
        <rdfs:subClassOf rdf:resource="http://schema.org/StructuredValue"/>
        <rdfs:comment xml:lang="en">The geographic coordinates of a place or event.</rdfs:comment>
    </owl:Class>
    
    <owl:ObjectProperty rdf:about="http://schema.org/latitude">
        <rdfs:label xml:lang="en">latitude</rdfs:label>
        <rdfs:comment xml:lang="en">The latitude of a location. For example <code>37.42242</code>.</rdfs:comment>
        <rdfs:domain>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/GeoCoordinates"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:domain>
        <rdfs:range>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/Number"/>
                    <rdf:Description rdf:about="http://schema.org/Text"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:range>
    </owl:ObjectProperty>
    
    <owl:ObjectProperty rdf:about="http://schema.org/longitude">
        <rdfs:label xml:lang="en">longitude</rdfs:label>
        <rdfs:comment xml:lang="en">The longitude of a location. For example <code>-122.08585</code>.</rdfs:comment>
        <rdfs:domain>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/GeoCoordinates"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:domain>
        <rdfs:range>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://schema.org/Number"/>
                    <rdf:Description rdf:about="http://schema.org/Text"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:range>
    </owl:ObjectProperty>
    

    Is it possible to express the positive example with this ontology?

  5. Express the alignment between the Schema.org ontology and the LODE ontology such that you could transform the query.
  6. Once this alignment has been obtained, our goal is to use it considering that a set of instances in Schema.org is available.

  7. What strategies are available to evaluate the given query with respect to schema.org?
  8. Can you express these strategies with respect to the definition given in class?
  9. Can you illustrate the use of such an alignment?