Feature: Autor*innensystem #24

Closed
opened 2024-05-06 15:32:36 +02:00 by apfelpfluecker · 3 comments

Es wäre sehr praktisch, wenn die organisation für verschiedene Lieder unterschiedlich wäre.
Zum Beispiel gibt es Lieder, die mit einer bestimmten Gruppe entstanden sind, wie: Nun gibt der Herbst dem Wind die Sporen. Dann will man die Autor*innen mit Schlagsaite betitelt haben. Wenn man aber "Im fremden Land" nimmt von Markus Breuer, muss bei ihm ja nicht Schlagsaite stehen, sondern wäre sogar irreführend, da er das Lied ja nicht für Schlagsaite geschrieben hat.

Lösung: Wenn man in einer Datenbank für die Organisation quasi Unter-IDs anlegen könnte, also IDs, die bei den anderen Variablen (Geburtsjahr, Fahrtenname) auf die Hauptvariable referenzieren, aber sich in der Organisation unterscheiden.
Die Benennung könnte beispielsweise nach dem Schema: IdName_OrganisationId sein.

Es wäre sehr praktisch, wenn die `organisation` für verschiedene Lieder unterschiedlich wäre. Zum Beispiel gibt es Lieder, die mit einer bestimmten Gruppe entstanden sind, wie: Nun gibt der Herbst dem Wind die Sporen. Dann will man die Autor\*innen mit Schlagsaite betitelt haben. Wenn man aber "Im fremden Land" nimmt von Markus Breuer, muss bei ihm ja nicht Schlagsaite stehen, sondern wäre sogar irreführend, da er das Lied ja nicht für Schlagsaite geschrieben hat. Lösung: Wenn man in einer Datenbank für die Organisation quasi Unter-IDs anlegen könnte, also IDs, die bei den anderen Variablen (Geburtsjahr, Fahrtenname) auf die Hauptvariable referenzieren, aber sich in der Organisation unterscheiden. Die Benennung könnte beispielsweise nach dem Schema: `IdName_OrganisationId` sein.
apfelpfluecker added a new dependency 2024-05-06 15:38:09 +02:00
Owner

Nur mal so ne Idee:
Könnte man vielleicht auch so ne Art Vererbung einführen?

"Testtyp": {
  "name": "Cooler Testtyp",
  "organization": "Coole Typen",
  "birth_year": "1980"
},

"KrasserTesttyp": {
  "inherits": "Testtyp",
  "organization": "Krasse Typen"
}

Das inherits sorgt dafür, dass alle Eigenschaften vom damit referenzierten Eintrag vererbt werden und man bestimmte überschreiben kann.
Muss man natürlich wieder aufpassen, dass da nix böses passiert, wenn einer sowas macht:

"Testtyp": {
  "inherits": "KrasserTesttyp"
},

"KrasserTesttyp": {
  "inherits": "Testtyp",
}

aber das kriegt man programmiertechnisch abgefangen, dass keine Zyklen entstehen.

Nur mal so ne Idee: Könnte man vielleicht auch so ne Art Vererbung einführen? ```json "Testtyp": { "name": "Cooler Testtyp", "organization": "Coole Typen", "birth_year": "1980" }, "KrasserTesttyp": { "inherits": "Testtyp", "organization": "Krasse Typen" } ``` Das `inherits` sorgt dafür, dass alle Eigenschaften vom damit referenzierten Eintrag vererbt werden und man bestimmte überschreiben kann. Muss man natürlich wieder aufpassen, dass da nix böses passiert, wenn einer sowas macht: ```json "Testtyp": { "inherits": "KrasserTesttyp" }, "KrasserTesttyp": { "inherits": "Testtyp", } ``` aber das kriegt man programmiertechnisch abgefangen, dass keine Zyklen entstehen.
Author
Owner

Ja, ist nen Ansatz, der auf jeden Fall in unserer jetzigen Struktur gut funktioniert.
Was wichtig wäre (wovon ich aber keine Ahnung habe), ist, dass das am besten sehr soft später in die Datenbank übergehen kann, also dass das sehr leicht einzupflegen ist.

Ja, ist nen Ansatz, der auf jeden Fall in unserer jetzigen Struktur gut funktioniert. Was wichtig wäre (wovon ich aber keine Ahnung habe), ist, dass das am besten sehr soft später in die Datenbank übergehen kann, also dass das sehr leicht einzupflegen ist.
Owner

Das mit den "inherits" funktioniert jetzt. Solange das maschinell auswertbar ist, kriegt man das schon irgendwie in die Datenbank.

Das mit den "inherits" funktioniert jetzt. Solange das maschinell auswertbar ist, kriegt man das schon irgendwie in die Datenbank.
tux closed this issue 2024-11-02 20:02:44 +01:00
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Depends on
#22 Bugs bei Autor*innensystem
boernel/lilypond-common-includes
Reference: boernel/lilypond-common-includes#24
No description provided.