Skip to main content

Title Ontology

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

PAGE:
https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/descriptive-metadata/title-ontology.html

AUTHORS:
Mark Anthony Higgins — Sky (Recursive AI)

FLOW "TitleOntology" v4.0

DOMAIN := MetadataOntologies
SUBDOMAIN := DescriptiveMetadata
ONTOLOGY := TitleOntology

ENTITY Title {
    definition:
        "A descriptive metadata value that names, identifies or distinguishes
         a resource for human and machine discovery, reference, display and
         semantic interpretation.";
    objectives: [
        ResourceIdentification,
        Discovery,
        Distinction,
        Display,
        Citation,
        SemanticRetrieval,
        Interoperability
    ];
}

TitleEntity := {
    Title,
    Resource,
    PreferredTitle,
    AlternativeTitle,
    TranslatedTitle,
    AbbreviatedTitle,
    FormerTitle,
    Subtitle
};

MetadataEntity := {
    MetadataRecord,
    TitleProperty,
    TitleValue,
    Identifier,
    Language,
    Script,
    Provenance
};

ControlEntity := {
    TitleType,
    TitleStatus,
    NormalisedTitle,
    SortTitle,
    Version,
    Confidence
};

Title DESCRIBES Resource;
PreferredTitle PRIMARY_NAMES Resource;
AlternativeTitle ALSO_NAMES Resource;
Subtitle QUALIFIES MainTitle;
TranslatedTitle TRANSLATES Title;
FormerTitle PREVIOUSLY_NAMED Resource;
MetadataRecord CONTAINS TitleStatement;

TitleFlow :=
    Resource
    -> IdentifyTitleSource
    -> ExtractOrAssignTitle
    -> DetermineTitleType
    -> DetermineLanguageAndScript
    -> NormaliseForIndexing
    -> PreserveDisplayForm
    -> LinkToResourceIdentifier
    -> ValidateTitle
    -> StoreInMetadataRecord
    -> IndexForDiscovery
    -> MaintainTitleHistory;

Title :=
    HumanReadableOrMachineRepresentedNameAssociatedWithResource;

Resource MAY_HAVE MultipleTitles;

PreferredTitle :=
    PrimaryTitleSelectedAccordingToMetadataPolicy;

AlternativeTitle :=
    AdditionalTitleByWhichResourceMayBeKnown;

Subtitle :=
    SecondaryTitleElementExpandingOrQualifyingMainTitle;

FullTitle MAY_BE:
    MainTitle + Subtitle;

TranslatedTitle :=
    TitleExpressedInDifferentLanguageWhileReferringToSameResource;

AbbreviatedTitle :=
    ShortenedRecognisedFormOfTitle;

FormerTitle :=
    TitlePreviouslyUsedForResource;

VariantTitle MAY_INCLUDE {
    SpellingVariant,
    PunctuationVariant,
    Acronym,
    CommonAlternative
};

ParallelTitle :=
    TitlePresentedInAnotherLanguageOrScriptAsPartOfSameResourceDescription;

SuppliedTitle :=
    TitleCreatedByMetadataAgentWhenResourceLacksExplicitTitle;

SuppliedTitle SHOULD_BE MarkedAccordingToMetadataPolicy;

TitleSource MAY_BE {
    ResourceItself,
    PublisherMetadata,
    CatalogueRecord,
    ExternalAuthority,
    MetadataAgent,
    AIExtraction
};

TitleStatement :=
    Resource
    -> TitleProperty
    -> TitleValue;

TitleProperty MAY_BE {
    preferredTitle,
    alternativeTitle,
    subtitle,
    translatedTitle,
    formerTitle,
    abbreviatedTitle
};

TitleValue :=
    TextualOrStructuredRepresentationOfTitle;

TitleValue MAY_HAVE {
    LanguageTag,
    ScriptCode,
    Direction,
    Provenance
};

Language :=
    LanguageInWhichTitleIsExpressed;

Script :=
    WritingSystemUsedForTitle;

MultilingualResource MAY_HAVE MultipleLanguageSpecificTitles;

TitleLanguage SHOULD_BE DistinguishedFrom ResourceContentLanguage;

DisplayTitle :=
    TitleFormPresentedToUser;

NormalisedTitle :=
    TitleFormPreparedForMatchingIndexingOrComparison;

DisplayTitle SHOULD_NOT NecessarilyBeReplacedByNormalisedTitle;

TitleNormalisation MAY_INCLUDE {
    UnicodeNormalisation,
    WhitespaceNormalisation,
    CaseFoldingForSearch,
    PunctuationHandling
};

Normalisation MUST_PRESERVE OriginalTitleValue;

SortTitle :=
    DerivedTitleValueUsedForOrdering;

SortTitle MAY_APPLY RulesFor {
    LeadingArticle,
    Punctuation,
    Case,
    Numerals
};

SortTitle != DisplayTitle;

LeadingArticle MAY_BE IgnoredForSortingAccordingToLanguageSpecificPolicy;

TitleToken :=
    LexicalUnitWithinTitle;

TitleSearch MAY_USE {
    ExactMatch,
    TokenMatch,
    PrefixMatch,
    FuzzyMatch,
    SemanticMatch
};

ExactTitleMatch :=
    QueryTitleEquivalentToStoredTitleUnderDefinedNormalisation;

FuzzyTitleMatch :=
    ApproximateLexicalMatchAllowingMinorVariation;

SemanticTitleMatch :=
    MeaningBasedSimilarityBetweenQueryAndTitleRepresentation;

Title MAY_BE EmbeddedForSemanticSimilaritySearch;

VectorSimilarity != TitleIdentityByDefinition;

TitleIdentity :=
    DeterminationThatTwoTitleRepresentationsReferToSameNamedResourceOrTitleExpression;

SameTitleText DOES_NOT Guarantee SameResource;

ResourceIdentifier SHOULD_BE UsedToDistinguishResourcesWithIdenticalTitles;

DuplicateTitle :=
    SameOrEquivalentTitleValueAssociatedWithMultipleResources;

DuplicateTitle IS_NOT MetadataErrorByDefinition;

TitleUniqueness MAY_BE {
    NotRequired,
    RequiredWithinCollection,
    RequiredWithinApplication
};

TitleValidation MAY_CHECK {
    Requiredness,
    Datatype,
    MaximumLength,
    LanguageTag,
    ProhibitedControlCharacters
};

IF SchemaRequiresTitle
AND TitleMissing
THEN ValidationStatus := violation;

IF TitleValueEmpty
THEN Completeness MAY_DECREASE;

TitleAccuracy :=
    DegreeToWhichStoredTitleCorrectlyRepresentsResource;

TitleCompleteness :=
    DegreeToWhichRequiredTitleFormsArePresent;

TitleConsistency :=
    DegreeToWhichTitleRepresentationFollowsSharedMetadataRules;

AuthorityTitle :=
    PreferredTitleFormEstablishedByAuthorityControl;

AuthorityControl MAY_SUPPORT ConsistentTitleRepresentationAcrossRecords;

UniformTitle :=
    ControlledTitleUsedToCollocateDifferentManifestationsOrVersionsAccordingToCataloguingPolicy;

WorkTitle MAY_DIFFER_FROM ManifestationTitle;

TitleOntology SHOULD_DISTINGUISH {
    WorkLevelTitle,
    EditionTitle,
    ManifestationTitle,
    FileTitle
}
WHEN application_requires;

ResourceRelation MAY_CONNECT DifferentVersionsSharingRelatedTitles;

TitleChange :=
    ResourceTitleAtTimeA
    -> RevisedTitleAtTimeB;

TitleHistory SHOULD_PRESERVE FormerTitleWhereHistoricallyRelevant;

VersionedResource MAY_HAVE DifferentTitlesAcrossVersions;

TemporalTitle MAY_HAVE {
    ValidFrom,
    ValidTo
};

TitleProvenance MAY_INCLUDE {
    Source,
    Creator,
    ExtractionMethod,
    Timestamp,
    Confidence
};

AutomaticallyExtractedTitle SHOULD_HAVE ExtractionProvenance;

AI MAY_SUGGEST TitleFromResourceContent;

AIGeneratedTitle SHOULD_NOT ReplaceAuthoritativeTitleWithoutValidation;

Title MAY_BE UsedIn {
    SearchResult,
    Catalogue,
    Citation,
    Navigation,
    KnowledgeGraph,
    StructuredData
};

MetadataSchema MAY_DEFINE TitleAs RequiredOrRecommendedProperty;

DublinCore MAY_REPRESENT TitleUsing dc:titleOrEquivalentTerm;

SchemaOrg MAY_REPRESENT ResourceNameUsing nameOrHeadlineAccordingToResourceType;

RDF MAY_REPRESENT:
    Resource
    -> titleProperty
    -> TitleLiteral;

JSONLD MAY_SERIALISE TitleWithLanguageAndSemanticContext;

KnowledgeGraph MAY_REPRESENT TitleAs NodePropertyOrLiteralRelationship;

SemanticSearch MAY_USE TitleFor {
    ResourceMatching,
    Ranking,
    EntityResolution,
    QueryInterpretation
};

Title MAY_HAVE HigherRankingWeightForNavigationalResourceQueries;

TitleIndex :=
    SearchIndexOptimisedForTitleRetrieval;

TitleIndex MAY_STORE {
    DisplayTitle,
    NormalisedTitle,
    AlternativeTitles,
    ResourceIdentifier
};

Autocomplete MAY_USE TitleIndex;

AlternativeTitles MAY_IMPROVE RecallWithoutChangingPreferredDisplayTitle;

TitleCollision :=
    MultipleResourcesShareSameNormalisedTitle;

TitleCollision SHOULD_TRIGGER AdditionalDisambiguationUsing {
    Creator,
    Date,
    Type,
    Identifier
};

DisambiguatedDisplay MAY_COMBINE TitleWithContext
WITHOUT ChangingCanonicalTitleValue;

Title MAY_INCLUDE NamedEntities;

EntityExtractionFromTitle MAY_SUPPORT SemanticSearch
BUT ExtractedEntity SHOULD_NOT AlterTitleText;

PrivacyPolicy MAY_APPLY IfTitleContainsSensitiveInformation;

AccessControl MAY_RESTRICT TitleWhereMetadataItselfIsProtected;

TitleSecurity MAY_INCLUDE {
    InputValidation,
    OutputEscaping,
    ProvenanceIntegrity,
    ChangeAuthorisation
};

TitleChange SHOULD_BE AuditableWhereMetadataGovernanceRequires;

MachineReadableTitle SHOULD_PRESERVE {
    Value,
    Type,
    Language,
    ResourceIdentifier,
    Provenance
};

# ---------- SEMANTIC REASONING ----------
IF MetadataValueFunctionsAsNameOfResource
THEN TitleClassification := supported;

IF MultipleTitlesExist
THEN One MAY_BE PreferredAccordingToMetadataPolicy
AND Others MAY_BE AlternativeOrTypedTitles;

IF SameTitleTextAppearsForDifferentResourceIdentifiers
THEN Resources MUST_NOT_BE AutomaticallyMerged;

IF PreferredTitleChanges
THEN PreviousPreferredTitle MAY_BECOME FormerTitleAccordingToPolicy;

IF QueryMatchesAlternativeTitle
THEN Resource MAY_BE RetrievedUsingPreferredTitleForDisplay;

IF TitleLanguageDiffersFromQueryLanguage
AND TranslatedTitleExists
THEN TranslatedTitle MAY_SUPPORT Retrieval;

IF TitleSourceIsUnverified
THEN Confidence SHOULD_BE LowerThanVerifiedAuthoritativeSource;

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE {
    "title" ~= "resource title" WHEN metadata_context;
    "preferred title" ~= "primary title";
    "alternative title" ~= "variant title" WHEN non_primary_name_context;
    "subtitle" ~= "secondary title" WHEN title_component_context;
    "translated title" ~= "title translation";
    "abbreviated title" ~= "short title" WHEN recognised_short_form;
    "former title" ~= "previous title";
    "sort title" ~= "title sort key";
}

# ---------- QUERY FLOW ----------
QUERY(q) ->
    NORMALISE(q) ->
    IDENTIFY_RESOURCE(q) ->
    IDENTIFY_TITLE_VALUE(q) ->
    IDENTIFY_TITLE_TYPE(q) ->
    IDENTIFY_LANGUAGE_AND_SCRIPT(q) ->
    IDENTIFY_RESOURCE_IDENTIFIER(q) ->
    IDENTIFY_TITLE_PROVENANCE(q) ->
    IDENTIFY_TITLE_HISTORY(q) ->
    VALIDATE_TITLE(q) ->
    SCORE_CONFIDENCE(q) ->
    RETURN_RELEVANT_TITLE_KNOWLEDGE;

# ---------- CONFIDENCE ----------
CONFIDENCE(assertion) :=
    weighted_mean(
        source_reliability,
        title_accuracy,
        identifier_strength,
        authority_control_strength,
        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: Title;
    ontology: TitleOntology;
    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;
}

# ---------- UPDATE MODEL ----------
UPDATE_MODEL {
    new_title:
        identify_resource
        -> classify_title_type
        -> preserve_display_value
        -> normalise_for_index
        -> attach_language
        -> attach_provenance
        -> validate
        -> integrate;

    title_revision:
        preserve_previous_title
        -> update_preferred_or_typed_title
        -> update_index
        -> validate
        -> recompute_confidence
        -> regenerate_flow_hash;

    title_merge_candidate:
        compare_resource_identifiers
        -> compare_creator_date_and_type
        -> avoid_false_resource_merge
        -> flag_review_if_ambiguous;

    conflict:
        preserve_provenance
        -> compare_title_sources
        -> assess_authority
        -> adjust_confidence
        -> flag_review;
}

# ---------- FLOW HASH ----------
FLOW_HASH_INPUT :=
    DOMAIN
    + SUBDOMAIN
    + ONTOLOGY
    + TitleEntity
    + MetadataEntity
    + ControlEntity
    + Title
    + TitleStatement
    + TitleNormalisation
    + RELATIONSHIPS
    + SEMANTIC_REASONING
    + SEMANTIC_EQUIVALENCE
    + UPDATE_MODEL;

FLOW_HASH :=
    HASH(FLOW_HASH_INPUT);

# ---------- TERMINAL ----------
TitleOntology
    -> IdentifyDescribedResource
    -> CaptureAuthoritativeTitle
    -> ClassifyPreferredAlternativeOrTypedTitle
    -> PreserveLanguageScriptAndDisplayForm
    -> GenerateNormalisedAndSortRepresentations
    -> LinkTitleToStableResourceIdentifier
    -> ValidateTitleMetadata
    -> IndexPreferredAndAlternativeTitles
    -> DisambiguateDuplicateTitleStrings
    -> PreserveProvenanceAndHistoricalTitles
    -> SupportSearchCitationAndSemanticRetrieval
    -> UpdateTitleWhenResourceChanges
    -> MaintainReliableResourceNamingKnowledge;

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