Profiles

HoldingCore2

Dublin Core Application Profile for Zine Holdings and Copies

Overview

HoldingCore2 is a Dublin Core–based application profile for describing specific holdings (physical or digital copies) of zines held by repositories. It connects ZineCore2 bibliographic records to RepoCore2 repository records with local inventory details.

HoldingCore2:

  • Distinguishes between the work (ZineCore2) and the copy (HoldingCore2).
  • Tracks location, call numbers, access status, circulation rules, and condition.
  • Supports both physical and digital holdings.
  • Enables multi-repository union catalogs (multiple holdings per zine).

The HoldingCore2 profile is defined using DC Tabular Application Profiles (DC TAP) for machine readability and targets JSON and JSON-LD as primary exchange formats.

Resource Type

HoldingCore2 describes instances of the conceptual resource type Holding:

  • Class: zine-holding:Holding
  • Typical instances: a physical copy of a zine at a library, a digital scan in an archive, inventory records at a distro

Each holding record represents one or more copies of a specific zine at a specific repository. A zine may have multiple holding records (one per repository, or multiple per repository for different locations/conditions).

Work vs. Copy (FRBR Model)

HoldingCore2 follows the FRBR (Functional Requirements for Bibliographic Records) model:

  • Work (ZineCore2) — The abstract bibliographic entity (Mutate Zine #3)
  • Item (HoldingCore2) — The specific physical or digital copy held by a repository

This separation enables:

  • Shared cataloging: Many repositories reference the same ZineCore2 record
  • Local details: Each repository adds its own holdings information
  • Union catalogs: "Which libraries hold this zine?"
  • Circulation: Track location and access for specific copies

Element Set

This profile uses:

  • Dublin Core Terms (http://purl.org/dc/terms/) for descriptions.
  • A HoldingCore2 namespace (https://zinecore.org/v2/holding#) for holding-specific properties.

HoldingCore2 defines one primary shape:

  • holdingShape – description of a holding (copy or copies) at a repository.

HoldingCore2 Shape: holdingShape

The table below summarizes the properties used for holdingShape. Detailed semantics and examples follow.

IDLabelDC MappingRequiredRepeatableNotes
idLocal IDlocal:idyesnoInternal, stable identifier
repository_idRepository IDlocal:repositoryIdyesnoRepoCore2 ID of holding repository
zine_idZine IDlocal:zineIdyesnoZineCore2 ID of described zine
call_numberCall Numberlocal:callNumbernonoLocal call number or shelfmark
locationLocationlocal:locationnonoShelf location or sub-collection
access_statusAccess Statuslocal:accessStatusnonoReading room only, Loanable, etc.
conditionConditionlocal:conditionnonoPhysical condition note
copy_countCopy Countlocal:copyCountnonoNumber of copies this record represents
barcodeBarcodelocal:barcodenonoILS barcode or item identifier
digital_availableDigital Availablelocal:digitalAvailablenonoBoolean: digital version available?
digital_urlDigital URLlocal:digitalUrlnonoURL to digital version
distro_statusDistro Statuslocal:distroStatusnonoDuplication/digitization permissions
notesNotesdcterms:descriptionnoyesAdditional holding-specific notes

Cardinality and Constraints (Narrative)

  • Required properties (minimal record): id, repository_id, zine_id.
    • id: Internal, stable identifier (e.g., holding_ucb_mutate_3_copy1).
    • repository_id: MUST reference a valid RepoCore2 id.
    • zine_id: MUST reference a valid ZineCore2 id.
  • Call numbers and location:
    • call_number is the local classification number (e.g., PS3551.R34 M88, ZINE-FEM-2024-03).
    • location describes physical placement (e.g., "Zine Room", "Main Stacks - 3rd Floor", "Special Collections").
    • At least one of call_number or location is RECOMMENDED for physical holdings.
  • Access status:
    • access_status SHOULD use Holding Access Status vocabulary.
    • Values include: reading-room-only, loanable, reference, restricted, digital-only, unavailable.
    • See Holding Access Status vocabulary.
  • Condition:
    • condition is free text describing physical state (e.g., "Excellent", "Minor edge wear", "Water damage to back cover").
    • SHOULD follow institutional condition assessment standards if available.
  • Copy count:
    • copy_count indicates how many physical copies this holding record represents.
    • Default is 1 if not specified.
    • Use separate holding records for copies with different conditions or locations.
  • Digital holdings:
    • digital_available: true indicates a digital version exists.
    • digital_url provides the access URL (may be restricted/authenticated).
    • Digital-only holdings (no physical copy) should set access_status: "digital-only".
  • Distro status:
    • distro_status describes duplication/digitization permissions.
    • SHOULD use Holding Distro Status vocabulary.
    • Values include: can-duplicate, can-digitize, no-duplication, rights-holder-approval-required, public-domain.
    • See Holding Distro Status vocabulary.

Alignment with Standards

BIBFRAME

HoldingCore2 maps to BIBFRAME Item model:

  • HoldingCore2 → bf:Item
  • zine_id → bf:itemOf (work)
  • repository_id → bf:heldBy (organization)
  • call_number → bf:shelfMark

MARC Holdings

HoldingCore2 aligns with MARC holdings records (MFHD):

  • call_number → MARC 852 $h$i
  • location → MARC 852 $b$c
  • barcode → MARC 876 $p
  • copy_count → MARC 863 $a

Use Cases

Use Case 1: Library Cataloging Physical Holdings

A university library holds 2 copies of a zine in different locations:

// Holding 1: Circulating copy
{
  "id": "holding_ucb_mutate_3_circ",
  "repository_id": "repo_ucb_library",
  "zine_id": "zine_mutate_3_1st",
  "call_number": "ZINE PS3551.R34 M88",
  "location": "Main Stacks - 3rd Floor",
  "access_status": "loanable",
  "condition": "Excellent",
  "copy_count": 1,
  "barcode": "31175123456789",
  "distro_status": "can-digitize"
}

// Holding 2: Special Collections copy
{
  "id": "holding_ucb_mutate_3_spec",
  "repository_id": "repo_ucb_library",
  "zine_id": "zine_mutate_3_1st",
  "call_number": "SPEC-COLL ZINE M88",
  "location": "Special Collections - Zine Archive",
  "access_status": "reading-room-only",
  "condition": "Excellent - archival preservation",
  "copy_count": 1,
  "distro_status": "can-digitize"
}

Use Case 2: Distro Inventory Management

A feminist distro tracks in-stock zines:

{
  "id": "holding_ladyfest_mutate_3",
  "repository_id": "repo_ladyfest_distro",
  "zine_id": "zine_mutate_3_1st",
  "location": "Bin 7 - Reproductive Rights",
  "access_status": "for-sale",
  "condition": "New",
  "copy_count": 15,
  "distro_status": "can-duplicate",
  "notes": ["Restock when < 5 copies", "Creator approved photocopying"]
}

Use Case 3: Digital Archive

An archive provides digital access to scanned zines:

{
  "id": "holding_barnard_mutate_3_digital",
  "repository_id": "repo_barnard_zine_archive",
  "zine_id": "zine_mutate_3_1st",
  "access_status": "digital-only",
  "digital_available": true,
  "digital_url": "https://digitalarchive.barnard.edu/zines/mutate-3",
  "distro_status": "can-digitize",
  "notes": ["Scanned with creator permission", "Available for download under CC BY-NC-SA"]
}

Use Case 4: Personal Collection Tracking

An individual tracks their personal zine collection:

{
  "id": "holding_jane_personal_mutate_3",
  "repository_id": "repo_jane_personal_collection",
  "zine_id": "zine_mutate_3_1st",
  "location": "Bookshelf 2 - Feminist Zines",
  "condition": "Good - minor cover wear",
  "copy_count": 1,
  "notes": ["Acquired at Ladyfest 2024", "Signed by author"]
}

Multiple Holdings Per Zine

A single zine may have many holding records across different repositories:

ZineCore2: "Mutate Zine #3"
  ├─ HoldingCore2 @ UC Berkeley Library (loanable)
  ├─ HoldingCore2 @ UC Berkeley Library (special collections)
  ├─ HoldingCore2 @ Barnard Zine Archive (digital)
  ├─ HoldingCore2 @ Ladyfest Distro (for sale)
  └─ HoldingCore2 @ Jane's Personal Collection

This enables union catalog queries:

  • "Which repositories hold Mutate Zine #3?"
  • "Where can I borrow this zine?"
  • "Is there a digital version available?"

Relationship to Other Profiles

HoldingCore2 requires both ZineCore2 and RepoCore2:

RepoCore2 (repo_ucb_library)
  ↑ repository_id
HoldingCore2 (holding_ucb_mutate_3)
  ↑ zine_id
ZineCore2 (zine_mutate_3_1st)

Important: You cannot create a HoldingCore2 record without valid zine_id and repository_id references.

Circulation and Access Control

Libraries can use HoldingCore2 to track circulation rules:

access_statusMeaningTypical Use
loanableCan be checked outGeneral circulation
reading-room-onlyMust be used on-siteSpecial collections, rare items
referenceCannot leave libraryReference materials
restrictedRequires special permissionSensitive content, fragile items
digital-onlyNo physical copy availableDigital archives
for-saleAvailable for purchaseDistros, zine shops
unavailableTemporarily unavailableOn loan, in processing, lost

See Also

Copyright ©2026 ZineCore2 Contributors,