题
我最近正在使用 Rowlex 开发一个语义 Web 应用程序项目。我已经达到了一些功能需求,但我无法将适当的方法与它们相匹配。我想知道是否有人会帮助我。
- 我正在创建一个新的 RDF 文档,但最后我不知道如何保存填充的 rdfdocument。
- 我正在现有的rdf中创建一个新个体,但我不知道最后如何保存rdf。AddIndividual 方法接受 uri 和类型。我如何与他们合作?
- 我想删除一个人,但不知道如何操作。
- 我想添加、删除或编辑单个属性
有没有可以解释 Rowlex 方法的指导文档?
先感谢您
解决方案
1)保存:您可以通过多种方式保存 RdfDocument。您有 2 种格式选择:RDF/XML 或 N3。根据您的选择,您可以调用以下任意方法:
RdfDocument rdfDoc = new RdfDocument();
// Populate the document with new individual
// ...
// Alternatives to save the document
XmlDocument xml = rdfDoc.ExportToRdfXml();
xml.Save("C:\\myRdfDoc.rdf");
// or
rdfDoc.ExportToRdfXml("C:\\myRdfDoc.rdf");
// or
rdfDoc.ExportToN3("C:\\myRdfDoc.rdf");
// or
string n3 = rdfDoc.ToN3();
string rdfXml = rdfDoc.ToRdfXml();
// and save the strings into a text file yourself
重要的是要理解:您始终保存代表整个 RDF 图的 RDF 文档。你救不了一个人!
2) 从 RdfDocument 中删除个人:
RdfDocument rdfDoc = new RdfDocument();
// Let us assume that you have an ROWLEX generated class called "Car"
// Let us create a Car individual first, then remove it.
Car car = new Car("ABC-123", rdfDoc); // added
rdfDoc.RemoveIndividual(car); // removed
3) 添加/删除/编辑属性
Car car = new Car("ABC-123", rdfDoc);
// We inject a new triple into the document by this
car.LastMaintenance = new DateTime(2008,04,18);
// Editing the property:
car.LastMaintenance = new DateTime(2009,05,11);
// For removing, you need to use the full-version of
// the generated class instead of the light-version:
Car_ sameCar = rdfDocument.GetIndividual(car.ID, Car.Uri, false) as Car_;
sameCar.RemoveLastMainenance(sameCar.LastMaintenance);
不隶属于 StackOverflow