Package org.mindswap.pellet

Examples of org.mindswap.pellet.Node


   * @param assertion
   * @param type
   */
  private void restoreType(ATermAppl assertion, TypeDependency type) {
 
    final Node node = kb.getABox().getNode( type.getInd() );
    final ATermAppl desc = type.getType();
 
    if( DependencyIndex.log.isLoggable( Level.FINE ) ) {
      if( node instanceof Individual )
        DependencyIndex.log.fine( "    Removing type? " + desc + " from "
            + ((Individual) node).debugString() );
      else
        DependencyIndex.log.fine( "    Removing type? " + desc + " from " + node );
    }
 
    // get the dependency set - Note: we must normalize the concept
    DependencySet ds = node.getDepends( ATermUtils.normalize( desc ) );
 
    // return if null - this can happen as currently I have dupilicates in
    // the index
    if( ds == null || desc == ATermUtils.TOP )
      return;
 
    // 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
View Full Code Here


        }

        EdgeList edges = x.getRNeighborEdges( s );
        for( int e = 0; e < edges.size(); e++ ) {
            Edge edgeToY = edges.edgeAt( e );
            Node y = edgeToY.getNeighbor( x );
            DependencySet finalDS = ds.union( edgeToY.getDepends(), strategy.getABox().doExplanation() );
           
            if( roleChain.isEmpty() )
                applyAllValues( x, s, y, c, finalDS );
            else if(y.isIndividual()) {
                ATermAppl allRC = ATermUtils.makeAllValues( roleChain, c );

                strategy.addType( y, allRC, finalDS );
            }
View Full Code Here

         if( !edges.isEmpty() ) {
             ATermAppl allRC = ATermUtils.makeAllValues( chain.getNext(), c );

             for( int e = 0; e < edges.size(); e++ ) {
                 Edge edgeToY = edges.edgeAt( e );
                 Node y = edgeToY.getNeighbor( x );
                 DependencySet finalDS = ds.union( edgeToY.getDepends(), strategy.getABox().doExplanation() );
                
                 applyAllValues( x, r, y, allRC, finalDS );

                 if( x.isMerged() || strategy.getABox().isClosed() )
View Full Code Here

    return objectNode;
  }
 
  public boolean activate(Edge edge) {
    Individual subject = initNode();
    Node object = initObjectNode();
    EdgeDirection dir = edgeMatches(edge);
    if (dir != null && (dir == EdgeDirection.FORWARD ? edge.getFrom() : edge.getTo()).isSame(subject) && (dir == EdgeDirection.BACKWARD ? edge.getFrom() : edge.getTo()).isSame(object)) {
      activate(WME.createEdge(edge, dir));
      return true;
    }
View Full Code Here

    throw new UnsupportedOperationException();
  }

  public Iterator<WME> getMatches() {
    Individual subject = initNode();
    Node object = initObjectNode();
    EdgeList edges = subject.getEdgesTo(object, role);
    return toWMEs(edges, EdgeDirection.FORWARD);
  }
View Full Code Here

        return new ListIterator<Token>(memory);
    }
   
    @Override
    public Iterator<WME> getWMEs(Token token, AlphaNode alpha) {
      Node tokenArg = joinCondition.getToken().getNode(null, token);
      return alpha.getMatches(joinCondition.getWME().getIndexArg(), tokenArg);
    }
View Full Code Here

        return true;
    }

    @Override
    public void add(Token token) {
      Node tokenArg = joinCondition.getToken().getNode(null, token);
     
      List<Token> tokens = index.get(tokenArg);
      if (tokens == null) {
        tokens = new ArrayList<Token>();
        index.put(tokenArg, tokens);
View Full Code Here

      tokens.add(token);
    }
   
    @Override
    public Iterator<Token> getTokens(WME wme) {
      Node wmeArg = joinCondition.getWME().getNode(wme, null);
     
      List<Token> tokens = index.get(wmeArg);
     
      return tokens == null ? IteratorUtils.<Token>emptyIterator() : new ListIterator<Token>(tokens);
    }
View Full Code Here

      return tokens == null ? IteratorUtils.<Token>emptyIterator() : new ListIterator<Token>(tokens);
    }
   
    @Override
    public Iterator<WME> getWMEs(Token token, AlphaNode alpha) {
      Node tokenArg = joinCondition.getToken().getNode(null, token);
      return alpha.getMatches(joinCondition.getWME().getIndexArg(), tokenArg);
    }
View Full Code Here

  public boolean hasNext() {
    if( nextIndividual != null )
      return true;

    while( nodeIterator.hasNext() ) {
      Node candidate = nodeIterator.next();
      if( (candidate instanceof Individual) && candidate.isRootNominal() ) {
        nextIndividual = (Individual) candidate;
        return true;
      }
    }
View Full Code Here

TOP

Related Classes of org.mindswap.pellet.Node

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.