Question: I want to know the France region that has Corsica (which is located in the Mediterranean Sea) or that has the country France.
Choices:
0
1
2
3
4
5
6
7
8
9
Answer: 4
SPARQL: SELECT (COUNT(DISTINCT ?e) AS ?count) WHERE { ?e <pred:instance_of> ?c . ?c <pred:name> "region of France" .  { ?e_1 <located_in_the_administrative_territorial_entity> ?e . ?e_1 <pred:name> "Corsica" . ?e_1 <location> ?e_2 . ?e_2 <pred:name> "Mediterranean Sea" .  } UNION { ?e <country> ?e_1 . ?e_1 <pred:name> "France" .  } }
Program:
function: Find
inputs: Mediterranean Sea
function: Relate
dependencies: 0
inputs: location
backward
function: Find
inputs: Corsica
function: And
dependencies: 1
2
function: Relate
dependencies: 3
inputs: located in the administrative territorial entity
forward
function: FilterConcept
dependencies: 4
inputs: region of France
function: Find
inputs: France
function: Relate
dependencies: 6
inputs: country
backward
function: FilterConcept
dependencies: 7
inputs: region of France
function: Or
dependencies: 5
8
function: Count
dependencies: 9