Pregunta

Estoy recientemente trabajando en un proyecto de aplicación web semántica utilizando Rowlex. He llegado a algunas de las necesidades de funcionalidad que no podía coincidir con los métodos apropiados para ellos. Me preguntaba si alguien me podría ayudar.

  • Estoy creando un nuevo documento RDF, pero al final no sé cómo salvar el rdfdocument poblada.
  • Estoy creando un nuevo individuo en un RDF existente, pero no sé cómo salvar el RDF en el último. El método AddIndividual acepta uri y tipo. ¿Cómo puedo trabajar con ellos?
  • Quiero eliminar un individuo y no sé cómo.
  • Quiero añadir, eliminar o editar propiedades individuales

¿hay algún documento guía que puede explicar los métodos Rowlex?

Gracias de antemano

¿Fue útil?

Solución

1) Ahorro de: Usted tiene varias maneras de persistir su RdfDocument. Tienes 2 opciones en el formato: RDF / XML o N3. Sobre la base de sus opciones, puede invocar cualquier los siguientes métodos:

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

Es importante entender: siempre se guarda el documento RDF que representan todo el grafo RDF. No guarda un individuo!

2) Extracción de un individuo a partir de una 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) propiedades Adición / Extracción / Edición

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);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top