B2Base

Bürokratie vereinfachen durch Standards

Benutzer-Werkzeuge

Webseiten-Werkzeuge


schemes:person:attributes

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
schemes:person:attributes [2024/12/13 15:09] – angelegt lars_gerulatschemes:person:attributes [2026/09/08 14:34] (aktuell) – B2Base-Schemaentwurf: internationale Datenmodelle, Beispiele und Erläuterungen 0.0.0.0
Zeile 1: Zeile 1:
-<WRAP center round todo 60%+====== Personenmerkmale und Status ====== 
-Nationalität, Familienstand, Beschäftigungsstatus, Staatenlose Person+ 
 +<WRAP b2hero
 +**B2Base · 1.0.0-draft.1 · Projektentwurf** 
 + 
 +Staatsangehörigkeiten und zeitbezogene fachliche Merkmale mit ausdrücklich benannten Vokabularen. 
 + 
 +[[schemes:scheme|Bibliothek]] · [[schemes:person|Personen]] · [[schemes:principles|Internationale Grundregeln]]
 </WRAP> </WRAP>
 +
 +===== Direkt verwenden =====
 +
 +[[b2schema>1.0.0-draft.1/person/attributes.schema.json|Austauschschema (JSON)]] · [[b2schema>1.0.0-draft.1/person/attributes.editor.schema.json|Schema für den Designer]] · [[b2schema>1.0.0-draft.1/person/attributes.examples.json|Beispieldaten]]
 +
 +**Austauschschema:** vollständige Strukturprüfung mit JSON Schema 2020-12. **Designer-Fassung:** gleiche Datenfelder mit reduzierten Strukturregeln zur Feldübernahme. [[:guidelines#im_workflowdesigner_verwenden|Anleitung und Grenzen]]
 +
 +===== Felder im Überblick =====
 +
 +^ Feld ^ Typ ^ Pflicht im Modul ^ Bedeutung ^
 +| ''citizenshipStatus'' | string | Nein | Unterscheidet bekannte Staatsangehörigkeit, Staatenlosigkeit und unbekannte Angaben. |
 +| ''nationalities'' | array | Nein | Bekannte Staatsangehörigkeiten; keine ethnische Zugehörigkeit. |
 +| ''maritalStatus'' | object | Nein | Familienstand aus einem benannten fachlichen oder nationalen Vokabular. |
 +| ''employmentStatus'' | object | Nein | Beschäftigungsstatus mit Vokabular. |
 +| ''effectiveDate'' | string | Nein | Datum, für das die Angaben gelten. |
 +| ''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.
 +
 +===== International richtig einsetzen =====
 +
 +  * Eine leere oder fehlende Liste allein bedeutet nicht staatenlos. Dafür wird citizenshipStatus ausdrücklich gesetzt.
 +  * Familienstand und Beschäftigung haben keine hier behauptete weltweit einheitliche Klassifikation. scheme benennt die verwendete Bedeutung.
 +  * Ein Status braucht bei zeitabhängiger Auswertung einen Bezugszeitpunkt; aktuelle und historische Angaben nicht vermischen.
 +
 +===== Gültige Beispiele =====
 +
 +Alle Beispiele sind synthetisch. Sie werden mit dem mitgelieferten Schema geprüft; daraus folgt keine fachliche Echtheit oder externe Erreichbarkeit.
 +
 +==== Beispiel 1 ====
 +
 +<file json example-1.json>
 +{
 +  "citizenshipStatus": "stateless",
 +  "nationalities": [],
 +  "effectiveDate": "2026-09-08"
 +}
 +</file>
 +
 +==== Beispiel 2 ====
 +
 +<file json example-2.json>
 +{
 +  "citizenshipStatus": "known",
 +  "nationalities": [
 +    "CA",
 +    "FR"
 +  ]
 +}
 +</file>
 +
 +===== Umstellung aus dem bisherigen Wiki =====
 +
 +Der frühere Aufgabenvermerk wurde durch ein prüfbares Schema ersetzt. Es gibt keine automatische Ableitung aus Namen, Wohnort oder Sprache.
 +
 +[[schemes:migration|Änderungsübersicht und Migrationsregeln]]
 +
 +===== Vollständiges Schema =====
 +
 +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.
 +
 +<file json attributes.schema.json>
 +{
 +  "$schema": "https://json-schema.org/draft/2020-12/schema",
 +  "$id": "https://b2base.eu/schemas/1.0.0-draft.1/person/attributes.schema.json",
 +  "title": "Personenmerkmale und Status",
 +  "$comment": "B2Base 1.0.0-draft.1. Projektentwurf, kein durch ISO oder andere Normungsgremien verabschiedeter Standard.",
 +  "type": "object",
 +  "description": "Optionale, zweckgebundene Personenmerkmale.",
 +  "properties": {
 +    "citizenshipStatus": {
 +      "type": "string",
 +      "minLength": 1,
 +      "description": "Unterscheidet bekannte Staatsangehörigkeit, Staatenlosigkeit und unbekannte Angaben.",
 +      "enum": [
 +        "known",
 +        "stateless",
 +        "undetermined",
 +        "notProvided"
 +      ]
 +    },
 +    "nationalities": {
 +      "type": "array",
 +      "description": "Bekannte Staatsangehörigkeiten; keine ethnische Zugehörigkeit.",
 +      "items": {
 +        "$ref": "#/$defs/CountryCode"
 +      },
 +      "uniqueItems": true
 +    },
 +    "maritalStatus": {
 +      "$ref": "#/$defs/CodedValue",
 +      "description": "Familienstand aus einem benannten fachlichen oder nationalen Vokabular."
 +    },
 +    "employmentStatus": {
 +      "$ref": "#/$defs/CodedValue",
 +      "description": "Beschäftigungsstatus mit Vokabular."
 +    },
 +    "effectiveDate": {
 +      "type": "string",
 +      "minLength": 1,
 +      "description": "Datum, für das die Angaben gelten.",
 +      "format": "date"
 +    },
 +    "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,
 +  "minProperties": 1,
 +  "allOf": [
 +    {
 +      "if": {
 +        "properties": {
 +          "citizenshipStatus": {
 +            "const": "stateless"
 +          }
 +        },
 +        "required": [
 +          "citizenshipStatus"
 +        ]
 +      },
 +      "then": {
 +        "properties": {
 +          "nationalities": {
 +            "maxItems": 0
 +          }
 +        }
 +      }
 +    },
 +    {
 +      "if": {
 +        "properties": {
 +          "citizenshipStatus": {
 +            "const": "known"
 +          }
 +        },
 +        "required": [
 +          "citizenshipStatus"
 +        ]
 +      },
 +      "then": {
 +        "required": [
 +          "nationalities"
 +        ],
 +        "properties": {
 +          "nationalities": {
 +            "minItems": 1
 +          }
 +        }
 +      }
 +    }
 +  ],
 +  "$defs": {
 +    "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
 +    },
 +    "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})*$"
 +    }
 +  },
 +  "examples": [
 +    {
 +      "citizenshipStatus": "stateless",
 +      "nationalities": [],
 +      "effectiveDate": "2026-09-08"
 +    },
 +    {
 +      "citizenshipStatus": "known",
 +      "nationalities": [
 +        "CA",
 +        "FR"
 +      ]
 +    }
 +  ]
 +}
 +</file>
 +
 +===== Quellen und Abgrenzung =====
 +
 +  * [[https://www.iso.org/iso-3166-country-codes.html|ISO: ISO 3166-Ländercodes]]
 +  * [[https://json-schema.org/understanding-json-schema/structuring|JSON Schema: Aufbau und Referenzen]]
 +
 +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.
 +
 +[[schemes:scheme|Zur Bibliothek]] · [[:guidelines|Integration]] · [[:faq|Häufige Fragen]]
  
schemes/person/attributes.1734098969.txt.gz · Zuletzt geändert: (Externe Bearbeitung)

Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki