Advanced Authority Control (previously Editable Authority Control)
Introduction
Editable Authority Control provides a solution for the management of assigned Authority Control records used within DSpace authority control and assigned to DSpace Item metadata. This solution automatically assigns a unique Authority record that can be used to locally preserve externally controlled vocabulary information when assigned to DSpace Item metadata fields.
...
Creation and Management of Concepts within the Thesauri, including support for creating and assigning Preferred Terms, Non-Preferred Terms and Hidden Terms in DSpace Authority Control Concepts. In addition support for managing the hierarchical and associative relationships between Authority Control Concepts will be available. This will allow support to create and manage hierarchical vocabularies (taxonomies) as well as relate concepts across thesauri (for example, assigning organization membership to authors).
Finally, support for assigning additional metadata to both Concepts and Terms will be have in a manner equivalent to attaching “Notes” to Term and Concept objects (skos and skos-xl namespaces will be employed to facilitate thesaurus specific metadata attributes. Additional attributes will be able to be defined in namespaces decided on my the Repository Administrators (Dublin Core, FoaF, MADS, MODS, so-on)
...
Versions
DSpace 6.x : A recent production rollout of the 6.0 version of this codebase is deployed on the TXState repository with additional UI enhancements. Added Features in DSpace 6 version of solution include:
Authority Concept Linking in Discovery: Links will be traversable to profile and used in filters for associated Authority Concept. Authority Concepts can be reached by clicking on a glyphicon located next to the Authority Concepts name. Non administrative users will only have access to view the public Authority Concept profile page. Administrators will be able to view all Concept data.
Public/Private Authority Concept View (Author / Organization Profiles): Allow for administrator to identify if a Profile should be publicly viewable or not. Feature will be controlled by setting Authority Concept as Public / Private in Authority Concept Record.
Hidden Metadata Fields: Allow for Repository Sys Admin to Configure specific Concept Metadata Fields to be publicly Visible or not. Similar to Item Provenance metadata visibility.
Advanced Edit FOrms Forms for Authority Concepts: Similar in design to the Community and Collection Edit forms, this interface will allow for configuration of the fields that should be populated when creating a new Authority Concept manually. Configuration will allow for different forms per Authority Scheme in DSpace (person, organization, type, subject, etc).
Example Case: Person (Scheme) Specific Create and Edit Page:
Support a standard set of fields that may be configured specifically for Scheme.
Required and Optional Fields
Multiple Value Fields
Fields for Relationships (IsMemberOf Organization)
Field titles and Help instructions
Support for Controlled Vocabularies, Value Lists
- Merging Authority Concepts: Many Concepts in the current Authority Control are duplicates due to name variants not being matched on Item Deposit. This required a solution in the Admin UI to support to assure that Duplicates can be easily resolved by merging them with other pre-existing Authority records. Provided support in the Concept view to search for and merge other concepts in the same Scheme. Support will included Curation task queue scheduling to assure that updates to existing Item metadata and discovery indexes.
...
DSpace 6.x Data Model
Simplifies previous previous 5.x Schema for DSpace AAC modelDSpace 5.x EAC data model
...
Code Block | ||||
---|---|---|---|---|
| ||||
-------------------------------------------------------
-- Sequences for creating new IDs (primary keys) for tables.
-------------------------------------------------------
CREATE SEQUENCE conceptrelationtype_seq;
CREATE SEQUENCE conceptrelation_seq;
--------------------------------------------------------------------------------------------------------------
-- ADVANCED AUTHORITY CONTROL ENTITIES
--------------------------------------------------------------------------------------------------------------
CREATE TABLE scheme
(
uuid UUID PRIMARY KEY DEFAULT gen_random_uuid() REFERENCES dspaceobject(uuid),
created TIMESTAMP WITH TIME ZONE,
modified TIMESTAMP WITH TIME ZONE,
name VARCHAR(256) UNIQUE,
lang VARCHAR(24)
);
CREATE TABLE term
(
uuid UUID PRIMARY KEY DEFAULT gen_random_uuid() REFERENCES dspaceobject(uuid),
created TIMESTAMP WITH TIME ZONE,
modified TIMESTAMP WITH TIME ZONE,
source VARCHAR(256),
status VARCHAR(256),
literalForm TEXT,
lang VARCHAR(24),
hidden BOOL,
discoverable BOOL
);
CREATE TABLE concept
(
uuid UUID PRIMARY KEY DEFAULT gen_random_uuid() REFERENCES dspaceobject(uuid),
created TIMESTAMP WITH TIME ZONE,
modified TIMESTAMP WITH TIME ZONE,
status VARCHAR(256),
lang VARCHAR(24),
source VARCHAR(256),
hidden BOOL,
replaced_by UUID REFERENCES concept(uuid),
preferred_term UUID REFERENCES term(uuid)
);
CREATE TABLE conceptrelationtype
(
id INT PRIMARY KEY DEFAULT NEXTVAL('conceptrelationtype_seq'),
hierarchical BOOL,
incoming_label VARCHAR(64) UNIQUE,
outgoing_label VARCHAR(64) UNIQUE
);
--------------------------------------------------------------------------------------------------------------
-- ADVANCED AUTHORITY CONTROL RELATIONS
--------------------------------------------------------------------------------------------------------------
CREATE TABLE scheme2concept
(
scheme_id UUID REFERENCES scheme(uuid),
concept_id UUID REFERENCES concept(uuid),
PRIMARY KEY(scheme_id, concept_id)
);
CREATE TABLE concept2concept
(
id INT PRIMARY KEY DEFAULT NEXTVAL('conceptrelation_seq'),
incoming_id UUID REFERENCES concept(uuid),
outgoing_id UUID REFERENCES concept(uuid),
relation_type INT REFERENCES conceptrelationtype(id)
);
CREATE TABLE concept2term
(
concept_id UUID REFERENCES concept(uuid),
term_id UUID REFERENCES term(uuid),
PRIMARY KEY(concept_id, term_id)
);
|
DSpace 5.x Data Model
...
Functional and Abstract Concepts behind Data Model Approach
...
The database model for the EAC had been expressed below, in this model, MetadataTerms can be created within MetadataConcept that are contained within a MetadataThesaurus (Scheme). All are treated as core DSpaceObject types and as such, also have metadata tables that can be associated with them.
...
DSpace 6.X Advanced Authority Control
(to be documented)
DSpace 5.X Editable Authority Control
Enable the Editable Authority Control System
Add the flowing configuration into xmlui.xconf to enable the authority management ui.
<aspect name="Authority" path="resource://aspects/Authority/" />
If not logged in as admin, users can still browse the existing authority objects by using the link
...