Changeset 34796


Ignore:
Timestamp:
2021-02-02T12:59:13+13:00 (3 years ago)
Author:
davidb
Message:

More flexible way to determine song -- entrant relationship; getting entrant-label now optional, as if a string, then there is no rdfs:label field

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/model-sites-dev/eurovision-lod/collect/eurovision/prepare/fix-problem-entrants--using-errata.sparql

    r34748 r34796  
    3636  ?country_in_year dct:source ?entrant_errata.
    3737
     38
     39  # Would like to do the following:
     40  #  ?song dbp:artist ?entrant.
     41  # in the 'dbpedia' graph however, the 'entrant' sitting in 'song' is sometimes a *string* not a URI
     42  # =>
    3843  SERVICE <https://dbpedia.demo.openlinksw.com/sparql> {
    39     ?song dbp:artist|dbp:as ?entrant.     
     44    ?song dbp:artist|dbp:as ?songentrant_from_dbpedia.
    4045  }
     46  OPTIONAL {
     47    ?song dbp:artist ?songentrant_from_errata.
     48  }
     49  # If a string, look for a better result in the 'errata' graph
     50  BIND(IF(isLITERAL(?songentrant_from_dbpedia),?songentrant_from_errata,?songentrant_from_dbpedia) AS ?entrant2).
     51      FILTER (sameTERM(?entrant2,?entrant)).
     52
    4153  ?entrant dct:source ?entrant_errata.
    4254
    43   SERVICE <https://dbpedia.demo.openlinksw.com/sparql> {
    44     ?entrant rdfs:label ?entrant_label
    45       FILTER (lang(?entrant_label) = 'en').
     55  OPTIONAL {
     56    SERVICE <https://dbpedia.demo.openlinksw.com/sparql> {
     57      ?entrant rdfs:label ?entrant_label
     58        FILTER (lang(?entrant_label) = 'en').
     59    }
    4660  }
    4761}
Note: See TracChangeset for help on using the changeset viewer.