public function getNamespaces() { $model = new OpenSKOS_Db_Table_Namespaces(); $prefixes = $this->getNamespacePrefixes(); foreach ($prefixes as &$prefix) { $prefix = $model->getAdapter()->quote($prefix); } return $model->fetchPairs($model->select()->where('prefix IN (' . implode(',', $prefixes) . ')')); }
/** * Gets all namespaces that are used inside the concepts. * * @param array $concepts An array of Api_Models_Concept * @return array An array of type $prefix => $uri */ protected function _getConceptsNamespaces($concepts) { $namespacesPrefixes = array(); foreach ($concepts as $concept) { $namespacesPrefixes = array_unique(array_merge($namespacesPrefixes, $concept['xmlns'])); } $model = new OpenSKOS_Db_Table_Namespaces(); return $model->fetchPairs($model->select()->where('prefix IN ("' . implode('","', $namespacesPrefixes) . '")')); }
public function getNamespaces() { $model = new OpenSKOS_Db_Table_Namespaces(); //@FIXME Talk to Mark. Clarify what namespaces need to be included. $prefixes = array_merge($this['xmlns'], array('dc', 'dcterms', 'skos')); foreach ($prefixes as &$prefix) { $prefix = $model->getAdapter()->quote($prefix); } return $model->fetchPairs($model->select()->where('prefix IN (' . implode(',', $prefixes) . ')')); }