ラベルに特定の文字列が含まれているすべてのプロパティを受け取ろうとしています。PythonのSPARQLwrapperを使用したDBPediaエンドポイントへのSPARQLクエリによるHTTPエラー500の取得
SELECT ?p ?l count(?p) as ?count WHERE {
?someobj ?p ?s .
?p a <http://www.w3.org/1999/02/22-rdf-syntax-ns#Property> .
?p <http://www.w3.org/2000/01/rdf-schema#label> ?l .
?l bif:contains "string" .
FILTER (lang(?l) = 'en').
FILTER (!isLiteral(?someobj)).
} ORDER BY DESC(?count) LIMIT 5
http://dbpedia.org/sparql @公共DBpediaのエンドポイントによるクエリをissueing、それが動作し、私が欲しいものを返します:私は、次のクエリを使用します。私は私のPythonスクリプトでSPARQLWrapperて同じことを行うときしかし、私は入れません:
File "E:\thesis\sem_web21.py", line 254, in findWord
results = sparql.query().convert()
File "build/bdist.linux-i686/egg/SPARQLWrapper/Wrapper.py", line 355, in query
return QueryResult(self._query())
File "build/bdist.linux-i686/egg/SPARQLWrapper/Wrapper.py", line 334, in _query
raise e
HTTPError: HTTP Error 500: SPARQL Request Failed
私はとしてカウントし、ソートなし、とし、制限することなく、クエリのバリエーションを試してみました。私はHTTP 500を手に入れています。私は同じスクリプトで他のクエリに問題がないので、このクエリで停止するだけで、エンドポイントが不安定になるとは思わない。
オブジェクトを取得するために同様のクエリは(両方とも私のスクリプトを介するなどの公共の終点で)正常に動作:
SELECT ?s ?l count(?s) as ?count WHERE {
?someobj ?p ?s .
?s <http://www.w3.org/2000/01/rdf-schema#label> ?l .
?l bif:contains "computer" .
FILTER (!regex(str(?s), '^http://dbpedia.org/resource/Category:')).
FILTER (!regex(str(?s), '^http://dbpedia.org/resource/List')).
FILTER (!regex(str(?s), '^http://sw.opencyc.org/')).
FILTER (lang(?l) = 'en').
FILTER (!isLiteral(?someobj)).
} ORDER BY DESC(?count) LIMIT 20
これを引き起こしている可能性がどのような任意のアイデア?または、どのように私はより具体的なエラーを取得することができる任意のアイデア?前もって感謝します。
グレート、それはそれだ:
は、次のPythonスクリプトを使用して、それを試してみました。今、うまく動作します、ありがとう! – graus