2016-09-23 2 views
3

Я хочу использовать тройки RAG YAGO 3 (yago3_entire_ttl.7z от http://www.mpi-inf.mpg.de/departments/databases-and-information-systems/research/yago-naga/yago/downloads/) в triplestore apache-jena (3.1.0) с помощью tdbloader.Санируйте файлы YAGO перед загрузкой в ​​apache-jena TDB triplestore

Инструмент бунт обеспечивается апача-Jena для подтверждения ввода дает 2 типов ошибок (несколько вхождений):

  1. недопустимое значение последовательности юникода побег: \\ (0x5c)
  2. недопустимый символ в IRI (codepoint 0x7C, '|')

Моя очевидная мысль - заменить '\\' и '|' с принятыми последовательностями символов, которые проходят проверку бунта, но я хотел знать, есть ли другое решение?

+0

Та же проблема здесь, какие-то идеи? – n1try

+1

Не решение, но мое обходное решение: в итоге я использовал версию Virtuoso с открытым исходным кодом из Openlink как triplestore вместе с библиотекой jena. Импортированные триплеты 670Mio без проблем в Centos Linux 7. –

ответ

0

Найдено решение здесь:

Теперь .ttl файлы нужно получить какой-то препроцессором, где не-Unicode символы заменяются для того, чтобы Jena принимать данные. В Linux запускается sed -i 's/|/-/g' ./* & & sed -i '/ /\/-/g' ./* & & sed -i '///// g' ./* из каталога, в котором находятся ваши .ttl-файлы. В Windows запустите Ubuntu Bash, перейдите к соответствующему каталогу (например,/mnt/c/Users/Ferdinand/yago) и выполните ту же команду. Это займет несколько минут. Я имею в виду, на самом деле несколько ...

https://ferdinand-muetsch.de/how-to-load-yago-into-apache-jena-fuseki.html

+0

Может ли это быть использовано для решения проблемы URI с пробелами? – RDangol

Смежные вопросы