Michael J Wright Archive Documentation

Library Access Guide

Audience: Library integrators (primary) · Technical support (secondary)

Use this guide when you need to: syndicate MJW Fedora metadata into an external library catalogue or discovery layer.

Start here:

Related:

This guide is for library staff and database administrators who need to connect to the Michael J Wright Digital Archive for research, cataloging, or system integration purposes.

Archive Overview

The Michael J Wright Digital Archive is a professional digital preservation platform built on Fedora 6 Repository with PostgreSQL for metadata storage. The archive contains:

All content follows Dublin Core metadata standards with custom extensions for artwork-specific properties.


Access Methods

1. Web Portal (Recommended for Most Users)

Archive Portal: https://data.michaeljwright.com.au/

Fedora REST API (Read-Only): https://fcrepo.michaeljwright.com.au/fcrepo/rest/

Example - Browse all collections:

curl -H "Accept: application/ld+json" \
  https://fcrepo.michaeljwright.com.au/fcrepo/rest/

Example - View paintings collection:

curl -H "Accept: application/ld+json" \
  https://fcrepo.michaeljwright.com.au/fcrepo/rest/paintings

2. Fedora REST API (For Library Systems Integration)

The Fedora REST API provides machine-readable access to all archive content.

Authentication

Read-Only Access: No authentication required for GET requests to public collections.

Write Access: Contact the archive administrator for credentials if your library needs to contribute metadata or manage resources.

Base URL

https://fcrepo.michaeljwright.com.au/fcrepo/rest/

Collections Endpoints

Collection Endpoint
Paintings /paintings
Drawings /drawings
Sculptures /sculptures
Photographs /photographs
Poems /poems
Notebooks /notebooks

Supported Formats

Request metadata in your preferred format using the Accept header:

Example: Retrieve Resource Metadata

# Get a specific painting in JSON-LD format
curl -H "Accept: application/ld+json" \
  https://fcrepo.michaeljwright.com.au/fcrepo/rest/paintings/MJW-P-2024-001

Example: List All Items in a Collection

# Get all paintings with metadata
curl -H "Accept: application/ld+json" \
  https://fcrepo.michaeljwright.com.au/fcrepo/rest/paintings

3. PostgreSQL Database (Advanced Integration)

The archive uses PostgreSQL for internal metadata storage. Direct database access is not typically provided to external libraries for security and data integrity reasons.

If your institution requires SQL-level access for research or integration:

  1. Contact the Archive Administrator: rob@objectiveartefacts.com.au
  2. Describe Your Use Case: Explain why REST API access is insufficient
  3. Security Review: Database credentials are only provided after security vetting
  4. Read-Only Access: External connections are limited to read-only operations

Database Connection Details (If Approved)

Host: Contact administrator for connection details
Port: 5432 (PostgreSQL default)
Database: fcrepo
User: Read-only credentials provided separately
SSL: Required for all remote connections

Example Connection String:

postgresql://readonly_user:password@host:5432/fcrepo?sslmode=require

Database Schema

The Fedora repository uses an internal schema managed by the Fedora application. Key tables include:

Note: Querying the database directly is complex. We recommend using the Fedora REST API for most library integration needs.


Metadata Standards

All resources in the archive follow Dublin Core standards with custom extensions:

Core Dublin Core Fields

Custom Extensions (mjw namespace)


Catalog ID Convention

All works use a standardized catalog ID format:

MJW-{TYPE}-{YEAR}-{NNN}

Examples:

Type Codes:


Integration Examples

Example 1: Library Discovery System Integration

Harvest all paintings into your discovery layer:

import requests

# Fetch paintings collection
response = requests.get(
    'https://fcrepo.michaeljwright.com.au/fcrepo/rest/paintings',
    headers={'Accept': 'application/ld+json'}
)

paintings = response.json()

# Process each painting
for painting in paintings:
    catalog_id = painting.get('dc:identifier')
    title = painting.get('dc:title')
    date = painting.get('dc:date')
    # Insert into your library catalog...

Example 2: MARC Record Generation

Map Dublin Core to MARC 21 for integrated library systems:

Example 3: OAI-PMH Harvesting

If your institution uses OAI-PMH harvesters, contact the administrator to discuss enabling an OAI-PMH endpoint.


Access Levels and Permissions

Public Access (No Authentication)

Library Staff Access (Credentials Required)

Administrative Access (Restricted)


Technical Support

For Library Systems Integration

Technical Contact: rob@objectiveartefacts.com.au

Please include:

For Content or Cataloging Questions

Curator Contact: Submit inquiries via the web portal


System Architecture

For technical staff planning integration:


Frequently Asked Questions

Can we harvest metadata automatically?

Yes. Use the Fedora REST API with JSON-LD format for automated harvesting. No authentication needed for read operations.

Do you support Z39.50 or SRU/SRW?

Not currently. The Fedora REST API is the primary interface. If your library requires Z39.50, please contact us to discuss custom integration.

Can we link to works from our catalog?

Absolutely. Use persistent URLs:

https://fcrepo.michaeljwright.com.au/fcrepo/rest/{collection}/{catalog-id}

Example: https://fcrepo.michaeljwright.com.au/fcrepo/rest/paintings/MJW-P-2024-001

Is there a API rate limit?

No rate limits for reasonable library use. For bulk harvesting (1000+ requests), please contact us in advance.

How often is metadata updated?

Metadata is updated in real-time as curators add or modify content. There is no scheduled batch update cycle.

Can we contribute metadata corrections?

Yes. Email corrections to the curator team or request write access to submit updates via the API.


Change Log

2025-01-06: Initial library access guide published


Additional Resources


This guide is maintained by the Michael J Wright Archive technical team. Last updated: 2025-01-06