本文整理汇总了C#中TripleStore.Add方法的典型用法代码示例。如果您正苦于以下问题:C# TripleStore.Add方法的具体用法?C# TripleStore.Add怎么用?C# TripleStore.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TripleStore
的用法示例。
在下文中一共展示了TripleStore.Add方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EnsureTestData
private void EnsureTestData(String testFile)
{
if (!File.Exists(testFile))
{
TripleStore store = new TripleStore();
Graph g = new Graph();
g.LoadFromEmbeddedResource("VDS.RDF.Configuration.configuration.ttl");
store.Add(g);
Graph h = new Graph();
h.LoadFromEmbeddedResource("VDS.RDF.Query.Expressions.Functions.LeviathanFunctionLibrary.ttl");
store.Add(h);
store.SaveToFile(testFile);
}
}
示例2: SparqlFunctionsIsNumeric
public void SparqlFunctionsIsNumeric()
{
Graph g = new Graph();
IUriNode subj = g.CreateUriNode(new Uri("http://example.org/subject"));
IUriNode pred = g.CreateUriNode(new Uri("http://example.org/predicate"));
g.Assert(subj, pred, (12).ToLiteral(g));
g.Assert(subj, pred, g.CreateLiteralNode("12"));
g.Assert(subj, pred, g.CreateLiteralNode("12", new Uri(XmlSpecsHelper.XmlSchemaDataTypeNonNegativeInteger)));
g.Assert(subj, pred, g.CreateLiteralNode("12", new Uri(XmlSpecsHelper.XmlSchemaDataTypeNonPositiveInteger)));
g.Assert(subj, pred, g.CreateLiteralNode("1200", new Uri(XmlSpecsHelper.XmlSchemaDataTypeByte)));
g.Assert(subj, pred, ((byte)50).ToLiteral(g));
g.Assert(subj, pred, g.CreateLiteralNode("-50", new Uri(XmlSpecsHelper.XmlSchemaDataTypeByte)));
g.Assert(subj, pred, g.CreateLiteralNode("-50", new Uri(XmlSpecsHelper.XmlSchemaDataTypeUnsignedByte)));
g.Assert(subj, pred, g.CreateUriNode(new Uri("http://example.org")));
TripleStore store = new TripleStore();
store.Add(g);
SparqlQueryParser parser = new SparqlQueryParser();
SparqlQuery q = parser.ParseFromString("SELECT ?obj (IsNumeric(?obj) AS ?IsNumeric) WHERE { ?s ?p ?obj }");
Object results = store.ExecuteQuery(q);
Assert.IsTrue(results is SparqlResultSet, "Result should be a SPARQL Result Set");
TestTools.ShowResults(results);
}
示例3: TestExplainProcessor
private void TestExplainProcessor(String query)
{
if (this._processor == null)
{
TripleStore store = new TripleStore();
Graph g = new Graph();
g.LoadFromFile("InferenceTest.ttl");
g.BaseUri = null;
store.Add(g);
this._processor = new ExplainQueryProcessor(store);
}
SparqlQuery q = this._parser.ParseFromString(query);
Object results;
Console.WriteLine("Input Query:");
Console.WriteLine(this._formatter.Format(q));
Console.WriteLine();
Console.WriteLine("Explanation with Default Options (Simulated):");
this._processor.ExplanationLevel = ExplanationLevel.DefaultSimulation;
results = this._processor.ProcessQuery(q);
Console.WriteLine();
Console.WriteLine("Explanation with Default Options:");
this._processor.ExplanationLevel = ExplanationLevel.Default;
results = this._processor.ProcessQuery(q);
Console.WriteLine();
Console.WriteLine("Explanation with Full Options:");
this._processor.ExplanationLevel = ExplanationLevel.Full;
results = this._processor.ProcessQuery(q);
}
示例4: TestUpdate
private void TestUpdate(IGraph data, IGraph expected, String update)
{
TripleStore store = new TripleStore();
store.Add(data);
this.TestUpdate(store, expected, update);
}
示例5: TestConstruct
private void TestConstruct(IGraph data, IGraph expected, String query)
{
TripleStore store = new TripleStore();
store.Add(data);
this.TestConstruct(store, expected, query);
}
示例6: Setup
public void Setup()
{
this._parser = new SparqlQueryParser();
TripleStore store = new TripleStore();
Graph g = new Graph();
FileLoader.Load(g, "describe-algos.ttl");
store.Add(g);
this._data = new InMemoryDataset(store);
}
示例7: EnsureTestData
private void EnsureTestData()
{
if (this._data == null)
{
TripleStore store = new TripleStore();
Graph g = new Graph();
g.LoadFromEmbeddedResource("VDS.RDF.Configuration.configuration.ttl");
store.Add(g);
this._data = new InMemoryDataset(store);
}
}
示例8: SparqlViewDescribe
public void SparqlViewDescribe()
{
try
{
TripleStore store = new TripleStore();
SparqlView view = new SparqlView("DESCRIBE <http://example.org/vehicles/FordFiesta>", store);
view.BaseUri = new Uri("http://example.org/view");
store.Add(view);
Console.WriteLine("SPARQL View Empty");
TestTools.ShowGraph(view);
Console.WriteLine();
//Load a Graph into the Store to cause the SPARQL View to update
Graph g = new Graph();
FileLoader.Load(g, "InferenceTest.ttl");
g.BaseUri = new Uri("http://example.org/data");
store.Add(g);
Thread.Sleep(200);
if (view.Triples.Count == 0) view.UpdateView();
Console.WriteLine("SPARQL View Populated");
TestTools.ShowGraph(view);
Assert.IsTrue(view.Triples.Count > 0, "View should have updated to contain some Triples");
}
catch (RdfQueryException queryEx)
{
TestTools.ReportError("Query Error", queryEx, true);
}
catch (RdfException ex)
{
TestTools.ReportError("Error", ex, true);
}
}
示例9: WritingSparqlXmlWithNulls
public void WritingSparqlXmlWithNulls()
{
TripleStore store = new TripleStore();
store.Add(new Graph());
Graph g = new Graph();
g.BaseUri = new Uri("http://example.org/graph");
store.Add(g);
Object results = store.ExecuteQuery("SELECT DISTINCT ?g WHERE { GRAPH ?g { ?s ?p ?o } }");
if (results is SparqlResultSet)
{
SparqlResultSet rset = (SparqlResultSet)results;
SparqlXmlWriter writer = new SparqlXmlWriter();
writer.Save(rset, "temp.srx");
SparqlXmlParser parser = new SparqlXmlParser();
SparqlResultSet rset2 = new SparqlResultSet();
parser.Load(rset2, "temp.srx");
rset.Trim();
Console.WriteLine("Original Results");
TestTools.ShowResults(rset);
Console.WriteLine();
rset2.Trim();
Console.WriteLine("Serializes and Parsed Results");
TestTools.ShowResults(rset2);
Console.WriteLine();
Assert.AreEqual(rset, rset2, "Result Sets should be equal");
}
else
{
Assert.Fail("Query did not return a Result Set as expected");
}
}
示例10: WritingTriGActual
private void WritingTriGActual()
{
Graph g = new Graph();
g.LoadFromEmbeddedResource("VDS.RDF.Configuration.configuration.ttl");
g.BaseUri = null;
TripleStore store = new TripleStore();
store.Add(g);
TriGWriter writer = new TriGWriter();
System.IO.StringWriter strWriter = new System.IO.StringWriter();
writer.Save(store, new TextWriterParams(strWriter));
Console.WriteLine(strWriter.ToString());
Assert.IsFalse(strWriter.ToString().Equals(String.Empty));
}
示例11: SparqlDefaultGraphExists2
public void SparqlDefaultGraphExists2()
{
TripleStore store = new TripleStore();
Graph g = new Graph();
g.Assert(g.CreateUriNode(new Uri("http://example.org/subject")), g.CreateUriNode(new Uri("http://example.org/predicate")), g.CreateUriNode(new Uri("http://example.org/object")));
store.Add(g);
Object results = store.ExecuteQuery("ASK WHERE { GRAPH <dotnetrdf:default-graph> { ?s ?p ?o }}");
if (results is SparqlResultSet)
{
Assert.IsTrue(((SparqlResultSet)results).Result);
}
else
{
Assert.Fail("ASK Query did not return a SPARQL Result Set as expected");
}
}
示例12: WritingTriGUncompressedSingleThreaded
public void WritingTriGUncompressedSingleThreaded()
{
Graph g = new Graph();
g.LoadFromEmbeddedResource("VDS.RDF.Configuration.configuration.ttl");
g.BaseUri = null;
TripleStore store = new TripleStore();
store.Add(g);
TriGWriter writer = new TriGWriter();
writer.UseMultiThreadedWriting = false;
writer.CompressionLevel = WriterCompressionLevel.None;
System.IO.StringWriter strWriter = new System.IO.StringWriter();
writer.Save(store, new TextWriterParams(strWriter));
Console.WriteLine(strWriter.ToString());
Assert.IsFalse(strWriter.ToString().Equals(String.Empty));
}
示例13: GraphEventBubbling
public void GraphEventBubbling()
{
try
{
this._graphAdded = false;
this._graphRemoved = false;
this._graphChanged = false;
//Create Store and Graph add attach handlers to Store
TripleStore store = new TripleStore();
Graph g = new Graph();
store.GraphAdded += this.HandleGraphAdded;
store.GraphRemoved += this.HandleGraphRemoved;
store.GraphChanged += this.HandleGraphChanged;
//Add the Graph to the Store which should fire the GraphAdded event
store.Add(g);
Assert.IsTrue(this._graphAdded, "GraphAdded event of the Triple Store should have fired");
//Assert a Triple
INode s = g.CreateBlankNode();
INode p = g.CreateUriNode("rdf:type");
INode o = g.CreateUriNode("rdfs:Class");
Triple t = new Triple(s, p, o);
g.Assert(t);
Assert.IsTrue(this._graphChanged, "GraphChanged event of the Triple Store should have fired");
//Retract the Triple
this._graphChanged = false;
g.Retract(t);
Assert.IsTrue(this._graphChanged, "GraphChanged event of the Triple Store should have fired");
//Remove the Graph from the Store which should fire the GraphRemoved event
store.Remove(g.BaseUri);
Assert.IsTrue(this._graphRemoved, "GraphRemoved event of the Triple Store should have fired");
}
catch (Exception ex)
{
TestTools.ReportError("Error", ex, true);
}
}
示例14: SparqlUpdateInsertDataWithSkolemBNodes
public void SparqlUpdateInsertDataWithSkolemBNodes()
{
TripleStore store = new TripleStore();
Graph g = new Graph();
store.Add(g);
String prefixes = "PREFIX rdf: <" + NamespaceMapper.RDF + ">\n PREFIX xsd: <" + NamespaceMapper.XMLSCHEMA + ">\n PREFIX ex: <http://example.org/>\n PREFIX rdl: <http://example.org/roles>\n PREFIX tpl: <http://example.org/template/>\n";
String insert = prefixes + "INSERT DATA { " + InsertPatterns1 + "}";
Console.WriteLine(insert.Replace("_:template","<_:template>"));
Console.WriteLine();
store.ExecuteUpdate(insert.Replace("_:template", "<_:template>"));
insert = prefixes + "INSERT DATA {" + InsertPatterns2 + "}";
Console.WriteLine(insert);
Console.WriteLine();
store.ExecuteUpdate(insert);
foreach (Triple t in g.Triples)
{
Console.WriteLine(t.ToString());
}
}
示例15: UpdateGraph
/// <summary>
/// Updates a Graph in the Stardog Store
/// </summary>
/// <param name="graphUri">Uri of the Graph to update</param>
/// <param name="additions">Triples to be added</param>
/// <param name="removals">Triples to be removed</param>
/// <remarks>
/// Removals happen before additions
/// </remarks>
public void UpdateGraph(Uri graphUri, IEnumerable<Triple> additions, IEnumerable<Triple> removals)
{
String tID = null;
try
{
//Get a Transaction ID, if there is no active Transaction then this operation will be auto-committed
tID = (this._activeTrans.Value != null) ? this._activeTrans.Value : this.BeginTransaction();
//First do the Removals
if (removals != null)
{
if (removals.Any())
{
HttpWebRequest request = this.CreateRequest(this._kb + "/" + tID + "/remove", MimeTypesHelper.Any, "POST", new Dictionary<string, string>());
request.ContentType = MimeTypesHelper.TriG[0];
//Save the Data to be removed as TriG to the Request Stream
TripleStore store = new TripleStore();
Graph g = new Graph();
g.Assert(removals);
g.BaseUri = graphUri;
store.Add(g);
this._writer.Save(store, new StreamParams(request.GetRequestStream()));
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
response.Close();
}
}
}
//Then do the Additions
if (additions != null)
{
if (additions.Any())
{
HttpWebRequest request = this.CreateRequest(this._kb + "/" + tID + "/add", MimeTypesHelper.Any, "POST", new Dictionary<string, string>());
request.ContentType = MimeTypesHelper.TriG[0];
//Save the Data to be removed as TriG to the Request Stream
TripleStore store = new TripleStore();
Graph g = new Graph();
g.Assert(additions);
g.BaseUri = graphUri;
store.Add(g);
this._writer.Save(store, new StreamParams(request.GetRequestStream()));
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
response.Close();
}
}
}
//Commit Transaction only if in auto-commit mode (active transaction will be null)
if (this._activeTrans.Value == null)
{
try
{
this.CommitTransaction(tID);
}
catch (Exception ex)
{
throw new RdfStorageException("Stardog failed to commit a Transaction", ex);
}
}
}
catch (WebException webEx)
{
#if DEBUG
if (Options.HttpDebugging)
{
if (webEx.Response != null) Tools.HttpDebugResponse((HttpWebResponse)webEx.Response);
}
#endif
//Rollback Transaction only if got as far as creating a Transaction
//and in auto-commit mode
if (tID != null)
{
if (this._activeTrans.Value == null)
{
try
{
this.RollbackTransaction(tID);
}
catch (Exception ex)
{
throw new RdfStorageException("Stardog failed to rollback a Transaction", ex);
}
}
}
//.........这里部分代码省略.........