Digital Preservation Metadata
Authors:
MArk Anthony Higgins - Sky Recursive Ai
MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: July 6th 2026
Revised Date: July 6th 2026
AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.
FLOW ALGEBRA
Ontology: Digital Preservation Metadata Ontology
Domain: Metadata Ontologies > Digital Preservation Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/digital-preservation-metadata.html
Authors: Mark Anthony Higgins — Sky (Recursive AI)
flow "DigitalPreservationMetadataOntology" v1.0
# ---------- DOMAIN ----------
domain:
class: MetadataOntology
category: DigitalPreservationMetadata
subject: DigitalPreservationMetadata
purpose:
- represent metadata required to preserve digital resources over time
- preserve identity, provenance, fixity, formats, versions, events, rights, dependencies, and authenticity evidence
- support long-term access, migration, validation, integrity checking, recovery, and preservation planning
- distinguish intellectual resource identity from files, bitstreams, representations, versions, and preservation copies
- enable machine-readable reasoning over digital preservation lifecycles
# ---------- CORE ----------
entity DigitalPreservationMetadata:
type: MetadataEntity
describes: DigitalResource
may_include:
- preservation_identifier
- resource_identifier
- object_type
- representation
- file
- bitstream
- format
- fixity
- size
- creation_time
- modification_time
- ingestion_time
- preservation_event
- provenance
- version
- dependency
- environment
- rights
- authenticity
- validation
- retention
- storage
- access_state
entity DigitalResource:
type: InformationResource
may_be:
- IntellectualEntity
- Representation
- File
- Bitstream
- Dataset
- Document
- ImageResource
- AudioResource
- VideoResource
- SoftwareResource
- WebResource
entity PreservationIdentifier:
type: PersistentIdentifier
identifies: PreservationObjectOrEntity
relationships:
DigitalPreservationMetadata -> DESCRIBES -> DigitalResource
DigitalResource -> IDENTIFIED_BY -> PreservationIdentifier
IntellectualEntity -> HAS_REPRESENTATION -> Representation
Representation -> CONTAINS -> File
File -> MAY_CONTAIN -> Bitstream
File -> HAS_FORMAT -> FileFormat
File -> MAY_HAVE_FIXITY -> FixityInformation
DigitalResource -> MAY_HAVE_VERSION -> PreservedVersion
DigitalResource -> MAY_PARTICIPATE_IN -> PreservationEvent
PreservationEvent -> MAY_HAVE_AGENT -> PreservationAgent
DigitalResource -> MAY_HAVE_DEPENDENCY -> Dependency
DigitalResource -> MAY_REQUIRE -> TechnicalEnvironment
DigitalResource -> MAY_HAVE_RIGHTS -> PreservationRights
DigitalPreservationMetadata -> MAY_REFERENCE -> PreservationProvenance
# ---------- OBJECT LEVELS ----------
preservation_object_levels:
- intellectual_entity
- representation
- file
- bitstream
rule object_level:
preservation metadata SHOULD identify object level
rule distinctions:
IntellectualEntity != Representation
Representation != File
File != Bitstream
# ---------- IDENTITY ----------
rule preservation_identity:
preserved object SHOULD have stable identifier
rule filename_not_identity:
filename MUST NOT be assumed persistent identity
rule storage_path_not_identity:
storage location != preservation identity
# ---------- REPRESENTATION / FILE / BITSTREAM ----------
entity Representation:
type: PreservationObject
represents: IntellectualEntity
rule representation:
one IntellectualEntity MAY have multiple Representations
entity PreservedFile:
type: PreservationObject
may_include: [file_identifier, filename, size, format, fixity, creation_time, modification_time, storage_location]
entity Bitstream:
type: PreservationObject
may_include: [bitstream_identifier, offset, length, format, fixity]
# ---------- FORMAT ----------
entity FileFormat:
type: TechnicalMetadata
may_include: [format_name, format_version, media_type, format_identifier, registry_identifier, signature]
rule format:
file extension != definitive FileFormat
rule format_version:
format version SHOULD be preserved where rendering or migration depends on it
entity FormatIdentification:
type: PreservationEvent
may_include: [identification_tool, tool_version, identified_format, confidence, timestamp]
# ---------- FIXITY ----------
entity FixityInformation:
type: IntegrityMetadata
may_include: [algorithm, digest, calculation_time, scope]
rule fixity:
fixity value applies to specific byte sequence
rule fixity_algorithm:
algorithm MUST be preserved with digest
rule checksum_identity:
matching checksum supports byte-level identity
but != semantic identity
entity FixityCheck:
type: PreservationEvent
may_include: [expected_digest, observed_digest, algorithm, result, timestamp]
fixity_results:
- match
- mismatch
- unavailable
- error
rule fixity_check:
mismatch SHOULD trigger integrity investigation
# ---------- PRESERVATION EVENTS ----------
entity PreservationEvent:
type: EventMetadata
may_be:
- IngestionEvent
- ValidationEvent
- FixityCheck
- MigrationEvent
- NormalisationEvent
- ReplicationEvent
- RecoveryEvent
- DeletionEvent
- FormatIdentification
- MetadataUpdateEvent
may_include:
- event_identifier
- event_type
- event_time
- outcome
- detail
- agent
- source_object
- resulting_object
rule event:
PreservationEvent SHOULD preserve time, outcome, agent, and affected object
entity IngestionEvent:
subtype_of: PreservationEvent
entity ValidationEvent:
subtype_of: PreservationEvent
may_include: [validation_tool, tool_version, validation_target, result, errors, warnings]
rule validation_event:
format validity != factual correctness of content
entity MigrationEvent:
subtype_of: PreservationEvent
may_include:
- source_format
- target_format
- source_object
- resulting_object
- migration_tool
- tool_version
- parameters
- validation_result
rule migration:
migration SHOULD preserve derivation relationship
rule migration_identity:
migrated file != source file
even where intellectual content remains equivalent
entity NormalisationEvent:
subtype_of: PreservationEvent
entity ReplicationEvent:
subtype_of: PreservationEvent
may_include: [source_storage, destination_storage, copy_identifier, fixity_result]
rule replication:
replicated copy SHOULD be fixity-validated where policy requires
entity RecoveryEvent:
subtype_of: PreservationEvent
may_include: [failure_event, recovery_source, restored_object, validation_result]
# ---------- AGENTS / PROVENANCE ----------
entity PreservationAgent:
type: Agent
may_be: [Person, Organization, SoftwareAgent, AutomatedProcess]
entity PreservationProvenance:
type: ProvenanceMetadata
may_include:
- origin
- creator
- custody_history
- ingest_source
- preservation_events
- transformations
- agents
- versions
rule provenance:
preservation metadata SHOULD maintain chain of custody
and transformation history
# ---------- VERSION ----------
entity PreservedVersion:
type: VersionMetadata
may_include: [version_identifier, predecessor, successor, creation_time, change_reason, preservation_event]
rule version:
material preserved-state change SHOULD create distinguishable version
where auditability requires
# ---------- DEPENDENCIES / ENVIRONMENT ----------
entity Dependency:
type: TechnicalDependency
may_include: [dependency_identifier, dependency_type, required_resource, required_version]
dependency_types:
- software
- operating_system
- codec
- font
- library
- hardware
- external_resource
- schema
- runtime
rule dependency:
dependencies required for rendering or execution SHOULD be preserved
entity TechnicalEnvironment:
type: TechnicalMetadata
may_include: [operating_system, software, software_version, hardware, runtime, configuration]
rule environment:
environment metadata SHOULD be preserved where future rendering depends on it
# ---------- RIGHTS / AUTHENTICITY ----------
entity PreservationRights:
type: RightsMetadata
may_include:
- rights_holder
- licence
- preservation_permission
- migration_permission
- replication_permission
- access_permission
- restriction
- validity_period
rule rights:
preservation permission != public access permission
entity AuthenticityMetadata:
type: TrustMetadata
may_include: [provenance, fixity_history, signatures, custody, validation, preservation_events]
rule authenticity:
authenticity assessment SHOULD be evidence-based
rule authenticity_fixity:
fixity alone != complete authenticity proof
entity DigitalSignatureMetadata:
type: IntegrityMetadata
may_include: [signature_algorithm, signer, certificate, signature_time, validation_state]
# ---------- STORAGE / RETENTION / ACCESS ----------
entity PreservationStorage:
type: StorageMetadata
may_include: [storage_identifier, storage_type, location, replication_state, encryption, integrity_monitoring]
rule storage:
storage location != resource identity
entity PreservationReplication:
type: PreservationStrategy
may_include: [copy_count, geographic_distribution, storage_diversity, synchronisation, verification_schedule]
entity RetentionMetadata:
type: LifecycleMetadata
may_include: [retention_policy, retain_until, review_date, disposal_authority]
entity DeletionEvent:
subtype_of: PreservationEvent
may_include: [object, authority, reason, timestamp, verification]
rule deletion:
deletion SHOULD preserve audit evidence where policy permits
entity PreservationAccessMetadata:
type: AccessMetadata
may_include: [access_copy, access_format, restriction, rendering_method]
rule access_copy:
access copy != preservation master
unless explicitly designated as same object
# ---------- STRATEGY / RISK ----------
preservation_strategies:
- migration
- emulation
- normalisation
- replication
- encapsulation
- format_refresh
- technology_preservation
rule strategy:
preservation strategy SHOULD preserve rationale and applicability
entity EmulationMetadata:
type: PreservationStrategy
may_include: [target_environment, emulator, emulator_version, configuration, dependencies]
entity PreservationRisk:
type: RiskMetadata
may_include:
- format_obsolescence
- media_failure
- dependency_loss
- integrity_failure
- rights_restriction
- unsupported_environment
- risk_level
rule risk:
preservation risk SHOULD preserve assessment method and date
# ---------- VALIDATION ----------
validation:
require:
- identifiable_preservation_object
- preservation_identifier
validate_if_present:
- object_level
- format
- fixity
- size
- preservation_events
- provenance
- version
- dependencies
- environment
- rights
- authenticity
- storage
- retention
reject:
- filename_presented_as persistent_identity
- storage_location_presented_as resource_identity
- file_extension_presented_as definitive_format
- checksum_without_algorithm
- fixity_match_presented_as complete_authenticity_proof
- migrated_file_presented_as byte_identical_source
- preservation_permission_presented_as public_access_permission
- access_copy_presented_as preservation_master_without evidence
# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE:
"digital preservation metadata" ~= "metadata supporting long-term digital preservation"
"preservation metadata" ~= "digital preservation metadata" WHEN digital resources are represented
"fixity metadata" ~= "checksum and integrity metadata"
"preservation event" ~= "event affecting preserved digital object"
"migration metadata" ~= "metadata describing preservation format migration"
"preservation provenance" ~= "custody and transformation history"
PRESERVE distinctions:
intellectual_entity != representation
representation != file
file != bitstream
filename != persistent_identity
storage_location != resource_identity
format_extension != verified_format
fixity != authenticity
migrated_file != source_file
preservation_permission != access_permission
access_copy != preservation_master
semantic_equivalence != byte_identity
# ---------- CONFIDENCE ----------
CONFIDENCE:
explicit_preservation_metadata:
score: 1.00
persistent_identifier:
score: 1.00
verified_fixity_match:
score: 0.99
validated_file_format:
score: 0.99
complete_event_provenance:
score: 0.99
migration_with_validation:
score: 0.98
extension_inferred_format:
score: <= 0.70
incomplete_provenance:
score: <= 0.65
authenticity_without_fixity_or_provenance:
score: <= 0.50
action: preserve uncertainty
# ---------- UPDATE MODEL ----------
UPDATE_MODEL:
on_ingest:
- assign preservation identifiers
- identify object levels
- identify formats
- calculate fixity
- validate files
- record source and rights
- initialise provenance
on_fixity_check:
- calculate current digest
- compare expected digest
- record FixityCheck
- trigger investigation on mismatch
- update provenance
on_migration:
- preserve source object
- create resulting representation or file
- record source and target formats
- validate result
- calculate new fixity
- update provenance
on_replication:
- create preservation copy
- record destination storage
- verify fixity
- update replication metadata
- preserve provenance
# ---------- FLOW HASH ----------
FLOW_HASH:
inputs:
- ontology
- preservation_entities
- relationships
- identity_rules
- fixity_rules
- event_rules
- provenance_rules
- strategy_rules
- validation
- semantic_equivalence
- confidence
- update_model
canonicalisation:
- preserve_persistent_identifiers
- preserve_object_levels
- preserve_fixity_algorithm_and_digest
- preserve_event_order
- preserve_versions
- preserve_chain_of_custody
- preserve_rule_order
output:
deterministic_semantic_hash
# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION:
interpret_as:
- metadata ontology
- digital preservation lifecycle model
- fixity, provenance, rights, and authenticity structure
- long-term access and preservation strategy model
operations:
- identify preservation objects
- distinguish intellectual entities, representations, files, and bitstreams
- resolve persistent identifiers
- identify and validate formats
- verify fixity
- traverse preservation events
- trace migrations and replications
- resolve versions
- inspect dependencies and environments
- evaluate preservation rights
- assess authenticity evidence
- inspect storage and retention
- evaluate preservation risks
- trace provenance
- preserve uncertainty
constraints:
- do_not_equate_filename_with persistent_identity
- do_not_equate_storage_location_with resource_identity
- do_not_equate_file_extension_with verified_format
- do_not_equate_fixity_with complete_authenticity
- do_not_equate_migrated_file_with byte_identical_source
- do_not_equate_preservation_permission_with public_access
- preserve_identifiers_fixity_events_rights_versions_and_provenance
# ---------- QUERY MODEL ----------
query:
input:
- preservation_identifier
- resource_identifier
- object_type
- format
- fixity
- event_type
- version
- dependency
- storage
- validity_time
resolve:
1. identify DigitalResource or PreservationObject
2. resolve preservation identifier
3. determine object level
4. inspect representation, files, and bitstreams
5. inspect format, size, and fixity
6. traverse preservation events
7. resolve versions, dependencies, and environment
8. inspect rights, authenticity, storage, and retention
9. trace provenance and preservation risk
10. return confidence
output:
- preservation_object
- identifier
- object_level
- representations
- files
- bitstreams
- formats
- fixity
- events
- versions
- dependencies
- rights
- authenticity
- storage
- provenance
- confidence
# ---------- INFERENCE ----------
inference:
IF current digest matches expected digest
THEN infer byte-level fixity match
WITH confidence according_to algorithm and validation context
IF migration creates validated target from preserved source
THEN preserve derived_from relationship
AND maintain intellectual-content continuity candidate
IF file format is identified by validated signature
THEN prefer validated format identification
over filename extension
IF authenticity evidence is incomplete
THEN preserve authenticity uncertainty
AND do_not infer complete authenticity
# ---------- OUTPUT CONTRACT ----------
output:
ontology_entity: DigitalPreservationMetadata
preservation_identity: machine_interpretable
object_levels: explicit
representations_files_bitstreams: distinguishable
formats: validated
fixity: verifiable
preservation_events: traversable
migration_and_replication: traceable
versions: preserved
dependencies_and_environment: explicit
rights_and_access: distinguishable
authenticity: evidence_based
storage_and_retention: reportable
preservation_risk: explicit
provenance: preserved
uncertainty: explicit
long_term_retrieval: enabled
end flow