private void TripleAsserted(object sender, TripleEventArgs args) { if (args.Triple.Predicate.Equals(Vocabulary.Result)) { Conforms = false; } }
private void TripleRetracted(object sender, TripleEventArgs args) { if (args.Triple.Predicate.Equals(Vocabulary.Result)) { Conforms = !Results.Any(); } }
/// <summary> /// Helper method for raising the triple events manually /// </summary> /// <param name="t">Triple</param> /// <param name="asserted">True to raise TripleAsserted, false to raise TripleRetracted</param> protected void RaiseTripleEvent(Triple t, bool asserted) { var d = asserted ? TripleAsserted : TripleRetracted; var e = Changed; if (d != null || e != null) { var args = new TripleEventArgs(t, this, asserted); d?.Invoke(this, args); e?.Invoke(this, new GraphEventArgs(this, args)); } }
/// <summary> /// Helper method for raising the triple events manually /// </summary> /// <param name="t">Triple</param> protected void RaiseTripleEvent(Triple t, bool asserted) { TripleEventHandler d = asserted ? this.TripleAsserted : this.TripleRetracted; GraphEventHandler e = this.Changed; if (d != null || e != null) { TripleEventArgs args = new TripleEventArgs(t, this, asserted); if (d != null) { d(this, args); } if (e != null) { e(this, new GraphEventArgs(this, args)); } } }
/// <summary> /// Handles the updating of the index when a triple is removed /// </summary> /// <param name="sender">Sender</param> /// <param name="args">Event Arguments</param> private void HandleTripleRemoved(Object sender, TripleEventArgs args) { this._indexer.Unindex(args.Triple); }
/// <summary> /// Handles the updating of the index when a triple is added /// </summary> /// <param name="sender">Sender</param> /// <param name="args">Event Arguments</param> private void HandleTripleAdded(Object sender, TripleEventArgs args) { this._indexer.Index(args.Triple); }
private void Graph_TripleAsserted(object sender, TripleEventArgs args) { using var g = new NonIndexedGraph(); g.Assert(args.Triple); Reasoner.Apply(g, this); }