server/src/app/Libraries/Mappers/CocoonAbstractRdfMapper.php
changeset 19 eadaf0b8f02e
parent 18 f2a40bbc27f6
child 23 037687868bc4
--- a/server/src/app/Libraries/Mappers/CocoonAbstractRdfMapper.php	Tue Nov 17 13:11:55 2015 +0100
+++ b/server/src/app/Libraries/Mappers/CocoonAbstractRdfMapper.php	Fri Nov 27 17:59:36 2015 +0100
@@ -24,9 +24,9 @@
  */
 abstract class CocoonAbstractRdfMapper implements RdfMapper {
 
-    public function __construct(Graph $inputGraph) {
+    public function __construct(Graph $inputGraph, $uri=null) {
         $this->inputGraph = $inputGraph;
-        $this->uri = $inputGraph->getUri();
+        $this->uri = is_null($uri)?$inputGraph->getUri():$uri;
         $this->outputGraphes = [];
     }
 
@@ -132,9 +132,12 @@
         $collections = $res->all('dc:isPartOf');
         foreach($collections as $coll) {
             if($coll instanceof Resource) {
-                $collectionGraph = new Graph($coll->getUri());
-                $this->outputGraphes[$coll->getUri()] = $collectionGraph;
-                $collectionGraph->resource($coll->getUri(), 'edm:Collection');
+                $collUri = $coll->getUri();
+                if(strpos(strtolower($collUri), "collection", strlen(config('cocoon_doc_id_base_uri'))) !== FALSE) {
+                    $collectionGraph = new Graph($collUri);
+                    $this->outputGraphes[$collUri] = $collectionGraph;
+                    $collectionGraph->resource($collUri, 'edm:Collection');
+                }
             }
         }
     }