答案 0 :(得分:9)
ROWLEX实际上非常酷(在内部使用SemWeb)。它不仅仅是一个浏览器应用程序,而是一个用C#编写的SDK。如果你使用ROWLEX,你不再直接与RDF的tripples交互(尽管你可以),但是给出了面向对象的外观和感觉。有两种主要的使用场景:
典型用法是Ontology第一种方法。例如,假设您的本体描述了以下多重继承方案:
Car isSubClassOf Vehicle
Car isSubClassOf CompanyAsset
使用ROWLEX,您将获得Car,Vehicle和CompanyAsset的.NET类。以下C#代码将编译没有任何问题:
RdfDocument rdfDoc = new RdfDocument();
Car car = new Car("myCarUri", rdfDoc);
Vehicle vehicle = car; // implicit casting
CompanyAsset companyAsset = car; // implicit casting
vehicle.WheelCount = 4;
companyAsset.MonetaryValue = 15000;
Console.WriteLine(rdfDoc.ToN3());
这将打印:
myCarUri typeOf Car
myCarUri WheelCount 4
myCarUri MonetaryValue 15000
“car”业务对象在RdfDocument内部表示为三元组。自动生成的C#/ VB类表现为视图。您可以在同一业务对象上拥有多个C#视图 - 每个视图都是完全不同的类型。当您与这些视图交互时,实际上是在修改RdfDocument。
答案 1 :(得分:9)
BrightstarDB是一个原生的.NET NoSQL RDF三重存储,支持SPARQL,一个支持LINQ和OData的.NET实体框架。它对于开发人员和开源项目是免费的,并且用于商业用途的运行时成本很低。
BrightstarDB提供三个级别的API。
所有BrightstarDB文档都在线,该软件可供下载,无http://www.brightstardb.com
注册答案 2 :(得分:7)
我制作了一个开源库dotNetRDF - OWL支持目前有些限制,但可能不适合您的用途
答案 3 :(得分:2)
答案 4 :(得分:2)
在Codeplex尝试RDFSharp。看似年轻但很有希望。