Ecrire une requête Freebase MQL qui obtient tout retour sur un sujet donné?

StackOverflow https://stackoverflow.com/questions/694037

  •  22-08-2019
  •  | 
  •  

Question

Je veux écrire une requête qui récupère tout ce qui est connu sur un sujet (seulement besoin d'être un niveau profond.

Lorsque vous travaillez dans le Freebase MQL Editor ils donnent l'exemple suivant pour « Tout ce que nous savons A propos de Jimi Hendrix ":

{
  "*" : null,
  "name" : "Jimi Hendrix",
  "type" : "/music/artist"
}

Le problème est que la requête est liée à un propriétés de type « / musique / artiste » et ne en revenir qui se rapportent à ce type. Si vous modifiez la requête d'utiliser un autre type que vous obtenez un jeu de résultats tout à fait différent.

{
  "*" : null,
  "name" : "Jimi Hendrix",
  "type" : "/people/person"
}

Comment puis-je écrire une requête qui obtient vraiment de retour tout ce qui Freebase sait Jimi Hendrix?

Était-ce utile?

La solution

Le Freebase API sujet pourrait être ce que vous êtes après:

http://www.freebase.com/experimental/ sujet / standard? id = / fr / jimi_hendrix

L'API sujet saisira toutes les propriétés directement liées à un sujet dans le graphique. L'API enveloppe une série de requêtes MQL pour obtenir toutes les données et les sorties en JSON.

Google " Freebase Sujet HTTP API " pour plus d'informations.

Autres conseils

Pour ce faire, vous aurez besoin d'un type plus avancé de requête qui examine les liens sous-jacents (/ type / lien) qui composent le graphique Freebase. Chaque lien a une source, une cible et une propriété qui lui est attribué et ils peuvent être interrogé comme ceci:

[
  {
    "master_property" : null,
    "source" : {
      "id" : "/en/jimi_hendrix"
    },
    "target" : null,
    "target_value" : null,
    "type" : "/type/link"
  }
]

On les appelle les liens sortants et représentent la plupart des valeurs que vous voyez habituellement dans l'interface utilisateur Freebase mais vous pouvez aussi échanger la source et la cible pour obtenir une liste de liens entrants liens ceci:

[
  {
    "master_property" : null,
    "source" : null,
    "target" : {
      "id" : "/en/jimi_hendrix"
    },
    "type" : "/type/link"
  }
]

Ces liens incluent des propriétés sur d'autres sujets qui font référence à Jimi Hendrix comme leur valeur et ces valeurs ne sont pas tous affichés sur la page Freebase Jimi Hendrix pour maintenir le volume d'informations à un niveau gérable.

Après un certain temps, nous avons pensé que ceci est un cas typique d'utilisation, donc nous introduisons une nouvelle API pour tout faire ceci:

http://www.freebase.com/docs/topic_api

vous obtiendrez toutes les propriétés des requêtes ci-dessus, ainsi que des médiateurs et autres goodies.

Notez que si vous voulez que toutes les propriétés de tous les sujets dans Freebase, vous devez utiliser la et non le langage de requête en temps d'exécution (il sera plusieurs fois plus rapide).

scroll top