-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adjust WikidataDisplay to correctly display proceedings with multiple events #42
Comments
The event aggregation is possible by using the following query as subquery SELECT
?item
(GROUP_CONCAT(?_event; SEPARATOR = "|") AS ?event)
(GROUP_CONCAT(?_eventLabel; SEPARATOR = "|") AS ?eventLabel)
(GROUP_CONCAT(?_eventSeries; SEPARATOR = "|") AS ?eventSeries)
(GROUP_CONCAT(?_eventSeriesLabel; SEPARATOR = "|") AS ?eventSeriesLabel)
(GROUP_CONCAT(?_eventSeriesOrdinal; SEPARATOR = "|") AS ?eventSeriesOrdinal)
(GROUP_CONCAT(?_dblpEventId; SEPARATOR = "|") AS ?dblpEventId)
WHERE {
?item wdt:P31 wd:Q1143604;
wdt:P179 wd:Q27230297;
wdt:P4745 ?_event.
?_event rdfs:label ?_eventLabel.
FILTER((LANG(?_eventLabel)) = "en")
OPTIONAL { ?_event wdt:P10692 ?_dblpEventId. }
OPTIONAL {
?_event p:P179 ?_partOfTheEventSeriesStmt.
?_partOfTheEventSeriesStmt ps:P179 ?_eventSeries;
pq:P1545 ?_eventSeriesOrdinal.
?_eventSeries rdfs:label ?_eventSeriesLabel.
FILTER((LANG(?_eventSeriesLabel)) = "en")
}
}
GROUP BY ?item Unfortunately, with the aggregation the query got more expensive and runs into a timeout. pyCEURmake/ceurws/resources/queries/ceurws.yaml Lines 113 to 117 in 32d730a
By excluding this the query yields a result. The solution for now is to format the external ids in code instead within the query.
|
The new version of the query pyCEURmake/ceurws/resources/queries/ceurws.yaml Lines 7 to 98 in ec4c7e6
is still expensive and has varying execution times from 36s to timeout (~ 1/5 get a timeout) Maybe we need to split the query. Since the event data is queried through a sub-query and both query parts are distinct to the proceedings item it would be easy to merge them afterwards. |
The proceedings query currently does not aggregate the event items per proceeding resulting in multiple records for one proceeding if it has multiple events.
The text was updated successfully, but these errors were encountered: