At OpenLink, we've been investigating LinqToRdf, an exciting project from Andrew
Matthews that seeks to expose the Semantic Web technology space to the large
community of .NET developers.
The LinqToRdf project is about binding LINQ to RDF. It sits atop
Joshua
Tauberer's C# based Semantic Web/RDF library which has been out
there for a while and works across Microsoft .NET and it's open
source variant "Mono".
Historically, the Semantic Web realm has been dominated by RDF
frameworks such as Sesame, Jena and
Redland;
which by their Open Source orientation, predominantly favor
non-Windows platforms (Java and Linux). Conversely, Microsoft's
.NET frameworks have sought to offer Conceptualization technology
for heterogeneous Logical Data Sources via .NET's
Entity Frameworks and ADO.NET, but without any actual bindings to
RDF.
Interestingly, believe it or not, .NET already has a data query
language that shares a number of similarities with SPARQL, called Entity-SQL, and
a very innovative programming language called LINQ; that offers a
blend of constructs for natural data access and manipulation across
relational (SQL), hierarchical (XML), and graph (Object)
models without the traditional object language->database
impedance tensions of the past.
With regards to all of the above, we've just released a mini
white paper that covers the exploitation of RDF-based Linked Data using .NET via LINQ.
The paper offers a an overview of LinqToRdf, plus enhancements
we've contributed to the project (available in LinqToRdf v0.8.). The paper includes
real-world examples that tap into a MusicBrainz powered Linked Data Space, the Music Ontology, the Virtuoso
RDF Quad Store, Virtuoso Sponger Middleware, and our RDfization
Cartridges for Musicbrainz.
Enjoy!