Package com.clarkparsia.pellet

Examples of com.clarkparsia.pellet.IncrementalChangeTracker


        // clean it
        ds.removeExplain( assertion );
 
        // remove if the dependency set is empty
        if( ds.getExplain().isEmpty() ) {
          final IncrementalChangeTracker tracker = kb.getABox().getIncrementalChangeTracker();
          // need to check if the
 
          subj.removeEdge( edge );
          obj.removeInEdge( edge );
 
          // update the removed set of edges
          tracker.addDeletedEdge( edge );
 
          // add to updated individuals
          tracker.addUpdatedIndividual( subj );
 
          // TODO: Do we need to add literals?
          if( obj instanceof Individual )
            tracker.addUpdatedIndividual( (Individual) obj );
 
          if( DependencyIndex.log.isLoggable( Level.FINE ) )
            DependencyIndex.log.fine( "           Actually removed edge!" );
        }
        break;
View Full Code Here


      // Note that ind.unprune may add edges, however we do not need to
      // add them to the updated individuals as
      // they will be added when the edge is removed from the node which
      // this individual was merged to
      // add to updated
      final IncrementalChangeTracker tracker = kb.getABox().getIncrementalChangeTracker();
 
      // because this node was pruned, we must guarantee that all of
      // its lables have been fired
      tracker.addUnprunedNode( ind );
 
      if( ind instanceof Individual ) {
        tracker.addUpdatedIndividual( (Individual) ind );
      }
 
      if( mergedToInd instanceof Individual ) {
        tracker.addUpdatedIndividual( (Individual) mergedToInd );
      }
    }
  }
View Full Code Here

    // clean it
    ds.removeExplain( assertion );
 
    // remove if the explanation set is empty
    if( ds.getExplain().isEmpty() ) {
      final IncrementalChangeTracker tracker = kb.getABox().getIncrementalChangeTracker();
 
      kb.getABox().removeType( node.getName(), desc );
 
      // update the set of removed types
      tracker.addDeletedType( node, type.getType() );
 
      // add to updated individuals
      if( node instanceof Individual ) {
        Individual ind = (Individual) node;
        tracker.addUpdatedIndividual( ind );
 
        // also need to add all edge object to updated individuals -
        // this is needed to fire allValues/domain/range rules etc.
        for( Edge e : ind.getInEdges() ) {
          tracker.addUpdatedIndividual( e.getFrom() );
        }
        for( Edge e : ind.getOutEdges() ) {
          if( e.getTo() instanceof Individual )
            tracker.addUpdatedIndividual( (Individual) e.getTo() );
        }
      }
 
      if( DependencyIndex.log.isLoggable( Level.FINE ) )
        DependencyIndex.log.fine( "           Actually removed type!" );
View Full Code Here

    return true;   
  }
 
  @Override
  protected void restoreAllValues() {
    final IncrementalChangeTracker tracker = abox.getIncrementalChangeTracker();

    for( Iterator<Map.Entry<Node, Set<ATermAppl>>> it = tracker.deletedTypes(); it
        .hasNext(); ) {

      Map.Entry<Node, Set<ATermAppl>> entry = it.next();
      Node node = entry.getKey();
      Set<ATermAppl> types = entry.getValue();
     
      // find the edges which the all values rule needs to be
      // re-applied to
      EdgeList av = findAllValues( node, types );
     
      //apply the all values rules
      for(int i = 0; i < av.size(); i++){
        Edge e = av.edgeAt( i );           
        allValuesRule.applyAllValues( e.getFrom(), e.getRole(), e.getTo(), e.getDepends() );
      }
    }
   
    for( Iterator<Node> i = tracker.unprunedNodes(); i.hasNext(); ) {
      Node node = i.next();
     
      if( node instanceof Individual ){
        Individual ind = (Individual)node;
        //reset type pointers
View Full Code Here

TOP

Related Classes of com.clarkparsia.pellet.IncrementalChangeTracker

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.