B2Base · 1.0.0-draft.1 · Projektentwurf
Rechtliche Bezeichnung und optionale Register-, Adress- und Kontaktangaben.
Bibliothek · Juristische Personen · Internationale Grundregeln
Austauschschema (JSON) · Schema für den Designer · Beispieldaten
Austauschschema: vollständige Strukturprüfung mit JSON Schema 2020-12. Designer-Fassung: gleiche Datenfelder mit reduzierten Strukturregeln zur Feldübernahme. Anleitung und Grenzen
| Feld | Typ | Pflicht im Modul | Bedeutung |
|---|---|---|---|
name | string | Ja | Vollständiger rechtlicher Name in Originalschrift. |
names | array | Nein | Zusätzliche Sprachfassungen; nicht automatisch rechtlich gleichwertig. |
jurisdiction | string | Nein | Optionales Land der maßgeblichen Rechtsordnung; weitere Ebene in jurisdictionName. |
jurisdictionName | string | Nein | Zusätzliche oder abweichende Zuständigkeitsbezeichnung. |
legalForm | object | Nein | Rechtsform aus einem benannten nationalen oder internationalen Vokabular. |
registrationNumbers | array | Nein | Bekannte Registereinträge. |
address | object | Nein | Eine oder mehrere Adressen. |
contactInformation | object | Nein | Mindestens ein bekannter Kontaktkanal. |
extensions | object | Nein | Vereinbarte Erweiterungen; Schlüssel als absolute URI des Herausgebers. Keine stillschweigende Änderung von Kernfeldern. |
Pflichtangaben gelten für das jeweilige Objekt, wenn dieses Modul verwendet wird. Zusätzliche Alternativen und Statusregeln stehen im Austauschschema. Optionale Felder weglassen, wenn sie unbekannt oder nicht anwendbar sind; ein leeres Pflichtfeld ist kein gültiger Ersatz.
Alle Beispiele sind synthetisch. Sie werden mit dem mitgelieferten Schema geprüft; daraus folgt keine fachliche Echtheit oder externe Erreichbarkeit.
{
"name": "株式会社サンプル",
"jurisdiction": "JP",
"names": [
{
"text": "Sample Corporation",
"language": "en"
}
]
}
{
"name": "Example Association",
"registrationNumbers": [
{
"type": "association-register",
"number": "00042",
"scheme": "https://example.org/register/associations"
}
]
}
Register, Adresse und Kontakt sind nicht mehr generell Pflicht. registrationNumbers benötigt nun scheme. Die alten Wiki-URLs als $ref und die gleichnamigen Platzhalter in Beispieldaten wurden durch lokal eingebettete Schemata und echte Daten ersetzt.
Die Datei ist eigenständig: verwendete Bausteine sind unter $defs eingebettet, Referenzen bleiben lokal. $id ist die kanonische Kennung. Die Downloads oben verwenden den aktuellen Server; eine Veröffentlichung unter der kanonischen Domain ist damit nicht behauptet.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://b2base.eu/schemas/1.0.0-draft.1/legalentity/nameanddetails.schema.json",
"title": "Juristische Personen",
"$comment": "B2Base 1.0.0-draft.1. Projektentwurf, kein durch ISO oder andere Normungsgremien verabschiedeter Standard.",
"type": "object",
"description": "Juristische Person; Registersysteme werden nicht auf deutsche Behörden reduziert.",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Vollständiger rechtlicher Name in Originalschrift."
},
"names": {
"type": "array",
"description": "Zusätzliche Sprachfassungen; nicht automatisch rechtlich gleichwertig.",
"items": {
"$ref": "#/$defs/LocalizedText"
}
},
"jurisdiction": {
"$ref": "#/$defs/CountryCode",
"description": "Optionales Land der maßgeblichen Rechtsordnung; weitere Ebene in jurisdictionName."
},
"jurisdictionName": {
"type": "string",
"minLength": 1,
"description": "Zusätzliche oder abweichende Zuständigkeitsbezeichnung."
},
"legalForm": {
"$ref": "#/$defs/CodedValue",
"description": "Rechtsform aus einem benannten nationalen oder internationalen Vokabular."
},
"registrationNumbers": {
"type": "array",
"description": "Bekannte Registereinträge.",
"items": {
"type": "object",
"description": "Registerkennung.",
"properties": {
"type": {
"type": "string",
"minLength": 1,
"description": "Registerart."
},
"number": {
"type": "string",
"minLength": 1,
"description": "Registerkennung; führende Nullen erhalten."
},
"scheme": {
"type": "string",
"minLength": 1,
"description": "URI des Registers oder Kennungssystems.",
"format": "uri"
},
"issuer": {
"type": "string",
"minLength": 1,
"description": "Registerführende Stelle."
},
"country": {
"$ref": "#/$defs/CountryCode"
}
},
"required": [
"type",
"number",
"scheme"
],
"additionalProperties": false
},
"minItems": 1
},
"address": {
"$ref": "#/$defs/AddressDetails"
},
"contactInformation": {
"$ref": "#/$defs/ContactDetails"
},
"extensions": {
"type": "object",
"description": "Vereinbarte Erweiterungen; Schlüssel als absolute URI des Herausgebers. Keine stillschweigende Änderung von Kernfeldern.",
"properties": {},
"additionalProperties": true,
"propertyNames": {
"format": "uri"
}
}
},
"required": [
"name"
],
"additionalProperties": false,
"$defs": {
"LocalizedText": {
"type": "object",
"description": "Text mit expliziter Sprache; Originalschreibweise erhalten.",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"description": "Inhalt in Unicode."
},
"language": {
"$ref": "#/$defs/LanguageTag"
}
},
"required": [
"text",
"language"
],
"additionalProperties": false
},
"LanguageTag": {
"type": "string",
"minLength": 1,
"description": "BCP-47-Sprachtag, etwa de, zh-Hant-TW, sr-Latn oder x-internal. Das Muster prüft nur die Grundform, nicht Registrierung oder alle BCP-47-Regeln.",
"pattern": "^[A-Za-z]{1,8}(-[A-Za-z0-9]{1,8})*$"
},
"CountryCode": {
"type": "string",
"minLength": 1,
"description": "ISO 3166-1 Alpha-2, Großbuchstaben. Das Muster prüft nur die Schreibweise; zugewiesenen Code und Gültigkeitszeitpunkt gesondert prüfen.",
"pattern": "^[A-Z]{2}$"
},
"CodedValue": {
"type": "object",
"description": "Fachlicher Code mit benanntem Vokabular.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Code aus dem bezeichneten Vokabular; als Text unverändert übernehmen."
},
"scheme": {
"type": "string",
"minLength": 1,
"description": "Absolute URI des Vokabulars, einschließlich einer Version, falls dessen Bedeutung veränderlich ist.",
"format": "uri"
},
"label": {
"type": "string",
"minLength": 1,
"description": "Optionale lesbare Bezeichnung."
},
"language": {
"$ref": "#/$defs/LanguageTag",
"description": "Sprache der Bezeichnung, nicht Staatsangehörigkeit."
}
},
"required": [
"value",
"scheme"
],
"additionalProperties": false
},
"AddressDetails": {
"type": "object",
"description": "Eine oder mehrere Adressen.",
"properties": {
"addresses": {
"type": "array",
"description": "Bekannte Adressen.",
"items": {
"$ref": "#/$defs/Address"
},
"minItems": 1
},
"extensions": {
"type": "object",
"description": "Vereinbarte Erweiterungen; Schlüssel als absolute URI des Herausgebers. Keine stillschweigende Änderung von Kernfeldern.",
"properties": {},
"additionalProperties": true,
"propertyNames": {
"format": "uri"
}
}
},
"required": [
"addresses"
],
"additionalProperties": false
},
"Address": {
"type": "object",
"description": "Internationale Post- oder Standortadresse. Weder Straße, Hausnummer, Stadt noch Postleitzahl sind weltweit obligatorisch.",
"properties": {
"type": {
"type": "string",
"minLength": 1,
"description": "Verwendungszweck, etwa home, work oder delivery."
},
"addressLines": {
"type": "array",
"description": "Geordnete Druckzeilen in der Originalschrift; bei Angabe maßgeblich für die Darstellung.",
"items": {
"type": "string",
"minLength": 1,
"description": "Eine Adresszeile."
},
"minItems": 1
},
"language": {
"$ref": "#/$defs/LanguageTag"
},
"recipient": {
"type": "string",
"minLength": 1,
"description": "Optionale Empfängerbezeichnung."
},
"street": {
"type": "object",
"description": "Straßenname.",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Straßenname."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"name"
],
"additionalProperties": false
},
"number": {
"type": "object",
"description": "Hausnummer, auch alphanumerisch.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Hausnummer, auch alphanumerisch."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"value"
],
"additionalProperties": false
},
"unit": {
"type": "object",
"description": "Einheit oder Wohnung.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Einheit oder Wohnung."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"value"
],
"additionalProperties": false
},
"floor": {
"type": "object",
"description": "Etagenbezeichnung.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Etagenbezeichnung."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"value"
],
"additionalProperties": false
},
"postBox": {
"type": "object",
"description": "Postfach.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Postfach."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"value"
],
"additionalProperties": false
},
"blockOrPlotNumber": {
"type": "object",
"description": "Block- oder Parzellenbezeichnung.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Block- oder Parzellenbezeichnung."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"value"
],
"additionalProperties": false
},
"city": {
"type": "object",
"description": "Ort oder Zustellbezirk.",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Ort oder Zustellbezirk."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"name"
],
"additionalProperties": false
},
"state": {
"type": "object",
"description": "Region, Provinz oder Bundesstaat.",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Region, Provinz oder Bundesstaat."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"name"
],
"additionalProperties": false
},
"postalCode": {
"type": "object",
"description": "Postleitzahl als Text; keine globale fünfstellige Regel.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Postleitzahl als Text; keine globale fünfstellige Regel."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"value"
],
"additionalProperties": false
},
"wardNumber": {
"type": "object",
"description": "Verwaltungsbezirk.",
"properties": {
"value": {
"type": "string",
"minLength": 1,
"description": "Verwaltungsbezirk."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"required": [
"value"
],
"additionalProperties": false
},
"country": {
"type": "object",
"description": "Zielland. Name und Code sind verschiedene Informationen.",
"properties": {
"code": {
"$ref": "#/$defs/CountryCode"
},
"name": {
"type": "string",
"minLength": 1,
"description": "Landesname in der angegebenen Sprache."
},
"line_in_address": {
"type": "integer",
"description": "Optionale Druckzeile, beginnend bei 1; aus dem bisherigen Modell beibehalten.",
"minimum": 1
},
"position_in_address_line": {
"type": "integer",
"description": "Optionale Position in der Druckzeile, beginnend bei 1.",
"minimum": 1
}
},
"additionalProperties": false,
"anyOf": [
{
"required": [
"code"
]
},
{
"required": [
"name"
]
}
]
},
"militaryAddress": {
"type": "boolean",
"description": "Kennzeichnet eine militärische Adresse, falls bekannt."
},
"geolocation": {
"$ref": "#/$defs/Geolocation"
},
"extensions": {
"type": "object",
"description": "Vereinbarte Erweiterungen; Schlüssel als absolute URI des Herausgebers. Keine stillschweigende Änderung von Kernfeldern.",
"properties": {},
"additionalProperties": true,
"propertyNames": {
"format": "uri"
}
}
},
"required": [
"country"
],
"additionalProperties": false,
"anyOf": [
{
"required": [
"addressLines"
]
},
{
"required": [
"street"
]
},
{
"required": [
"postBox"
]
},
{
"required": [
"city"
]
},
{
"required": [
"geolocation"
]
},
{
"required": [
"blockOrPlotNumber"
]
}
]
},
"Geolocation": {
"type": "object",
"description": "WGS-84-Koordinaten in Dezimalgrad. Benannte Felder vermeiden eine vertauschte Achsenreihenfolge.",
"properties": {
"latitude": {
"type": "number",
"description": "Breitengrad.",
"minimum": -90,
"maximum": 90
},
"longitude": {
"type": "number",
"description": "Längengrad.",
"minimum": -180,
"maximum": 180
},
"accuracyMeters": {
"type": "number",
"description": "Geschätzter horizontaler Unsicherheitsradius in Metern.",
"minimum": 0
}
},
"required": [
"latitude",
"longitude"
],
"additionalProperties": false
},
"ContactDetails": {
"type": "object",
"description": "Mindestens ein bekannter Kontaktkanal.",
"properties": {
"emails": {
"type": "array",
"description": "E-Mail-Adressen; Unicode ist zulässig.",
"items": {
"type": "object",
"description": "Ein E-Mail-Kontakt.",
"properties": {
"type": {
"type": "string",
"minLength": 1,
"description": "Verwendungszweck."
},
"address": {
"type": "string",
"minLength": 1,
"description": "Internationale E-Mail-Adresse; Zustellbarkeit und SMTPUTF8-Unterstützung separat prüfen.",
"format": "idn-email"
},
"language": {
"$ref": "#/$defs/LanguageTag"
}
},
"required": [
"address"
],
"additionalProperties": false
},
"minItems": 1
},
"phoneNumbers": {
"type": "array",
"description": "Internationale Telefonnummern.",
"items": {
"type": "object",
"description": "Eine vollständig normalisierte Rufnummer ohne Durchwahl.",
"properties": {
"type": {
"type": "string",
"minLength": 1,
"description": "Verwendungszweck."
},
"number": {
"type": "string",
"minLength": 1,
"description": "Pluszeichen und höchstens 15 Ziffern nach E.164; keine Aussage über tatsächliche Vergabe.",
"pattern": "^\\+[1-9][0-9]{1,14}$"
},
"extension": {
"type": "string",
"minLength": 1,
"description": "Durchwahl separat; kein Bestandteil der E.164-Rufnummer."
},
"displayNumber": {
"type": "string",
"minLength": 1,
"description": "Optionale ursprüngliche Schreibweise."
}
},
"required": [
"number"
],
"additionalProperties": false
},
"minItems": 1
},
"socialMedia": {
"type": "array",
"description": "Weitere Plattformkontakte.",
"items": {
"type": "object",
"description": "Plattform und Kennung.",
"properties": {
"platform": {
"type": "string",
"minLength": 1,
"description": "Plattform."
},
"handle": {
"type": "string",
"minLength": 1,
"description": "Unveränderter Benutzername."
},
"url": {
"type": "string",
"minLength": 1,
"description": "Optionaler Profil-Link.",
"format": "uri"
}
},
"required": [
"platform",
"handle"
],
"additionalProperties": false
},
"minItems": 1
},
"websites": {
"type": "array",
"description": "Webseiten.",
"items": {
"type": "object",
"description": "Eine Webseite.",
"properties": {
"type": {
"type": "string",
"minLength": 1,
"description": "Verwendungszweck."
},
"url": {
"type": "string",
"minLength": 1,
"description": "Internationale Webadresse; Abruf gesondert entscheiden.",
"format": "iri",
"pattern": "^https?://"
}
},
"required": [
"url"
],
"additionalProperties": false
},
"minItems": 1
},
"extensions": {
"type": "object",
"description": "Vereinbarte Erweiterungen; Schlüssel als absolute URI des Herausgebers. Keine stillschweigende Änderung von Kernfeldern.",
"properties": {},
"additionalProperties": true,
"propertyNames": {
"format": "uri"
}
}
},
"additionalProperties": false,
"anyOf": [
{
"required": [
"emails"
]
},
{
"required": [
"phoneNumbers"
]
},
{
"required": [
"socialMedia"
]
},
{
"required": [
"websites"
]
}
]
}
},
"examples": [
{
"name": "株式会社サンプル",
"jurisdiction": "JP",
"names": [
{
"text": "Sample Corporation",
"language": "en"
}
]
},
{
"name": "Example Association",
"registrationNumbers": [
{
"type": "association-register",
"number": "00042",
"scheme": "https://example.org/register/associations"
}
]
}
]
}
Quellen geprüft am 8. September 2026. Die B2Base-Felder und ihre Kombination sind ein eigener Entwurf. Code-Register, nationale Regeln, Echtheit, Zeitfolgen und Referenzziele benötigen die im jeweiligen Verfahren vereinbarten Zusatzprüfungen.