FLOW ALGEBRA
Description Ontology
Kireth Semantic Research Archive
PAGE:
https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/descriptive-metadata/description-ontology.html
AUTHORS:
Mark Anthony Higgins — Sky (Recursive AI)
FLOW "DescriptionOntology" v4.0
# ---------- DOMAIN ----------
DOMAIN := MetadataOntologies
SUBDOMAIN := DescriptiveMetadata
ONTOLOGY := DescriptionOntology
# ---------- PRIMARY ENTITY ----------
ENTITY Description {
definition:
"A descriptive metadata statement that summarises, explains,
characterises or contextualises a resource so that people and
machines can understand its content, purpose, scope or significance.";
objectives: [
ResourceUnderstanding,
ContentSummary,
Contextualisation,
Discovery,
Selection,
SemanticRetrieval,
MachineInterpretability
];
}
# ---------- CORE ENTITIES ----------
DescriptionEntity := {
Description,
Resource,
Abstract,
Summary,
Caption,
ScopeNote,
ContentNote,
Annotation
};
MetadataEntity := {
MetadataRecord,
DescriptionProperty,
DescriptionValue,
Language,
Identifier,
Provenance,
Confidence
};
ContextEntity := {
Audience,
Purpose,
Subject,
ResourceType,
Version,
Source
};
# ---------- FUNDAMENTAL RELATIONSHIPS ----------
Description DESCRIBES Resource;
Abstract SUMMARISES Resource;
Caption EXPLAINS_OR_IDENTIFIES MediaResource;
ScopeNote DEFINES CoverageOrUse;
ContentNote PROVIDES AdditionalContentInformation;
MetadataRecord CONTAINS DescriptionStatement;
Provenance SUPPORTS DescriptionStatement;
# ---------- DESCRIPTION FLOW ----------
Resource
-> IdentifyResource
-> DetermineDescriptionPurpose
-> SelectDescriptionType
-> ExtractOrComposeDescription
-> DetermineLanguage
-> AttachResourceIdentifier
-> AttachProvenance
-> ValidateDescription
-> StoreInMetadataRecord
-> IndexForDiscovery
-> MaintainAndVersionDescription;
# ---------- RESOURCE ----------
Resource :=
ThingExplainedOrSummarisedByDescriptionMetadata;
Resource MAY_BE {
Document,
Dataset,
Image,
Audio,
Video,
Software,
WebPage,
PhysicalObject,
Event,
KnowledgeEntity
};
# ---------- DESCRIPTION ----------
Description :=
HumanReadableOrMachineReadableExplanatoryMetadataAboutResource;
Description MAY_BE {
Abstract,
Summary,
Caption,
ScopeNote,
ContentNote,
Annotation
};
# ---------- DESCRIPTION STATEMENT ----------
DescriptionStatement :=
Resource
-> DescriptionProperty
-> DescriptionValue;
# ---------- DESCRIPTION VALUE ----------
DescriptionValue :=
TextualOrStructuredRepresentationOfResourceDescription;
DescriptionValue MAY_HAVE {
Language,
Provenance,
Timestamp,
Confidence
};
# ---------- ABSTRACT ----------
Abstract :=
ConciseRepresentationOfMainContentPurposeOrFindingsOfResource;
Abstract MAY_BE {
AuthorProvided,
PublisherProvided,
MetadataAgentCreated,
AutomaticallyGenerated
};
# ---------- SUMMARY ----------
Summary :=
CondensedDescriptionOfResourceContent;
Summary MAY_BE ShorterOrLessFormalThanAbstract;
# ---------- CAPTION ----------
Caption :=
BriefDescriptionAssociatedWithImageFigureTableAudioVideoOrOtherMedia;
Caption MAY_IDENTIFY {
Subject,
Event,
Location,
Context
};
# ---------- SCOPE NOTE ----------
ScopeNote :=
ExplanationOfResourceCoverageBoundaryOrIntendedInterpretation;
# ---------- CONTENT NOTE ----------
ContentNote :=
AdditionalStatementAboutContentsComponentsOrFeaturesOfResource;
# ---------- ANNOTATION ----------
Annotation :=
SupplementalDescriptiveStatementAssociatedWithResource;
Annotation MAY_BE {
HumanAuthored,
SystemGenerated
};
# ---------- PURPOSE ----------
DescriptionPurpose MAY_INCLUDE {
Discovery,
Selection,
Understanding,
Accessibility,
PreservationContext
};
# ---------- AUDIENCE ----------
Description MAY_BE TailoredTo Audience;
Audience MAY_BE {
General,
Specialist,
Child,
Researcher,
Machine
};
AudienceSpecificDescription SHOULD_PRESERVE CoreResourceMeaning;
# ---------- LANGUAGE ----------
DescriptionLanguage :=
LanguageInWhichDescriptionIsExpressed;
DescriptionLanguage MAY_DIFFER_FROM ResourceLanguage;
# ---------- MULTILINGUAL DESCRIPTION ----------
Resource MAY_HAVE MultipleDescriptionsInDifferentLanguages;
EachDescription SHOULD_PRESERVE LanguageTagWhereApplicable;
# ---------- LENGTH ----------
DescriptionLength MAY_BE ConstrainedBy ApplicationProfile;
LengthConstraint SHOULD_NOT CauseMaterialMeaningLossWithoutPolicyAwareness;
# ---------- STRUCTURE ----------
Description MAY_BE {
PlainText,
StructuredText,
MarkedUpText
};
# ---------- PLAIN TEXT ----------
PlainTextDescription :=
DescriptionWithoutEmbeddedSemanticMarkup;
# ---------- STRUCTURED DESCRIPTION ----------
StructuredDescription MAY_HAVE {
SummarySection,
PurposeSection,
ScopeSection,
MethodSection
};
# ---------- MARKUP ----------
Description MAY_CONTAIN MarkupAccordingToAllowedMetadataSyntax;
UnsafeMarkup SHOULD_BE SanitisedOrRejectedAccordingToPolicy;
# ---------- SOURCE ----------
DescriptionSource :=
OriginFromWhichDescriptionWasObtained;
Source MAY_BE {
Resource,
Creator,
Publisher,
Repository,
MetadataAgent,
AIModel
};
# ---------- AUTHORSHIP ----------
DescriptionCreator :=
AgentResponsibleForDescriptionText;
DescriptionCreator MAY_DIFFER_FROM ResourceCreator;
# ---------- PROVENANCE ----------
DescriptionProvenance MAY_INCLUDE {
Source,
Creator,
CreationMethod,
Timestamp,
ModelVersion
};
# ---------- MANUAL DESCRIPTION ----------
ManualDescription :=
DescriptionWrittenOrCuratedByHumanAgent;
# ---------- AUTOMATIC DESCRIPTION ----------
AutomaticDescription :=
DescriptionGeneratedBySoftwareFromResourceOrMetadata;
# ---------- AI GENERATED DESCRIPTION ----------
AIGeneratedDescription :=
DescriptionProducedByAIModel;
AIGeneratedDescription SHOULD_HAVE {
MethodProvenance,
ValidationStatus
};
# ---------- EXTRACTION ----------
DescriptionExtraction :=
ResourceContent
-> IdentifySalientInformation
-> GenerateDescription;
# ---------- SUMMARISATION ----------
AutomaticSummarisation :=
SourceContent
-> SelectOrGenerateCondensedRepresentation;
# ---------- EXTRACTIVE SUMMARY ----------
ExtractiveSummary :=
SummaryConstructedFromSelectedSourcePassages;
# ---------- ABSTRACTIVE SUMMARY ----------
AbstractiveSummary :=
NewlyGeneratedTextRepresentingSourceMeaning;
AbstractiveSummary SHOULD_BE CheckedForUnsupportedClaimsAccordingToRisk;
# ---------- ACCURACY ----------
DescriptionAccuracy :=
DegreeToWhichDescriptionFaithfullyRepresentsResource;
# ---------- COMPLETENESS ----------
DescriptionCompleteness :=
DegreeToWhichDescriptionCoversRequiredAspectsForIntendedPurpose;
# ---------- CLARITY ----------
DescriptionClarity :=
DegreeToWhichDescriptionIsUnderstandableAndUnambiguous;
# ---------- CONCISENESS ----------
DescriptionConciseness :=
DegreeToWhichDescriptionAvoidsUnnecessaryContentWhilePreservingMeaning;
# ---------- RELEVANCE ----------
DescriptionRelevance :=
DegreeToWhichDescriptionFocusesOnResourceAndIntendedMetadataPurpose;
# ---------- QUALITY ----------
DescriptionQuality MAY_INCLUDE {
Accuracy,
Completeness,
Clarity,
Conciseness,
Relevance,
Provenance
};
# ---------- VALIDATION ----------
DescriptionValidation MAY_CHECK {
Requiredness,
Datatype,
Language,
Length,
UnsafeMarkup,
ResourceConsistency
};
# ---------- REQUIRED DESCRIPTION ----------
IF SchemaRequiresDescription
AND DescriptionMissing
THEN ValidationStatus := violation;
# ---------- RESOURCE CONSISTENCY ----------
IF DescriptionContradictsVerifiedResourceContent
THEN DescriptionAccuracy SHOULD_DECREASE;
# ---------- HALLUCINATION ----------
GeneratedDescription MAY_CONTAIN UnsupportedStatement;
UnsupportedStatement SHOULD_BE RemovedCorrectedOrFlaggedAccordingToPolicy;
# ---------- DUPLICATE DESCRIPTION ----------
MultipleResources MAY_HAVE SimilarDescriptions;
SimilarDescription DOES_NOT Imply SameResource;
# ---------- VERSION ----------
DescriptionVersion :=
IdentifiedRevisionOfDescriptionMetadata;
# ---------- CHANGE ----------
DescriptionChange MAY_INCLUDE {
Correction,
Expansion,
Shortening,
Translation,
Replacement
};
# ---------- HISTORY ----------
DescriptionHistory MAY_PRESERVE PreviousVersionsWhereRequired;
# ---------- TRANSLATION ----------
TranslatedDescription :=
DescriptionExpressedInAnotherLanguage;
Translation SHOULD_PRESERVE SemanticMeaningOfSourceDescription;
# ---------- NORMALISATION ----------
DescriptionNormalisation MAY_INCLUDE {
UnicodeNormalisation,
WhitespaceNormalisation,
LanguageTagNormalisation
};
OriginalDisplayText SHOULD_BE PreservedWhereRequired;
# ---------- INDEXING ----------
DescriptionIndex :=
SearchIndexBuiltFromDescriptionText;
Index MAY_SUPPORT {
FullTextSearch,
KeywordSearch,
SemanticSearch
};
# ---------- FULL TEXT SEARCH ----------
Query MAY_MATCH TermsWithinDescription;
# ---------- SEMANTIC SEARCH ----------
SemanticSearch MAY_USE DescriptionFor {
MeaningMatching,
QueryExpansion,
Ranking,
ResourceSelection
};
# ---------- EMBEDDING ----------
Description MAY_BE ConvertedTo Embedding;
DescriptionEmbedding MAY_SUPPORT SemanticSimilaritySearch;
VectorSimilarity != FactualEquivalence;
# ---------- KEYWORD EXTRACTION ----------
Description MAY_BE SourceFor AutomaticKeywordExtraction;
ExtractedKeyword SHOULD_BE DistinguishedFrom CuratedSubjectMetadata;
# ---------- ENTITY EXTRACTION ----------
NamedEntities MAY_BE ExtractedFromDescription;
ExtractedEntity MAY_SUPPORT KnowledgeGraphLinking;
# ---------- SUBJECT INFERENCE ----------
Description MAY_SUPPORT CandidateSubjectClassification;
CandidateSubject SHOULD_HAVE ConfidenceAndValidationStatus;
# ---------- KNOWLEDGE GRAPH ----------
Description MAY_BE LinkedTo ResourceNodeInKnowledgeGraph;
EntitiesMentionedInDescription MAY_BE LinkedAsSeparateGraphEntitiesWhenResolved;
# ---------- TITLE RELATIONSHIP ----------
Title IDENTIFIES Resource;
Description EXPLAINS Resource;
Title != Description;
# ---------- SUBJECT RELATIONSHIP ----------
Subject CLASSIFIES_OR_TOPICALISES Resource;
Description PROVIDES ExplanatoryText;
# ---------- METADATA SCHEMA ----------
MetadataSchema MAY_DEFINE DescriptionPropertyAndConstraints;
# ---------- DUBLIN CORE ----------
DublinCore MAY_REPRESENT DescriptionUsing dc:descriptionOrEquivalentProperty;
# ---------- SCHEMA.ORG ----------
SchemaOrg MAY_REPRESENT DescriptionUsing descriptionProperty;
# ---------- RDF ----------
RDF MAY_REPRESENT:
Resource
-> descriptionProperty
-> DescriptionLiteral;
# ---------- JSON-LD ----------
JSONLD MAY_SERIALISE DescriptionWithLanguageAndSemanticContext;
# ---------- STRUCTURED DATA ----------
StructuredData MAY_INCLUDE DescriptionForMachineReadableResourceExplanation;
# ---------- REPOSITORY ----------
MetadataRepository MAY_STORE DescriptionMetadata;
# ---------- REGISTRY ----------
MetadataRegistry MAY_REGISTER DescriptionPropertiesAndDefinitions;
# ---------- INTEROPERABILITY ----------
DescriptionInteroperability MAY_REQUIRE {
SharedPropertySemantics,
LanguageTags,
SchemaMapping,
StableResourceIdentifiers
};
# ---------- CROSSWALK ----------
DescriptionProperty MAY_MAP AcrossMetadataSchemas;
Mapping SHOULD_PRESERVE DescriptionRoleAndMeaning;
# ---------- ACCESSIBILITY ----------
Description MAY_SUPPORT AccessibilityWhenItProvidesUsefulContextForNonTextResources;
AccessibilityDescription MAY_HAVE MoreSpecificPurposeThanGeneralDescription;
# ---------- PRIVACY ----------
Description MAY_CONTAIN SensitiveInformation;
PrivacyReview MAY_BE RequiredBeforePublicRelease;
# ---------- ACCESS CONTROL ----------
DescriptionAccess MAY_BE RestrictedIndependentlyOfResourceAccess;
# ---------- SECURITY ----------
DescriptionMetadataSecurity MAY_INCLUDE {
InputValidation,
OutputEscaping,
AccessControl,
ProvenanceIntegrity
};
# ---------- AI ----------
AI MAY_USE DescriptionFor {
Retrieval,
Classification,
Summarisation,
EntityExtraction,
SemanticSearch
};
# ---------- RAG ----------
RetrievalAugmentedGeneration MAY_USE DescriptionFor {
ResourceDiscovery,
ContextSelection,
Ranking,
CitationSupport
};
# ---------- MACHINE CONSUMPTION ----------
MachineReadableDescription SHOULD_PRESERVE {
DescriptionType,
Language,
ResourceIdentifier,
Provenance,
Confidence
};
# ---------- SEMANTIC REASONING ----------
IF MetadataValueExplainsSummarisesOrContextualisesResource
THEN DescriptionClassification := supported;
IF DescriptionIsConciseRepresentationOfMainContent
THEN Description MAY_BE ClassifiedAs AbstractOrSummaryAccordingToMetadataPolicy;
IF DescriptionGeneratedAutomatically
THEN MethodProvenance SHOULD_BE Preserved;
IF GeneratedDescriptionContainsUnsupportedClaim
THEN DescriptionConfidence SHOULD_DECREASE
AND ValidationReview SHOULD_BE Triggered;
IF MultipleLanguageDescriptionsExist
THEN QueryLanguage MAY_SELECT MatchingDescription;
IF DescriptionConflictsWithAuthoritativeResourceContent
THEN Description SHOULD_NOT_BE TreatedAsAuthoritativeWithoutReview;
# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE {
"description" ~= "resource description" WHEN metadata_context;
"abstract" ~= "resource abstract";
"summary" ~= "resource summary";
"caption" ~= "media caption" WHEN media_context;
"scope note" ~= "coverage or usage note";
"content note" ~= "resource contents note";
"description metadata" ~= "descriptive text metadata";
"description version" ~= "description revision";
}
# ---------- QUERY FLOW ----------
QUERY(q) ->
NORMALISE(q) ->
IDENTIFY_RESOURCE(q) ->
IDENTIFY_DESCRIPTION(q) ->
IDENTIFY_DESCRIPTION_TYPE(q) ->
IDENTIFY_LANGUAGE_AND_AUDIENCE(q) ->
IDENTIFY_SOURCE_AND_PROVENANCE(q) ->
VALIDATE_DESCRIPTION(q) ->
IDENTIFY_ENTITIES_SUBJECTS_AND_KEYWORDS(q) ->
SCORE_CONFIDENCE(q) ->
RETURN_RELEVANT_DESCRIPTION_KNOWLEDGE;
# ---------- CONFIDENCE ----------
CONFIDENCE(assertion) :=
weighted_mean(
source_reliability,
description_accuracy,
resource_consistency,
provenance_quality,
validation_evidence,
contextual_relevance
);
CONFIDENCE >= 0.90 => HIGH;
CONFIDENCE >= 0.70 AND < 0.90 => MODERATE;
CONFIDENCE < 0.70 => REVIEW;
# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION {
primary_entity: Description;
ontology: DescriptionOntology;
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_description:
identify_resource
-> classify_description_type
-> attach_language
-> attach_source
-> attach_provenance
-> validate
-> integrate;
description_revision:
preserve_previous_version
-> apply_changes
-> validate_against_resource
-> update_index
-> recompute_confidence
-> regenerate_flow_hash;
generated_description:
record_generation_method
-> validate_supported_content
-> assign_confidence
-> human_review_if_required
-> integrate;
conflict:
preserve_provenance
-> compare_description_with_resource_and_sources
-> adjust_confidence
-> flag_review;
}
# ---------- FLOW HASH ----------
FLOW_HASH_INPUT :=
DOMAIN
+ SUBDOMAIN
+ ONTOLOGY
+ DescriptionEntity
+ MetadataEntity
+ ContextEntity
+ Description
+ DescriptionValidation
+ DescriptionQuality
+ RELATIONSHIPS
+ SEMANTIC_REASONING
+ SEMANTIC_EQUIVALENCE
+ UPDATE_MODEL;
FLOW_HASH :=
HASH(FLOW_HASH_INPUT);
# ---------- TERMINAL ----------
DescriptionOntology
-> IdentifyDescribedResource
-> DetermineDescriptionPurposeAndType
-> CaptureOrGenerateDescription
-> PreserveLanguageAudienceAndDisplayText
-> AttachStableResourceIdentifier
-> RecordSourceMethodAndProvenance
-> ValidateAccuracyClarityAndConsistency
-> ExtractSearchableEntitiesAndConcepts
-> IndexForFullTextAndSemanticRetrieval
-> PreserveVersionAndChangeHistory
-> EnforcePrivacySecurityAndAccess
-> SupportAIAndMachineConsumption
-> MaintainReliableResourceDescriptionKnowledge;
END FLOW
Download Code
Copy to Clipboard