def testAggregateRaw(): memStore = plugin.get('IOMemory',Store)() graph1 = Graph(memStore) graph2 = Graph(memStore) graph3 = Graph(memStore) for n3Str,graph in [(testGraph1N3,graph1), (testGraph2N3,graph2), (testGraph3N3,graph3)]: graph.parse(StringIO(n3Str),format='n3') G = ReadOnlyGraphAggregate([graph1,graph2,graph3]) #Test triples assert len(list(G.triples((None,RDF.type,None)))) == 4 assert len(list(G.triples((URIRef("http://test/bar"),None,None)))) == 2 assert len(list(G.triples((None,URIRef("http://test/d"),None)))) == 3 #Test __len__ assert len(G) == 8 #Test __contains__ assert (URIRef("http://test/foo"),RDF.type,RDFS.Resource) in G barPredicates = [URIRef("http://test/d"),RDFS.isDefinedBy] assert len(list(G.triples_choices((URIRef("http://test/bar"),barPredicates,None)))) == 2
def testAggregateRaw(): memStore = plugin.get('IOMemory', Store)() graph1 = Graph(memStore) graph2 = Graph(memStore) graph3 = Graph(memStore) for n3Str, graph in [(testGraph1N3, graph1), (testGraph2N3, graph2), (testGraph3N3, graph3)]: graph.parse(StringIO(n3Str), format='n3') G = ReadOnlyGraphAggregate([graph1, graph2, graph3]) #Test triples assert len(list(G.triples((None, RDF.type, None)))) == 4 assert len(list(G.triples((URIRef("http://test/bar"), None, None)))) == 2 assert len(list(G.triples((None, URIRef("http://test/d"), None)))) == 3 #Test __len__ assert len(G) == 8 #Test __contains__ assert (URIRef("http://test/foo"), RDF.type, RDFS.Resource) in G barPredicates = [URIRef("http://test/d"), RDFS.isDefinedBy] assert len( list( G.triples_choices( (URIRef("http://test/bar"), barPredicates, None)))) == 2
def testAggregateRaw(): memStore = plugin.get('IOMemory', Store)() graph1 = Graph(memStore) #Crea una instancia de un grafo graph2 = Graph(memStore) graph3 = Graph(memStore) for n3Str, graph in [(testGraph1N3, graph1), (testGraph2N3, graph2), (testGraph3N3, graph3)]: graph.parse(StringIO(n3Str), format='n3') #Lee los grafos desde texto en formato N3 for s, p, o in graph2: #Analizando el contenido del grafo print 'tripleta:', s, p, o, '-' # Utility class for treating a set of graphs as a single graph # Only read operations are supported (hence the name). #Essentially a ConjunctiveGraph over an explicit subset of the entire store. G = ReadOnlyGraphAggregate([graph1, graph2, graph3]) # print '----------------------------------------' print G.triples((None, RDF.type, None)) for g in G.triples((URIRef("http://test/bar"), None, None)): print g print '---------------------------------------' #Test triples assert len(list(G.triples((None, RDF.type, None)))) == 4 assert len(list(G.triples((URIRef("http://test/bar"), None, None)))) == 2 assert len(list(G.triples((None, URIRef("http://test/d"), None)))) == 3 #Test __len__ assert len(G) == 8 print '----------Analizando G:------------------------------' for g in G: print g print '----------------------------------------' #Test __contains__ assert (URIRef("http://test/foo"), RDF.type, RDFS.Resource) in G print '----------Comprobando contenido G:------------------------------' print(URIRef("http://test/foo"), RDF.type, RDFS.Resource) in G print '----------------------------------------' barPredicates = [URIRef("http://test/d"), RDFS.isDefinedBy] assert len( list( G.triples_choices( (URIRef("http://test/bar"), barPredicates, None)))) == 2