KIZI / sparqlab

Lab for exercising SPARQL
Eclipse Public License 1.0
11 stars 5 forks source link

Nejčastěji instanciovaná třída ve statistikách důchodů a důchodců #3

Closed PreVaDu closed 7 years ago

PreVaDu commented 7 years ago

Při použitém dotazu

PREFIX qb: <http://purl.org/linked-data/cube#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>

SELECT ?o (COUNT(?o) as ?count)
WHERE {
  GRAPH <https://data.cssz.cz/resource/dataset/duchodci-v-cr-krajich-okresech> {
   ?s a ?o .
  }
}
GROUP BY ?o
ORDER BY DESC(?count)
LIMIT 1

dostanu chybu, protože mám výsledek qb:Observation. V řešení je použit ?count (nemusí být v SELECTu?) a vrací http://www.w3.org/1999/02/22-rdf-syntax-ns#Property, které já mám až na druhém místě (když si dám LIMIT 2, 232254 vs. 8 instancí). Pochopil jsem špatně zadání, nebo je špatně použití funkce COUNT?

Děkuji.

jindrichmynarz commented 7 years ago

Díky za upozornění. Ve vzorovém řešení opravdu chybí (COUNT(?s) AS ?count) a je proto chybné.

Ve vašem případě pozor COUNT(?o) namísto COUNT(?s) nebo COUNT(*). Výsledky budou shodné, ale na první pohled nebude patrné, že počítáte ve skutečnosti instance.

PreVaDu commented 7 years ago

Děkuji za upozornění. Možná proto jsem měl výsledek jiný, než Vy. Vyzkouším, až nebude server přetížen.

jindrichmynarz commented 7 years ago

Výsledek jste měl jiný, protože ve vzorovém řešení (chybně) chyběl COUNT. V tomto případě je výsledek je stejný jak pro COUNT(?s), tak COUNT(?o), tak COUNT(*), ale nejjasněji smysl dotazu vyjadřuje COUNT(?s).

Server jsem restartoval, takže opět běží bez problémů.

PreVaDu commented 7 years ago

Rozumím, děkuji. Bohužel mi to hlásí chybu

Invalid anti-forgery token

a zkoušel jsem i různé prohlížeče.

jindrichmynarz commented 7 years ago

Opět díky za upozornění. Šlo o opomenuté defaultní nastavení ochrany proti CSRF, které je opraveno v a9815d7919b95fda65dfe3b07921b352b8232ce2 a opravená verze je nasazená na http://doc.lmcloud.vse.cz/sparqlab.