WDscholia / scholia

Wikidata-based scholarly profiles
https://scholia.toolforge.org
Other
215 stars 77 forks source link

Make CEUR-WS entries compatible to entries created by CEUR-WS bot #2396

Open WolfgangFahl opened 6 months ago

WolfgangFahl commented 6 months ago

Is your feature request related to a problem? Please describe. There seem to be to ways to identify the volume of a CEUR-WS proceedings volume:

  1. Using published in and a Volume tag
  2. Using partof the series and a Volume qualifier

Describe the solution you'd like In any case the part of the series and qualitifer should be set - the other setting is optional

Describe alternatives you've considered Querying for bother ways in SPARQL but that is tedious

Additional context This if for checking the consistency between the CEUR-WS single point of truth and Wikidata

I am almost done with fixing: left right # %
wikidata local 3 0.08%
wikidata local 3591 99.92%
wikidata local 0 0.00%

There are only

to be fixed and if this Feature request is implemented the problem should not show up again in the future.

The query i am using for sync checking is

# CEUR-WS Proceedings Volumes
# Wolfgang Fahl - 2023-12-27
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX schema: <http://schema.org/>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?sVolume ?volume ?proceeding ?proceedingLabel ?ppnId ?urn ?dblpPublicationId
WHERE {
   # Instance of Proceedings
   ?proceeding wdt:P31 wd:Q1143604.
   # with english label
   ?proceeding rdfs:label ?proceedingLabel.
   FILTER(LANG(?proceedingLabel) = "en")
   # Part of the series
   ?proceeding p:P179 ?partOfTheSeries.
   # CEUR Workshop proceedings
   ?partOfTheSeries ps:P179 wd:Q27230297.
    # Volume via volume property
   OPTIONAL { ?proceeding p:P478 ?volume. }
   # Volumes via a a qualifier of the part of the series relation
   OPTIONAL { ?partOfTheSeries pq:P478 ?sVolume. }
   # K10plus PPN ID
   OPTIONAL{?proceeding wdt:P6721 ?ppnId.}
   # URN-NBN
   OPTIONAL{?proceeding wdt:P4109 ?urn.}
   # dlbp Publication Id
   OPTIONAL{?proceeding wdt:P8978 ?dblpPublicationId.}
} 
ORDER BY DESC (xsd:integer(?sVolume))

try it

WolfgangFahl commented 6 months ago

see also https://w.wiki/8eXV for the incompatible entries