query-665320b449fe0942e2c726898ed65da4

rq turtle/ttl

I'm ussually doing this batches by some 15-20 IDs, but it probably can be done in larger batches. But I do it with Python script, so it may be not so very user-friendly. Tipical query looks like this:07:12, 26 June 2017 (UTC)) talk (Edgars2007But if you see that S0101 and S0103 is included in output, but S0102 isn't, then I think it's clear, which ID isn't used :) But agree, that Jura's query is better and more usable for humans. As I said, I usually use such things in scripts. -- 16:59, 25 June 2017 (UTC)) talk (Innocent bystander here. I have approximately 3000 identifiers for every year. It is S0102 I want to find, not S101 and S0103. -- isn't: I wasn't clear enough. What I look for is the parts of the set that Edgars2007@ 15:55, 25 June 2017 (UTC)) talk (MisterSynergyIn such cases I usually perform a query that outputs all identifiers that are stored in Wikidata; subsequently, I use short scripts (mostly php, meanwhile also python) with array union or diff methods to compare to a given set of identifiers to spot those which are either in one or both of the datasets. It should be possible to make a tool for all users with such functionality, but I don’t have time for that right now. —You could just invert it :

Use at

PREFIX wdt: <http://www.wikidata.org/prop/direct/>
SELECT ?ids 
WHERE
{
  values ?ids { "S0101" "S0102" "S0103" }
  FILTER NOT EXISTS { ?item wdt:P776 ?ids }
}
limit 100

Query found at

graph TD classDef projected fill:lightgreen; classDef literal fill:orange; classDef iri fill:yellow; v3("?ids"):::projected v1("?item") f0[["not "]] subgraph f0e0["Exists Clause"] e0v1 --"wdt:P776"--> e0v2 e0v2("?ids"):::projected e0v1("?item"):::projected end f0--EXISTS--> f0e0 f0 --> v1 f0 --> c1 f0 --> v3 v1 --"wdt:P776"--> v3 bind1[/VALUES ?ids/] bind1-->v3 bind10(["S0101"]) bind10 --> bind1 bind11(["S0102"]) bind11 --> bind1 bind12(["S0103"]) bind12 --> bind1