예제 #1
0
def explore_dblp():
    graph = KnowledgeGraph(graph_name='dblp',
                           graph_uri='http://dblp.l3s.de',
                           prefixes={
                               "xsd":
                               "http://www.w3.org/2001/XMLSchema#",
                               "swrc":
                               "http://swrc.ontoware.org/ontology#",
                               "rdf":
                               "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
                               "dc":
                               "http://purl.org/dc/elements/1.1/",
                               "dcterm":
                               "http://purl.org/dc/terms/",
                               "dblprc":
                               "http://dblp.l3s.de/d2r/resource/conferences/"
                           })

    endpoint = 'http://10.161.202.101:8890/sparql/'
    port = 8890
    output_format = HttpClientDataFormat.PANDAS_DF
    max_rows = 1000000
    timeout = 12000
    client = HttpClient(endpoint_url=endpoint,
                        port=port,
                        return_format=output_format,
                        timeout=timeout,
                        max_rows=max_rows)

    classes = graph.classes_and_freq().sort({'frequency': 'DESC'})
    #class_with_max_freq = graph.classes_and_freq().max('frequency').to_sparql()
    attributes_of_papers = graph.features('swrc:InProceedings')
    attributes_of_papers_with_freq = graph.features_and_freq(
        'swrc:InProceedings')
    papers = graph.entities('swrc:InProceedings')
    #papers_with_features = graph.entities_and_features('swrc:InProceedings').to_sparql()
    num_papers = graph.num_entities('swrc:InProceedings')

    print("{}".format(classes.to_sparql()))
    df = classes.execute(client, return_format=output_format)

    #print("{}".format(attributes_of_papers.to_sparql()))
    #df = attributes_of_papers.execute(client, return_format=output_format)

    print(df)
예제 #2
0
def test_convenience_functions():
    graph = KnowledgeGraph(graph_name='dbpedia')
    entities = graph.entities('dbpo:BasketballPlayer',
                              entities_col_name='player')
    print(entities.to_sparql())
    features = graph.features('dbpo:BasketballPlayer',
                              features_col_name='feature_uri')
    print(features.to_sparql())
    entities_feats = graph.entities_and_features(
        'dbpo:BasketballPlayer', [('dbpp:nationality', 'nationality'),
                                  ('dbpp:birthPlace', 'place'),
                                  ('dbpp:birthDate', 'birthDate'),
                                  ('dbpp:team', 'team')])
    print(entities_feats.to_sparql())
    classes_freq = graph.classes_and_freq()
    print(classes_freq.to_sparql())
    feats_freq = graph.features_and_freq('dbpo:BasketballPlayer')
    print(feats_freq.to_sparql())
    n_entities = graph.num_entities('dbpo:BasketballPlayer')
    print(n_entities.to_sparql())