Old Release

This documentation covers an old version of Fedora. Looking for another version? See all documentation.

Question:

  1. How do we implement collections in Fedora Commons?
  2. Can we have xacml policies pertaining to a collection?
  3. And also I want to know if these objects can be searched based on collection?

Answer:
In Fedora, you can establish relationships using a RELS-EXT datastream. See this page for more information about relationships. A collection object is just another fedora object, which has the rdf element like this example:

<rdf:Description rdf:about="info:fedora/abc:1"> <!-- (ie the pid of the collection object) -->
  <rel:isCollection>true</rel:isCollection>
</rdf:Description>

which says it is a collection.

A member of this collection would have a RELS-EXT datastream with the element

<rdf:Description rdf:about="info:fedora/abc:2">  <!-- (ie the pid of the member object) -->
  <rel:isMemberOf rdf:resource="info:fedora/abc:1" />
</rdf:Description>

This could equally apply to a child collection of the parent collection, in which case it would also include the element

<rel:isCollection>true</rel:isCollection>

Here is the full RELS-EXT datastream element for the parent collection above.

<foxml:datastream CONTROL_GROUP="X" ID="RELS-EXT" STATE="A" VERSIONABLE="true">
  <foxml:datastreamVersion CREATED="2009-01-12T14:23:20.112Z" ID="RELS-EXT.0" LABEL="Metadata" MIMETYPE="text/xml" SIZE="271">
    <foxml:contentDigest DIGEST="none" TYPE="DISABLED"/>
      <foxml:xmlContent>
        <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rel="info:fedora/fedora-system:def/relations-external#">
          <rdf:Description rdf:about="info:fedora/abc:1">
            <rel:isCollection>true</rel:isCollection>
          </rdf:Description>
        </rdf:RDF>
      </foxml:xmlContent>
    </foxml:datastreamVersion>
  </foxml:datastream>

The xacml policies can then applied to the collection objects.

All relationships are indexed by the resource index provided it is turned on. You can query the resource index for all relationship based data. See this page for more information about the resource index.

  • No labels