Data Formats & Schema
Standardisierung ist der Schlüssel zur Interoperabilität. Klare Schemata, keine Überraschungen.
Supported Formats
| Format | Use Case | Vorteil |
|---|---|---|
| JSON / JSONL | NoSQL (MongoDB, Elasticsearch), API | Flexibel, unterstützt Nested Objects (z.B. mehrere Nameserver). |
| CSV | Excel, SQL Import, Legacy Systems | Kompakt, universell lesbar. Arrays werden flachgeklopft
("ns1|ns2"). |
| Avro / Parquet | Hadoop, Spark, Snowflake | Schema-enforced, extrem effiziente Kompression für Big Data. |
Schema Definition (JSON)
Unser Hauptobjekt ist das DomainProfile. Hier ein vereinfachtes Schema:
{
"domain": "String (Punycode)",
"domain_utf8": "String (Unicode)",
"create_date": "ISO8601 Timestamp",
"expiry_date": "ISO8601 Timestamp",
"registrar": {
"name": "String",
"iana_id": "Integer",
"url": "String"
},
"registrant": {
"name": "String (Redacted if Privacy)",
"organization": "String",
"country_code": "ISO 3166-1 alpha-2"
},
"nameservers": ["String"],
"mx_records": [
{
"host": "String",
"priority": "Integer"
}
]
}
Encoding & Normalization
Die Welt der Domains ist chaotisch (IDNs, Emojis, Case Sensitivity). Wir normalisieren alles strikt:
- Encoding: Immer UTF-8.
- IDN Domains: Wir liefern immer beide Versionen: A-Label
(Punycode:
xn--mller-kva.de) und U-Label (Unicode:müller.de). - Case: Domains sind case-insensitive, wir liefern sie immer
lowercase. - Zeit: Immer UTC, Format ISO 8601 (
YYYY-MM-DDThh:mm:ssZ).