Package lupos.rif.datatypes

Examples of lupos.rif.datatypes.RuleResult


        this.commentLabelElement = new CommentLabelElement(
            this.operatorGraphViewer.getOperatorGraph(),
            stepContainer.getFrom(), stepContainer.getTo(), data,
            columnNames, stepContainer.isDeleteStep());
      } else if (stepContainer.getObject() instanceof RuleResult) {
        final RuleResult rr = (RuleResult) stepContainer.getObject();
        int max = 0;
        for (final Predicate p : rr.getPredicateResults()) {
          max = Math.max(max, p.getParameters().size());
        }
        columnNames.add("Predicate");
        for (int i = 1; i <= max; i++) {
          columnNames.add("Arg. " + i);
        }
        for (final Predicate p : rr.getPredicateResults()) {
          final Vector<String> columns = new Vector<String>();
          columns.add(p.getName().toString(
              this.operatorGraphViewer.getOperatorGraph()
              .getPrefix()));
          for (final Literal l : p.getParameters()) {
View Full Code Here


    if (res != null) {
      final QueryResult resQueryResult = (res instanceof QueryResultDebug) ? ((QueryResultDebug) res)
          .getOriginalQueryResult() : res;
      if (resQueryResult instanceof RuleResult) {
        if (this.rr == null) {
          this.rr = new RuleResult();
        }
        this.rr.getPredicateResults().addAll(
            ((RuleResult) resQueryResult).getPredicateResults());
        this.updateCommentPanel();
      } else if (resQueryResult instanceof EqualityResult) {
View Full Code Here

              eq.rightExpr.toString(prefixInstance) };
        }
        tablesJTable[indexJTables++] = generateTable(rows, tableHead,
            operatorGraph);
      } else if (qr instanceof RuleResult) {
        final RuleResult gr = (RuleResult) qr;

        int max = 0;
        for (final Predicate p : gr.getPredicateResults()) {
          max = Math.max(max, p.getParameters().size());
        }

        final String[] tableHead = new String[max + 1];
        tableHead[0] = "Predicate";
        for (int i = 1; i < max + 1; i++) {
          tableHead[i] = "Arg. " + i;
        }

        final Object[][] rows = new Object[gr.getPredicateResults()
            .size()][];

        int i = 0;

        for (final Predicate p : gr.getPredicateResults()) {

          final Object[] row = new Object[max + 1];

          if (operatorGraph == null) {
            final LuposDocument document = new LuposDocument();
            final LuposJTextPane textPane = new LuposJTextPane(document);
            document.init(TurtleParser.createILuposParser(new LuposDocumentReader(document)), false);
            textPane.setText(p.getName().toString(prefixInstance));
            textPane.setEditable(false);
            row[0] = textPane;
          } else {
            row[0] = p.getName().toString(prefixInstance);
          }

          int index = 1;
          for (final Literal l : p.getParameters()) {
            if (operatorGraph == null) {
              final LuposDocument document = new LuposDocument();
              final LuposJTextPane textPane = new LuposJTextPane(document);
              document.init(TurtleParser.createILuposParser(new LuposDocumentReader(document)), false);
              textPane.setText(l.toString(prefixInstance));
              textPane.setEditable(false);

              row[index++] = textPane;
            } else {
              row[index++] = l.toString(prefixInstance);
            }
          }

          for (int i2 = index; i2 < max + 1; i2++) {
            row[i2] = "";
          }

          rows[i++] = row;
        }

        tablesJTable[indexJTables++] = generateTable(rows, tableHead,
            operatorGraph);
      } else if (qr instanceof GraphResult) {
        final GraphResult gr = (GraphResult) qr;

        final String[] tableHead = { "Subject", "Predicate", "Object" };

        final Object[][] rows = new Object[gr.getGraphResultTriples()
            .size()][];

        int i = 0;

        for (final Triple t : gr.getGraphResultTriples()) {
          if (operatorGraph == null) {
            final LuposDocument documentSubject = new LuposDocument();
            final LuposJTextPane textPaneSubject = new LuposJTextPane(documentSubject);
            documentSubject.init(TurtleParser.createILuposParser(new LuposDocumentReader(documentSubject)), false);
            textPaneSubject.setText(t.getSubject().toString(prefixInstance));
View Full Code Here

  }

  @Override
  public QueryResult process(final QueryResult queryResult,
      final int operandID) {
    final RuleResult result = new RuleResult();
    final Iterator<Bindings> pib = queryResult.oneTimeIterator();
    // Create predicate
    while (pib.hasNext()) {
      final Bindings bind = pib.next();
      result.add(bind);
      for (final Tuple<URILiteral, List<Item>> item : this.patternList) {
        final Predicate pred = new Predicate();
        pred.setName(item.getFirst());
        for (int idx = 0; idx < item.getSecond().size(); idx++)
          if (item.getSecond().get(idx).isVariable())
            pred.getParameters().add(
                bind.get((Variable) item.getSecond().get(idx)));
          else
            pred.getParameters().add(
                (Literal) item.getSecond().get(idx));
        result.getPredicateResults().add(pred);
      }
    }
    if (pib instanceof ParallelIterator)
      ((ParallelIterator<Bindings>) pib).close();
    return result;
View Full Code Here

  @Override
  public void processAllDebug(final QueryResult queryResult,
      final int operandID, final DebugStep debugstep) {
    final QueryResult opp = process(queryResult, operandID);
    final RuleResult rr = (RuleResult) opp;
    if (opp == null)
      return;
    if (this.succeedingOperators.size() > 1) {
      opp.materialize();
    }
View Full Code Here

  public void addPredicateFact(final Predicate fact) {
    this.predFacts.add(fact);
  }

  private final QueryResult createQueryResult(){
    final RuleResult gr = new RuleResult();
    gr.getPredicateResults().addAll(this.predFacts);
    return gr;
  }
View Full Code Here

      newItems[i++] = toSet;
    }
    final PredicatePattern newPattern = new PredicatePattern(
        this.predicatePattern.getPredicateName(), newItems);
    // Scan durchf�hren
    final RuleResult ruleResult = (RuleResult) this.index.process(this.dataSet);
    final QueryResult tempResult = newPattern.process(ruleResult, 0);
    result.add(tempResult);
  }
View Full Code Here

  @Override
  public QueryResult process(final QueryResult queryResult,
      final int operandID) {
    final QueryResult result = QueryResult.createInstance();
    final RuleResult input = (RuleResult) (queryResult instanceof QueryResultDebug ? ((QueryResultDebug) queryResult)
        .getOriginalQueryResult() : queryResult);
    // Pattern auf alle Praedikate anwenden
    final Iterator<Predicate> predicateIterator = input
        .getPredicateIterator();
    while (predicateIterator.hasNext()) {
      final Predicate pred = predicateIterator.next();
      // Nur Praedikate, in dem die Anzahl der Parameter uebereinstimmt
      // ueberhaut betrachten
View Full Code Here

   * @return return a rule result with all predicates rif:error, which are detected errors in the ontology!
   * @throws Exception
   */
  public RuleResult inferTriplesAndStoreInDataset() throws Exception {
    final CollectRIFResult cr = this.getCollectedResults(true);
    final RuleResult result = new RuleResult();
    if(this.evaluator instanceof BasicIndexQueryEvaluator){
      for(final QueryResult qr: cr.getQueryResults()){
        if(qr instanceof GraphResult){
          final GraphResult gr = (GraphResult) qr;
          for(final Triple t: gr.getGraphResultTriples()){
            final Collection<Indices> ci = ((BasicIndexQueryEvaluator)this.evaluator).getDataset().getDefaultGraphIndices();
            for (final Indices indices : ci) {
              indices.add(t);
            }
          }
        } else if(qr instanceof RuleResult){
          final RuleResult rr = (RuleResult) qr;
          for(final Predicate predicate: rr.getPredicateResults()){
            if(rif_error.equals(predicate.getName())){
              result.getPredicateResults().add(predicate);
            }
          }
        }
      }
    } else if (this.evaluator instanceof StreamQueryEvaluator) {
      String s = "";
      for(final QueryResult qr: cr.getQueryResults()){
        if(qr instanceof GraphResult){
          final GraphResult gr = (GraphResult) qr;
          // TODO duplicated triple elimination!
          for(final Triple t: gr.getGraphResultTriples()){
            if(!t.getSubject().isBlank() && !t.getSubject().isURI()){
              System.out.println("Warning: The subject of the inferred triple "+t+" is neither an uri nor a blank node and thus the triple will be ignored!");
            } else if(!t.getPredicate().isURI()){
              System.out.println("Warning: The predicate of the inferred triple "+t+" is not an uri and thus the triple will be ignored!");
            } else {
              s += t.getSubject() + " " + t.getPredicate() + " " +t.getObject() + " .\n";
            }
          }
        } else if(qr instanceof RuleResult){
          final RuleResult rr = (RuleResult) qr;
          for(final Predicate predicate: rr.getPredicateResults()){
            if(rif_error.equals(predicate.getName())){
              result.getPredicateResults().add(predicate);
            }
          }
        }
View Full Code Here

          } else {
            rr.getPredicateResults().addAll(((RuleResult) res).getPredicateResults());
          }
        } else {
          if (rr == null){
            rr = new RuleResult();
          }
          rr.getPredicateResults().addAll(((RuleResult) res).getPredicateResults());
        }
      } else super.call(res);
    }
View Full Code Here

TOP

Related Classes of lupos.rif.datatypes.RuleResult

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.