SPARQL Tracker Не удалось запустить обновление, свойство не найдено в онтологии

 tracker-sparql -qu "INSERT SILENT INTO <urn:uuid:38f> {  <urn:uuid:38f> a nfo:FileDataObject , nie:InformationElement ;nie:isStoredAs <urn:uuid:38f> ; nie:url 'file.mp3' ; nie:dataSource <urn:nepomuk:datasource:840494F4EDG> ;nie:deviceId '840494F4EDG';nmm:audioType 128 ; tracker:available true; a nmm:MusicPiece , nfo:Audio; nie:title 'Abandoner' .}"

  tracker-sparql -qu "INSERT {<urn:artist:38caadd1f13bf78a26aca0e7d42a8f58> a nmm:Artist ;nmm:artistName 'Aesop'; ?f nmm:performer <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58>;  nmm:extEnsemble <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58>  } WHERE { ?f nie:url 'file.mp3'}"

Первая вставка возвращает Done. Вторая вставка возвращает Не удалось запустить обновление, Свойство urn:uuid:38f не найдено в онтологии.

Я действительно не могу понять, как связать нового исполнителя с существующей музыкальной пьесой.


person Cumatru    schedule 18.04.2013    source источник
comment
Какое программное обеспечение вы используете? MySQL? Говорит ли это SPARQL в наши дни? Что произойдет, если вы удалите SILENT INTO <urn:uuid:38f> из первого запроса? Я думаю, что затем он вставляет тройки в график по умолчанию, как вы делаете во втором запросе.   -  person Ben Companjen    schedule 18.04.2013
comment
Я использую трекер от GNOME. Трекер использует SPARQL. Я удалил SILENT INTO ‹urn:uuid:38f›, поведение осталось прежним.   -  person Cumatru    schedule 18.04.2013


Ответы (1)


Второй оператор SPARQL INSERT имеет неверный формат:

INSERT {
    <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58> 
        a nmm:Artist ;
        nmm:artistName 'Aesop'; 
        ?f nmm:performer <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58>;  
        nmm:extEnsemble <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58>  
} WHERE { ?f nie:url 'file.mp3'}

Есть ;, где . должно быть, чтобы закрыть тройку и начать новую тройку, что означает, что ?f имеет позицию предиката в тройке. Поскольку <urn:uuid:38f> определяется как nfo:FileDataObject, nie:InformationElement, nmm:MusicPiece и nfo:Audio, но не rdfs:Property или свойство OWL, средство отслеживания сообщает, что нет свойства, идентифицированного URI <urn:uuid38f>.

Правильным утверждением будет

INSERT {
    <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58> 
        a nmm:Artist ;
        nmm:artistName 'Aesop' . 

    ?f nmm:performer <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58>;  
        nmm:extEnsemble <urn:artist:38caadd1f13bf78a26aca0e7d42a8f58>  
} WHERE { ?f nie:url 'file.mp3'}
person Ben Companjen    schedule 18.04.2013