Concepts fondamentaux

Si vous débutez avec Freebase, cette section aborde la terminologie et les concepts de base requis pour comprendre le fonctionnement de Freebase.

  1. Graphiques
  2. Thèmes
  3. Types et propriétés
  4. Domaines et ID
  5. Types de valeurs composées
  6. ID de sujet
  7. Espaces de noms, clés et ID de sujets
  8. En savoir plus sur les propriétés
  9. Résumé

Graphes

Les données Freebase sont stockées dans une structure de données appelée graphique. Un graphique est composé de nœuds reliés par des arêtes. Dans Freebase, les nœuds sont définis à l'aide de /type/object et les arêtes à l'aide de /type/link. En stockant les données sous forme de graphique, Freebase peut rapidement balayer les connexions arbitraires entre les sujets et ajouter facilement un nouveau schéma sans avoir à modifier la structure des données.

Thèmes

Freebase propose plus de 39 millions de sujets réels sur des entités telles que des personnes, des lieux et des choses. Les données Freebase étant représentées dans un graphique, ces rubriques correspondent aux nœuds du graphique. Cependant, tous les nœuds ne sont pas un sujet. Consultez la section sur le taux de conversion des exemples de nœuds qui ne sont pas des sujets.

Exemples de types de sujets trouvés dans Freebase:

Certains sujets sont intéressants, car ils contiennent de nombreuses données (par exemple, Wal-Mart), et d'autres sont célèbres, car elles redirigent les utilisateurs vers de nombreux autres sujets, qui peuvent potentiellement se trouver sur différents domaines d'informations. Par exemple, les thèmes abstraits tels que l'amour, la pauvreté, la chevalerie, etc., ne sont pas associés à beaucoup de propriétés, mais ils apparaissent souvent en tant que sujets de livre, de poésie, de films, etc., ce qui les rend plus remarquables.

Types et propriétés

Un thème donné peut être vu sous différentes perspectives:

  • Bob Dylan était auteur-compositeur, chanteur, interprète, auteur de livres et acteur de cinéma.
  • Léonard de Vinci était peintre, sculpteur, anatomiste, architecte, ingénieur...
  • L'amour est un sujet de livre, de film, de poésie...
  • Toute ville est un lieu, potentiellement une destination touristique et un employeur de fonctionnaires.

Pour refléter la diversité de nombreux thèmes, nous avons introduit le concept de types dans Freebase. Plusieurs types de sujets peuvent leur être attribués dans Topics. Le sujet de Bob Dylan se voit attribuer plusieurs types: le type d'auteur, le type de compositeur, d'artiste, de chanteur, etc. Chaque type contient un ensemble spécifique de propriétés. Par exemple :

  • Le type d'artiste contient une propriété qui répertorie tous les albums que Bob Dylan a produits, ainsi que tous les instruments de musique qu'il était connu pour jouer.
  • Le type d'auteur du livre contient une propriété qui liste tous les livres que Bob Dylan a écrits ou modifiés, ainsi que son école de pensée ou de mouvement.
  • Le type d'entreprise contient de nombreuses propriétés permettant de répertorier les fondateurs, les membres du conseil d'administration, la société mère, les divisions, les employés, les produits, les revenus et les bénéfices annuels de l'année, etc.

Ainsi, un type peut être considéré comme un conteneur conceptuel de propriétés qui sont le plus souvent nécessaires pour décrire un aspect particulier des informations. Un type peut être considéré comme semblable à une table relationnelle. Chaque table "type" possède une clé étrangère dans la table "identity" (identité) qui définit chaque sujet de manière unique.

Domaines et ID

Tout comme les propriétés sont regroupées par types, les types eux-mêmes sont regroupés en domaines. Considérez les domaines comme les sections de votre journal préféré: Business, Style de vie, Arts et divertissement, Politique, Économie, etc. Chaque domaine possède un identifiant (par exemple,

L'ID d'un domaine ressemble à un chemin de fichier ou à une adresse Web.

Chaque type se voit également attribuer un ID, qui est basé sur le domaine auquel il appartient. Par exemple, le type d'entreprise appartient au domaine d'entreprise et est associé à l'ID /business/company. Autres exemples :

Tout comme un type hérite du début de son ID de son domaine, une propriété hérite également du début de son ID du type auquel elle appartient. Par exemple, l'ID /business/company/industry est attribué à la propriété "Industry" (Type d'entreprise) (qui permet de spécifier le secteur d'activité d'une entreprise). Autres exemples :

Ainsi, même si les types ne sont pas organisés dans des hiérarchies dans Freebase, les domaines, les types et les propriétés reçoivent des ID conceptuellement organisés dans une hiérarchie de type répertoire de fichiers.

Types de valeurs composées

Un type de valeur composée est un type dans Freebase qui est utilisé pour représenter des données où chaque entrée comprend plusieurs champs. Les types de valeurs composées, ou CVT, sont utilisés dans Freebase pour représenter des données complexes. Cela peut sembler un peu déroutant au premier abord, mais les TCT sont une partie très importante du schéma Freebase. Elles permettent de modéliser plus précisément les relations complexes entre les sujets.

Prenons l'exemple suivant: la population d'une ville évolue au fil du temps. Cela signifie que, chaque fois que vous interrogez la base Freebase pour la population, vous demandez au moins implicitement une population à une certaine date. Deux valeurs sont impliquées, un certain nombre de personnes et la date. Voici une situation dans laquelle un cryptogramme est extrêmement utile : Sans ce modèle, pour modéliser les données de population, il faudrait créer un thème, le nommer "population de Vancouver en 1997", puis soumettre les informations.

Un peut être considéré comme un sujet ne nécessitant pas la création d'un nom à afficher. Comme les sujets normaux, les VCT possèdent un GUID qui peut être référencé indépendamment. Cependant, le client Freebase les traite de manière très différente des sujets. Dans la plupart des cas, chaque propriété de la colonne CVT doit être une propriété de sélection.

MID des sujets

Bien qu'un sujet puisse ou non être identifié par un espace de noms ou un ID de clé, il peut toujours être identifié à l'aide d'un MID, un identifiant machine qui consiste en /m/ suivi d'un identifiant unique en base32. Les MID sont attribués aux sujets au moment de leur création et sont gérés tout au long de leur durée de vie. Ils jouent un rôle essentiel lorsque des sujets sont fusionnés ou divisés, car les applications externes peuvent suivre un sujet logique, même si l'identité Freebase physique (le GUID du sujet) peut changer. Les identifiants générés automatiquement diffèrent des autres ID Freebase lisibles (renvoyés par la propriété "id") dans la mesure où ils sont:

  • Garantie d'existence
  • Générée automatiquement
  • Conçu pour permettre la comparaison hors connexion
  • N'a pas été conçu pour donner du sens aux êtres humains
  • Version courte (peut-être fixe)
  • Idéal pour un échange rapide de clés entre des systèmes externes et des composants (externes, échanges)

Les MID sont les identifiants recommandés pour aborder des thèmes dans Freebase

Espaces de noms, clés et ID de sujets

La hiérarchie des ID de domaine, de type et de propriété, semblable à l'annuaire de fichiers, est une application d'un concept plus général: les espaces de noms et les clés. Un espace de noms est comme un répertoire de fichiers, et une clé est comme un nom de fichier. Tout comme les noms de fichiers d'un répertoire de fichiers doivent être uniques, toutes les clés d'un espace de noms particulier doivent également être uniques.

Plus précisément, /business est l'espace de noms correspondant au domaine de l'entreprise. À l'intérieur de celui-ci, des clés sont attribuées aux types d'activité (par exemple, company) qui sont uniques. L'ID de chaque type est formé en ajoutant sa clé à l'ID de l'espace de noms (par exemple, /business/company).

À côté des espaces de noms, plusieurs types d'espaces de noms correspondent à des domaines et à des types. L'espace de noms /en est le plus important et le plus souvent rencontré. Il s'agit de l'espace de noms anglais dans lequel les sujets les plus connus peuvent recevoir des clés uniques pour former des ID en anglais lisibles. Par exemple, le prolifique Bob Dylan est si connu que son sujet dans Freebase se voit attribuer la clé bob_dylan dans l'espace de noms /en, et que l'ID du sujet est donc /en/bob_dylan. Cet ID vous permet d'accéder à son sujet dans le client Web à l'aide de l'URL simple

Plus d'infos sur les propriétés

Le dernier concept de base à aborder implique une différence majeure entre les propriétés Freebase et leur analogie avec les technologies de bases de données relationnelles, à savoir les colonnes des tables relationnelles. Une colonne de table relationnelle ne peut contenir qu'une seule valeur par ligne. Prenons l'exemple d'une table relationnelle classique "book" avec une colonne intitulée "author". Pour chaque ligne du tableau "book", la colonne "author" ne peut contenir qu'une seule clé étrangère dans un tableau "author". Si un livre est associé à plusieurs auteurs, cette simple structure de schéma relationnel ne fonctionne pas. Il faudrait alors créer une table pour modéliser les auteurs. Autrement dit, nous aurions besoin d'une table "book", d'une table "author" et d'une table "authorship" pour stocker les relations n-n-n entre les livres et les auteurs. La façon dont vous récupérez les données change de manière assez radicale lorsque vous passez d'une conception de schéma à l'autre.

À l'inverse des technologies de base de données traditionnelles, Freebase considère les propriétés à valeurs multiples comme si souhaitables pour modéliser les données réelles qu'il accepte les propriétés à valeurs multiples par défaut. Autrement dit, lors de la création de la propriété /book/written_work/author, il était supposé autoriser plusieurs auteurs par livre. De la même manière, vous pouvez interroger une propriété à valeurs multiples et une propriété à valeur unique. Il n'est pas nécessaire de joindre un troisième tableau qui représente la relation n-n.

Résumé

  • Un type est un conteneur conceptuel de propriétés associées généralement nécessaires pour décrire un certain aspect d'un sujet.
  • Un thème peut être attribué à un ou plusieurs types (/common/topic par défaut).
  • À mesure que les propriétés sont regroupées par types, les types sont regroupés par domaines.
  • Les domaines, types et propriétés se voient attribuer des ID dans une hiérarchie d'espace de noms/de clé.
  • Les thèmes les plus courants reçoivent des ID dans l'espace de noms /en, qui sont des chaînes lisibles en anglais.
  • Les Topics sont identifiés de manière unique dans Freebase par les GUID.
  • Par défaut, les propriétés sont des valeurs multiples, et les propriétés de plusieurs valeurs et les propriétés à valeur unique peuvent être interrogées de la même manière.