Domanda

Sono di recente a lavorare su un progetto di applicazione web semantico utilizzando Rowlex. Ho raggiunto alcune esigenze di funzionalità che non ho potuto abbinare i metodi appropriati per loro. Mi chiedevo se qualcuno mi avrebbe aiutato.

  • Sto creando un nuovo documento RDF, ma alla fine non so come salvare il rdfdocument popolata.
  • Sto creando un nuovo individuo in un rdf esistente, ma non so come salvare l'RDF, finalmente. Il metodo AddIndividual accetta uri e tipo. Come posso lavorare con loro?
  • Voglio rimuovere un individuo e non so come.
  • Voglio aggiungere, rimuovere o modificare le singole proprietà

v'è alcun documento guida che può spiegare i metodi Rowlex?

Grazie in anticipo

È stato utile?

Soluzione

1) risparmio: Avete vari modi per persistere tuo RdfDocument. Hai 2 scelte sul formato: RDF / XML o N3. In base alle vostre scelte, è possibile richiamare qualsiasi dei seguenti metodi:

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

E 'importante capire: si salva sempre il documento RDF che rappresentano l'intero grafo RDF. Non si salva un individuo!

2) Rimozione di un individuo da un 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) le proprietà Aggiunta / rimozione / Modifica

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);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top