Как начать работу с Sparql как .NET Developer?

Я пытаюсь проанализировать большой файл RDF проекта Gutenberg. Другой член моей команды довольно застрял, попробовав Semweb и библиотеку python.

Будучи немного наивным в rdf, я попытался написать простой анализ xml xml в wmw5 в Ruby. Вскоре я понял, что это слишком сложно, чтобы действительно работать.

Я загрузил инструмент Intellidimension и думаю об использовании его.

Я думаю, я не понимаю, как использовать SPARQL. Кажется, в Java есть парсер, который называется Jena. Есть что-то подобное в .NET?

Извините за очевидный вопрос.... Я просто не знаю, где писать запросы SPARQL. Есть ли библиотека, которая позволила бы мне построить запрос с использованием строк, аналогичных Data.SQlClient, а затем выполнить с некоторым процессором Sparql?

Что вы выполняете Sparql против?

Ответ 1

Другой вариант в .Net - dotNetRDF (отказ от ответственности - я ведущий разработчик в этом проекте)

У этого есть преимущество перед SemWeb, который в настоящее время поддерживается и имеет активную текущую разработку, плюс он включает поддержку многих новых технологий Semantic Web, таких как RDFa и SPARQL 1.1

В сравнении с Intellidimension у него есть преимущество в том, что он полностью свободен (выберите свою лицензию от GPL, LGPL или MIT в зависимости от ваших потребностей)

Re: SPARQL

Оба SemWeb и dotNetRDF включают в себя парсер SPARQL и механизмы для выполнения запросов. SemWeb основан на порту IKVM старого Java-механизма SPARQL, который уже давно превосходит значительно превосходящий механизм ARQ в рамках Jena. dotNetRDF имеет движок Leviathan, который имеет близкую функциональную четность к ARQ (хотя и не обязательно как исполнитель для некоторых видов запросов).

Оба ARQ (Jena) и Leviathan (dotNetRDF) поддерживают большинство возникающих спецификаций SPARQL 1.1. Если у вас есть знания SQL, вы, скорее всего, захотите использовать движок, который поддерживает это, поскольку это добавляет многие знакомые функции SQL в язык SPARQL, например. Агрегаты (COUNT, MAX и т.д.), GROUP BY, HAVING, Выражения проекта (fn: concat (? X,? Y) AS? Z)

Ответ 2

Путь к использованию состоит в использовании SemWeb Library для анализа файла RDF в памяти, а затем в базе данных. Вы также можете импортировать связанные онтологии.

Semweb имеет встроенную библиотеку SPARQL, поэтому вы можете запускать запросы SPARQL в базе данных. Если вы не знакомы с SPARQL, вы можете использовать LINQ.

Если вы новичок в Semantic Web Technologies, я сначала рекомендую прочитать Semantic Web Primer (доступно в виде книг и файлов PowerPoint). Существует также приятный учебник SPARQL на веб-сайте Jena

Ответ 3

Еще один вариант - библиотека dotSesame. Это порт IKVM инфраструктуры Java RDF Сезам. Он включает в себя парсеров RDF, писателей, механизм запросов SPARQL и аргументы.

Ответ 4

С RDFSharp (http://rdfsharp.codeplex.com/) вам не нужно знать SPARQL, потому что вы свободно создаете свои запросы SPARQL и применяете их к графикам и магазины. Все без написания одной строки запроса SPARQL.