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¶
- See
mcp.mdto integrate SCE with Model Context Protocol. - See
GETTING-STARTED.mdfor examples and project templates.