Giter Site home page Giter Site logo

mdesalvo / rdfsharp Goto Github PK

View Code? Open in Web Editor NEW
116.0 11.0 28.0 11.07 MB

Lightweight and friendly .NET library for realizing Semantic Web applications

License: Apache License 2.0

C# 100.00%
rdf sparql shacl triplestore semantic-web sparql-update sparql-endpoints geosparql

rdfsharp's Introduction

RDFSharp

RDFSharp has a modular structure made up of 3 layers:

RDFSharp.Model

  • Create and manage RDF models (resources, literals, triples, graphs, namespaces, ...)
  • Exchange them using standard RDF formats (N-Triples, TriX, Turtle, RDF/Xml)
  • Create and validate SHACL shapes (shape graphs, shapes, targets, constraints, reports, ...)

RDFSharp.Store

  • Create and manage RDF stores for context-aware modeling of RDF data (contexts, quadruples, ...)
  • Exchange them using standard RDF formats (N-Quads, TriX, TriG)
  • Pick a store extension to save and query RDF data on many supported providers

RDFSharp.Query

  • Create and execute SPARQL queries on graphs, stores, federations and SPARQL endpoints
  • Create and execute SPARQL operations on graphs, stores and SPARQL UPDATE endpoints

An additional layer is available for working in native and powerful way with OWL2 ontologies

rdfsharp's People

Contributors

jtone123 avatar mdesalvo avatar osharper avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rdfsharp's Issues

Suggestion: decouple (de)serialization

Hi, I've noticed a number of tight couplings in your library which make it harder to work with. One such coupling is that of serialization with file access. In my case, I have an ontology as text in a stream and I want to deserialize it so that I can convert it to another format, but the library only supports deserialization from a file. A better approach would be to separate deserialization using some kind of reader/writer implementation, or simply just using streams, and then the deserialization could be used in scenarios where the text comes from the database, from an HTTP call or otherwise.

Add support for IN filter

Pretty easy to implement, this common filter give added value to Mirella engine, which lacks this feature.

Doc

Great work,
but I think it needs documentation or example to know who it is working

thanks

Support SQL Server connection string

SQL Server ctor should be able to take a single connection string, in order to give control over the connection parameters. This would also lead to automatically gain support for SQL Azure.

Add support for SPARQL aggregators

A new kind of SPARQL object must be realized with the goal of grouping query results on a specified set of columns (variables) and then computing aggregations on these groups (SUM, MIN, MAX, AVG, COUNT).

https://www.w3.org/XML/1998/namespace# breaks xml compatibility

Hi Marco, firstly thanks for all your hard work. One problem I ran in to however when attempting to load an OWL file written in XML was an exception being thrown due to the base uri for the namespace 'xml' being set to 'https://www.w3.org/XML/1998/namespace#' (from the static XML class located in RDFVocabulary.cs) instead of 'https://www.w3.org/XML/1998/namespace' without the hash symbol.
As stated in the text readable document located at that uri "The namespace whose name is http://www.w3.org/XML/1998/namespace is bound by definition to the prefix xml: according to Namespaces in XML"

Please consider adding a demo project

As someone without previous experience with RDF, this project is pretty mysterious. I came here because I have a project in mind, I came across RDF while researching its prerequisites, and I'd be happy to work in C#. However as a neophite I'm not actually 100% sure what this library does. A demo project with a small writeup describing what that demo is doing would go a long way towards illustrating what RDFSharp can do.

Thanks!

Add support for querying remote SPARQL endpoint

Since we have full support for SPARQL XML Query Results standard, we should be able to send the string representation of SPARQL queries to remote SPARQL endpoints and then parse the result directly in our structures. This would give RDFSharp applications the ability to connect to LinkedData sources.

Add support for SPARQL subquery

It is now time to add support for modeling subqueries: we have all the capabilities at their place in the code, with the needed abstractions recently introduced.

Add basic support for SPARQL property paths

Towards a progressive implementation of SPARQL 1.1 features, basic support for property paths should be introduced. At least ability to chain sequence and alternatives, with parenthesis to group.

Wrong serialization of empty collection

An empty collection should be equivalent to rdf:Nil, so it shouldn't be reified as a standard collection having rdf:first/rdf:rest triples pointing to rdf:Nil.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.