Package lupos.datastructures.items.literal

Examples of lupos.datastructures.items.literal.Literal


        }

        private URILiteral nextEndpoint(){
          while(this.it.hasNext()){
            final Bindings service = this.it.next();
            Literal endpointURI = service.get((Variable) endpoint);
            if (endpointURI instanceof LazyLiteral) {
              endpointURI = ((LazyLiteral) endpointURI).getLiteral();
            }
            if (endpointURI instanceof URILiteral) {
              final URILiteral result = (URILiteral) endpointURI;
View Full Code Here


          final Bindings bindingsTemp = this.bindingsIterator.next();
          final String fQuery = FederatedQueryFetchAsNeeded.this.toStringQuery(bindingsTemp);
          if (!FederatedQueryFetchAsNeeded.this.endpoint.isVariable()) {
            return new IteratorQueryResultAndOneBindings(Client.submitQuery(((URILiteral)FederatedQueryFetchAsNeeded.this.endpoint).getString(), fQuery, FederatedQueryFetchAsNeeded.this.bindingsFactory), bindingsTemp);
          } else {
            Literal endpointURI = bindingsTemp.get((Variable) FederatedQueryFetchAsNeeded.this.endpoint);
            if (endpointURI instanceof LazyLiteral) {
              endpointURI = ((LazyLiteral) endpointURI).getLiteral();
            }
            if (endpointURI instanceof URILiteral) {
              return new IteratorQueryResultAndOneBindings(Client.submitQuery(((URILiteral) endpointURI).getString(), fQuery, FederatedQueryFetchAsNeeded.this.bindingsFactory), bindingsTemp);
View Full Code Here

            final QueryResult queryResult = QueryResult.createInstance(new IteratorQueryResultAndOneBindings(Client.submitQuery(((URILiteral)FederatedQueryFetchAsNeededWithCache.this.endpoint).getString(), fQuery, FederatedQueryFetchAsNeededWithCache.this.bindingsFactory), bindingsTemp));
            queryResult.materialize();
            FederatedQueryFetchAsNeededWithCache.this.cache.put(bindingsKey, queryResult);
            return queryResult.iterator();
          } else {
            Literal endpointURI = bindingsTemp.get((Variable) FederatedQueryFetchAsNeededWithCache.this.endpoint);
            if (endpointURI instanceof LazyLiteral) {
              endpointURI = ((LazyLiteral) endpointURI).getLiteral();
            }
            if (endpointURI instanceof URILiteral) {
              final QueryResult queryResult = QueryResult.createInstance(new IteratorQueryResultAndOneBindings(Client.submitQuery(((URILiteral) endpointURI).getString(), fQuery, FederatedQueryFetchAsNeededWithCache.this.bindingsFactory), bindingsTemp));
View Full Code Here

          result +="<http://www.ifis.uni-luebeck.de/functions/BitVectorFilter>("+variable;
          result +=",";
          BitVector bv = new BitVector(FederatedQueryBitVectorJoinNonStandardSPARQL.bitvectorSize);
          while (bindingsIterator.hasNext()) {
            Bindings b = bindingsIterator.next();
            Literal literal = variable.getLiteral(b);
            if(literal!=null){
              oneOrMoreResults=true;
              bv.set(Math.abs(literal.toString().hashCode() % FederatedQueryBitVectorJoinNonStandardSPARQL.bitvectorSize));
            }
          }
          result += bv.getBigInteger().toString()+","+FederatedQueryBitVectorJoinNonStandardSPARQL.bitvectorSize+")";
          if(!this.surelyBoundVariablesInServiceCall.contains(variable)) {
            result += " ))||";
View Full Code Here

      e.distinctLiterals *= d;
    }
  }

  public void multiplySelectivities(final VarBucket vb, final int factor) {
    Literal lowerLimit = null;
    boolean first = true;
    int index = 0;
    final List<Entry> le = new ArrayList<Entry>(selectivityOfInterval
        .size());
    for (final Entry e : selectivityOfInterval) {
View Full Code Here

      // first determine the interval, which overlaps with the lower
      // limit
      overlappedInterval = searchLowerLimit(lowerLimit, 0,
          this.selectivityOfInterval.size() - 1);

      final Literal lowerLimit2 = (overlappedInterval < 0) ? null
          : this.selectivityOfInterval.get(overlappedInterval).literal;
      if (overlappedInterval + 1 < this.selectivityOfInterval.size()) {
        final Entry e3 = this.selectivityOfInterval
            .get(overlappedInterval + 1);
        if (e3.literal
            .compareToNotNecessarilySPARQLSpecificationConform(lowerLimit) > 0) {
          int intervalSize;
          if (lowerLimit2 == null)
            intervalSize = distance(e3.literal, null);
          else
            intervalSize = distance(e3.literal, lowerLimit2);
          int fraction;
          // does e3 completely contain e?
          if (e3.literal
              .compareToNotNecessarilySPARQLSpecificationConform(e.literal) > 0) {
            fraction = distance(e.literal, lowerLimit);
            double sel = (e3.distinctLiterals == 0.0) ? e3.selectivity
                : e3.selectivity / e3.distinctLiterals;
            sel *= (intervalSize == 0) ? fraction
                : (double) fraction / intervalSize;
            return new Tuple<Integer, Double>(
                overlappedInterval + 1, sel);
          } else {
            fraction = distance(e3.literal, lowerLimit);
          }
          double sel = (e3.distinctLiterals == 0.0) ? e3.selectivity
              : e3.selectivity / e3.distinctLiterals;
          sel *= (intervalSize == 0) ? fraction : (double) fraction
              / intervalSize;
          result = sel;
        }
      }
    }

    // then all intervals, which are completely contained in the given
    // interval
    Literal lowerLimit2 = null;
    int index = overlappedInterval + 1;
    boolean next = (lowerLimit == null);
    while (index < this.selectivityOfInterval.size()) {
      final Entry e3 = this.selectivityOfInterval.get(index);
      if (next) {
View Full Code Here

      while (overlappedInterval + 1 < this.selectivityOfInterval.size()) {
        // first determine the interval, which overlaps with the
        // lower
        // limit

        final Literal lowerLimit2 = (overlappedInterval < 0) ? null
            : this.selectivityOfInterval.get(overlappedInterval).literal;
        final Entry e3 = this.selectivityOfInterval
            .get(overlappedInterval + 1);
        if (e3.literal
            .compareToNotNecessarilySPARQLSpecificationConform(lowerLimit) > 0) {
          int intervalSize;
          if (lowerLimit2 == null)
            intervalSize = distance(e3.literal, null);
          else
            intervalSize = distance(e3.literal, lowerLimit2);
          int fraction;
          // does e3 completely contain e?
          if (e3.literal
              .compareToNotNecessarilySPARQLSpecificationConform(e.literal) > 0) {
            fraction = distance(e.literal, lowerLimit);
            double sel = (e3.distinctLiterals == 0.0) ? e3.selectivity
                : e3.selectivity / e3.distinctLiterals;
            sel *= (intervalSize == 0) ? fraction
                : (double) fraction / intervalSize;
            return new Tuple<Integer, Double>(
                overlappedInterval + 1, sel);
          } else {
            fraction = distance(e3.literal, lowerLimit);
          }
          final double sel = (e3.distinctLiterals == 0.0) ? e3.selectivity
              : e3.selectivity / e3.distinctLiterals;
          result = sel
              * ((intervalSize == 0) ? fraction
                  : (double) fraction / intervalSize);
          break;
        }
        overlappedInterval++;
      }
    }

    // then all intervals, which are completely contained in the given
    // interval
    Literal lowerLimit2 = null;
    int index = overlappedInterval + 1;
    boolean next = (lowerLimit == null);
    while (index < this.selectivityOfInterval.size()) {
      final Entry e3 = this.selectivityOfInterval.get(index);
      if (next) {
View Full Code Here

    }
    return vb;
  }

  public void add(final VarBucket vb) {
    Literal lowerLimit = null;
    boolean first = true;
    int index = 0;
    for (final Entry e : selectivityOfInterval) {
      final Tuple<Integer, Double> result;
      if (first) {
View Full Code Here

  public final static Triple readLuposTriple(final Triple previousTriple, final InputStream is) throws IOException, ClassNotFoundException {
    final int diff = is.read();
    if (diff < 0) {
      return null;
    }
    final Literal subject = (diff % 2 == 1) ? InputHelper.readLuposLiteral(is) : previousTriple.getSubject();
    final Literal predicate = ((diff / 2) % 2 == 1) ? InputHelper.readLuposLiteral(is) : previousTriple.getPredicate();
    final Literal object = ((diff / 4) % 2 == 1) ? InputHelper.readLuposLiteral(is) : previousTriple.getObject();
    if (subject == null || predicate == null || object == null) {
      return null;
    }
    return new Triple(subject, predicate, object);
  }
View Full Code Here

      final Bindings b = bindingsFactory.createInstance();
      final BigInteger TWO = BigInteger.valueOf(2);
      for (final Variable v : hm.keySet()) {
        if (usedVars.mod(TWO).compareTo(BigInteger.ONE)==0) {
          if (previousBindings == null || differentFromPreviousBindings.mod(TWO).compareTo(BigInteger.ONE)==0) {
            Literal lit;
            lit = InputHelper.readLuposLiteral(in);
            b.add(v, lit);
          } else {
            b.add(v, previousBindings.get(v));
          }
View Full Code Here

TOP

Related Classes of lupos.datastructures.items.literal.Literal

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.