FLOW ALGEBRA
TITLE: Library Science Domain Ontology
VERSION: 1.0
SOURCE_URL: https://kirethresearch.org/booksai-core/ontologies/domain-ontologies/information-domains/library-science-domain-ontology.html
STATUS: Domain-based draft; source page content not independently verified.
AUTHORS: Mark Higgins — Sky (Recursive AI)
PROJECT: Kireth Semantic Library
DOMAIN:
id: library_science_domain
label: Library Science Domain Ontology
parent: information_domains
purpose: Represent library collections, resources, description, discovery, circulation, preservation and access as typed, provenance-aware relationships.
TYPES:
Library: Organisation
Collection: Aggregation
InformationResource: Entity
Work: AbstractIntellectualCreation
Expression: RealisationOfWork
Manifestation: PublicationOrFormat
Item: PhysicalOrDigitalExemplar
Agent: PersonOrOrganisation
Creator: Agent
Patron: Agent
Librarian: Agent
CatalogueRecord: MetadataRecord
Identifier: String
Subject: Concept
ClassificationScheme: ControlledVocabulary
ClassificationCode: String
AuthorityRecord: IdentityRecord
Holding: ResourceAvailabilityRecord
Loan: CirculationEvent
Reservation: RequestEvent
Licence: AccessAgreement
Repository: StorageSystem
PreservationAction: Event
DigitalObject: InformationResource
ProvenanceRecord: EvidenceRecord
RELATIONSHIPS:
holds(Library, Item)
curates(Library, Collection)
contains(Collection, InformationResource)
created_by(Work, Agent)
realised_as(Work, Expression)
embodied_in(Expression, Manifestation)
exemplified_by(Manifestation, Item)
described_by(InformationResource, CatalogueRecord)
identified_by(InformationResource, Identifier)
has_subject(Work, Subject)
classified_as(InformationResource, ClassificationCode)
code_from(ClassificationCode, ClassificationScheme)
authority_controls(AuthorityRecord, Agent|Subject)
held_at(Item, Library)
borrowed_by(Loan, Patron)
loan_of(Loan, Item)
requested_by(Reservation, Patron)
reservation_for(Reservation, InformationResource)
governed_by(InformationResource, Licence)
stored_in(DigitalObject, Repository)
preserved_by(DigitalObject, PreservationAction)
supported_by(Assertion, ProvenanceRecord)
related_to(InformationResource, InformationResource)
CONSTRAINTS:
- Every catalogue record must identify its described resource.
- Identifiers must be scoped by identifier scheme and assigning authority.
- A single item cannot have overlapping active exclusive loans.
- Access permissions must be evaluated against the applicable licence and patron context.
- Work, expression, manifestation and item are distinct modelling levels.
- A missing record does not imply a resource does not exist.
- Classification and subject assignment may be many-to-many and version-dependent.
INFERENCE_RULES:
R1: realised_as(W,E) AND embodied_in(E,M) -> manifestation_of(M,W)
R2: embodied_in(E,M) AND exemplified_by(M,I) -> instance_of(I,E)
R3: held_at(I,L) AND exemplified_by(M,I) -> holds_manifestation(L,M)
R4: has_subject(W,S) AND realised_as(W,E) -> inherits_subject(E,S) [derived]
R5: loan_of(Loan,I) AND borrowed_by(Loan,P) AND active(Loan) -> unavailable_for_exclusive_loan(I)
R6: described_by(R,C) AND has_subject(R,S) -> catalogue_subject(C,S)
R7: stored_in(D,R) AND preserved_by(D,A) -> preservation_trace(D,R,A)
R8: related_to(A,B) does NOT imply related_to(B,A) unless relation type is symmetric.
CONFIDENCE:
scale: 0.0..1.0
scope: assertion_level
method: Evidence-weighted, calibrated where possible; never infer certainty from missing evidence.
fields: [value, method, evidence_ids, assessed_at, assessor]
SEMANTIC_EQUIVALENCE:
exact_match: Require shared referent, level, context and identifier scope.
close_match: Preserve differences between editions, translations and catalogue conventions.
prohibited_assumption: Work == Expression == Manifestation == Item
alignments: [RDF, SKOS, Dublin_Core, BIBFRAME, IFLA_LRM]
note: External vocabulary mappings require explicit verification.
PROVENANCE:
fields: [source_id, source_uri, record_id, contributor, timestamp, licence, revision, evidence_method]
requirement: Retain original assertions and distinguish derived assertions.
FLOW_HASH:
algorithm: SHA-256
input: Canonical UTF-8 serialization of typed entities, relations, rules and version metadata.
generation: Compute on deployment; no hash value is asserted in this draft.
UPDATE_MODEL:
strategy: Versioned append-and-reconcile
triggers: [catalogue_change, authority_update, circulation_event, licence_change, preservation_event]
steps: [validate_types, preserve_provenance, detect_conflicts, recompute_inferences, recalculate_hash, publish_version]
deletion: Tombstone records where necessary to preserve auditability.
AI_CONSUMPTION:
mode: Typed semantic retrieval and provenance-aware inference
inputs: [resource_query, user_context, access_context, ontology_version]
outputs: [matched_resources, relationship_paths, evidence, confidence, access_status, uncertainty]
safeguards: [respect_licences, protect_patron_privacy, avoid_unsupported_inference, retain_citations]
VALIDATION:
- Verify entity and relationship type signatures.
- Check referential integrity and identifier scoping.
- Validate temporal constraints for loans and reservations.
- Preserve distinctions between asserted and inferred facts.
- Test ambiguous author names and edition-level distinctions.
- Check access restrictions before exposing protected content.
END FLOW ALGEBRA
Download Code
Copy to Clipboard