SPARQL subquery wtih xsd:dateTime
I've made one query which returns the date of the Hiroshima bombing.
SELECT ?date
WHERE {
history:the_bombing_of_hiroshima history:hasStartDate ?date .
}
Result: 1945-08-06T:00:00:00
And another query which returns all of the administration that ruled the Soviet Union.
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
}
Now, I'm wondering. An administration in our ontology has a "startDate" and "endDate" data property. Both containing xsd:dateTime
values. I want to pass the date, received from the first query into the second query so that we can get the administration that ruled the Soviet Union during the bombing of Hiroshima.
I've tried to read some SPARQL subquery examples but none of them concern dateTime filtering (check to see if a date falls between two others) and many of them are a bit confusing to me.
I suspect the query must be something like
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
?administration history:hasStartDate > [RESULT FROM QUERY1 HERE] && history:hasEndDate < [RESULT FROM QUERY1 HERE]
}
I'd be very grateful for any answers or pointers towards resources and tutorials I can read to get this query to work.
sparql
add a comment |
I've made one query which returns the date of the Hiroshima bombing.
SELECT ?date
WHERE {
history:the_bombing_of_hiroshima history:hasStartDate ?date .
}
Result: 1945-08-06T:00:00:00
And another query which returns all of the administration that ruled the Soviet Union.
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
}
Now, I'm wondering. An administration in our ontology has a "startDate" and "endDate" data property. Both containing xsd:dateTime
values. I want to pass the date, received from the first query into the second query so that we can get the administration that ruled the Soviet Union during the bombing of Hiroshima.
I've tried to read some SPARQL subquery examples but none of them concern dateTime filtering (check to see if a date falls between two others) and many of them are a bit confusing to me.
I suspect the query must be something like
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
?administration history:hasStartDate > [RESULT FROM QUERY1 HERE] && history:hasEndDate < [RESULT FROM QUERY1 HERE]
}
I'd be very grateful for any answers or pointers towards resources and tutorials I can read to get this query to work.
sparql
1
It was Stalin's administration. Please paste those 4-5 triples into your question and format the code. P.S. All you need isFILTER
.
– Stanislav Kralin
Nov 23 '18 at 12:18
1
I don't see why you'd need a subquery here. Just combine the triple patterns and as StanislavKralin said, use a FILTER to compare the date values.
– AKSW
Nov 23 '18 at 13:42
1
Similar query on Wikidata
– Stanislav Kralin
Nov 23 '18 at 15:39
1
1945-08-06T:00:00:00
is illformed - theer is a ":" after the "T".
– AndyS
Nov 23 '18 at 16:15
add a comment |
I've made one query which returns the date of the Hiroshima bombing.
SELECT ?date
WHERE {
history:the_bombing_of_hiroshima history:hasStartDate ?date .
}
Result: 1945-08-06T:00:00:00
And another query which returns all of the administration that ruled the Soviet Union.
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
}
Now, I'm wondering. An administration in our ontology has a "startDate" and "endDate" data property. Both containing xsd:dateTime
values. I want to pass the date, received from the first query into the second query so that we can get the administration that ruled the Soviet Union during the bombing of Hiroshima.
I've tried to read some SPARQL subquery examples but none of them concern dateTime filtering (check to see if a date falls between two others) and many of them are a bit confusing to me.
I suspect the query must be something like
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
?administration history:hasStartDate > [RESULT FROM QUERY1 HERE] && history:hasEndDate < [RESULT FROM QUERY1 HERE]
}
I'd be very grateful for any answers or pointers towards resources and tutorials I can read to get this query to work.
sparql
I've made one query which returns the date of the Hiroshima bombing.
SELECT ?date
WHERE {
history:the_bombing_of_hiroshima history:hasStartDate ?date .
}
Result: 1945-08-06T:00:00:00
And another query which returns all of the administration that ruled the Soviet Union.
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
}
Now, I'm wondering. An administration in our ontology has a "startDate" and "endDate" data property. Both containing xsd:dateTime
values. I want to pass the date, received from the first query into the second query so that we can get the administration that ruled the Soviet Union during the bombing of Hiroshima.
I've tried to read some SPARQL subquery examples but none of them concern dateTime filtering (check to see if a date falls between two others) and many of them are a bit confusing to me.
I suspect the query must be something like
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
?administration history:hasStartDate > [RESULT FROM QUERY1 HERE] && history:hasEndDate < [RESULT FROM QUERY1 HERE]
}
I'd be very grateful for any answers or pointers towards resources and tutorials I can read to get this query to work.
sparql
sparql
edited Nov 23 '18 at 13:41
AKSW
7,0841821
7,0841821
asked Nov 23 '18 at 11:56
Arien ShibaniArien Shibani
64
64
1
It was Stalin's administration. Please paste those 4-5 triples into your question and format the code. P.S. All you need isFILTER
.
– Stanislav Kralin
Nov 23 '18 at 12:18
1
I don't see why you'd need a subquery here. Just combine the triple patterns and as StanislavKralin said, use a FILTER to compare the date values.
– AKSW
Nov 23 '18 at 13:42
1
Similar query on Wikidata
– Stanislav Kralin
Nov 23 '18 at 15:39
1
1945-08-06T:00:00:00
is illformed - theer is a ":" after the "T".
– AndyS
Nov 23 '18 at 16:15
add a comment |
1
It was Stalin's administration. Please paste those 4-5 triples into your question and format the code. P.S. All you need isFILTER
.
– Stanislav Kralin
Nov 23 '18 at 12:18
1
I don't see why you'd need a subquery here. Just combine the triple patterns and as StanislavKralin said, use a FILTER to compare the date values.
– AKSW
Nov 23 '18 at 13:42
1
Similar query on Wikidata
– Stanislav Kralin
Nov 23 '18 at 15:39
1
1945-08-06T:00:00:00
is illformed - theer is a ":" after the "T".
– AndyS
Nov 23 '18 at 16:15
1
1
It was Stalin's administration. Please paste those 4-5 triples into your question and format the code. P.S. All you need is
FILTER
.– Stanislav Kralin
Nov 23 '18 at 12:18
It was Stalin's administration. Please paste those 4-5 triples into your question and format the code. P.S. All you need is
FILTER
.– Stanislav Kralin
Nov 23 '18 at 12:18
1
1
I don't see why you'd need a subquery here. Just combine the triple patterns and as StanislavKralin said, use a FILTER to compare the date values.
– AKSW
Nov 23 '18 at 13:42
I don't see why you'd need a subquery here. Just combine the triple patterns and as StanislavKralin said, use a FILTER to compare the date values.
– AKSW
Nov 23 '18 at 13:42
1
1
Similar query on Wikidata
– Stanislav Kralin
Nov 23 '18 at 15:39
Similar query on Wikidata
– Stanislav Kralin
Nov 23 '18 at 15:39
1
1
1945-08-06T:00:00:00
is illformed - theer is a ":" after the "T".– AndyS
Nov 23 '18 at 16:15
1945-08-06T:00:00:00
is illformed - theer is a ":" after the "T".– AndyS
Nov 23 '18 at 16:15
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53446277%2fsparql-subquery-wtih-xsddatetime%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53446277%2fsparql-subquery-wtih-xsddatetime%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
It was Stalin's administration. Please paste those 4-5 triples into your question and format the code. P.S. All you need is
FILTER
.– Stanislav Kralin
Nov 23 '18 at 12:18
1
I don't see why you'd need a subquery here. Just combine the triple patterns and as StanislavKralin said, use a FILTER to compare the date values.
– AKSW
Nov 23 '18 at 13:42
1
Similar query on Wikidata
– Stanislav Kralin
Nov 23 '18 at 15:39
1
1945-08-06T:00:00:00
is illformed - theer is a ":" after the "T".– AndyS
Nov 23 '18 at 16:15