저는 SPARQL, OWL, Jena에 새로 입문 했으므로 어리석은 질문을하는 것이 좋습니다. 나는 이틀이 지나서야 너를 괴롭히는 문제를 겪고있다. 나는 단지 FOAF 네임 스페이스의 속성에 대한 요구대로 한 일 아침까지하는 예나 QueryFactory.create(queryString)
에 대한 쿼리로SPARQL - 온톨로지를 찾기 위해 무엇이 필요합니까?
queryString = "PREFIX foaf: <http://xmlns.com/foaf/0.1/>"+
"PREFIX ho: <http://www.flatlandfarm.de/fhtw/ontologies/2010/5/22/helloOwl.owl#>" +
"SELECT ?name ?person ?test ?group "+
"WHERE { ?person foaf:name ?name ; "+
" a ho:GoodPerson ; "+
" ho:isMemberOf ?group ; "+
"}";
을 다음과 같은 문자열을 사용하고 있습니다. 내 네임 스페이스에서 속성을 요청하자마자 나는 항상 빈 결과를 얻었습니다. 이 질문을 여기에 올리려고하고 가능한 한 정확하게 게시 할 수있는 몇 가지 최종 테스트를 수행했지만 갑자기 작동했습니다. 그래서 정확히 무엇을 요구해야할지 정확히 알지 못했기 때문에 질문을 게시하기 전에 삭제했습니다. 2 시간 후에 나는 Protege의 Pellet 플러그인을 사용하여 유추 된 모델을 생성하고 내보냈습니다. 나는 helloOwlInferred.owl이라고 불렀고 helloWl.owl이 아직 거주하고있는 서버의 디렉토리에 업로드했다. 추론 된 온톨로지를로드하고 위 쿼리를 변경하여 접두사 ho :가 추론 된 온톨로지에 할당되도록 내 방법을 조정했습니다. 즉시, 아무것도 더 이상 일하지 않았다. 정확히 말하면 더 이상 효과가있는 것은 아니었지만 오늘 아침까지 원래 쿼리와 동일한 증상이었습니다. 내 접두사가 더 이상 작동하지 않았다. 나는 간단한 테스트를 수행했다 : 모든 helloWorldInferred.owl 파일 (접두어와 내 로컬 복사본에 대한 내 서버의 파일 이름)을 helloWorld.owl로 변경했다. 이상하게도 모든 것이 고쳐졌습니다.
다시 helloWorldInferred.owl로 이름을 바꾸면 모든 것이 손상되었습니다. 등등. 거기 무슨 일 이니? 내 온톨로지가 "유효한 접두어로 등록"될 때까지 2 주 정도 기다려야합니까?
고맙습니다. 당신의 대답은 올바른 방향으로 나를 잡았습니다. – Tom