*/ interface Model { /** * Creates a model from a configuration array provided by getConfig() * * @param array $config */ function __construct($options = []); /** * Returns a configuration array that can be used to instanciate the model * should only contain scalars as values * * @return array */ function getOptions(); /** * Experimental interface to access the data of the model * Will throw an exception on all current implementations * * @return RdfInterface */ function getRdfInterface(); /** * Expected interface to access the data of the model * * @return RdfsInterface */ function getRdfsInterface(); /** * Get search interface for model */ public function getSearchInterface(); }