Building Semantic Schema
Source - [1]
A schema is a formal, machine-readable contract that declares what exists, what it means, and what must be true—without saying how to build it
What a schema is
A schema is an abstraction that defines meaning, structure, and constraints, independent of any particular file format or tool.
A schema is:
- Conceptual before it is representational
- Declarative rather than procedural
- Concerned with what is true, not how it is produced
A schema does not inherently belong to:
- JSON
- YAML
- XML
- IFC
- FreeCAD
- Revit
- Any specific software system
Those are merely serialization formats or containers used to express the schema.
Role of the compiler
The purpose of a compiler is to translate a schema into a target representation.
A compiler:
- Interprets the schema’s meaning and constraints
- Resolves ambiguities and degrees of freedom
- Applies deterministic construction rules
- Emits a concrete artifact in a target domain
Examples of compiler targets include:
- FreeCAD geometry
- IFC models
- Permit drawings
- Bills of materials
- Installation instructions
- Inspection checklists
Key separation
- The schema defines intent and truth
- The compiler defines execution
- The output is disposable and regenerable
This separation is what enables:
- Lossless regeneration
- Automation at scale
- Tool independence
- Safe use of AI
Summary
A schema is a tool-independent abstraction of meaning and constraints.
A compiler is the mechanism that translates that abstraction into a specific, concrete output.
A schema is not
A schema is not any of the following:
- Geometry
- Code
- Instructions
- Algorithms
- Drawings
- A script
- A model in FreeCAD
All of the above are derived artifacts — they are produced *from* a schema by compilers, generators, or humans, but they are not the schema itself.