ENTITY_EDITOR_SPEC.md¶
Document type: Product design specification (target state). Not a shipped feature list. See ROADMAP_MAPPING.md for release mapping and SHIPPED.md for what works today.
OntoCode Entity Editor Specification¶
Purpose¶
The Entity Editor is the primary workspace of OntoCode. It replaces the fragmented editing experience of traditional ontology tools with a unified, context-aware editor centered on a single semantic entity.
The editor should feel to ontology engineers what the code editor is to software developers.
Design Goals¶
The Entity Editor must be:
- Fast
- Focused
- Discoverable
- AI-assisted
- Context-aware
- Keyboard-first
- Fully synchronized with the Workspace Model
Users should rarely need to leave this screen.
Mental Model¶
Every semantic object opens in its own editor tab.
Examples:
- Class
- Individual
- Object Property
- Data Property
- Annotation Property
- Ontology
- SHACL Shape
- Rule
The editor presents every relevant aspect of that object in one cohesive experience.
Layout¶
+--------------------------------------------------------------+
| Breadcrumbs Actions |
+--------------------------------------------------------------+
| Overview Status |
+--------------------------------------------------------------+
| Tabs Search |
Overview | Hierarchy | Relationships | Constraints | Docs |
History | References | Reasoning | AI | Metadata
+--------------------------------------------------------------+
| Active Section |
+--------------------------------------------------------------+
The layout remains consistent regardless of entity type.
Header¶
Displays:
- Entity name
- Entity type
- Namespace
- Status
- Diagnostics
- Favorite toggle
Quick actions:
- Rename
- Show Graph
- Find References
- Explain
- Generate Docs
- History
- Copy IRI
Overview¶
Primary landing page.
Contains:
Description
Parents
Children
Relationships
Statistics
Recent Changes
Diagnostics
Recent AI Suggestions
Users should understand the entity within seconds.
Hierarchy¶
Displays:
- Parents
- Children
- Siblings
Supports:
- Collapse
- Expand
- Drag-and-drop
- Keyboard navigation
- Jump to entity
Relationships¶
Displays semantic relationships grouped by type.
Example:
Object Properties
Data Properties
Restrictions
Equivalent Classes
Disjoint Classes
Supports inline editing.
Constraints¶
Displays:
OWL restrictions
Cardinality
Domains
Ranges
Logical expressions
Provides live validation while editing.
Documentation¶
Integrated documentation editor.
Supports:
- Markdown
- Rich preview
- AI generation
- Cross references
- Version history
References¶
Lists every semantic usage.
Examples:
Imported by
Referenced by
Queries
Rules
SHACL
Documentation
Git
Each result is clickable.
Reasoning¶
Shows reasoning relevant to this entity.
Examples:
Inferred parents
Unsatisfied constraints
Equivalent classes
Consistency
Explanation
Users should never need a separate reasoning window.
AI¶
Context-aware assistant.
Capabilities:
Explain
Improve
Normalize
Generate documentation
Detect anti-patterns
Repair issues
Translate syntax
Every recommendation includes:
Reason
Preview
Apply
Dismiss
Metadata¶
Displays technical information.
Examples:
IRI
Namespace
Version
Source ontology
Creation date
Modification date
Plugin metadata
Metadata remains secondary.
Editing¶
All common editing occurs inline.
Double-click:
Rename
Descriptions
Labels
Comments
Restrictions
Relationships
Avoid modal dialogs whenever possible.
Validation¶
Validation runs continuously.
Feedback types:
Success
Information
Warning
Error
Every validation issue includes:
Explanation
Suggested fix
Navigation
Keyboard Shortcuts¶
Examples:
Enter
Edit
Escape
Cancel
Ctrl/Cmd+S
Save
Ctrl/Cmd+F
Search entity
Ctrl/Cmd+Shift+P
Command palette
Alt+Left
Back
Alt+Right
Forward
Every interaction should have a keyboard equivalent.
Search Within Entity¶
Supports:
Properties
Restrictions
Annotations
Documentation
Relationships
History
Results update live.
History¶
Timeline view.
Examples:
Created
Renamed
Relationship added
Constraint changed
Documentation updated
Git commit
Supports comparison between revisions.
Notifications¶
Prefer inline status indicators.
Examples:
Saved
Unsaved
Reasoning complete
AI suggestion available
Validation failed
Avoid intrusive popups.
Collaboration¶
Future support:
Comments
Review requests
Semantic pull requests
Assignments
Live collaboration
Accessibility¶
Support:
Screen readers
Keyboard-only navigation
High contrast
Reduced motion
Scalable fonts
Accessible labels
Performance¶
Targets:
Open entity
\<100 ms
Switch tabs
\<50 ms
Inline edit
Immediate
Validation
\<100 ms
Search
\<50 ms
AI suggestions
Asynchronous
Extension Points¶
Plugins may contribute:
Inspector cards
Relationship sections
Validation rules
Toolbar actions
Documentation panels
AI providers
Timeline entries
Success Criteria¶
A user should be able to spend an entire ontology engineering session inside the Entity Editor without feeling the need to constantly switch windows or hunt through disconnected panels. The editor should become the natural center of the OntoCode experience, bringing together editing, reasoning, documentation, history, AI assistance, and semantic navigation in one coherent workspace.