0
저는 아랍어로 제 자신의 온톨로지를 개발했습니다. 이제 rdflib과 sparql을 사용하여 일부 sparql 요청을하고 싶습니다. 문제는 내가 온톨로지에서 아랍어를 사용하지 않고 요청할 때 문제없이 답변을 얻었지만 아랍어 언어를 사용하는 속성에 대한 특정 요청을 수행하려고 할 때 몇 가지 오류가 발생합니다. (Python으로 sparql에서 아랍어 문자를 사용하고 있습니까?
어느 하나의 오류가 발생했습니다. . 내가 그 무슨 일이 내가 잘못이야하시기 바랍니다 해결할 수있는 방법을 알고!
을 여기에 내 코드 :
graph =rdflib.Graph()
filename = r'JO Ontology modified 09 june 2014 with properties.owl'
graph.load(filename, format='xml')
qres = graph.query(
"PREFIX OntoJO:<http://www.owl-ontologies.com/Ontology1400008538.owl#>" +
"SELECT ?path " +
"WHERE { ?lois_ordinaires OntoJO:ministere_lord ?ministere_lord ."+
"?lois_ordinaires OntoJO:a_un_chemin ?y ."+
" ?y OntoJO:chemin ?path ."+
"FILTER(regex(?ministere_lord,'وزارة المالية'))}",)
for row in qres:
print row[0]
오류 :
File "C:\Users\Mehdi\workspace\My_work\Test\Recherche.py", line 38, in main
"FILTER(regex(?ministere_lord,'وزارة المالية'))}",)
File "build\bdist.win-amd64\egg\rdflib\graph.py", line 920, in query
File "C:\Python27\lib\site-packages\rdfextras-0.4-py2.7.egg\rdfextras\sparql\components.py", line 168, in __new__
return unicode.__new__(cls, value)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd9 in position 0: ordinal not in range(128)
이 특정 SPARQL로 표시되지 않습니다, 오히려 rdflib로 무언가를 얻습니다. 어떤 시점에서 ascii 코덱은 ASCII가 아닌 것을 디코딩하려고합니다. (그것은 rdfextras 물건에있는 것으로 보입니다.) –
@ Joshua 그것은 인용문의 문제 일 뿐이 었습니다. 고마워. – Mehdi