MQL
Fra Biblab
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...