Questions about entity type when using Freebase

47 Views Asked by At

I am confused about that an entity in Freebase has many types , how can i know what is the type expressed in certain sub knowledge graph. for example,there is a subgraph : ['m.0f010_', 'food.dish.cuisine', 'm.042ck'] ,entity 'm.042ck' has the following types: ['base.food_menu.regional_cuisine', 'base.food_menu.summary_cuisine', 'base.ontologies.ontology_instance', 'book.book_subject', 'business.industry', 'common.topic', 'dining.cuisine', 'organization.organization_sector'] how can i get to know which type is expressed in the subgraph?

i use the following Sparql to query entity type ,is there any ways to do that

 sql = '''PREFIX fb: <http://rdf.freebase.com/ns/> 
select  ?o1 where {
         fb:%s fb:type.object.type ?o1.
         } '''%entity
1

There are 1 best solutions below

0
On

For reference, the English labels for those topics are Monjayaki and Japanese cuisine.

Unless your sub-graph partitioned the type space, that entity has all of the listed types, although some of them wouldn't be considered significant. Any type with the base. prefix belongs to a part of the type system created by an individual user. Since they're not community vetted/approved, they can be ignored for most purposes. The type common.topic is assigned to basically everything that's not an internal housekeeping entity, so has little value.

Note that Freebase was crowdsourced, like Wikidata, so it may represent a more casual world view than a professional ontologist would use. Also, the final snapshot represents a single point in time of an evolving knowledge graph.

In this particular case, there are arguably at least two different entities conflated:

  1. 'business.industry', 'organization.organization_sector'
  2. 'dining.cuisine'

either of which can be used as a 'book.book_subject' which is more a declaration of a usage than an entity type.

In the context of your stated triple, with the predicate 'food.dish.cuisine', the most relevant type is 'dining.cuisine' because that's the "expected type", per this triple:

<http://rdf.freebase.com/ns/food.dish.cuisine>  <http://rdf.freebase.com/ns/type.property.expected_type>        <http://rdf.freebase.com/ns/dining.cuisine>

If you can answer @UninformedUser's question asking about the subgraph, we may be able to offer additional detail.