Package org.jrdf.graph

Examples of org.jrdf.graph.Triple


        if (PredicateNode.class.isAssignableFrom(node.getClass()) &&
            PredicateNode.class.isAssignableFrom(newNode.getClass())) {
            final PredicateNode oldONode = (PredicateNode) createNewNode(node);
            ClosableIterable<Triple> triples = graph.find(ANY_SUBJECT_NODE, oldONode, ANY_OBJECT_NODE);
            for (Triple triple : triples) {
                Triple newTriple =
                    tripleFactory.createTriple(triple.getSubject(), (PredicateNode) newNode, triple.getObject());
                triplesToAdd.add(newTriple);
                triplesToRemove.add(new TripleImpl(triple.getSubject(), oldONode, triple.getObject()));
            }
            triples.iterator().close();
View Full Code Here


        if (SubjectNode.class.isAssignableFrom(node.getClass()) &&
            SubjectNode.class.isAssignableFrom(newNode.getClass())) {
            final SubjectNode oldSNode = (SubjectNode) createNewNode(node);
            ClosableIterable<Triple> triples = graph.find(oldSNode, ANY_PREDICATE_NODE, ANY_OBJECT_NODE);
            for (Triple triple : triples) {
                Triple newTriple =
                    tripleFactory.createTriple((SubjectNode) newNode, triple.getPredicate(), triple.getObject());
                triplesToAdd.add(newTriple);
                triplesToRemove.add(new TripleImpl(oldSNode, triple.getPredicate(), triple.getObject()));
            }
            triples.iterator().close();
View Full Code Here

    }

    private void readAndUpdateTripleIterator(Iterator<Triple> triples) throws GraphException {
        try {
            while (triples.hasNext()) {
                Triple triple = triples.next();
                if (!triple.isGrounded()) {
                    mapper.updateBlankNodes(triple);
                }
            }
        } catch (Exception e) {
            throw new GraphException("Cannot read RDF graph", e);
View Full Code Here

            addRootTriples(molecule1, newRootTriples);
            addRootTriples(molecule2, newRootTriples);
            Molecule newMolecule = moleculeFactory.createMolecule(newRootTriples);
            Iterator<Triple> subMoleculeIter = newMolecule.getRootTriples();
            while (subMoleculeIter.hasNext()) {
                Triple currentTriple = subMoleculeIter.next();
                newMolecule.specialAdd(merge(currentTriple, molecule1, molecule2));
            }
            return newMolecule;
        } else {
            throw new IllegalArgumentException("Cannot merge molecules with different head triples.");
View Full Code Here

        if (m1RootTriples.size() < m2RootTriples.size()) {
            return new HashMap<BlankNode, BlankNode>();
        }
        Iterator<Triple> m1Roots = m1RootTriples.iterator();
        for (Triple m2RootTriple1 : m2RootTriples) {
            Triple m2RootTriple = m2RootTriple1;
            if (!m1.contains(m2RootTriple)) {
                return new HashMap<BlankNode, BlankNode>();
            }
            findCorrespondingTriple(m1Roots, m2RootTriple, map);
            Set<Molecule> sm1s = m1.getSubMolecules(m2RootTriple);
View Full Code Here

     * @param m2RootTriple
     * @param map
     */
    private void findCorrespondingTriple(Iterator<Triple> m1Roots, Triple m2RootTriple, Map<BlankNode, BlankNode> map) {
        while (m1Roots.hasNext()) {
            Triple t1 = m1Roots.next();
            if (tripleComparator.compare(t1, m2RootTriple) == 0) {
                addBlankNodesToMapForTriples(m2RootTriple, t1, map);
                break;
            }
        }
View Full Code Here

        this.tripleComparator = newTripleComparator;
        this.tripleBinding = newTripleBinding;
    }

    public int compare(byte[] o1, byte[] o2) {
        Triple triple1 = tripleBinding.entryToObject(new TupleInput(o1));
        Triple triple2 = tripleBinding.entryToObject(new TupleInput(o2));
        return tripleComparator.compare(triple1, triple2);
    }
View Full Code Here

        return getUnsortedTuplesFromGraph(ALL_TRIPLE, attributes);
    }

    public Set<Tuple> getTuples(Map<Attribute, Node> nameValues) {
        Attribute[] attributes = nameValues.keySet().toArray(new Attribute[TRIPLE]);
        Triple searchTriple = new TripleImpl((SubjectNode) nameValues.get(attributes[0]),
            (PredicateNode) nameValues.get(attributes[1]),
            (ObjectNode) nameValues.get(attributes[2]));
        return getUnsortedTuplesFromGraph(searchTriple, attributes);
    }
View Full Code Here

    private Set<Tuple> getUnsortedTuplesFromGraph(Triple searchTriple, Attribute[] attributes) {
        ClosableIterator<Triple> closableIterator = getIterator(searchTriple);
        try {
            Set<Tuple> tuples = new HashSet<Tuple>();
            while (closableIterator.hasNext()) {
                Triple triple = closableIterator.next();
                Map<Attribute, Node> avo = avpHelper.createAvo(triple, attributes);
                tuples.add(tupleFactory.getTuple(avo));
            }
            return tuples;
        } finally {
View Full Code Here

    public Triple next() throws NoSuchElementException {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        final Triple triple = handler.createTriple(currentNodes);
        getNextValues();
        return triple;
    }
View Full Code Here

TOP

Related Classes of org.jrdf.graph.Triple

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.