MQL

Fra Biblab

Gå til: navigasjon, søk

Metaweb Query Language

MQL er et spørrespråk som kan brukes for å hente ut data fra Freebase. Spørringen defineres i JSON-format og data returneres fra tjenesten som en struktur i det samme formatet.

Eksempel med PHP

<?
// Bygg opp spørringen, her er vi ute etter en film som vi vet har ID = /en/the_warrior_2002
$simplequery = array('id'=>'/en/the_warrior_2002', 'starring'=>array(array('*'=>null)), '*'=>array(), 'type'=>'/film/film');
$queryarray = array('q1'=>array('query'=>$simplequery));
$jsonquerystr = json_encode($queryarray); 

// Utfør spørringen ved hjelp av CURL
$apiendpoint = "http://sandbox.freebase.com/api/service/mqlread?queries";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "$apiendpoint=$jsonquerystr");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$jsonresultstr = curl_exec($ch);
curl_close($ch); 

// Gjør om JSON-dataene til en PHP datastruktur, $resultarray
$resultarray = json_decode($jsonresultstr, true);

// Skriv ut dataene i et nogenlunde lesbart format
echo('<pre>');
print_r($resultarray);
echo('</pre>');
?>

Deler av outputen herfra vil se ut som følger:

Array
(
   [code] => /api/status/ok
   [q1] => Array
       (
           [code] => /api/status/ok
           [result] => Array
               (
                   [apple_movietrailer_id] => Array
                       (
                       )

                   [attribution] => Array
                       (
                           [0] => /user/mwcl_wikipedia_en
                       )

                   [cinematography] => Array
                       (
                           [0] => Roman Osin
                       )

                   [costume_design_by] => Array
                       (
                       )

                   [country] => Array
                       (
                           [0] => India
                           [1] => United Kingdom
                           [2] => Germany
                           [3] => France
                       )

                   osv...


Lenker

Personlige verktøy