Open xwolfde opened 1 week ago
Kopie der Daten von @MManthey aus dem Fall #54 zur Veranschaulichung:
Aus Schema-Person:
{
...
"givenName": "Erika",
"familyName": "Musterfrau",
...
"personalTitle": "Prof. Dr.",
"personalTitleSuffix": "Ph.D.",
"titleOfNobility": "van",
"email": "erika.musterfrau@fau.de",
"telephone": "+49 9131 85-12345",
"contacts": [
{
...
"organization": {
...
"name": "Testorganisationseinheit"
},
...
"functionLabel": {
"de": "Wissenschaftliche Mitarbeiter",
"en": "Scientific staff"
}
}
]
}
Aus Schema-Contact:
{
...
"socials": [
{
"platform": "github",
"url": "https://github.com/erikamusterfrau"
}
],
"workplaces": [
{
"room": "01.234",
"floor": "01",
"street": "Musterstraße 1",
"zip": "91058",
"city": "Erlangen",
"faumap": "https://karte.fau.de/api/v1/iframe/famos/12345",
"phones": [
"+49 9131 85-12345"
],
"fax": "+49 9131 85-1234567",
"url": "https://www.test.fau.de/person/erika-musterfrau/",
"mails": [
"erika.musterfrau@fau.de"
],
"officeHours": [
{
"weekday": 1,
"from": "07:30",
"to": "16:00"
}
],
"consultationHours": [
{
"weekday": 2,
"from": "07:30",
"to": "16:00",
"comment": "nur über Zoom",
"url": "https://fau.zoom-x.de/j/1234567890?pwd=fG5xSxQ2dXNu3EMwAWgzSUpBSEFqUT16"
}
],
...
}
]
}
Aus Schema-Organization:
{
...
"address": {
"phone": "+49 9131 85-12345",
"mail": "test@fau.de",
"url": "https://www.test.fau.de",
"street": "Musterstraße 1",
"zip": "91054",
"city": "Erlangen",
"faumap": "https://karte.fau.de/api/v1/iframe/famos/12345"
},
...
}
In #97 ist die Datenstruktur genauer beschrieben.
Bei der Anzeige einer Person müssen wir also mindstens den Kontext der Organisation vorauswählen. Ggf. über einen Settingswert, in dem man die Id der Organisation eintragen kann. Da diese Id aber nicht allseits geläufig ist, muss man dazu auch wieder eine Suche machen.
Je nach Arbeitsplatz und je nach FUnktion kann gewünscht sein, dass unterschiedliche Daten ausgegeben werden.
Daher brauche wir Attribut für die Ausgaben, welches angibt, welche der jeweiligen Datensätze dargestellt werden sollen.
Auserdem sollten wir ein Setting-Wert festlegen und eine Konstante, die im Falle mehrere Datensätze (mehrere Funktionen mit unterschieclichen Daten und/oder mehrere Arbeitsplätze), welcher davon als Default verwendet wird. Wenn nur 1 Satz vorliegt (nur eine Rolle an einem Arbeitsplatz), dann wird natürlich der verwendet.