0

I send a query as below. Without filter, I got responses and in the response, I checked the values are there. but with the filter statement, I failed to get query. What's wrong with my query? P1813 property type is a Monolingual text, so I used the filter statement as below.

SELECT DISTINCT ?i ?iLabel ?v1
WHERE {
    ?i wdt:P31 wd:Q7603.
    ?i wdt:P1813 ?v1.
        FILTER(?v1 = "GNU AGPL"@en) #commenting out this statement, I got responses.
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en,[AUTO_LANGUAGE]". }
    }
    LIMIT 100   
Keanu Paik
  • 304
  • 2
  • 12
  • 3
    generic way: `FILTER(str(?v1) = "GNU AGPL")` or more efficient `FILTER(?v1 = "GNU AGPL"@mul)` - to figure out the language of the literal, use `SELECT ... (lang(?v1) as ?lang) WHERE {...` - it turns out it is `mul` here which is by ISO 639-3 the tag for multiple languages – UninformedUser Jun 08 '19 at 17:33
  • Oh I thought GNU AGPL is english. I didn't know @mul stuff. Thanks. – Keanu Paik Jun 11 '19 at 07:03

0 Answers0