I'm recently working on a semantic web application project using Rowlex. I've reached some functionality needs which I couldn't match the appropriate methods to them. I was wondering if somebody would help me.
is there any guiding document which can explain Rowlex methods?
Thank you in advance
1) Saving: You have various ways to persist your RdfDocument. You have 2 choices on the format: RDF/XML or N3. Based on your choices, you can invoke any the following methods:
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
It is important to understand: you always save the RDF document which represent your entire RDF graph. You do not save an individual!
2) Removing an individual from an 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) Adding/Removing/Editing properties
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);