No internet connection
  1. Home
  2. LOGOS
  3. REQUIREMENTS

Tag scope is configurable — global, per-category, or multi-category, each with independent inheritance

By @IvanTheGeek
    2026-03-01 16:39:24.811Z2026-03-01 16:52:24.354Z

    Tags in LOGOS must support flexible scoping — a tag can be global,
    scoped to a specific category, or assigned to an explicit set of
    categories, with each scoped assignment independently controlling
    whether child categories inherit it.

    Why It's Needed

    Talkyard tags are a flat global list. There is no scoping mechanism
    of any kind. A tag created for one domain appears everywhere. The
    only available mitigation is naming conventions, which reduce
    confusion but cannot enforce anything structurally.

    The needed model is more expressive than simple hierarchical
    inheritance. A tag may be relevant to multiple unrelated categories
    without being global. A tag may be relevant to a category but not
    its children. These combinations cannot be approximated with a
    hierarchy-only approach.

    The Requirement

    A tag has a scope configuration that specifies:

    Availability — one of:

    • Global: available across the entire forum
    • Single category: available within one specified category
    • Category set: available within an explicit list of categories

    Inheritance — per assignment:

    • Each category in the scope list independently specifies whether
      its children inherit the tag or not

    This means a single tag can be available in LOGOS and all its
    children, and also in APPS but not APPS' children — two assignments,
    two independent inheritance decisions.

    Global tags remain available everywhere and are an explicit choice,
    not the default.

    Acceptance

    An administrator can create a tag and assign it to two unrelated
    categories with different inheritance settings. The tag appears in
    the correct categories and their children (or not) according to each
    assignment. It does not appear in unrelated categories. A global tag
    appears everywhere regardless of other scoping rules.

    Source

    • 0 replies