def linked_data_discovery_for_alignment(self, entity_dbpedia_URI, entityClasses_labels): ''' discovery DUL classes alignment suggestions by entity and entity class dereferencing URIs from DBpedia param: entity_dbpedia_URI : string, DBpedia URI string entity class labels: list, list of strings return a tuple containing suggested dul classes for alignment and all_possible_rdf_types ''' from oke.oak.DBpediaQuerier import DBpediaQuerier import urllib dbpediaQuerier = DBpediaQuerier() try: entity_rdf_types = dbpediaQuerier.dbpedia_query_rdftypes( entity_dbpedia_URI) except urllib.error.URLError: print("===urllib.error.URLError") class_inst_rdftypes = self.type_alignment_by_dereferencing_types( entityClasses_labels) all_possible_rdf_types = set() all_possible_rdf_types.update(entity_rdf_types) all_possible_rdf_types.update(class_inst_rdftypes) dulClasses = [ rdftype for rdftype in all_possible_rdf_types if self.is_dul_class(rdftype) ] #ontology mapping #dulClasses = self.wikipedia_d0_ontology_mapping(dulClasses) return (dulClasses, all_possible_rdf_types)
def linked_data_discovery_for_alignment(self, entity_dbpedia_URI, entityClasses_labels): ''' discovery DUL classes alignment suggestions by entity and entity class dereferencing URIs from DBpedia param: entity_dbpedia_URI : string, DBpedia URI string entity class labels: list, list of strings return a tuple containing suggested dul classes for alignment and all_possible_rdf_types ''' from oke.oak.DBpediaQuerier import DBpediaQuerier import urllib dbpediaQuerier = DBpediaQuerier() try: entity_rdf_types = dbpediaQuerier.dbpedia_query_rdftypes(entity_dbpedia_URI) except urllib.error.URLError: print("===urllib.error.URLError") class_inst_rdftypes = self.type_alignment_by_dereferencing_types(entityClasses_labels) all_possible_rdf_types=set() all_possible_rdf_types.update(entity_rdf_types) all_possible_rdf_types.update(class_inst_rdftypes) dulClasses=[rdftype for rdftype in all_possible_rdf_types if self.is_dul_class(rdftype)] #ontology mapping #dulClasses = self.wikipedia_d0_ontology_mapping(dulClasses) return (dulClasses,all_possible_rdf_types)
def entity_rdftypes_feature_extraction(self, entity_dbpedia_URI): ''' Extracting entity RDF type as feature from DBpedia return set : entity rdf type set ''' import SPARQLWrapper from oke.oak.DBpediaQuerier import DBpediaQuerier dbpediaQuerier = DBpediaQuerier() try: entity_rdftypes = dbpediaQuerier.dbpedia_query_rdftypes(entity_dbpedia_URI,endpoint="http://galaxy.dcs.shef.ac.uk:8893/sparql") except SPARQLWrapper.SPARQLExceptions.EndPointInternalError: print("EndPointInternalError: try default dbpedia endpoint next...") entity_rdftypes.update(dbpediaQuerier.dbpedia_query_rdftypes(entity_dbpedia_URI)) #print("entity_rdftypes:",entity_rdftypes) return entity_rdftypes
def entity_rdftypes_feature_extraction(self, entity_dbpedia_URI): ''' Extracting entity RDF type as feature from DBpedia return set : entity rdf type set ''' import SPARQLWrapper from oke.oak.DBpediaQuerier import DBpediaQuerier dbpediaQuerier = DBpediaQuerier() try: entity_rdftypes = dbpediaQuerier.dbpedia_query_rdftypes( entity_dbpedia_URI, endpoint="http://galaxy.dcs.shef.ac.uk:8893/sparql") except SPARQLWrapper.SPARQLExceptions.EndPointInternalError: print( "EndPointInternalError: try default dbpedia endpoint next...") entity_rdftypes.update( dbpediaQuerier.dbpedia_query_rdftypes(entity_dbpedia_URI)) #print("entity_rdftypes:",entity_rdftypes) return entity_rdftypes