Skip to main content

Book Metadata Ontology

Document Metadata
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 08 October 2026
Audio Overview
FLOW ALGEBRA

Ontology: Book Metadata Ontology
Domain: Metadata Ontologies > Document Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/document-metadata/book-metadata-ontology.html

Authors: Mark Anthony Higgins — Sky (Recursive AI)

flow "BookMetadataOntology" v1.0

# ---------- DOMAIN ----------
domain:
  class: MetadataOntology
  category: DocumentMetadata
  subject: BookMetadata
  purpose:
    - represent metadata describing books and book resources
    - preserve book identity, title, authorship, edition, publication, structure, identifiers, rights, and provenance
    - support book discovery, citation, validation, retrieval, cataloguing, and reuse
    - distinguish intellectual work, edition, manifestation, and digital representation
    - enable machine-readable reasoning over book lifecycles

# ---------- CORE ENTITY ----------
entity BookMetadata:
  type: DocumentMetadata
  describes: Book
  may_include:
    - book_identifier
    - title
    - subtitle
    - alternative_title
    - author
    - editor
    - contributor
    - publisher
    - publication_date
    - edition
    - volume
    - series
    - isbn
    - language
    - subject
    - keywords
    - description
    - chapter_structure
    - page_count
    - format
    - version
    - rights
    - licence
    - provenance

entity Book:
  type: Document
  may_have:
    - BookEdition
    - BookManifestation
    - BookRepresentation

entity BookIdentifier:
  type: Identifier
  identifies: BookOrEdition

entity ISBN:
  subtype_of: BookIdentifier
  identifies: BookEditionOrManifestation
  according_to publishing semantics

# ---------- RELATIONSHIPS ----------
relationships:
  BookMetadata -> DESCRIBES -> Book
  Book -> IDENTIFIED_BY -> BookIdentifier
  Book -> HAS_AUTHOR -> Agent
  Book -> MAY_HAVE_EDITOR -> Agent
  Book -> MAY_HAVE_CONTRIBUTOR -> Agent
  Book -> MAY_HAVE_EDITION -> BookEdition
  BookEdition -> MAY_HAVE_ISBN -> ISBN
  BookEdition -> PUBLISHED_BY -> Publisher
  BookEdition -> MAY_BELONG_TO -> BookSeries
  BookEdition -> MAY_HAVE_VOLUME -> Volume
  Book -> HAS_STRUCTURE -> BookStructure
  BookStructure -> CONTAINS -> Chapter
  BookEdition -> MAY_HAVE_MANIFESTATION -> BookManifestation
  BookManifestation -> MAY_HAVE_REPRESENTATION -> BookRepresentation
  BookMetadata -> MAY_REFERENCE -> BookProvenance

# ---------- BOOK IDENTITY ----------
rule book_identity:
  Book SHOULD have stable identifier
  where persistent citation or semantic reference is required

rule title_not_identity:
  book title MUST NOT be assumed globally unique

rule work_edition_distinction:
  Book != BookEdition

rule edition_representation_distinction:
  BookEdition != BookRepresentation

# ---------- TITLE ----------
entity BookTitle:
  type: DocumentTitle
  may_be:
    - primary_title
    - subtitle
    - alternative_title
    - translated_title

rule title:
  authoritative title SHOULD be preserved

rule translated_title:
  translated title SHOULD preserve language metadata

# ---------- AUTHORSHIP ----------
entity BookAgentRole:
  type: RoleMetadata
  roles:
    - author
    - editor
    - contributor
    - translator
    - illustrator
    - foreword_author
    - publisher

rule authorship:
  role SHOULD be explicit
  where attribution matters

rule author_order:
  author ordering SHOULD be preserved
  where source defines meaningful sequence

# ---------- EDITION ----------
entity BookEdition:
  type: DocumentVersionOrPublicationEntity
  may_include:
    - edition_identifier
    - edition_number
    - edition_statement
    - publication_date
    - publisher
    - isbn
    - revision_description

rule edition:
  materially revised published edition SHOULD remain distinguishable
  from previous edition

rule edition_number:
  edition numbering SHOULD be preserved as supplied
  and MUST NOT be inferred solely from publication date

# ---------- ISBN ----------
rule isbn:
  ISBN SHOULD preserve canonical digits and identifier type

rule isbn10_isbn13:
  ISBN_10 and ISBN_13 MAY refer to related publication manifestations
  but MUST NOT be assumed identical without validation

rule isbn_validation:
  ISBN SHOULD satisfy applicable checksum rules
  when validation is performed

# ---------- PUBLISHER ----------
entity Publisher:
  type: OrganisationOrAgent

rule publisher:
  publisher SHOULD remain distinguishable
  from author and distributor

# ---------- PUBLICATION DATE ----------
rule publication_date:
  publication date SHOULD be associated with applicable edition or manifestation

rule publication_not_creation:
  publication_date != original_creation_date

# ---------- SERIES ----------
entity BookSeries:
  type: Collection
  contains: BookOrEdition

entity Volume:
  type: SeriesPositionMetadata
  may_include:
    - volume_number
    - volume_title

rule series:
  Book MAY belong to BookSeries

rule volume:
  volume number SHOULD preserve series context

# ---------- STRUCTURE ----------
entity BookStructure:
  type: DocumentStructure
  may_include:
    - front_matter
    - part
    - chapter
    - section
    - appendix
    - bibliography
    - index
    - back_matter

entity Chapter:
  type: DocumentFragment
  may_include:
    - chapter_identifier
    - chapter_number
    - title
    - author
    - start_page
    - end_page

rule chapter_order:
  Chapter ordering SHOULD be preserved

rule chapter_identity:
  chapter MAY have stable identifier
  where independent citation or retrieval is required

# ---------- PAGE METADATA ----------
entity BookPagination:
  type: StructuralMetadata
  may_include:
    - page_count
    - pagination_scheme
    - logical_page_labels

rule page_count:
  page_count MAY differ across manifestations or representations

rule page_reference:
  page citation SHOULD identify applicable edition or manifestation
  where pagination differs

# ---------- MANIFESTATION ----------
entity BookManifestation:
  type: PublicationRepresentation
  may_be:
    - hardcover
    - paperback
    - ebook
    - audiobook
    - large_print

rule manifestation:
  manifestation SHOULD preserve format-specific identifiers and publication metadata

rule manifestation_not_work:
  BookManifestation != Book

# ---------- DIGITAL REPRESENTATION ----------
entity BookRepresentation:
  type: DocumentRepresentation
  may_be:
    - EPUB
    - PDF
    - HTML
    - MOBI
    - PlainText
    - AudioFile

rule representation:
  digital representation SHOULD preserve represented BookEdition or Manifestation

rule conversion:
  format conversion SHOULD preserve source representation provenance

# ---------- LANGUAGE ----------
rule language:
  Book SHOULD preserve primary language
  and MAY preserve translated or multilingual content metadata

# ---------- SUBJECT ----------
entity BookSubject:
  type: SemanticMetadata
  may_include:
    - concept_identifier
    - subject_label
    - vocabulary
    - classification

rule subject:
  controlled subject identifiers SHOULD be preferred
  where available

rule classification:
  library or domain classification SHOULD preserve scheme and code

# ---------- RIGHTS ----------
entity BookRights:
  type: RightsMetadata
  may_include:
    - copyright_holder
    - licence
    - usage_rights
    - territory
    - attribution_requirement

rule rights:
  rights MAY differ by edition, manifestation, territory, or representation

# ---------- RELATIONSHIPS ----------
book_relationships:
  - edition_of
  - translation_of
  - adaptation_of
  - sequel_to
  - prequel_to
  - part_of_series
  - cites
  - cited_by
  - derived_from
  - related_to

rule translation:
  translated BookEdition SHOULD preserve source work relationship

rule sequel:
  sequel_to != edition_of

# ---------- PROVENANCE ----------
entity BookProvenance:
  type: ProvenanceMetadata
  may_include:
    - creator
    - publisher
    - source
    - edition_history
    - conversion_history
    - digitisation_history
    - extraction_method
    - timestamps

rule provenance:
  BookMetadata SHOULD preserve publication and transformation history

# ---------- VALIDATION ----------
validation:
  require:
    - identifiable_book_or_book_candidate

  validate_if_present:
    - book_identifier
    - title
    - authors
    - edition
    - isbn
    - publisher
    - publication_date
    - series
    - structure
    - manifestation
    - representation
    - rights
    - provenance

  reject:
    - contradictory_book_identity
    - invalid_isbn_checksum when checksum validation is required
    - edition_presented_as work_identity
    - representation_presented_as intellectual_book
    - impossible_chapter_page_range
    - contradictory_edition_relationship

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE:
  "book metadata" ~= "metadata about a book"
  "book identifier" ~= "publication identifier" WHEN identifier applies to book resource
  "book edition" ~= "edition of a book"
  "book series" ~= "publication series" WHEN series contains books
  "ebook" ~= "electronic book manifestation"
  "chapter metadata" ~= "metadata about a book chapter"

  PRESERVE distinctions:
    book != edition
    edition != manifestation
    manifestation != representation
    title != identifier
    ISBN != universal_work_identity
    publisher != author
    publication_date != creation_date
    chapter != book
    sequel != edition
    page_count != invariant_work_property

# ---------- CONFIDENCE ----------
CONFIDENCE:
  explicit_book_metadata:
    score: 1.00

  authoritative_book_identifier:
    score: 1.00

  validated_isbn:
    score: 0.99

  explicit_edition_metadata:
    score: 0.99

  explicit_authorship:
    score: 0.99

  inferred_book_relationship:
    score: 0.85

  title_author_match_only:
    score: <= 0.75

  ambiguous_book_identity:
    score: <= 0.60
    action: preserve candidates

# ---------- UPDATE MODEL ----------
UPDATE_MODEL:
  on_book_creation:
    - assign BookIdentifier where available
    - record title and authors
    - initialise provenance

  on_new_edition:
    - preserve Book identity
    - create BookEdition
    - record edition statement
    - record publisher and publication date
    - attach ISBN where applicable
    - update provenance

  on_new_manifestation:
    - preserve BookEdition
    - create BookManifestation
    - record format-specific metadata
    - update provenance

  on_digitisation:
    - preserve source manifestation
    - create digital BookRepresentation
    - record digitisation or conversion process
    - update provenance

# ---------- FLOW HASH ----------
FLOW_HASH:
  inputs:
    - ontology
    - book_entities
    - relationships
    - identity_rules
    - edition_rules
    - identifier_rules
    - structure_rules
    - manifestation_rules
    - validation
    - semantic_equivalence
    - confidence
    - update_model

  canonicalisation:
    - normalise_whitespace
    - preserve_case_sensitive_identifiers
    - sort_unordered_property_sets
    - preserve_rule_order

  output:
    deterministic_semantic_hash

# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION:
  interpret_as:
    - document metadata ontology
    - book identity and publication model
    - edition and manifestation structure
    - book provenance and retrieval model

  operations:
    - identify books
    - resolve titles and authors
    - distinguish works and editions
    - validate ISBNs
    - resolve publishers and dates
    - traverse series and volumes
    - traverse chapters
    - resolve manifestations and representations
    - inspect rights
    - follow book relationships
    - trace provenance
    - preserve uncertainty

  constraints:
    - do_not_equate_title_with_book_identity
    - do_not_equate_ISBN_with universal_work_identity
    - do_not_equate_book_with_edition
    - do_not_equate_edition_with_representation
    - do_not_assume_page_count_constant_across_manifestations
    - preserve_authorship_edition_publication_and_provenance

# ---------- QUERY MODEL ----------
query:
  input:
    - book_identifier
    - title
    - author
    - isbn
    - edition
    - publisher
    - publication_date
    - series
    - subject
    - format

  resolve:
    1. identify Book candidates
    2. resolve identifiers
    3. compare title and authorship
    4. resolve BookEdition
    5. validate ISBN
    6. resolve publisher and publication date
    7. inspect series and structure
    8. resolve manifestations and representations
    9. inspect rights and provenance
    10. rank candidates by confidence

  output:
    - book
    - identifiers
    - title
    - authors
    - edition
    - isbn
    - publisher
    - publication_date
    - series
    - structure
    - manifestations
    - representations
    - provenance
    - confidence

# ---------- INFERENCE ----------
inference:
  IF authoritative BookIdentifier resolves uniquely
  THEN identify Book
  WITH confidence = 1.00

  IF validated ISBN resolves to specific edition or manifestation
  THEN identify publication entity
  WITH confidence = 0.99

  IF same work has multiple editions
  THEN preserve common Book identity
  AND distinct BookEdition identities

  IF digital representation derives from physical or source edition
  THEN preserve derivation relationship

  IF book identity remains ambiguous
  THEN preserve candidate Books
  AND do_not force resolution

# ---------- OUTPUT CONTRACT ----------
output:
  ontology_entity: BookMetadata
  book_identity: machine_interpretable
  identifiers: traceable
  authorship: preserved
  editions: distinguishable
  ISBNs: validated_where_possible
  publication_metadata: explicit
  structure: traversable
  manifestations: distinguishable
  representations: format_aware
  relationships: explicit
  provenance: preserved
  uncertainty: explicit
  semantic_retrieval: enabled

end flow
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ