ReferenceSchemas
Eidos Schema
Reference for the arke/eidos@v2 base entity schema.
Schema Identifier
arke/eidos@v2
Interface
interface EidosV2 {
schema: 'arke/eidos@v2';
id: string;
type: string;
created_at: string;
ver: number;
ts: string;
prev: { '/': string } | null;
properties: Record<string, unknown>;
relationships: Relationship[];
components?: Record<string, { '/': string }>;
edited_by: EditInfo;
note?: string;
}Required Fields
| Field | Type | Constraint |
|---|---|---|
schema | string | Must be arke/eidos@v2 |
id | string | Non-empty, valid ULID format |
type | string | Non-empty |
created_at | string | ISO 8601 |
ver | number | >= 1 |
ts | string | ISO 8601 |
prev | IPLDLink or null | null iff ver=1 |
properties | object | At minimum {} |
relationships | array | At minimum [] |
edited_by | EditInfo | Valid structure |
Relationship Structure
interface Relationship {
predicate: string;
peer: string;
peer_type?: string;
peer_label?: string;
properties?: Record<string, unknown>;
}EditInfo Structure
interface EditInfo {
user_id: string;
method: 'manual' | 'ai_generated' | 'system' | 'import';
on_behalf_of?: string;
}Validation Rules
schemamust bearke/eidos@v2- All required fields must be present
ver === 1requiresprev === nullver > 1requiresprev !== nulledited_bymust have validuser_idandmethodrelationshipsmust be an arraypropertiesmust be an object
The base schema does not validate what's inside properties or which relationships exist -- that's delegated to type-specific profiles.