Facts need
provenance.
The site treats data provenance as part of the product. Every field should be traceable to a source, a deterministic derivation, or clearly labeled editorial context.
Use each authority for the fact it actually owns.
Four buckets. No blurry middle.
Copied or normalized from an authoritative record, such as an IANA sponsoring organisation or an ICANN agreement status.
Computed from source data with an explicit rule, such as “currently delegated” from current root membership or an IDN A-label/U-label transformation.
Plain-language context that explains a protocol or role without pretending to be registry-specific policy.
When a source does not provide the answer, the site says so. Absence of evidence is not converted into a confident field value.
Preserve source dimensions instead of flattening them.
A single friendly “type” field is tempting and dangerous. The normalized record keeps DNS/root classification, delegation state, ICANN agreement state, and agreement attributes separate so the interface can explain how they relate without silently rewriting them.
delegatedIANAMembership in the current delegated TLD set.
iana_typeIANAPreserve the classification published for the root-zone record.
sponsoring_orgIANADo not replace with an ICANN operator field.
agreement_statusICANNStored independently from DNS delegation state.
brand / communityICANNOnly when the applicable agreement material explicitly supports the attribute.
dnssecRoot DNSDerived from authoritative DS presence at the root.
The importer should be harder to fool than the UI.
- 01Schema checks
Required source fields, labels, URL shapes and expected enumerations are validated before output is accepted.
- 02Namespace checks
Current delegation is validated against the authoritative delegated set rather than inferred from a registry agreement page.
- 03IDN checks
A-label and U-label values must normalize and round-trip correctly before they become canonical routes or search keys.
- 04Diff checks
Large or unexpected changes in counts, field coverage, source structure or classifications stop the update for review.
- 05Provenance checks
Published factual fields must retain a source identifier or deterministic derivation rule.
A timestamp is only useful when it says what changed.
Source fetch time, source-record update time, and page build time are different concepts. The production dataset should preserve them separately. Page lastmod values should change only when the rendered record meaningfully changes.
A rebuild timestamp should never imply that an upstream registry record changed that day.