Как отличить guish SQL троек от явных троек? - PullRequest
2 голосов
/ 08 мая 2020

Я использую извлечение на основе шаблонов для создания представления SQL и троек RDF из одного и того же набора документов. Представление SQL используется для быстрой проверки необработанных данных, в то время как тройки используются ниже по потоку для передачи информации в граф знаний.

Теперь мне нужно извлечь тройки RDF во внешний файл, и я Я борюсь с отделением тех троек, которые поддерживают представление SQL. В документации предлагается использовать фиксированные субъекты или предикаты в моем запросе Sparql, чего я не могу сделать, потому что я не знаю ни одного из двух заранее. Я попытался отфильтровать тройки SQL в XQuery, но не смог придумать способ определить, является ли определенное значение, возвращаемое sem:sparql, или тройка, возвращаемая cts:triples, одним из SQL или моим.

Приветствуется любая помощь в том, как получить дамп всех не SQL троек из MarkLogi c.

Спасибо, Ханс

Ответы [ 2 ]

2 голосов
/ 08 мая 2020

Субъекты из SQL представлений не являются настоящими sem: iri (это sql: rowID), поэтому вы можете использовать следующее, чтобы исключить их:

FILTER( ISIRI(?subject) )

HTH!

0 голосов
/ 08 мая 2020

Вы можете попробовать использовать функцию tde: node-data-extract. По сути, это позволяет вам видеть результаты документа и TDE. Хотя это может потребовать некоторой работы, проделать это со всеми документами и снова преобразовать его в RDF, это должно быть возможно.

...