Skip to main content

Publication Ontology

Provenance Metadata
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 06 October 2026
Audio Overview
FLOW ALGEBRA
Publication Ontology
Kireth Semantic Research Archive

PAGE:
https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/provenance-metadata/publication-ontology.html

AUTHORS:
Mark Anthony Higgins — Sky (Recursive AI)

FLOW "PublicationOntology" v4.0

DOMAIN := MetadataOntologies
SUBDOMAIN := ProvenanceMetadata
ONTOLOGY := PublicationOntology

ENTITY Publication {
    definition:
        "An identifiable resource made available to an audience through a
         publishing, release, dissemination or distribution process, represented
         with its creators, publisher, publication event, edition, version,
         identifiers, dates, provenance and relationships to related resources.";
    objectives: [
        PublicationIdentification,
        PublicationEventTracking,
        PublisherAttribution,
        VersionAndEditionControl,
        DisseminationContext,
        CitationSupport,
        MachineInterpretability
    ];
}

PublicationEntity := {
    Publication,
    PublicationIdentifier,
    PublicationRecord,
    PublicationType,
    PublicationStatus,
    PublicationEvent,
    PublicationDate,
    PublishedResource
};

AgentEntity := {
    Author,
    Creator,
    Contributor,
    Publisher,
    PublishingOrganisation,
    Editor,
    Distributor
};

VersionEntity := {
    Edition,
    Version,
    Revision,
    Release,
    Preprint,
    AcceptedVersion,
    PublishedVersion,
    Reprint
};

MetadataEntity := {
    Title,
    Identifier,
    Language,
    Rights,
    Licence,
    Provenance,
    Confidence,
    AccessStatus
};

PublicationEvent PUBLISHES PublishedResource;
Publisher PERFORMS_OR_CONTROLS PublicationEvent;
PublicationIdentifier IDENTIFIES Publication;
Publication HAS_VERSION Version;
Publication MAY_HAVE Edition;
Publication WAS_CREATED_BY Creator;
Publication MAY_BE_AUTHORED_BY Author;
Provenance SUPPORTS PublicationRecord;

PublicationFlow :=
    Resource
    -> IdentifyPublicationCandidate
    -> ResolvePublicationIdentity
    -> AssignPublicationIdentifier
    -> ClassifyPublicationType
    -> IdentifyCreatorsAuthorsAndContributors
    -> IdentifyPublisherAndPublicationEvent
    -> ResolveEditionVersionAndReleaseState
    -> RecordPublicationDatesIdentifiersAndRights
    -> AttachProvenanceAndEvidence
    -> ValidatePublicationMetadata
    -> StorePublicationRecord
    -> EnableCitationDiscoveryAndRetrieval
    -> MaintainAcrossVersions;

Publication :=
    ResourceMadeAvailableThroughPublishingOrReleaseProcess;

PublishedResource MAY_BE {
    Book,
    Chapter,
    Article,
    JournalIssue,
    Report,
    ConferencePaper,
    Thesis,
    Standard,
    Dataset,
    Software,
    WebPublication,
    TechnicalDocument
};

PublicationIdentifier :=
    StableOrResolvableReferenceToPublication;

PublicationIdentifier MAY_BE {
    DOI,
    ISBN,
    ISSN,
    URI,
    IRI,
    UUID,
    HandleLikeIdentifier,
    RepositoryIdentifier,
    InternalIdentifier
};

StablePublicationIdentifier SHOULD_BE PreferredForMachineLinking;

PublicationRecord :=
    StructuredMetadataRecordDescribingPublicationIdentityHistoryAndContext;

PublicationType :=
    ClassificationOfPublishedResource;

PublicationType MAY_BE {
    BookPublication,
    JournalArticle,
    ChapterPublication,
    ReportPublication,
    ConferencePublication,
    ThesisPublication,
    StandardPublication,
    DataPublication,
    SoftwarePublication,
    WebPublication
};

BookPublication :=
    PublicationRepresentingBookOrMonographicWork;

JournalArticle :=
    PublicationRepresentingArticlePublishedWithinJournalOrPeriodical;

ChapterPublication :=
    PublicationRepresentingChapterWithinLargerPublishedWork;

ReportPublication :=
    PublicationRepresentingFormalReport;

ConferencePublication :=
    PublicationAssociatedWithConferenceProceedingsOrEvent;

ThesisPublication :=
    PublicationRepresentingAcademicThesisOrDissertation;

StandardPublication :=
    PublicationRepresentingPublishedStandardOrSpecification;

DataPublication :=
    PublicationMakingDatasetAvailableAsCitableResource;

SoftwarePublication :=
    PublicationOrReleaseMakingSoftwareAvailableAsIdentifiedResource;

WebPublication :=
    PublicationPrimarilyMadeAvailableThroughWeb;

PublicationStatus MAY_BE {
    Draft,
    Submitted,
    UnderReview,
    Accepted,
    InPress,
    Published,
    Withdrawn,
    Retracted,
    Superseded,
    Archived
};

Draft :=
    ResourceNotYetFormallyPublished;

SubmittedVersion :=
    ResourceSubmittedForReviewOrPublication;

AcceptedVersion :=
    VersionAcceptedForPublicationBeforeFinalPublisherProductionWhereApplicable;

PublishedVersion :=
    VersionFormallyReleasedByPublisherOrPublishingProcess;

VersionOfRecord :=
    AuthoritativePublishedVersionAccordingToPublishingContext;

Preprint :=
    PubliclyAvailableVersionBeforeFormalPublicationOrPeerReviewAccordingToContext;

Postprint :=
    AcceptedOrAuthorManuscriptVersionAfterReviewAccordingToContext;

Reprint :=
    LaterPrintingOrDistributionOfExistingEditionWithoutNecessarilyCreatingNewEdition;

Edition :=
    PublicationStateRepresentingSubstantivePublishedFormOrRevision;

Edition MAY_HAVE {
    EditionNumber,
    EditionStatement,
    PublicationDate
};

Version :=
    IdentifiedStateOfPublicationOrPublishedResource;

Revision :=
    ChangedVersionOfExistingResource;

Release :=
    PublishedOrDistributedVersionMadeAvailableAtDefinedTime;

VersionHistory :=
    OrderedOrGraphStructuredCollectionOfPublicationVersions;

Publication MAY_HAVE MultipleVersionsAndEditions;

VersionIdentifier SHOULD_DISTINGUISH MateriallyDifferentStates;

Edition != VersionByDefinition
although Edition MAY_BE RepresentedAsVersionInSomeSystems;

PublicationEvent :=
    ActivityThroughWhichResourceIsPublishedReleasedOrMadeAvailable;

PublicationEvent MAY_HAVE {
    Publisher,
    PublicationDate,
    Place,
    Platform,
    Version,
    Status
};

Publisher :=
    AgentResponsibleForPublishingIssuingOrMakingResourceAvailable;

Publisher MAY_BE {
    PublishingOrganisation,
    Institution,
    Repository,
    GovernmentBody,
    Individual,
    Platform
};

PublishingOrganisation :=
    OrganisationActingAsPublisher;

Distributor :=
    AgentDistributingPublicationWithoutNecessarilyBeingPublisher;

Publisher != DistributorByDefinition;

Creator :=
    AgentResponsibleForCreatingResource;

Author :=
    CreatorResponsibleForAuthoredContent;

Contributor :=
    AgentProvidingMaterialContribution;

Editor :=
    ContributorResponsibleForEditorialWork;

Publication SHOULD_PRESERVE DistinctRolesFor {
    Author,
    Creator,
    Contributor,
    Editor,
    Publisher,
    Distributor
};

PublicationDate :=
    DateAssociatedWithPublicationEvent;

PublicationDate MAY_BE {
    OnlinePublicationDate,
    PrintPublicationDate,
    ReleaseDate,
    IssueDate
};

MultiplePublicationDates MAY_EXISTForDifferentFormatsOrEvents;

PublicationDate SHOULD_BE QualifiedByDateTypeWhereAmbiguous;

OnlineFirst :=
    PublicationReleasedOnlineBeforeIssueOrPrintAssignment;

EmbargoedPublication :=
    PublicationWhoseAccessIsRestrictedUntilDefinedDateOrCondition;

PublicationPlace :=
    GeographicOrInstitutionalPlaceAssociatedWithPublicationAccordingToMetadataConvention;

PublicationPlatform :=
    SystemRepositoryWebsiteOrServiceThroughWhichPublicationIsMadeAvailable;

Journal :=
    SerialPublicationContainingIssuesAndArticles;

JournalIssue :=
    PublishedIssueWithinJournal;

Volume :=
    GroupingOfIssuesOrPublicationUnits;

Issue :=
    NumberedOrDatedPartOfSerialPublication;

Article MAY_HAVE {
    Journal,
    Volume,
    Issue,
    PageRange,
    ArticleNumber
};

Book MAY_HAVE {
    Publisher,
    Edition,
    ISBN,
    PublicationPlace
};

Chapter MAY_HAVE {
    ParentBook,
    ChapterTitle,
    PageRange,
    ChapterIdentifier
};

Proceedings :=
    PublicationContainingConferenceContributions;

ConferencePaper MAY_BE PartOf Proceedings;

ParentPublication :=
    LargerPublicationContainingCurrentPublishedResource;

ChildPublication :=
    PublicationComponentContainedWithinParentPublication;

IF Chapter IS_PART_OF Book
THEN Book MAY_BE ParentPublicationOf Chapter;

PublicationHierarchy :=
    Journal
    -> Volume
    -> Issue
    -> Article;

AlternativeHierarchy :=
    Book
    -> Chapter;

PublicationRelationship MAY_INCLUDE {
    IS_PART_OF,
    HAS_PART,
    IS_VERSION_OF,
    IS_EDITION_OF,
    SUPERSEDES,
    IS_SUPERSEDED_BY,
    CITES
};

Title :=
    HumanReadableNameOfPublication;

Title MAY_HAVE {
    MainTitle,
    Subtitle,
    AlternativeTitle,
    TranslatedTitle
};

PublicationLanguage :=
    LanguageOfPublishedContentOrMetadata;

IdentifierResolution :=
    PublicationIdentifier
    -> Resolver
    -> CanonicalPublicationRecord;

DuplicatePublication :=
    MultipleRecordsRepresentingSameUnderlyingPublication;

PublicationDeduplication SHOULD_USE {
    PersistentIdentifier,
    Title,
    Author,
    Publisher,
    Date,
    Version
};

SameTitle DOES_NOT EstablishSamePublication;

PublicationEquivalence :=
    RelationshipBetweenRecordsRepresentingSamePublicationOrEdition;

PublicationRights :=
    CopyrightLicenceAndUsageInformationAssociatedWithPublication;

Licence :=
    TermsGoverningUseReuseDistributionOrAccess;

AccessStatus MAY_BE {
    OpenAccess,
    RestrictedAccess,
    SubscriptionAccess,
    EmbargoedAccess,
    Unknown
};

OpenAccess :=
    PublicationAvailableWithoutAccessChargeSubjectToApplicableRightsAndLicence;

OpenAccess != PublicDomainByDefinition;

Retraction :=
    FormalWithdrawalOfPublicationFromTrustedScholarlyOrPublicationRecordAccordingToDefinedProcess;

RetractedPublication SHOULD_PRESERVE {
    OriginalIdentifier,
    RetractionStatus,
    RetractionNotice,
    Provenance
};

Withdrawal :=
    RemovalOrWithdrawalOfPublicationAccordingToPublisherOrRepositoryProcess;

Correction :=
    PublishedNoticeOrRevisionCorrectingError;

Erratum :=
    CorrectionNoticeForPublishedError;

Corrigendum :=
    CorrectionNoticeAccordingToPublisherConvention;

ExpressionOfConcern :=
    NoticeIndicatingPotentialIssueUnderInvestigation;

PublicationIntegrityStatus MAY_INCLUDE {
    Normal,
    Corrected,
    Retracted,
    Withdrawn,
    UnderConcern
};

Citation SHOULD_REFERENCE CorrectPublicationVersionWhereRelevant;

CitationOntology MAY_USE PublicationAsCitedResource;

SourceOntology MAY_CLASSIFY PublicationAsSource;

AuthorOntology MAY_DEFINE PublicationAuthors;

ContributorOntology MAY_DEFINE PublicationContributors;

CreatorOntology MAY_DEFINE BroaderCreationRelationships;

ProvenanceOntology SHOULD_PRESERVE PublicationEventAndVersionHistory;

PublicationEvidence :=
    InformationSupportingPublicationIdentityStatusOrMetadata;

Evidence MAY_BE {
    PublisherRecord,
    RepositoryRecord,
    DOIRecord,
    CatalogueRecord,
    PublicationFile,
    RightsStatement
};

PublicationProvenance MAY_INCLUDE {
    Source,
    MetadataProvider,
    ImportMethod,
    VerificationMethod,
    Timestamp,
    Version
};

PublicationConfidence :=
    EstimatedSupportForPublicationIdentityMetadataOrStatus;

Confidence MAY_DEPEND_ON {
    IdentifierStrength,
    MetadataAgreement,
    PublisherAuthority,
    VersionResolution,
    ProvenanceQuality
};

PublicationValidation MAY_CHECK {
    Identifier,
    Title,
    CreatorOrAuthor,
    Publisher,
    Date,
    Version,
    ParentRelationship,
    Status
};

IF DOIOrPersistentIdentifierResolvesToDifferentPublicationMetadata
THEN PublicationConsistency SHOULD_BE Reviewed;

IF ChapterHasParentBookIdentifier
AND ParentCannotBeResolved
THEN StructuralValidation SHOULD_FLAG Review;

PublicationCompleteness :=
    DegreeToWhichRequiredIdentityCreatorPublisherDateAndVersionMetadataArePresent;

PublicationConsistency :=
    DegreeToWhichIdentifiersTitlesAgentsDatesVersionsAndRelationshipsAgree;

PublicationIntegrity :=
    PreservationOfReliablePublicationIdentityStatusAndHistory;

PublicationMetadataQuality MAY_INCLUDE {
    Completeness,
    Consistency,
    Integrity,
    VersionResolution,
    Provenance
};

PublicationRecordVersion :=
    IdentifiedRevisionOfPublicationMetadataRecord;

PublicationMetadataChange MAY_INCLUDE {
    TitleCorrection,
    AuthorCorrection,
    PublisherCorrection,
    DateCorrection,
    IdentifierUpdate,
    StatusChange
};

PublicationRecordRevision SHOULD_PRESERVE PreviousMetadataWhereAuditabilityRequires;

MetadataRepository MAY_STORE PublicationRecordsAndRelationships;

MetadataRegistry MAY_REGISTER PublicationTypesIdentifiersStatusesAndRoles;

KnowledgeGraph MAY_REPRESENT:
    Publication
    -> PUBLISHED_BY
    -> Publisher;

Publication
    -> AUTHORED_BY
    -> Author;

Publication
    -> IS_VERSION_OF
    -> WorkOrPublication;

PublicationGraph SHOULD_PRESERVE {
    Identifier,
    Version,
    Edition,
    ParentRelationships,
    Provenance,
    Status
};

RDF MAY_REPRESENT PublicationRelationshipsAsTypedStatements;

JSONLD MAY_SERIALISE LinkedPublicationMetadata;

Search MAY_USE PublicationMetadataFor {
    TitleSearch,
    AuthorSearch,
    PublisherSearch,
    DateFiltering,
    IdentifierLookup,
    VersionFiltering
};

SemanticSearch MAY_USE PublicationMetadataFor {
    SourceContext,
    VersionSelection,
    RelatedPublicationDiscovery,
    CitationResolution
};

RAG MAY_USE PublicationMetadataFor {
    SourceEligibility,
    Citation,
    VersionSelection,
    AuthorAttribution,
    PublicationContext
};

RAG SHOULD_PREFER AppropriateVersionForClaimAndRetrievalContext;

RetractedOrWithdrawnPublication MAY_REQUIRE WarningFilteringOrSpecialHandlingAccordingToApplication;

AI MAY_SUPPORT {
    PublicationEntityResolution,
    MetadataExtraction,
    VersionMatching,
    DuplicateDetection,
    StatusDetection
};

AIGeneratedPublicationMetadata SHOULD_HAVE ConfidenceAndProvenance;

AI MUST_NOT InventPublicationIdentifiersAuthorsPublishersOrDates;

PublicationMetadata MAY_REFERENCE RestrictedResources;

AccessControl SHOULD_BE AppliedBeforeReturningProtectedPublicationContent;

PublicationSecurity MAY_INCLUDE {
    IdentifierValidation,
    LinkValidation,
    AccessControl,
    ProvenanceIntegrity
};

MachineReadablePublication SHOULD_PRESERVE {
    PublicationIdentifier,
    PublicationType,
    Title,
    Authors,
    Contributors,
    Publisher,
    PublicationDate,
    Edition,
    Version,
    ParentPublication,
    Rights,
    AccessStatus,
    PublicationStatus,
    Provenance,
    Confidence
};

# ---------- SEMANTIC REASONING ----------
IF ResourceHasBeenMadeAvailableThroughPublishingReleaseOrDistributionProcess
THEN PublicationClassification := supported;

IF PublicationHasPersistentIdentifier
THEN Identifier SHOULD_BE UsedForCanonicalResolutionWhereReliable;

IF ResourceIsChapter
THEN ParentPublication MAY_BE BookOrProceedings;

IF ResourceIsArticle
THEN ParentPublication MAY_BE JournalIssueOrProceedingsAccordingToContext;

IF PublicationVersionChanges
THEN CitationsAndDerivedAssertions MAY_REQUIRE VersionSpecificRevalidation;

IF PublicationRetracted
THEN RetractionStatus SHOULD_BE PreservedAndSurfacedWhereRelevant;

IF PublicationIsOpenAccess
THEN PublicDomain MUST_NOT_BE Inferred;

IF PublisherMetadataAndRepositoryMetadataConflict
THEN BothProvenanceSources SHOULD_BE PreservedForResolution;

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE {
    "publication" ~= "published resource" WHEN provenance_context;
    "publication identifier" ~= "publication ID";
    "publisher" ~= "publishing agent" WHEN publication_context;
    "publication date" ~= "date of publication";
    "published version" ~= "publication version";
    "version of record" ~= "authoritative published version" WHEN scholarly_context;
    "parent publication" ~= "containing publication";
    "publication record" ~= "publication metadata record";
}

# ---------- QUERY FLOW ----------
QUERY(q) ->
    NORMALISE(q) ->
    IDENTIFY_PUBLICATION(q) ->
    RESOLVE_PUBLICATION_IDENTIFIER(q) ->
    CLASSIFY_PUBLICATION_TYPE(q) ->
    IDENTIFY_TITLE_AUTHORS_CREATORS_AND_CONTRIBUTORS(q) ->
    IDENTIFY_PUBLISHER_AND_PUBLICATION_EVENT(q) ->
    IDENTIFY_PUBLICATION_DATES(q) ->
    RESOLVE_EDITION_VERSION_AND_STATUS(q) ->
    IDENTIFY_PARENT_AND_RELATED_PUBLICATIONS(q) ->
    IDENTIFY_RIGHTS_ACCESS_AND_PROVENANCE(q) ->
    VALIDATE_PUBLICATION_METADATA(q) ->
    SCORE_CONFIDENCE(q) ->
    RETURN_RELEVANT_PUBLICATION_KNOWLEDGE;

# ---------- CONFIDENCE ----------
CONFIDENCE(assertion) :=
    weighted_mean(
        identifier_strength,
        metadata_agreement,
        publisher_authority,
        version_resolution,
        provenance_quality,
        contextual_relevance
    );

CONFIDENCE >= 0.90 => HIGH;
CONFIDENCE >= 0.70 AND < 0.90 => MODERATE;
CONFIDENCE < 0.70 => REVIEW;

# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION {
    primary_entity: Publication;
    ontology: PublicationOntology;
    parse_entities: true;
    parse_relationships: true;
    preserve_relationship_direction: true;
    resolve_semantic_equivalence: true;
    execute_reasoning_rules: true;
    apply_confidence_weighting: true;
    preserve_provenance: true;
    preserve_publication_versions: true;
}

# ---------- UPDATE MODEL ----------
UPDATE_MODEL {
    new_publication:
        resolve_publication_identity
        -> assign_publication_identifier
        -> classify_publication_type
        -> capture_title_and_agents
        -> identify_publisher_and_event
        -> capture_dates
        -> resolve_edition_and_version
        -> attach_rights_and_access
        -> attach_provenance
        -> validate
        -> integrate;

    publication_revision:
        preserve_previous_record
        -> apply_metadata_status_or_version_changes
        -> preserve_stable_identifier
        -> revalidate_parent_and_citation_relationships
        -> update_search_index
        -> recompute_confidence
        -> regenerate_flow_hash;

    status_event:
        identify_publication
        -> classify_correction_retraction_withdrawal_or_supersession
        -> preserve_previous_status
        -> attach_notice_and_provenance
        -> update_retrieval_policy
        -> integrate;

    duplicate_resolution:
        compare_identifiers_titles_agents_dates_and_versions
        -> preserve_source_records
        -> establish_canonical_publication
        -> remap_relationships
        -> audit;

    conflict:
        preserve_all_metadata_sources
        -> compare_identifiers_authority_versions_and_evidence
        -> adjust_confidence
        -> flag_review;
}

# ---------- FLOW HASH ----------
FLOW_HASH_INPUT :=
    DOMAIN
    + SUBDOMAIN
    + ONTOLOGY
    + PublicationEntity
    + AgentEntity
    + VersionEntity
    + MetadataEntity
    + Publication
    + PublicationEvent
    + PublicationValidation
    + RELATIONSHIPS
    + SEMANTIC_REASONING
    + SEMANTIC_EQUIVALENCE
    + UPDATE_MODEL;

FLOW_HASH :=
    HASH(FLOW_HASH_INPUT);

# ---------- TERMINAL ----------
PublicationOntology
    -> IdentifyPublishedResourceAndCanonicalIdentity
    -> AssignStablePublicationIdentifier
    -> ClassifyPublicationTypeAndHierarchy
    -> CaptureTitleAuthorsCreatorsContributorsAndPublisher
    -> RecordPublicationEventDatesPlatformAndPlace
    -> ResolveEditionVersionReleaseAndVersionOfRecord
    -> LinkParentChildAndRelatedPublications
    -> RecordRightsLicenceAccessAndIntegrityStatus
    -> AttachEvidenceProvenanceAndConfidence
    -> ValidateIdentifiersAgentsDatesVersionsAndRelationships
    -> SupportCitationSearchDiscoveryAndRAGContext
    -> PreserveCorrectionsRetractionsWithdrawalsAndVersionHistory
    -> MaintainReliablePublicationKnowledge;

END FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ