2015-08-26 3 views
0

Я пытаюсь удалить некоторые тройки, используя этот запрос, но это дает мне следующее сообщение об ошибкеУдалить запрос с SPARQL

эта строка недействительна

Я не понимаю, что я делаю неправильно. Может кто-нибудь мне помочь?

DELETE DATA{ 
GRAPH <http://vitali.web.cs.unibo.it/raschietto/graph/ltw1536> 
      { [ a oa:Annotation; 
        rdfs:label "Author"^^<http://www.w3.org/2001/XMLSchema#string> ; 
        vurp:type "hasAuthor"^^<http://www.w3.org/2001/XMLSchema#normalizedString> ; 
        oa:AnnotatedAt "2015-8-26T10:1:25"^^<http://www.w3.org/2001/XMLSchema#dateTime>; 
        oa:AnnotatedBy <ccc>; 

       oa:hasBody [ a rdf:Statement; 
        rdf:object [ a <http://xmlns.com/foaf/0.1/Person> ; 
        rdf:subject <http://vitali.web.cs.unibo.it/raschietto/person/s-undefinedstocazzo> ; 
        rdfs:label "stocazzo"^^<http://www.w3.org/2001/XMLSchema#string>     
        ]; 

      rdf:predicate <http://purl.org/dc/terms/creator> ;  
      rdf:subject <http://www.dlib.org/dlib/november14/knoth/11knoth.html> ; 
      rdfs:label "An author of the document is stocazzo"^^<http://www.w3.org/2001/XMLSchema#string> 

      ] ; 
       oa:hasTarget [ a oa:SpecificResource; 
              oa:hasSelector [a oa:FragmentSelector; 
                  rdf:value "form1_table3_tbody1_tr1_td1_table5_tbody1_tr1_td1_table1_tbody1_tr1_td2_p4"^^<http://www.w3.org/2001/XMLSchema#normalizedString>; 
                  oa:end "91"^^<xsd:nonNegativeInteger>; 
                  oa:start "77"^^<xsd:nonNegativeInteger> 
                  ]; 
                oa:hasSource <http://www.dlib.org/dlib/november14/knoth/11knoth.html>; 
                 ] 
      ]. 
             } 
       } 
+1

** эта строка недействительна "** это ничего не говорит о * * какой линии не сказать вы создаете этот запрос в? code? Включаете ли вы новые строки? Если да, то ваш запрос будет на кратных линии, и вы можете получить номер строки. Если вы этого не сделаете, то это всего лишь одна строка. Также легко ошибиться в конкатенации строк, например, '" select? X "+", где {"' становится 'select? Xwhere {', что будет проблемой. –

ответ

3

Я не знаю, что конкретная ошибка, вы получаете, но если вставить ваш запрос в validator at sparql.org, есть по крайней мере одна проблема, которая, безусловно, значительным, и может быть ваш вопрос:

Line 10, столбец 15: Пустые узлы не допускается удалять шаблоны

+0

Это дает мне ошибку в строке «{[aaa: Annotation;», и если я изменю это, он продолжает давать мне такую ​​ошибку: Encountered "" \ "Comment \" "" в строке 25, столбец 17. Ожидал один из: "}" ... ";" ... "," ... "." ... – pbex

+2

@ user3468308 Да; согласно валидатору, пустые узлы не допускаются в обновлениях DELETE, а '[' является началом пустого узла. Не видя своего фактического кода Java, который строит запрос, номера строк и другие цитируемые материалы, такие как «Encountered» «\» Comment \ »« »в строке 25, столбец 17.« на самом деле ничего не значит для нас. –