An object kind names a family of objects. The set of kinds is open: the kernel ships the grammar, not the nouns, and each kind is contributed by the biome whose behaviour it describes. A kind is a lower-case kebab-case word list of at most 64 characters (work-item, mount-source), which slots directly into XemaObjectRef paths. The kernel validates the shape of every kind with XemaObjectKindNameSchema; it does not keep a list of allowed kinds.

XemaObjectKind is the kernel's constant for the kinds that the kernel and the system biomes own (XemaObjectKind.Biome, XemaObjectKind.Skill, and so on). Use it to name one of those kinds in code. Never treat it as the complete set: a consumer that lists, filters or switches over kinds takes them from the objects it reads, not from that constant.

To introduce a kind, the owning biome defines the producer service that owns the projection and the kind's payload schema, and ships a contribution entry. No kernel change is needed.