Product · Schema editor

The T-Box, designed visually.

Classes with typed attributes. Relation types with explicit domain and range. The six SKOS slots — prefLabel, altLabel, hiddenLabel, definition, notation, example — present on every class without configuration.

Classes

Type-safe by default.

A ConceptClass is more than a label. It carries typed attributes (string, number, boolean, enum, date, reference, money), required and localizable flags, and the SKOS slots that downstream consumers expect. Add a class and your schema is the spec.

  • Seven attribute types covering most real-world domains
  • Required + localizable flags wired into validation
  • SKOS-aligned built-ins — never re-declare them
  • Color-coded so the canvas stays readable at scale
ConceptClass · Manufacturer
json
{
  "id": "cc_manufacturer",
  "name": "Manufacturer",
  "color": "violet",
  "properties": [
    { "key": "name",     "type": "string",    "required": true,  "localizable": true },
    { "key": "country",  "type": "reference", "required": true },
    { "key": "founded",  "type": "date" },
    { "key": "website",  "type": "string" }
  ]
}

Relations

Domain and range, enforced.

Every relation type points at a domain class and a range class. The Validation panel surfaces the moment a concept slips out of bounds. The Canvas honors them when you draw a new edge — the picker only shows relation types the endpoints can carry.

  • Filtered relation picker on canvas drag-to-connect
  • Live domain / range violation warnings
  • Built-in transitive `broader` for hierarchical schemes
  • Symmetric flag for relations like `relatedTo`
RelationType · poweredBy
json
{
  "id": "rt_powered_by",
  "name": "poweredBy",
  "domainClassId": "cc_model",
  "rangeClassId":  "cc_engine",
  "isTransitive": false,
  "isSymmetric":  false,
  "isBuiltIn":    false
}

The canvas

See the whole shape at once.

A hub-and-spoke ER layout you can drag freely. Built-in `broader` edges dashed. User-defined edges solid violet. Clicking a class opens the inspector with instance counts, custom attributes, and every relation type the class participates in — as domain and as range.

  • Single-click selection · double-click to deep-edit
  • Click an edge to surface its domain → range pair
  • Auto-fit to viewport, manual zoom, no minimap clutter
  • Reduced-motion friendly — animations gate on `prefers-reduced-motion`

Design the T-Box you've always wanted.

Free workspace. Cars-style starter pre-loaded. Ten minutes to your first class.