当前位置: 首页>>代码示例>>Java>>正文


Java Quad类代码示例

本文整理汇总了Java中org.apache.jena.sparql.core.Quad的典型用法代码示例。如果您正苦于以下问题:Java Quad类的具体用法?Java Quad怎么用?Java Quad使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


Quad类属于org.apache.jena.sparql.core包,在下文中一共展示了Quad类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: filter

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
/**
 * filter RDD of {@link Quad}s based on the specified config
 *
 * @param quads RDD of quads to filter
 * @return filtered RDD of quads
 */
public JavaRDD<Quad> filter(JavaRDD<Quad> quads) {
    Set<String> subjectBlacklist = new HashSet<>(config.getResourceBlacklist());
    if (config.getResources().isEmpty()) {
        return QuadUtils.filterQuadsByForbiddenSubjects(quads, subjectBlacklist);
    }
    log.info("Filtering quads");
    Set<String> subjects = new HashSet<>(config.getResources());
    boolean directed = config.isDirected();
    for (int d = 0; d < config.getRelatedDepth(); d++) {
        log.info("Depth {}, collecting neighbors of {} resources", d, subjects.size());
        List<String> neighbors = QuadUtils.getNeighborResources(quads, subjects, directed).collect();
        subjects.addAll(neighbors);
        subjects.removeAll(subjectBlacklist);
    }
    log.info("Filtering on an in-memory set of {} subjects", subjects.size());
    quads = QuadUtils.filterQuadsByAllowedSubjects(quads, subjects);
    return quads;
}
 
开发者ID:Merck,项目名称:rdf2x,代码行数:25,代码来源:QuadFilter.java

示例2: getRdfsLabels

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
/**
 * Get map of rdfs:labels for specified URIs
 *
 * @param quads Quads to use for retrieving labels
 * @param uris  Set of URI Strings to find labels for
 * @return map of URI -&gt; rdfs:label
 */
private Map<String, String> getRdfsLabels(JavaRDD<Quad> quads, Set<String> uris) {
    Broadcast<Set<String>> broadcastURIs = sc.broadcast(uris);
    Map<String, String> nonSerializableMap = quads.filter(quad ->
                    // filter out label predicates for specified subject URIs
                    quad.getPredicate().isURI() &&
                            quad.getPredicate().getURI().equals(LABEL_URI) &&
                            quad.getSubject().isURI() &&
                            (broadcastURIs.getValue().contains(quad.getSubject().getURI()))
            // map to pair of uri, label
    ).mapToPair(quad -> new Tuple2<>(
            quad.getSubject().getURI(),
            quad.getObject().getLiteralValue().toString()
    )).collectAsMap();

    return new HashMap<>(nonSerializableMap);
}
 
开发者ID:Merck,项目名称:rdf2x,代码行数:24,代码来源:RdfSchemaCollector.java

示例3: deleteAny

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Override
/** Simple implementation but done without assuming iterator.remove() */
public void deleteAny(Node g, Node s, Node p, Node o) {
    Quad[] buffer = new Quad[DeleteBufferSize];
    while (true) {
        Iterator<Quad> iter = find(g, s, p, o);
        // Get a slice
        int len = 0;
        for ( ; len < DeleteBufferSize ; len++ ) {
            if ( !iter.hasNext() )
                break;
            buffer[len] = iter.next();
        }
        // Delete them.
        for ( int i = 0 ; i < len ; i++ ) {
            delete(buffer[i]);
            buffer[i] = null;
        }
        // Finished?
        if ( len < DeleteBufferSize )
            break;
    }
}
 
开发者ID:afs,项目名称:rdf-delta,代码行数:24,代码来源:DatasetGraphChanges.java

示例4: changeSuppressEmptyCommit_4

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test public void changeSuppressEmptyCommit_4() {
    Quad q = SSE.parseQuad("(_ :s :p 'object')");
    Triple t = SSE.parseTriple("(:t :p 'object')");
    
    Txn.executeRead(dsg,   ()->{});
    testCounters(counter.summary(), 0, 0);
    
    Txn.executeWrite(dsg,  ()->{dsg.add(q);});
    testCounters(counter.summary(), 1, 0);

    Txn.executeWrite(dsg,  ()->{dsg.getDefaultGraph().add(t);});
    testCounters(counter.summary(), 2, 0);
    
    Txn.executeWrite(dsg,  ()->{dsg.getDefaultGraph().getPrefixMapping().setNsPrefix("", "http://example/");});
    testCounters(counter.summary(), 2, 1);
    
    Txn.executeWrite(dsg,  ()->{});
    testCounters(counter.summary(), 2, 1);
}
 
开发者ID:afs,项目名称:rdf-delta,代码行数:20,代码来源:TestRDFChangesCancel.java

示例5: change_2

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test
public void change_2() {
    String NAME = "change_2";
    DeltaClient dClient = createRegister(NAME);
    try(DeltaConnection dConn = dClient.get(NAME)) {
        Id dsRef = dConn.getDataSourceId();
        long version = dConn.getRemoteVersionLatest();

        DatasetGraph dsg = dConn.getDatasetGraph();
        Txn.executeWrite(dsg, ()->{
            Quad q = SSE.parseQuad("(_ :s1 :p1 :o1)");
            dsg.add(q);
        });
        // Rebuild directly.
        DatasetGraph dsg2 = DatasetGraphFactory.createTxnMem();
        long ver = dConn.getRemoteVersionLatest();
        RDFPatch patch1 = dConn.getLink().fetch(dsRef, ver) ;
        RDFPatchOps.applyChange(dsg2, patch1);

        Set<Quad> set1 = Txn.calculateRead(dsg, ()->Iter.toSet(dsg.find()));
        Set<Quad> set2 = Txn.calculateRead(dsg2, ()->Iter.toSet(dsg2.find()));
        assertEquals(set1, set2);
    }
}
 
开发者ID:afs,项目名称:rdf-delta,代码行数:25,代码来源:AbstractTestDeltaConnection.java

示例6: change_read_new

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
private void change_read_new(Runnable betweenSections) {
    Quad quad = DeltaTestLib.freshQuad();
    
    String NAME = "DS-"+counter.incrementAndGet();
    DeltaClient dClient = createRegister(NAME);
    Id dsRef;
    
    try(DeltaConnection dConn = dClient.get(NAME)) {
        dConn.getPatchLogInfo().getDataSourceId();
        dsRef = dConn.getDataSourceId();
        long version = dConn.getRemoteVersionLatest();
        DatasetGraph dsg = dConn.getDatasetGraph();
        Txn.executeWrite(dsg, ()->dsg.add(quad) );
    }

    betweenSections.run();

    // New client.
    // Rebuild.
    dClient = resetDeltaClient(NAME);
    try(DeltaConnection dConn = dClient.get(NAME)) {
        boolean b = dConn.getDatasetGraph().contains(quad);
        assertTrue(b);
    }
}
 
开发者ID:afs,项目名称:rdf-delta,代码行数:26,代码来源:AbstractTestDeltaConnection.java

示例7: update_3

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test
public void update_3() {
    // Create on the Delta link then setup DeltaClient
    DeltaLink dLink = getLink();
    String DS_NAME = "12345";
    
    Id dsRef = dLink.newDataSource(DS_NAME, "http://example/datasource_update_3");
    DeltaClient dClient = createDeltaClient();
    dClient.register(dsRef, LocalStorageType.MEM, TxnSyncPolicy.NONE);
    DeltaConnection dConn = dClient.get(DS_NAME);
    Quad quad = SSE.parseQuad("(_ :s :p :o)");
    DatasetGraph dsg = dConn.getDatasetGraph();

    long x0 = Txn.calculateRead(dsg, ()->Iter.count(dsg.find()) );
    assertEquals(0, x0);
    
    dsg.begin(ReadWrite.WRITE);
    dsg.add(quad);
    dsg.abort();
    
    long x1 = Txn.calculateRead(dsg, ()->Iter.count(dsg.find()) );
    assertEquals(0, x1);
}
 
开发者ID:afs,项目名称:rdf-delta,代码行数:24,代码来源:AbstractTestDeltaClient.java

示例8: next

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Override
public Quad next() {
    QuerySolution solution = results.next();
    Node s = solution.get("s").asNode();
    Node p = solution.get("p").asNode();
    Node o = solution.get("o").asNode();
    Node g = null;
    if (solution.get("g") != null) {
        g = solution.get("g").asNode();
    } else {
        if (graphName != null) {
            g = NodeFactory.createURI(graphName);
        }
    }
    Quad quad = new Quad(g, s, p, o);
    return quad;
}
 
开发者ID:marklogic,项目名称:marklogic-jena,代码行数:18,代码来源:QuadsIterator.java

示例9: testAdd_ReadUser

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test
public void testAdd_ReadUser() throws FileNotFoundException {
	Exception exp = null;
	try {
		Quad quad = new Quad(NodeFactory.createURI("http://originalGraph1"), new Triple(NodeFactory.createURI("#electricVehicle3"),
				NodeFactory.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#type1"),
				NodeFactory.createLiteral("http://people.aifb.kit.edu/awa/2011/smartgrid/schema/smartgrid#ElectricVehicle1")));
		markLogicDatasetGraphReader.add(quad);
		markLogicDatasetGraphReader.sync();
		assertFalse(markLogicDatasetGraphReader.contains(quad));
	} catch (Exception e) {
		exp = e;

	}
	assertTrue("Should catch ForbiddenUserException ", exp.toString().contains("ForbiddenUserException") && exp != null);

}
 
开发者ID:marklogic,项目名称:marklogic-jena,代码行数:18,代码来源:JenaGraphTests.java

示例10: testSetDefaultGraph_admin

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test
public void testSetDefaultGraph_admin() {

	String file = datasource + "relative1.nt";
	// Read triples into dataset
	RDFDataMgr.read(markLogicDatasetGraphWriter, file);
	markLogicDatasetGraphWriter.sync();
	Graph g1 = markLogicDatasetGraphWriter.getDefaultGraph();

	assertTrue("did not match Triples", g1.toString().contains("#electricVehicle2"));

	// Create New graph and add triples from defaultgraph to new graph
	Triple triple = new Triple(NodeFactory.createURI("s5"), NodeFactory.createURI("p5"), NodeFactory.createURI("o5"));
	Quad quad = new Quad(NodeFactory.createURI("new-graph-fordefault"), triple);
	Node n1 = NodeFactory.createURI("new-graph-fordefault");
	markLogicDatasetGraphWriter.add(quad);
	markLogicDatasetGraphWriter.sync();
	Graph g2 = markLogicDatasetGraphWriter.getGraph(n1);
	assertTrue("did not match Triples", g2.contains(triple));
	// Set DefaultGraph to be NamedGraph
	markLogicDatasetGraphWriter.setDefaultGraph(g2);
	Graph defaultG = markLogicDatasetGraphWriter.getDefaultGraph();
	assertTrue("did not match Triples", defaultG.contains(triple));
}
 
开发者ID:marklogic,项目名称:marklogic-jena,代码行数:25,代码来源:JenaGraphTests.java

示例11: testDelete_admin

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test
public void testDelete_admin() {
	Triple triple = new Triple(NodeFactory.createURI("s5"), NodeFactory.createURI("p5"), NodeFactory.createURI("o5"));
	Quad quad = new Quad(NodeFactory.createURI("new-graph-fordefault2"), triple);
	Node n2 = NodeFactory.createURI("new-graph-fordefault2");
	markLogicDatasetGraphWriter.add(quad);
	markLogicDatasetGraphWriter.sync();
	Graph g3 = markLogicDatasetGraphWriter.getGraph(n2);
	g3.delete(triple);
	markLogicDatasetGraphWriter.sync();
	assertTrue("did not match Triples", g3.size() == 0);

	markLogicDatasetGraphWriter.delete(quad);
	assertTrue("Quad Should be deleted , but looks like its not", !markLogicDatasetGraphWriter.contains(quad));

	markLogicDatasetGraphWriter.setDefaultGraph(g3);
	Graph defaultG = markLogicDatasetGraphWriter.getDefaultGraph();
	assertTrue("did not match Triples", defaultG.size() == 0);
}
 
开发者ID:marklogic,项目名称:marklogic-jena,代码行数:20,代码来源:JenaGraphTests.java

示例12: literalSubjectDefaultGraphGen

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test
public void literalSubjectDefaultGraphGen() throws Exception {
    final JenaIRI ex1 = jena.createIRI("http://example.com/ex1");
    final JenaIRI ex2 = jena.createIRI("http://example.com/ex2");
    // No need to cast to JenaIRI
    final JenaRDFTerm defG = jena.asRDFTerm(Quad.defaultGraphNodeGenerated);
    final JenaLiteral lit = jena.createLiteral("Hello");

    final JenaGeneralizedQuadLike q = jena.createGeneralizedQuad(lit, ex1, ex2, defG);
    assertEquals(lit, q.getSubject()); // it's a literal!
    assertEquals(ex1, q.getPredicate());
    assertEquals(ex2, q.getObject());
    assertTrue(q.asJenaQuad().getSubject().isLiteral());
    assertFalse(q.getGraphName().isPresent());
    assertTrue(q.asJenaQuad().isDefaultGraph());
}
 
开发者ID:apache,项目名称:commons-rdf,代码行数:17,代码来源:GeneralizedRDFQuadTest.java

示例13: doExportTree

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
private void doExportTree(RegisterItem item, StreamRDF out) {
    if ( item.isRegister() ) {
        Register register = item.getAsRegister(this);
        for (RegisterEntryInfo ei : listMembers(register )) {
            doExportTree( getCurrentVersion(ei.getItemURI()).asRegisterItem(), out );
        }
    }
    
    Collection<Resource> graphs = scanAllVersions(item.getRoot(), out, null);
    for (Resource g : graphs) {
        Iterator<Quad> i = store.asDataset().asDatasetGraph().findNG(g.asNode(), Node.ANY, Node.ANY, Node.ANY);
        while (i.hasNext()){
            out.quad( i.next() );
        }
    }
}
 
开发者ID:UKGovLD,项目名称:registry-core,代码行数:17,代码来源:StoreBaseImpl.java

示例14: assertIdentical

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
private void assertIdentical(final String uri, final String originalRdf) throws IOException {
    try (CloseableDataset roundtripped = getDataset(new HttpGet(uri))) {
        try (CloseableDataset original = parseTriples(new ByteArrayInputStream(originalRdf.getBytes()))) {
            final DatasetGraph originalGraph = original.asDatasetGraph();
            final DatasetGraph roundtrippedGraph = roundtripped.asDatasetGraph();
            final Iterator<Quad> originalQuadIt = originalGraph.find();
            while (originalQuadIt.hasNext()) {
                final Quad q = originalQuadIt.next();
                assertTrue(q + " should be preserved through a roundtrip! \nOriginal RDF: " + originalRdf
                        + "\nRoundtripped Graph:\n" + roundtrippedGraph, roundtrippedGraph.contains(q));
                roundtrippedGraph.delete(q);
            }
            assertTrue("Roundtripped graph had extra quads! " + roundtrippedGraph, roundtrippedGraph.isEmpty());
        }
    }
}
 
开发者ID:fcrepo4,项目名称:fcrepo4,代码行数:17,代码来源:FedoraRelaxedLdpIT.java

示例15: testGetObjectVersionProfile

import org.apache.jena.sparql.core.Quad; //导入依赖的package包/类
@Test
public void testGetObjectVersionProfile() throws IOException {
    final String id = getRandomUniqueId();
    final String label = "v0.0.1";

    createObjectAndClose(id);
    enableVersioning(id);
    postObjectVersion(id, label);
    logger.debug("Retrieved version profile:");
    try (final CloseableDataset dataset = getDataset(new HttpGet(serverAddress + id + "/fcr:versions"))) {
        final DatasetGraph graph = dataset.asDatasetGraph();
        assertEquals("Expected exactly 3 triples!", 3, countTriples(graph));
        final Resource subject = createResource(serverAddress + id);
        final Iterator<Quad> hasVersionTriple = graph.find(ANY, subject.asNode(), HAS_VERSION.asNode(), ANY);
        assertTrue("Didn't find a version triple!", hasVersionTriple.hasNext());
        final Node versionURI = hasVersionTriple.next().getObject();
        assertFalse("Found extra version triple!", hasVersionTriple.hasNext());
        assertTrue("Version label wasn't presented!",
                graph.contains(ANY, versionURI, HAS_VERSION_LABEL.asNode(), createLiteral(label)));
        assertTrue("Version creation date wasn't present!",
                graph.contains(ANY, versionURI, CREATED_DATE.asNode(), ANY));
    }
}
 
开发者ID:fcrepo4,项目名称:fcrepo4,代码行数:24,代码来源:FedoraVersionsIT.java


注:本文中的org.apache.jena.sparql.core.Quad类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。