What one family’s schema says, as a table: its classes, the profiles it
defines and the namespaces its vocabularies bind. Generated by cimgen, or
read from RDFS at runtime (schema_source).
The class of an object no class table knows — a SKOS concept, a PROV
agent, a DCAT catalogue — named by its namespace and local name. One leaked
ClassDef per distinct class, kept for the process like intern’s keys.
Its qualified name is the class IRI, which no family’s by_type keys use.
The one &'static copy of a field key the class tables do not hold — an
attribute the element’s class does not declare, as written in the file or
set from JSON. Each distinct key is leaked once and kept for the process;
there are as many as distinct undeclared attribute names, not fields.
An element’s fields, keyed by Class.attr. Keys are &'static: a declared
attribute’s key is its id in the class table, any other goes through
intern, so a key is allocated once per process rather than per field.