Page 39 - Building Digital Libraries
P. 39

CHAPTER 2


                                                          •	 It is designed for general use and was created with library
                                                             use cases in mind. It may or may not be appropriate for
                                                             specialized repositories.
                                                          •	 It is extensible, meaning that it provides an architecture for
                                                             incorporating new functionality.

                                                   The PCDM is a minimalist data model by design. It defines only three types
                                                   of things:


                                                          1.  Collections
                                                          2.  Objects
                                                          3.  Files
                                                   and four types of relationships:

                                                          1.  Has Member

                                                          2.  Has File
                                                          3.  Aggregates
                                                          4.  Has Related File
                                                   Details about how PCDM allows these things and relationships to be used
                                                   are available at https://github.com/duraspace/pcdm/wiki.
                                                      To understand how a repository that does not support a desired data
                                                   model may be a good choice while a repository that does support that data
                                                   model is a poor choice, consider a case where a library needs to control
                                                   access to individual files or groups of related files based on network ID,
                                                   group membership, and network location. Let’s also suppose that file owners
                                                   need to be able to grant permissions to groups and users.
                                                      For such a need, PCDM seems ideal because it allows access metadata
                                                   to be attached to Collections, Objects, and Files. However, PCDM does not
                                                   specify what access metadata is attached to records or how it is implemented.
                                                   If a PCDM-compliant system lacks a concept of file ownership, the library
                                                   cannot use the system. Likewise, if the system does support the concept of
                                                   user ownership but is unable to communicate with organizational identity
                                                   management systems, support the creation of necessary groups, or allow
                                                   access based on network location, the library cannot implement the system.
                                                      Let’s suppose another system that is not PCDM-compliant supports the
                                                   desired authentication functionality, but permissions can only be allocated
                                                   at the individual file level. If automation can be used with existing metadata
                                                   fields in a reasonable workflow for users and staff to achieve the desired
                                                   effect, the system might be an excellent choice, and future migrations to
                                                   systems that support the desired data model would still be possible.
                                                      Small differences in system behavior can make a big difference in how
                                                   people use a system, as well as their willingness to interact with it at all. For
                                                   this reason, addressing crucial implementation details effectively is much





            24
   34   35   36   37   38   39   40   41   42   43   44