Skip to content

Ontology & API

The Semantic Communication Encoding (SCE) ontology defines a governed set of Unicode emoji symbols with explicit meaning, usage rules, and domain roles. It ensures humans, tools, and LLMs interpret symbols consistently.


Ontology structure

The canonical ontology exists in:

packages/core/ts/src/ontology.ts

This file is considered normative for the current version of SCE.

Each symbol definition includes:

Field Purpose
emoji The Unicode grapheme representing the symbol
role The semantic category (e.g., STRUCTURE, TASK, STATE)
meaning Human-readable definition
allowedContext Where this symbol may be used (HUMAN, LLM, TOOL)
usage REQUIRED, OPTIONAL, or CONDITIONAL
conflictsWith Symbols that cannot appear in the same semantic position
example A canonical usage reference

Type Signature

export interface SceSymbolDefinition {
  emoji: string;
  role: SceRole;
  meaning: string;
  allowedContext: SceContext[];
  usage: SceUsage;
  conflictsWith: string[];
  example: string;
}

Domain model

SCE symbols are grouped into eight role domains:

Domain Examples Usage
structure ๐Ÿ—‚๏ธ ๐Ÿ“Œ ๐Ÿ“Ž Sections, pinned facts, anchors
legalPolicy โš–๏ธ ๐Ÿ“œ ๐Ÿงพ ๐Ÿ›๏ธ Legal rules, citation, evidence
reasoning ๐Ÿ” ๐Ÿง  ๐Ÿ•ต๏ธ Analysis, inference, investigation
tasks ๐Ÿ“ โ˜ โ˜‘๏ธ โœ… ๐Ÿ” Work items, completion state
privacy ๐Ÿ” ๐Ÿ—๏ธ ๐Ÿ”“ Access control and authorization
actors ๐Ÿ‘ค ๐Ÿง‘โ€๐ŸŽ“ ๐Ÿง‘โ€๐Ÿซ ๐Ÿง‘โ€โš–๏ธ ๐Ÿข Persons and institutions
state โณ โ“ โš ๏ธ โŒ Status, uncertainty, warnings
control ๐Ÿ”€ โญ๏ธ โฎ๏ธ Flow and decision indicators

Each symbol belongs to exactly one domain.


Programmatic access

Importing the ontology

import { SemanticOntology } from "semanticencoding";

console.log(SemanticOntology.structure.pinned);
/*
{
  emoji: "๐Ÿ“Œ",
  role: "STRUCTURE",
  meaning: "Pinned fact or non-negotiable constraint",
  allowedContext: ["HUMAN", "LLM"],
  usage: "REQUIRED",
  conflictsWith: [...],
  example: "๐Ÿ“Œ The date of first notification is fixed."
}
*/

Runtime utilities

Extract symbol definitions from text

import { getDefinitionsFromText } from "semanticencoding";

const result = getDefinitionsFromText("โš ๏ธ Issue โณ still unresolved");
console.log(result);

Validate ontology

import { validateOntology } from "semanticencoding";

const issues = validateOntology();
if (issues.length > 0) {
  console.table(issues);
}

Suggest symbols

import { suggestSymbols } from "semanticencoding";

console.log(suggestSymbols("requires follow-up and pending review"));

Stability and governance

The ontology is versioned and governed according to:

  • GOVERNANCE.md
  • /rfcs/
  • LICENSE.md (Ethical Use)

Breaking changes require an approved RFC.


Next steps