Сезам не открывает файл Черепахи, созданный Йеной

Файл Turtle, созданный Jena, не открывается в Sesame. При более тщательном анализе я обнаружил, что Jena использует префиксы пространств имен, а Sesame использует пространство имен competit. Как я могу решить эту проблему?

Вот что использует Сезам:

<http://rdf.freebase.com/ns/m.0_2c> <http://rdf.freebase.com/ns/type.object.key> <http://rdf.freebase.com/ns/wikipedia.it_title.Alexanderplatz> , <http://rdf.freebase.com/ns/wikipedia.ar.apjvik0623apjvik0644apjvik0643apjvik0633apjvik0627apjvik0646apjvik062Fapjvik0631_apjvik0628apjvik0644apjvik0627apjvik062Aapjvik0632> , <http://rdf.freebase.com/ns/wikipedia.ar_title.apjvik0645apjvik064Aapjvik062Fapjvik0627apjvik0646_apjvik0623apjvik0644apjvik0643apjvik0633apjvik0646apjvik062Fapjvik0631> , <http://rdf.freebase.com/ns/wikipedia.pl_title.Alexanderplatz> ;
<http://rdf.freebase.com/ns/type.object.type> <http://rdf.freebase.com/ns/location.location> ;
<http://rdf.freebase.com/ns/type.object.key> <http://rdf.freebase.com/ns/wikipedia.nl_id.429277> , <http://rdf.freebase.com/ns/wikipedia.ca.Alexanderplatz> , <http://rdf.freebase.com/ns/wikipedia.en_id.2511> , <http://rdf.freebase.com/ns/wikipedia.nl_title.Alexanderplatz> , <http://rdf.freebase.com/ns/wikipedia.fr_id.749899> , <http://rdf.freebase.com/ns/wikipedia.fa.apjvik0627apjvik0644apjvik0643apjvik0633apjvik0627apjvik0646apjvik062Fapjvik0631apjvik067Eapjvik0644apjvik0627apjvik062Aapjvik0633> , <http://rdf.freebase.com/ns/wikipedia.ru.apjvik0410apjvik043Bapjvik0435apjvik043Aapjvik0441apjvik0430apjvik043Dapjvik0434apjvik0435apjvik0440apjvik043Fapjvik043Bapjvik0430apjvik0446> , <http://rdf.freebase.com/ns/wikipedia.zh-tw.apjvik4E9Aapjvik5386apjvik5C71apjvik5927apjvik5E7Fapjvik573A> , <http://rdf.freebase.com/ns/wikipedia.th_title.apjvik0E2Dapjvik0E40apjvik0E25apjvik0E47apjvik0E01apjvik0E0Bapjvik0E32apjvik0E19apjvik0E40apjvik0E14apjvik0E2Dapjvik0E23apjvik0E4Capjvik0E1Eapjvik0E25apjvik0E32apjvik0E17apjvik0E0Bapjvik0E4C> , <http://rdf.freebase.com/ns/wikipedia.it.Haus_des_Reisens> , <http://rdf.freebase.com/ns/wikipedia.fr.Alexanderplatz> , <http://rdf.freebase.com/ns/wikipedia.en.Alexander_Platz> , <http://rdf.freebase.com/ns/wikipedia.cs_title.Alexanderplatz> , <http://rdf.freebase.com/ns/user.avh.ellerdale.0099-a6ea> ;
<http://rdf.freebase.com/ns/type.object.type> <http://rdf.freebase.com/ns/common.topic> ;

Вот что использует Джена:

@prefix key: <http://rdf.freebase.com/key/>.
@prefix ns: <http://rdf.freebase.com/ns/>. 
@prefix owl: <http://www.w3.org/2002/07/owl#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.

ns:m.0_2c
ns:common.topic.alias    "Alexanderplatz, Berlin"@en;

person user2648590    schedule 25.09.2013    source источник
comment
Какая у вас ошибка? Какие версии Jena и Sesame вы используете?   -  person AndyS    schedule 25.09.2013
comment
Существует очень простая сериализация под названием N-Triples, где в каждой строке содержится одна тройка, и префиксов нет. Ваша тройка будет выглядеть так: <http://rdf.freebase.com/ns/m.0_2c> <http://rdf.freebase.com/ns/common.topic.alias> "Alexanderplatz, Berlin"@en .. Несмотря на схожесть названий, N3 сильно отличается от N-Triples. Однако N3 и Turtle очень похожи (фактически, Turtle является подмножеством N3). Вы уверены, что используете загрузчик Sesame Turtle/N3, а не загрузчик N-Triples?   -  person Joshua Taylor    schedule 25.09.2013
comment
Как сказал Энди, какое сообщение об ошибке вы получаете? Можете ли вы показать минимальный пример этого? То есть, пожалуйста, покажите полный файл, созданный Jena, который Sesame не открывается, и вывод ошибки, который вы получаете от Sesame. Значение вывода ошибки, вероятно, сделает проблему очень ясной для некоторых из присутствующих здесь людей, которые лучше разбираются в Sesame.   -  person Joshua Taylor    schedule 25.09.2013
comment
Я использую seasame 2.7.7, последнюю версию, выпущенную около 15 дней назад. То же самое с Йеной, я взял последнюю банку. Я уже дал фрагмент файла jena. Я вставлю фрагмент из файла seasame.   -  person user2648590    schedule 25.09.2013
comment
Я попытался вставить фрагмент из seasame , но ограничение на количество символов здесь слишком мало, чтобы дать какой-либо осмысленный образец. Лучший способ объяснить разницу состоит в том, что в примере с jena вы видите ns:, но в случае с seasame ns: заменяется полным uri.   -  person user2648590    schedule 25.09.2013
comment
Я смог изменить свой исходный пост. Пожалуйста, посмотрите на него для образца моря   -  person user2648590    schedule 25.09.2013
comment
До сих пор не ясно, в чем проблема. У вас есть файл Turtle, созданный Jena, и вы пытаетесь загрузить его в Sesame. Поскольку вы показываете результат операции загрузки в Sesame (данные без префиксов), становится ясно, что Sesame действительно загружает файл. Если ваш фактический вопрос заключается в том, почему вы не видите префиксы пространства имен в результате Sesame, вам нужно предоставить нам подробную информацию о том, как вы получаете этот результат из Sesame, а также как вы загружаете данные.   -  person Jeen Broekstra    schedule 26.09.2013
comment
Позвольте мне объяснить, что я сделал. а) создал файл черепахи с помощью jena и попытался загрузить его в seasame, он не смог загрузиться в seasame. б) Я создал файл rdf из jena и смог успешно загрузить его в seasame. c) чтобы решить проблему, почему файл черепахи не может быть загружен, я создал файл черепахи, используя seasame. Полученный файл загружен выше. г) глядя на файлы черепах, я вижу, что проблема связана с разницей в обработке пространства имен как в seasame, так и в jena.   -  person user2648590    schedule 29.09.2013


Ответы (1)


Я присмотрелся: причина в том, что файл Turtle, созданный Jena, содержит '.' в части localname имени с префиксом (бит m.02_c и бит common.topic.alias). Это разрешено текущей грамматикой W3C REC Turtle, но Sesame еще не полностью реализует эту версию Turtle. Это известная проблема (SES-1862).

Sesame планируется обновить с помощью последней спецификации Turtle для следующего крупного выпуска 2.8. В то же время обходным путем является использование другого формата синтаксиса при экспорте из Jena (например, N-Triples).

person Jeen Broekstra    schedule 30.09.2013