Package lupos.engine.operators.tripleoperator

Examples of lupos.engine.operators.tripleoperator.TriplePattern


   
    final T additionalInformation = initAdditionalInformation();
   
    while (remainingTP.size() > 0) {
     
      TriplePattern best = getBestNextTriplePatternToJoin(indexScan, remainingTP, additionalInformation);
     
      updateInitialInformation(additionalInformation, best);
     
      newTriplePattern.add(best);
      remainingTP.remove(best);
View Full Code Here


  public static void addInferenceRulesForExternalOntology(
      final Root ic, final TripleOperator tp, final Item data) {
    RudimentaryRDFSchemaInference.addInferenceRulesForExternalOntology(ic,
        tp, data);
    try {
      TriplePattern tp_1;
      TriplePattern tp_2;

      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs6
       * uuu rdf:type rdf:Property . uuu rdfs:subPropertyOf uuu .
       */
      final TriplePattern tp_rdfs6 = new TriplePattern(v("uuu"), TYPE,
          PROPERTY);
      addTps(data, ic, tp, v("uuu"), SUBPROPERTY, v("uuu"), tp_rdfs6);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs8
       * uuu rdf:type rdfs:Class . uuu rdfs:subClassOf rdfs:Resource .
       */
      final TriplePattern tp_rdfs8 = new TriplePattern(v("uuu"), TYPE,
          CLASS);
      addTps(data, ic, tp, v("uuu"), SUBCLASS, RESSOURCE, tp_rdfs8);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs10
       * uuu rdf:type rdfs:Class . uuu rdfs:subClassOf uuu .
       */
      final TriplePattern tp_rdfs10 = new TriplePattern(v("uuu"), TYPE,
          CLASS);
      addTps(data, ic, tp, v("uuu"), SUBCLASS, v("uuu"), tp_rdfs10);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs12
       * uuu rdf:type rdfs:ContainerMembershipProperty . uuu
       * rdfs:subPropertyOf rdfs:member .
       */
      final TriplePattern tp_rdfs12 = new TriplePattern(v("uuu"), TYPE,
          u("2000/01/rdf-schema#ContainerMembershipProperty"));
      addTps(data, ic, tp, v("uuu"), SUBPROPERTY,
          u("2000/01/rdf-schema#member"), tp_rdfs12);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs13
       * uuu rdf:type rdfs:Datatype . uuu rdfs:subClassOf rdfs:URILiteral
       * .
       */
      final TriplePattern tp_rdfs13 = new TriplePattern(
          v("uuu"),
          TYPE,
          LiteralFactory
              .createURILiteral("<http://www.w3.org/2000/01/rdf-schema#Datatype>"));
      addTps(data, ic, tp, v("uuu"), SUBCLASS,
View Full Code Here

    try {
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs2
       * aaa rdfs:domain xxx . uuu aaa yyy . uuu rdf:type xxx .
       */
      final TriplePattern tp_1_1 = tp(v("aaa"), DOMAIN, v("xxx"));
      final TriplePattern tp_1_2 = tp(v("uuu"), v("aaa"), v("yyy"));
      addTps(data, ic, tp, v("uuu"), TYPE, v("xxx"), tp_1_1, tp_1_2);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs3
       * aaa rdfs:range xxx . uuu aaa vvv . vvv rdf:type xxx .
       */
      final TriplePattern tp_2_1 = new TriplePattern(v("aaa"), RANGE,
          v("xxx"));
      final TriplePattern tp_2_2 = new TriplePattern(v("uuu"), v("aaa"),
          v("vvv"));
      addTps(data, ic, tp, v("vvv"), TYPE, v("xxx"), tp_2_1, tp_2_2);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs4a
       * uuu aaa xxx . uuu rdf:type rdfs:Resource .
       */
      final TriplePattern tp_rdfs4a = new TriplePattern(v("uuu"),
          v("aaa"), v("xxx"));
      addTps(data, ic, tp, v("uuu"), TYPE, RESSOURCE, tp_rdfs4a);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs4b
       * uuu aaa vvv. vvv rdf:type rdfs:Resource .
       */
      final TriplePattern tp_rdfs4b = new TriplePattern(v("uuu"),
          v("aaa"), v("vvv"));
      addTpsFilter(data, ic, tp, v("vvv"), TYPE, RESSOURCE,
          "FILTER(isBLANK(?vvv) || isURI(?vvv))", tp_rdfs4b);

      /*
 
View Full Code Here

  public static void addInferenceRulesForExternalOntology(
      final Root ic, final TripleOperator tp, final Item data) {
    RudimentaryRDFSchemaInference.addInferenceRulesForExternalOntology(ic,
        tp, data);
    try {
      TriplePattern tp_1;
      // TriplePattern tp_2;

      // rules (I) and (II) already defined in
      // RudimentaryRDFSchemaInference
View Full Code Here

      final Root ic, final TripleOperator tp, final Item data) {
    RudimentaryRDFSchemaInference.addInferenceRulesForInstanceData(ic, tp,
        data);
    try {
      // (VIII)
      final TriplePattern tp_1_1 = tp(v("aaa"), DOMAIN, v("xxx"));
      final TriplePattern tp_1_2 = tp(v("uuu"), v("aaa"), v("yyy"));
      addTps(data, ic, tp, v("uuu"), TYPE, v("xxx"), tp_1_1, tp_1_2);

      // ((IX)
      final TriplePattern tp_2_1 = new TriplePattern(v("aaa"), RANGE,
          v("xxx"));
      final TriplePattern tp_2_2 = new TriplePattern(v("uuu"), v("aaa"),
          v("vvv"));
      addTps(data, ic, tp, v("vvv"), TYPE, v("xxx"), tp_2_1, tp_2_2);

      // (X)
      // already in RudimentaryRDFSchemaInference

      // (XI)
      final TriplePattern tp_rdfs11_1 = new TriplePattern(v("c1"),
          SUBCLASS, v("c2"));
      final TriplePattern tp_rdfs11_2 = new TriplePattern(v("s"), TYPE,
          v("c1"));
      addTpsFilter(data, ic, tp, v("s"), TYPE, v("c2"),
          "Filter(?c1!=?c2)", tp_rdfs11_1, tp_rdfs11_2);

      // (XII)
      final TriplePattern tp_rdfs12_1 = new TriplePattern(v("p1"),
          DOMAIN, v("c"));
      final TriplePattern tp_rdfs12_2 = new TriplePattern(v("p2"),
          SUBPROPERTY, v("p1"));
      final TriplePattern tp_rdfs12_3 = new TriplePattern(v("s"),
          v("p2"), v("o"));
      addTps(data, ic, tp, v("s"), TYPE, v("c"), tp_rdfs12_1,
          tp_rdfs12_2, tp_rdfs12_3);

      // (XIII)
      final TriplePattern tp_rdfs13_1 = new TriplePattern(v("p1"), RANGE,
          v("c"));
      final TriplePattern tp_rdfs13_2 = new TriplePattern(v("p2"),
          SUBPROPERTY, v("p1"));
      final TriplePattern tp_rdfs13_3 = new TriplePattern(v("s"),
          v("p2"), v("o"));
      addTps(data, ic, tp, v("o"), TYPE, v("c"), tp_rdfs13_1,
          tp_rdfs13_2, tp_rdfs13_3);

      // (XIV)
      final TriplePattern tp_14 = tp(v("s"), v("p"), v("o"));
      addTps(data, ic, tp, v("p"), SUBPROPERTY, v("p"), tp_14);

      // (XV)
      final TriplePattern tp_15 = tp(v("s"), v("p"), v("o"));
      addTps(data, ic, tp, v("o"), SUBCLASS, v("o"), tp_15);

    } catch (final Exception e) {
      System.out.println(e);
      e.printStackTrace();
View Full Code Here

  protected static Triple t(final String a, final String b, final String c) {
    return new Triple(u(a), u(b), u(c));
  }

  protected static TriplePattern tp(final Item a, final Item b, final Item c) {
    return new TriplePattern(a, b, c);
  }
View Full Code Here

  protected static void addTps(final Item data, final Root ic,
      final TripleOperator tp, final Item a, final Item b, final Item c,
      final TriplePattern... tps) {
    final Generate g = new Generate(tp, a, b, c);
    if (tps.length == 1) {
      final TriplePattern tpo = tps[0];
      tpo.setSucceedingOperator(new OperatorIDTuple(g, 0));
      final Collection<TriplePattern> ctp = new LinkedList<TriplePattern>();
      ctp.add(tpo);
      ic.addSucceedingOperator(new OperatorIDTuple(ic.newIndexScan(
          new OperatorIDTuple(g, 0), ctp, null), 0));
    } else {

      final Collection<TriplePattern> ctp = new LinkedList<TriplePattern>();
      for (int i = 0; i < tps.length; i++) {
        final TriplePattern tpo = tps[i];
        ctp.add(tpo);
      }
      ic.addSucceedingOperator(new OperatorIDTuple(ic.newIndexScan(
          new OperatorIDTuple(g, 0), ctp, null), 0));
    }
View Full Code Here

      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs5
       * uuu rdfs:subPropertyOf vvv . vvv rdfs:subPropertyOf xxx . uuu
       * rdfs:subPropertyOf xxx .
       */
      final TriplePattern tp_rdfs5_1 = new TriplePattern(v("uuu"),
          SUBPROPERTY, v("vvv"));
      final TriplePattern tp_rdfs5_2 = new TriplePattern(v("vvv"),
          SUBPROPERTY, v("xxx"));
      addTpsFilter(data, ic, tp, v("uuu"), SUBPROPERTY, v("xxx"),
          "(?uuu!=?vvv)", "(?vvv!=?xxx)", tp_rdfs5_1,
          tp_rdfs5_2);

      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs11
       * uuu rdfs:subClassOf vvv . vvv rdfs:subClassOf xxx . uuu
       * rdfs:subClassOf xxx .
       */
      final TriplePattern tp_rdfs11_1 = new TriplePattern(v("uuu"),
          SUBCLASS, v("vvv"));
      final TriplePattern tp_rdfs11_2 = new TriplePattern(v("vvv"),
          SUBCLASS, v("xxx"));
      addTpsFilter(data, ic, tp, v("uuu"), SUBCLASS, v("xxx"),
          "(?uuu!=?vvv)", "(?vvv!=?xxx)", tp_rdfs11_1,
          tp_rdfs11_2);
    } catch (final Exception e) {
View Full Code Here

    try {
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs9
       * uuu rdfs:subClassOf xxx . vvv rdf:type uuu . vvv rdf:type xxx .
       */
      final TriplePattern tp_rdfs9_1 = new TriplePattern(v("uuu"),
          SUBCLASS, v("xxx"));
      final TriplePattern tp_rdfs9_2 = new TriplePattern(v("vvv"), TYPE,
          v("uuu"));
      addTpsFilter(data, ic, tp, v("vvv"), TYPE, v("xxx"),
          "(?uuu!=?xxx)", tp_rdfs9_1, tp_rdfs9_2);
      /*
       * RDFS entailment rules. Rule Name If E contains: then add: rdfs7
       * aaa rdfs:subPropertyOf bbb . uuu aaa yyy . uuu bbb yyy .
       */
      final TriplePattern tp_rdfs7_1 = new TriplePattern(v("aaa"),
          SUBPROPERTY, v("bbb"));
      final TriplePattern tp_rdfs7_2 = new TriplePattern(v("uuu"),
          v("aaa"), v("yyy"));
      addTpsFilter(data, ic, tp, v("uuu"), v("bbb"), v("yyy"),
          "(?aaa!=?bbb)", tp_rdfs7_1, tp_rdfs7_2);
    } catch (final Exception e) {
      System.out.println(e);
View Full Code Here

      // do reification of blank nodes!
      final GraphResult gr = new GraphResult();
      for(Bindings b: qr){
        Collection<TriplePattern> ctp_new = new LinkedList<TriplePattern>();
        for(TriplePattern tp: ctp){
          TriplePattern tp_new=new TriplePattern(reificate(tp.getItems()[0]), reificate(tp.getItems()[1]), reificate(tp.getItems()[2]));
          ctp_new.add(tp_new);
        }
        gr.setTemplate(ctp_new);
        gr.add(b);
        id++;
View Full Code Here

TOP

Related Classes of lupos.engine.operators.tripleoperator.TriplePattern

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.