Skip to main content

User Experience Ontology

Human–Computer Interaction
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 06 October 2026
Audio Overview
FLOW ALGEBRA
User Experience Ontology
Kireth Semantic Research Archive

PAGE:
https://kirethresearch.org/booksai-core/ontologies/computing-ontologies/human-computer-interaction/user-experience-ontology.html

AUTHORS:
Mark Anthony Higgins — Sky (Recursive AI)

FLOW "UserExperienceOntology" v4.0

# ---------- DOMAIN ----------
DOMAIN := ComputingOntology
SUBDOMAIN := HumanComputerInteraction
ONTOLOGY := UserExperienceOntology

# ---------- PRIMARY ENTITY ----------
ENTITY UserExperience {
    definition:
        "The perceptions, responses, emotions, judgements and outcomes that
         arise before, during and after a person's interaction with a product,
         service, interface or computational system.";

    objectives: [
        Usefulness,
        Usability,
        Satisfaction,
        Accessibility,
        Trust,
        Engagement,
        Value
    ];
}

# ---------- CORE ENTITIES ----------
UXEntity := {
    User,
    Product,
    Service,
    Interface,
    Interaction,
    Task,
    Context,
    Touchpoint
};

UXProperty := {
    Usefulness,
    Usability,
    Satisfaction,
    Trust,
    Engagement,
    Learnability,
    Accessibility,
    PerceivedValue
};

UserResponse := {
    Perception,
    Emotion,
    Attitude,
    Behaviour,
    Satisfaction,
    Frustration,
    Confidence
};

ExperienceStage := {
    AnticipatedExperience,
    InteractionExperience,
    ReflectiveExperience
};

# ---------- FUNDAMENTAL RELATIONSHIPS ----------
User EXPERIENCES ProductOrService;
User INTERACTS_WITH Interface;
Interaction OCCURS_IN Context;
Touchpoint CONTRIBUTES_TO UserExperience;
UserExperience INFLUENCED_BY UXProperty;
UserResponse RESULTS_FROM InteractionAndExpectation;
TaskOutcome AFFECTS Satisfaction;

# ---------- EXPERIENCE FLOW ----------
UserNeed ->
    FormExpectation
    -> EncounterTouchpoint
    -> Interact
    -> PerceiveSystemResponse
    -> EvaluateOutcome
    -> FormEmotionalAndCognitiveResponse
    -> UpdateOverallExperience;

# ---------- USER ----------
User :=
    HumanParticipantWithNeedsGoalsAndExpectations;

User HAS {
    Need,
    Goal,
    Ability,
    Experience,
    Preference,
    Expectation
};

DifferentUsers MAY_HAVE DifferentExperienceOfSameSystem;

# ---------- USER NEED ----------
UserNeed :=
    RequirementOrDesiredBenefitFromProductOrService;

UserNeed MAY_BE {
    Functional,
    Informational,
    Emotional,
    AccessibilityRelated
};

ProductValue SHOULD_RELATE_TO UserNeed;

# ---------- EXPECTATION ----------
Expectation :=
    UserBeliefAboutFutureExperienceOrOutcome;

Expectation MAY_BE_FORMED_BY {
    PriorExperience,
    Communication,
    Brand,
    InterfaceCues,
    SocialInformation
};

ExperienceEvaluation MAY_COMPARE Outcome WITH Expectation;

# ---------- TOUCHPOINT ----------
Touchpoint :=
    PointOfInteractionBetweenUserAndProductOrService;

Touchpoint MAY_INCLUDE {
    Website,
    Application,
    Email,
    SupportInteraction,
    Notification,
    PhysicalDevice
};

Journey CONSISTS_OF Touchpoints;

# ---------- USER JOURNEY ----------
UserJourney :=
    ordered_set(
        Stage,
        Touchpoint,
        UserAction,
        UserResponse
    );

JourneyStage MAY_BE {
    Discover,
    Evaluate,
    Begin,
    Use,
    Complete,
    Return
};

# ---------- TASK EXPERIENCE ----------
Task :=
    ActivityPerformedToAchieveGoal;

TaskExperience :=
    f(
        TaskSuccess,
        Effort,
        Time,
        Errors,
        Confidence,
        Satisfaction
    );

IF TaskFails
THEN ExperienceQuality MAY_DECREASE;

# ---------- USEFULNESS ----------
Usefulness :=
    DegreeToWhichSystemHelpsUserAchieveRelevantGoal;

IF SystemEasyToUse
AND DoesNotMeetUserNeed
THEN UsabilityMayBeHigh BUT UsefulnessLow;

# ---------- USABILITY ----------
Usability :=
    f(
        Effectiveness,
        Efficiency,
        Satisfaction,
        Learnability,
        ErrorRate
    );

Usability CONTRIBUTES_TO UserExperience;
UserExperience != Usability;

# ---------- SATISFACTION ----------
Satisfaction :=
    UserEvaluationOfExperienceRelativeToNeedsAndExpectations;

Satisfaction MAY_BE_INFLUENCED_BY {
    Outcome,
    Effort,
    Reliability,
    Aesthetics,
    Trust,
    Support
};

# ---------- TRUST ----------
Trust :=
    UserConfidenceThatSystemWillBehaveReliablyAndAppropriately;

Trust MAY_DEPEND_ON {
    Reliability,
    Transparency,
    Security,
    Predictability,
    PriorExperience
};

UnexpectedOrMisleadingBehaviour MAY_REDUCE Trust;

# ---------- ENGAGEMENT ----------
Engagement :=
    DegreeOfAttentionParticipationOrContinuedInteraction;

Engagement DOES_NOT_ALWAYS_IMPLY PositiveExperience;

Engagement SHOULD_BE_INTERPRETED_WITH UserGoalAndContext;

# ---------- EMOTION ----------
EmotionalResponse MAY_BE {
    Positive,
    Neutral,
    Negative
};

Emotion MAY_AFFECT {
    Satisfaction,
    MemoryOfExperience,
    ContinuedUse
};

# ---------- PERCEIVED VALUE ----------
PerceivedValue :=
    UserPerceivedBenefit
    relative_to
    CostOrEffort;

IF BenefitHigh
AND EffortReasonable
THEN PerceivedValue MAY_INCREASE;

# ---------- EFFORT ----------
UserEffort MAY_INCLUDE {
    PhysicalEffort,
    CognitiveEffort,
    Time,
    NumberOfSteps
};

UnnecessaryEffort MAY_DECREASE ExperienceQuality;

# ---------- COGNITIVE LOAD ----------
CognitiveLoad :=
    MentalEffortRequiredDuringInteraction;

PoorInformationStructure MAY_INCREASE CognitiveLoad;

ClearDesign MAY_REDUCE ExtraneousCognitiveLoad;

# ---------- ACCESSIBILITY ----------
Accessibility :=
    DegreeToWhichPeopleWithDiverseCapabilitiesCanUseProductOrService;

AccessibilityBarrier MAY_NEGATIVELY_AFFECT UserExperience;

InclusiveExperience SHOULD_CONSIDER DiverseUsersAndContexts;

# ---------- AESTHETICS ----------
VisualAesthetics :=
    UserPerceptionOfVisualFormAndPresentation;

Aesthetics MAY_INFLUENCE {
    InitialImpression,
    Satisfaction,
    PerceivedQuality
};

Aesthetics SHOULD_NOT_REPLACE UsabilityOrAccessibility;

# ---------- CONSISTENCY ----------
ExperienceConsistency :=
    DegreeToWhichRelatedTouchpointsBehaveAndCommunicateCoherently;

Consistency MAY_INCREASE {
    Predictability,
    Trust,
    Learnability
};

# ---------- ERROR EXPERIENCE ----------
ErrorExperience :=
    UserResponseToFailureOrProblem;

ErrorRecoveryQuality :=
    f(
        ErrorClarity,
        RecoveryEase,
        DataPreservation,
        UserControl
    );

GoodRecovery MAY_REDUCE NegativeImpactOfError;

# ---------- FEEDBACK ----------
SystemFeedback :=
    InformationCommunicatingStateOrOutcome;

TimelyFeedback MAY_INCREASE UserConfidence;

MissingFeedback MAY_CREATE Uncertainty;

# ---------- PERFORMANCE EXPERIENCE ----------
PerceivedPerformance :=
    UserPerceptionOfResponsivenessAndSpeed;

ResponseTime AFFECTS PerceivedPerformance;

IF DelayLong
THEN ProgressFeedback MAY_IMPROVE ExperienceUnderstanding;

# ---------- UX RESEARCH ----------
UXResearch :=
    StudyUsers
    -> CollectEvidence
    -> AnalyseNeedsAndBehaviour
    -> GenerateInsight;

ResearchMethod MAY_INCLUDE {
    Interview,
    Observation,
    Survey,
    UsabilityTest,
    DiaryStudy,
    Analytics,
    FieldStudy
};

# ---------- PERSONA ----------
Persona :=
    EvidenceBasedRepresentationOfUserGroup;

Persona MAY_INCLUDE {
    Goals,
    Behaviours,
    Needs,
    Constraints
};

Persona SHOULD_BE GroundedInResearch;

# ---------- JOURNEY MAPPING ----------
JourneyMap :=
    RepresentationOfUserJourney;

JourneyMap MAY_SHOW {
    Stages,
    Actions,
    Touchpoints,
    Needs,
    PainPoints,
    Emotions
};

# ---------- PAIN POINT ----------
PainPoint :=
    RepeatedOrSignificantUserDifficulty;

PainPoint MAY_INDICATE DesignOpportunity;

# ---------- USABILITY TEST ----------
UsabilityTest :=
    RepresentativeUser
    -> PerformTask
    -> Observe
    -> Measure
    -> IdentifyIssue;

UsabilityEvidence CONTRIBUTES_TO UXEvidence;

# ---------- SURVEY ----------
UXSurvey MAY_MEASURE {
    Satisfaction,
    PerceivedEase,
    Trust,
    RecommendationIntent
};

SelfReportedMeasure SHOULD_BE_INTERPRETED_WITH BehaviouralEvidenceWhenPossible;

# ---------- ANALYTICS ----------
BehaviouralAnalytics MAY_INCLUDE {
    TaskCompletion,
    Abandonment,
    NavigationPath,
    ErrorFrequency,
    ReturnUse
};

Analytics DESCRIBES Behaviour;
Analytics DOES_NOT_DIRECTLY_REVEAL AllUserMotivation;

# ---------- UX METRIC ----------
UXMetric := {
    TaskSuccess,
    CompletionTime,
    ErrorRate,
    SatisfactionScore,
    Retention,
    Abandonment,
    SupportDemand
};

Metric SHOULD_BE_CONNECTED_TO UserAndBusinessGoal;

# ---------- DESIGN ITERATION ----------
UXDesignCycle :=
    Research
    -> DefineProblem
    -> GenerateDesign
    -> Prototype
    -> Evaluate
    -> Refine;

Evidence SHOULD_DRIVE Iteration;

# ---------- ETHICS ----------
UXDesign SHOULD_AVOID {
    DeceptiveInteraction,
    ManipulativeChoiceArchitecture,
    HiddenCost,
    UnclearConsent
};

EthicalDesign SUPPORTS LongTermTrust;

# ---------- PRIVACY ----------
UserExperience MAY_BE_AFFECTED_BY PrivacyPractice;

PrivacyExperience SHOULD_INCLUDE {
    Transparency,
    MeaningfulControl,
    UnderstandableChoice
};

# ---------- SEMANTIC REASONING ----------
IF UserAchievesGoalWithLowUnnecessaryEffort
THEN ExperienceQuality MAY_INCREASE;

IF UsabilityHigh
AND UsefulnessLow
THEN OverallUX MAY_STILL_BE Poor;

IF RepeatedPainPointObservedAcrossUsers
THEN DesignIssueConfidence := increase;

IF UserExpectationExceedsActualOutcome
THEN Satisfaction MAY_DECREASE;

IF ErrorOccursButRecoveryClearAndEasy
THEN NegativeUXImpact MAY_BE Reduced;

IF AccessibilityBarrierBlocksTask
THEN UserExperienceForAffectedUser := poor;

IF ResearchEvidenceConflictsWithAssumption
THEN DesignAssumption SHOULD_BE Revised;

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE {
    "user experience" ~= "UX";
    "UX design" ~= "user experience design";
    "user journey" ~= "customer or user journey" WHEN context == product_experience;
    "touchpoint" ~= "user interaction point";
    "pain point" ~= "user difficulty point";
    "perceived value" ~= "user-perceived value";
    "UX research" ~= "user experience research";
    "journey map" ~= "user journey map";
}

# ---------- QUERY FLOW ----------
QUERY(q) ->
    NORMALISE(q) ->
    IDENTIFY_USER(q) ->
    IDENTIFY_NEED_AND_GOAL(q) ->
    IDENTIFY_TOUCHPOINT(q) ->
    IDENTIFY_TASK(q) ->
    IDENTIFY_USER_RESPONSE(q) ->
    IDENTIFY_UX_PROPERTIES(q) ->
    IDENTIFY_RESEARCH_EVIDENCE(q) ->
    MAP_TO_ONTOLOGY(q) ->
    APPLY_REASONING(q) ->
    SCORE_CONFIDENCE(q) ->
    RETURN_RELEVANT_KNOWLEDGE;

# ---------- CONFIDENCE ----------
CONFIDENCE(assertion) :=
    weighted_mean(
        source_reliability,
        user_research_quality,
        behavioural_evidence,
        self_report_evidence,
        semantic_consistency,
        contextual_relevance
    );

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

# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION {
    primary_entity: UserExperience;
    ontology: UserExperienceOntology;
    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_user_evidence:
        identify_user
        -> identify_context
        -> identify_touchpoint
        -> record_response
        -> confidence_score
        -> integrate;

    new_research:
        classify_method
        -> identify_participants
        -> identify_findings
        -> identify_limitations
        -> integrate;

    new_design_revision:
        identify_target_issue
        -> record_change
        -> collect_post_change_evidence
        -> compare_outcomes
        -> integrate;

    ux_revision:
        update_journey
        -> update_pain_points
        -> recompute_ux_relationships
        -> recompute_confidence
        -> regenerate_flow_hash;

    conflict:
        preserve_provenance
        -> compare_user_evidence
        -> adjust_confidence
        -> flag_review;
}

# ---------- FLOW HASH ----------
FLOW_HASH_INPUT :=
    DOMAIN
    + SUBDOMAIN
    + ONTOLOGY
    + UXEntity
    + UXProperty
    + UserResponse
    + ExperienceStage
    + UserJourney
    + UXResearch
    + UXMetric
    + RELATIONSHIPS
    + SEMANTIC_REASONING
    + SEMANTIC_EQUIVALENCE
    + UPDATE_MODEL;

FLOW_HASH :=
    HASH(FLOW_HASH_INPUT);

# ---------- TERMINAL ----------
UserExperienceOntology
    -> IdentifyUserNeeds
    -> UnderstandExpectations
    -> MapUserJourney
    -> IdentifyTouchpoints
    -> ObserveTaskExperience
    -> MeasureUsabilityAndSatisfaction
    -> IdentifyPainPoints
    -> EvaluateTrustAccessibilityAndValue
    -> GenerateEvidenceBasedDesignChange
    -> PrototypeAndTest
    -> CompareExperienceOutcomes
    -> IterateDesign
    -> ImproveOverallUserExperience;

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