schemes:person:contactdetails
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| schemes:person:contactdetails [2024/12/11 12:11] – lars_gerulat | schemes:person:contactdetails [2026/09/08 14:34] (aktuell) – B2Base-Schemaentwurf: internationale Datenmodelle, Beispiele und Erläuterungen 0.0.0.0 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== contactdetails ====== | + | ====== |
| - | ===== example | + | |
| - | <code> | + | <WRAP b2hero> |
| + | **B2Base · 1.0.0-draft.1 · Projektentwurf** | ||
| + | |||
| + | E-Mail, Telefonnummern und Webkontakte ohne ein weltweit vorgeschriebenes Kontaktmittel. | ||
| + | |||
| + | [[schemes: | ||
| + | </ | ||
| + | |||
| + | ===== Direkt verwenden ===== | ||
| + | |||
| + | [[b2schema> | ||
| + | |||
| + | **Austauschschema: | ||
| + | |||
| + | ===== Felder im Überblick | ||
| + | |||
| + | ^ Feld ^ Typ ^ Pflicht im Modul ^ Bedeutung ^ | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | 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 | ||
| + | |||
| + | * E-Mail ist keine Pflicht. Auch reine Telefonkontakte oder Webseiten lassen sich austauschen. | ||
| + | * Einige Nummernpläne besitzen keine eigenständige Ortsvorwahl. Normalisierung benötigt Landeskontext; | ||
| + | * idn-email und iri benötigen passende Formatprüfer. Speicherung einer Unicode-Adresse belegt nicht, dass der vorhandene Mailserver sie versenden kann. | ||
| + | |||
| + | ===== 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> | ||
| { | { | ||
| - | "emails": [ | + | "phoneNumbers": [ |
| { | { | ||
| " | " | ||
| - | "address": "example@work.com" | + | "number": "+442079460958", |
| - | }, | + | "extension": "42" |
| - | { | + | |
| - | " | + | |
| - | "address": "example@personal.com" | + | |
| } | } | ||
| - | ], | + | ] |
| - | "phoneNumbers": [ | + | } |
| + | </ | ||
| + | |||
| + | ==== Beispiel 2 ==== | ||
| + | |||
| + | <file json example-2.json> | ||
| + | { | ||
| + | "emails": [ | ||
| { | { | ||
| - | "type": "mobile", | + | "address": "δοκιμή@παράδειγμα.δοκιμή" |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | }, | + | |
| - | { | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| } | } | ||
| ], | ], | ||
| - | "socialMedia": [ | + | "websites": [ |
| - | { | + | |
| - | " | + | |
| - | " | + | |
| - | }, | + | |
| { | { | ||
| - | "platform": "LinkedIn", | + | "url": "https:// |
| - | " | + | |
| } | } | ||
| ] | ] | ||
| } | } | ||
| + | </ | ||
| - | </ | + | ===== Umstellung aus dem bisherigen Wiki ===== |
| - | ===== schema | + | |
| - | <code> | + | Breaking Change: countryCode und areaCode werden nicht mehr als Telefonpflichtfelder geführt. number enthält jetzt die vollständige E.164-Nummer. Altdaten mit Landeskontext normalisieren und displayNumber zur Erhaltung der Originaldarstellung nutzen. |
| + | |||
| + | [[schemes: | ||
| + | |||
| + | ===== Vollständiges Schema | ||
| + | |||
| + | Die Datei ist eigenständig: | ||
| + | |||
| + | <file json contactdetails.schema.json> | ||
| { | { | ||
| " | " | ||
| - | " | + | " |
| - | " | + | " |
| - | "description": "A schema for representing a person' | + | "$comment": "B2Base 1.0.0-draft.1. Projektentwurf, |
| " | " | ||
| + | " | ||
| " | " | ||
| " | " | ||
| " | " | ||
| - | " | + | " |
| " | " | ||
| " | " | ||
| + | " | ||
| " | " | ||
| " | " | ||
| " | " | ||
| - | "description": | + | "minLength": |
| - | "example": "work" | + | "description": "Verwendungszweck." |
| }, | }, | ||
| " | " | ||
| " | " | ||
| - | "format": "email", | + | "minLength": |
| - | "description": "The email address.", | + | |
| - | "example": "example@work.com" | + | "format": "idn-email" |
| + | }, | ||
| + | " | ||
| + | "$ref": "#/ | ||
| } | } | ||
| }, | }, | ||
| - | " | + | " |
| + | | ||
| + | | ||
| + | " | ||
| }, | }, | ||
| - | "example": | + | "minItems": |
| - | {" | + | |
| - | {" | + | |
| - | ] | + | |
| }, | }, | ||
| " | " | ||
| " | " | ||
| - | " | + | " |
| " | " | ||
| " | " | ||
| + | " | ||
| " | " | ||
| " | " | ||
| " | " | ||
| - | "description": | + | "minLength": |
| - | " | + | " |
| - | }, | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | }, | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| }, | }, | ||
| " | " | ||
| " | " | ||
| - | " | + | |
| - | "example": "123456789" | + | |
| + | "pattern": "^\\+[1-9][0-9]{1, | ||
| }, | }, | ||
| " | " | ||
| " | " | ||
| - | " | + | |
| - | "example": "123" | + | |
| + | }, | ||
| + | " | ||
| + | "type": "string", | ||
| + | " | ||
| + | " | ||
| } | } | ||
| }, | }, | ||
| - | " | + | " |
| + | | ||
| + | ], | ||
| + | | ||
| }, | }, | ||
| - | "example": | + | "minItems": 1 |
| - | {" | + | |
| - | {" | + | |
| - | ] | + | |
| }, | }, | ||
| " | " | ||
| " | " | ||
| - | " | + | " |
| " | " | ||
| " | " | ||
| + | " | ||
| " | " | ||
| " | " | ||
| " | " | ||
| - | "description": | + | "minLength": |
| - | "example": "Twitter" | + | "description": "Plattform." |
| }, | }, | ||
| " | " | ||
| " | " | ||
| - | " | + | |
| - | "example": "@example_user" | + | " |
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | | ||
| + | "format": "uri" | ||
| } | } | ||
| }, | }, | ||
| - | " | + | " |
| + | | ||
| + | | ||
| + | | ||
| + | " | ||
| }, | }, | ||
| - | "example": [ | + | "minItems": |
| - | {"platform": "Twitter", "handle": "@example_user"}, | + | }, |
| - | {"platform": "LinkedIn", "handle": "example-user"} | + | " |
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | }, | ||
| + | " | ||
| + | | ||
| + | | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | | ||
| + | } | ||
| + | } | ||
| + | }, | ||
| + | " | ||
| + | " | ||
| + | | ||
| + | | ||
| + | | ||
| + | ] | ||
| + | }, | ||
| + | { | ||
| + | | ||
| + | | ||
| + | ] | ||
| + | | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | ] | ||
| + | }, | ||
| + | { | ||
| + | " | ||
| + | " | ||
| ] | ] | ||
| + | } | ||
| + | ], | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| } | } | ||
| }, | }, | ||
| - | "required": [" | + | "examples": [ |
| + | { | ||
| + | " | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | ] | ||
| + | }, | ||
| + | { | ||
| + | | ||
| + | { | ||
| + | " | ||
| + | } | ||
| + | ], | ||
| + | " | ||
| + | { | ||
| + | " | ||
| + | } | ||
| + | ] | ||
| + | } | ||
| + | | ||
| } | } | ||
| + | </ | ||
| + | |||
| + | ===== Quellen und Abgrenzung ===== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | Quellen geprüft am 8. September 2026. Die B2Base-Felder und ihre Kombination sind ein eigener Entwurf. Code-Register, | ||
| + | |||
| + | [[schemes: | ||
| - | </ | ||
schemes/person/contactdetails.1733915502.txt.gz · Zuletzt geändert: (Externe Bearbeitung)
