dev-master
9999999-dev http://github.com/mcuadros/php-cayleyPHP Wrapper for the Google's Cayley graph database REST interface.
MIT
The Requires
- php >=5.5.0
- guzzlehttp/guzzle ~6.0
The Development Requires
PHP Wrapper for the Google's Cayley graph database REST interface.
PHP Wrapper for the Google's Cayley graph database REST interface., (*1)
Cayley is an open-source graph inspired by the graph database behind Freebase and Google's Knowledge Graph. Its goal is to be a part of the developer's toolbox where Linked Data and graph-shaped data (semantic webs, social networks, etc) in general are concerned., (*2)
The Cayley's default query language is called Gremlin based on JavaScript. php-cayley is a replica of this Gremlin Javascript API in PHP, all the methods and patterns from Gremlin are applicable to this library., (*3)
The recommended way to install php-cayley is through composer. You can see the package information on Packagist., (*4)
{ "require": { "mcuadros/php-cayley": "dev-master" } }
$cayley = new Cayley\Client(); $query = $cayley->graph()->vertex('Humphrey Bogart')->all(); $result = $cayley->query($query); print_r($result);
$cayley = new Cayley\Client(); $filmToActor = $cayley->graph() ->morphism() ->out('/film/film/starring') ->out('/film/performance/actor'); $query = $cayley->graph() ->vertex() ->has('name', 'Casablanca') ->follow($filmToActor) ->out('name') ->all(); $starring = $cayley->query($query); foreach($starring as $actor) { var_dump($actor['id']); }
These examples are based on the data contained in the example database 30kmoviedata.nq.gz
, (*5)
For more information please read Gremlin Javascript API documentation., (*6)
Tests are in the tests
folder.
To run them, you need PHPUnit.
Example:, (*7)
$ phpunit --configuration phpunit.xml.dist
MIT, see LICENSE, (*8)
PHP Wrapper for the Google's Cayley graph database REST interface.
MIT