Jump to content

ICT:Numbering v 4.1

From Costa Sano MediaWiki
Revision as of 12:05, 30 January 2026 by Mngr (talk | contribs) (Created page with "= Numbering and Identifier Policy = This page defines the official policy for identifiers, numbering, and file naming within the Costasano Heritage Database. It establishes a single, consistent strategy to ensure: * uniqueness * predictability * stability over time * minimal editorial effort * long-term maintainability Identifiers are technical labels only. They must never encode interpretation or semantics beyond grouping and sequencing. == Scope == This policy...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Numbering and Identifier Policy

This page defines the official policy for identifiers, numbering, and file naming within the Costasano Heritage Database.

It establishes a single, consistent strategy to ensure:

  • uniqueness
  • predictability
  • stability over time
  • minimal editorial effort
  • long-term maintainability

Identifiers are technical labels only.

They must never encode interpretation or semantics beyond grouping and sequencing.


Scope

This policy applies to:

  • DigitalAssets
  • HeritageObjects (if numbered)
  • MediaWiki file names derived from DigitalAssets

It does NOT apply to:

  • Persons
  • Organizations
  • Places
  • Keywords
  • lookup tables


Core philosophy

Separation of concerns

The system strictly separates:

  • Files → storage only
  • DigitalAssets → interpretation and metadata
  • Research entities → historical meaning

Therefore:

Files must NEVER define identity.

Identity is defined only by research entities (primarily DigitalAssets).


Identifiers are mechanical

Identifiers:

  • are generated automatically
  • are sequential
  • are context-based
  • contain no interpretation
  • must not be edited manually

Meaning belongs in metadata fields, not in the identifier.


One source of truth

Each entity has exactly one identifier.

Derived objects must reuse that identifier rather than creating new numbering systems.

No parallel or competing counters are allowed.


Identifier structure

Standard format

Numbered entities use:

 CHAPTER–CONTEXT–COUNTER

Example:

 CH03-ROM-0007


Components

Chapter

Short code of the ResearchChapter.

Provides narrative grouping.

Example:

 CH03


Context

Short code of either:

  • an Organization, or
  • a Place

Whichever best describes the primary context.

The slot is neutral and does not distinguish between actor or location.

Examples:

 ROM
 FLO
 ARCH
 CONG


Counter

Sequential integer:

  • starts at 1
  • unique within (chapter + context)
  • zero padded
  • automatically computed

Examples:

 0001
 0002
 0003


Example

 CH03-ROM-0015

Means:

  • Chapter 03
  • Context Rome
  • 15th registered item in this group

Nothing more.


DigitalAssets numbering

Principle

DigitalAssets are the primary numbered entities because they represent concrete research sources.

Each DigitalAsset receives exactly one identifier.


Implementation

The DigitalAssets table stores:

  • chapter_id
  • context_code
  • sequence_number
  • identifier

When creating a new record:

  1. determine chapter
  2. determine context (organization or place)
  3. query MAX(sequence_number) for that pair
  4. next = max + 1
  5. compose identifier
  6. save identifier

No counter table exists.

The table itself acts as the counter history.


Rationale

This approach:

  • avoids locking or race conditions
  • avoids separate counter tables
  • is simple to understand
  • works reliably with Cargo
  • is easy to debug


File naming policy

Core rule

Files are storage only.

Files must NEVER have independent numbering.


Naming rule

The file name MUST reuse the DigitalAsset identifier.

Format:

 identifier + extension

Examples:

 CH03-ROM-0007.jpg
 CH03-ROM-0007.tif
 CH03-ROM-0007.pdf


Why

This guarantees:

  • one file ↔ one DigitalAsset
  • immediate visual matching
  • no duplicate numbering systems
  • easier exports and backups
  • long-term stability


Derivatives

Derived files reuse the same base identifier with suffixes.

Examples:

 CH03-ROM-0007_master.tif
 CH03-ROM-0007_web.jpg
 CH03-ROM-0007_ocr.pdf

No new counters are created.


Prohibited

The following are not allowed:

  • independent file numbering
  • MediaWiki auto-generated names
  • timestamps
  • random hashes
  • renaming after upload
  • separate file counters


HeritageObjects numbering (optional)

HeritageObjects may optionally use the same scheme if sequential registration is useful.

If used:

  • follow the same structure
  • maintain separate counters
  • never mix sequences with DigitalAssets


What is NOT numbered

The following entities intentionally do not use numbering:

  • Persons
  • Organizations
  • Places
  • Keywords
  • lookup tables

These are identified by names or codes only.

Numbering would add complexity without benefit.


Editorial workflow

DigitalAsset creation

  1. create DigitalAsset page via form
  2. identifier generated automatically
  3. upload file using that exact name
  4. link file

Never upload files first and rename later.


Maintenance rule

Identifiers are permanent.

They must never be changed after creation.


Design principles summary

The system prioritizes:

  • simplicity
  • determinism
  • automation
  • long-term stability
  • minimal dependencies

Boring, predictable numbering is preferred over clever solutions.


Status

Official numbering and identifier policy – Version 1.0