diff --git a/klangschalen/README.md b/klangschalen/README.md new file mode 100644 index 0000000..61e5719 --- /dev/null +++ b/klangschalen/README.md @@ -0,0 +1,36 @@ +# Knowledge Base: Klangschalen + Sets + +Quelle der Wahrheit fuer die **Produkttext-Pipeline (pl-sets, Neuaufbau in PHP)**. +Die Pipeline ist deterministisch: sie LIEST diese Daten, sie raet nicht. + +## Dateien + +| Datei | Inhalt | Pipeline-Schritt | +|-------|--------|------------------| +| `groessen-definition.yaml` | Gewicht-/Durchmesser-Klassen, Set-Kategorien, Set-Rollen | 2. Groessen-Logik | +| `wirkungs-vokabular.yaml` | Koerperzonen, Generik-Lexikon, HWG-Verbote, verbotene Muster | 1. Wirkungen + Sprach-/Recht-Gate | +| `planetenschalen.yaml` | Planetenton + traditionelles Thema je Planet (ENTWURF, Werte pruefen) | 1. Wirkungen (Planetenschalen) | +| `titel-katalog.yaml` | 3 Titel-Bauarten + Auswahl-Regel (5 Kandidaten) | 2. Titel erzeugen + pruefen | +| `block-schnipsel.yaml` | Text-Bloecke (Schnipsel) + Reihenfolge + Include-Bedingungen | 3.-4. Block-Auswahl + Zusammenfuegen | +| `text-umfang-regel.yaml` | Text-Umfang je Set-Groesse, Frage-Ueberschriften (GEO) | 3. Block-Umfang + Sprachregeln | + +## Prinzip + +Frank-Architektur: alles programmatisch als Prozessablauf in PHP. Diese Knowledge +Base ist das versionierte Daten-Asset (waechst mit jedem gepflegten Produkt), die +PHP-Pipeline der Prozess darauf. Bau-Reihenfolge: + +1. Wirkungen + Groessen sammeln (groessen-definition, wirkungs-vokabular, planetenschalen) +2. Titel-Kandidaten erzeugen + gegen Wirkungen pruefen (titel-katalog) +3. Block-Auswahl nach Set-Groesse (block-schnipsel + text-umfang-regel) +4. Bloecke (Schnipsel) zusammenfuegen +5. Sprach-/GEO-/Kundenerwartungs-Regeln auf Ueberschriften +6. Intent-Feinschliff sprachlich +7. HTML-Ausgabe -> Weboffice + +Aenderungen an Definitionen passieren HIER, nicht im Pipeline-Code. + +## Offen + +- `planetenschalen.yaml`: Frequenz-/Notenwerte NICHT erfunden - aus Cousto/ + Produktdaten einsetzen (status ENTWURF). Planeten-Liste vervollstaendigen. diff --git a/klangschalen/block-schnipsel.yaml b/klangschalen/block-schnipsel.yaml new file mode 100644 index 0000000..e345736 --- /dev/null +++ b/klangschalen/block-schnipsel.yaml @@ -0,0 +1,60 @@ +# Block-Schnipsel: kleine Text-Bausteine ("Bloecke"), die je nach Set zusammengesetzt werden. +# Pipeline-Schritt: Block-Auswahl nach Set-Groesse -> Zusammenfuegen. +# Welche Bloecke + wie ausfuehrlich, steuert text-umfang-regel.yaml (Set-Kategorie). +schema_version: 1 +stand: 2026-06-09 + +bloecke: + - id: wirkungsessenz + html_klasse: aba-info-intro + pflicht: true + inhalt: "H2 + 3-5 Woerter Wirkungsessenz (z.B. Tiefer Halt - Warme Mitte - Klare Weite)" + - id: kurzbeschreibung + pflicht: true + zeichen: "siehe text-umfang-regel (je Set-Kategorie)" + inhalt: "Nutzen + Ziel + Gefuehl, ohne Fachsprache, positive Frames" + - id: schalen_block + html_klasse: aba-info-wirkung-planetenschale + pflicht_ab_kategorie: mittel # bei 'kompakt' optional zusammengefasst + je_schale: true + inhalt: "Rolle + 2-3 Wirkbegriffe (tief/warm/klar) + Koerperbereich + Anwendung" + - id: einsatz_koerper + html_klasse: aba-info-region + pflicht: true + inhalt: "Einsatz nach Gewicht/Groesse (aus groessen-definition abgeleitet)" + - id: klangbeispiel + html_klasse: aba-info-klangbeispiel + pflicht: true + inhalt: "Frage 'Wie klingt dieses Set?' + Sound-Player Originalklang; KEINE Nachklang-Sekunden" + - id: optik + html_klasse: aba-info-bild + pflicht: true + inhalt: "Frage 'Wie sieht das Set aus?' - Handarbeit, Farbnuancen (z.B. Schwarz-Gold, OM-Gravur)" + - id: kloeppel + html_klasse: aba-info-kloeppel + pflicht: true + inhalt: "Frage 'Welchen Kloeppel bekomme ich dazu?'" + - id: einzelstueck + html_klasse: aba-info-einzelstueck + pflicht: true + inhalt: "Frage 'Wie oft ist dieses Set erhaeltlich?' - Unikat, einmal verfuegbar" + - id: herstellung + html_klasse: aba-info-intro + pflicht: true + inhalt: "Frage 'Wer hat die Schalen hergestellt?' - kleine Manufakturen, Handarbeit, Unikate; kurze Hauptsaetze, ohne Kitsch" + - id: zusammensetzung + pflicht: true + inhalt: "Oe + Gewicht pro Schale, 1-2 Alltagscharakteristika; Gesamtgewicht; KEINE Nachklang-Sekunden" + +reihenfolge: + # Hamburger-Schule Struktur-Reihenfolge (H2 -> H3) + - wirkungsessenz + - kurzbeschreibung + - einsatz_koerper + - schalen_block + - klangbeispiel + - optik + - kloeppel + - einzelstueck + - herstellung + - zusammensetzung diff --git a/klangschalen/groessen-definition.yaml b/klangschalen/groessen-definition.yaml new file mode 100644 index 0000000..e638b74 --- /dev/null +++ b/klangschalen/groessen-definition.yaml @@ -0,0 +1,88 @@ +# Groessen-Definition Klangschalen + Sets +# Quelle der Wahrheit fuer die PL-Sets-Textpipeline (Schritt: Groessen-Logik). +# Die PHP-Pipeline liest diese Datei deterministisch - keine LLM-Heuristik. +schema_version: 1 +stand: 2026-06-09 +quelle: "Frank ChatGPT-Lernstruktur 2026-06 + Handbuch Set-/Schalentexte" + +einzelschale: + gewicht_klassen: + - id: leicht + gewicht_g: + bis: 500 # < 500 g + koerperzonen: [kopf, kopfraum, herz_schulter_impuls] + nutzung: [raumklang, kurze_meditation, in_der_hand, ueber_dem_kopf] + auflegen_koerper: false # NICHT fuer klassische Koerpermassage auflegen + kinder_geeignet: + erlaubt: true + bedingung: "nur wenn besonders schoene Vibration UND im Produkt gekennzeichnet" + text_empfehlung: "leicht, klar, ideal fuer Raumklang und kurze Meditationen; fuer Massage besser ab 500 g" + - id: mittel + gewicht_g: + von: 500 + bis: 1000 # 500 - 1000 g + koerperzonen: [bauch, herz, ruecken] + nutzung: [teil_klangmassage_oben_mittig, raumklang, vielseitig] + auflegen_koerper: vorsichtig + text_empfehlung: "warm, harmonisch, unterstuetzt die Mitte (Bauch/Herz)" + - id: schwer + gewicht_g: + von: 1000 # > 1000 g + koerperzonen: [becken, bauch, fuss] + nutzung: [klangmassage_unterkoerper, erdung] + auflegen_koerper: true + text_empfehlung: "tief, stabil, tragend im unteren Koerper; starkes Werkzeug in der Klangmassage" + durchmesser_klassen: + - id: klein + durchmesser_cm: + bis: 15 # < 15 cm + charakter: [hell, klar] + koerperzonen: [kopf, kopfraum, hand, raumklang] + - id: mittel + durchmesser_cm: + von: 15 + bis: 20 # 15 - 20 cm + charakter: [vielseitig] + koerperzonen: [bauch, herz, mitte] + - id: gross + durchmesser_cm: + von: 20 # > 20 cm + charakter: [tief] + koerperzonen: [becken, bauch, unterkoerper] + rolle: massage_basis + +set_kategorien: + # Einordnung nach Gesamtgewicht des Sets -> steuert auch Text-Umfang (siehe text-umfang-regel.yaml) + - id: kompakt + gesamtgewicht_kg: { von: 0.8, bis: 1.5 } + durchmesser_spanne_cm: { von: 10, bis: 15 } + empfohlen_fuer: [raumklang, meditation, kopfanwendungen] + nicht_fuer: [tiefe_massage] + - id: mittel + gesamtgewicht_kg: { von: 1.6, bis: 2.9 } + durchmesser_spanne_cm: { von: 13, bis: 22 } + empfohlen_fuer: [mischanwendung_obere_zonen, raumklang, teil_massage] + - id: profi + gesamtgewicht_kg: { von: 3.0, bis: 4.5 } + durchmesser_spanne_cm: { von: 16, bis: 26 } + empfohlen_fuer: [klangmassage_bauch_becken_fuss, mitte, kopf] + - id: xxl + gesamtgewicht_kg: { von: 4.5 } # > 4,5 kg + durchmesser_spanne_cm: { von: 20, bis: 31 } + empfohlen_fuer: [tiefe_koerperarbeit, gruppen, profi_setting] + +set_rollen: + # typische Zuordnung der Schalen innerhalb eines Sets + - rolle: groesste_schale + bereich: [becken, bauch] + klangcharakter: [tief, voll, stabil] + funktion: "Fundament, Unterkoerper, Erdung, Massage-Basis" + - rolle: mittlere_schale + bereich: [bauch, herz, ruecken] + klangcharakter: [warm, harmonisch] + funktion: "Mitte verbinden, Herz/Brust beruhigen" + - rolle: kleinste_schale + bereich: [kopf, kopfraum] + klangcharakter: [hell, klar] + funktion: "Abschluss, Fokus, Raumimpuls" + auflegen_koerper: false # selten direkt auflegen, eher Impuls diff --git a/klangschalen/planetenschalen.yaml b/klangschalen/planetenschalen.yaml new file mode 100644 index 0000000..03db5b2 --- /dev/null +++ b/klangschalen/planetenschalen.yaml @@ -0,0 +1,51 @@ +# Planetenschalen: Ton + traditionelle thematische Zuordnung je Planet. +# Frank: "bei Planetenschalen setzt es an dem, was in den Schalen drin ist" - +# der Planetenton bestimmt mit, welche Wirkung/welches Thema der Titel anspricht. +# +# WICHTIG (Evidence-First): die Frequenz-/Ton-Werte sind NICHT verifiziert und +# wurden bewusst NICHT erfunden. Quelle ist die Kosmische Oktave (Hans Cousto) +# bzw. Franks bestehende Produktdaten. Vor Nutzung: gepruefte Werte einsetzen. +# Die thematischen Zuordnungen sind TRADITIONELL (astrologisch/kulturell), keine +# Heilaussagen (HWG): bewusst als Stimmung/Thema formuliert, nicht als Koerperwirkung. +schema_version: 0 # 0 = Struktur steht, Daten unvollstaendig/ungeprueft +stand: 2026-06-09 +status: ENTWURF_WERTE_PRUEFEN + +planeten: + - id: sonne + ton_hz: null # QUELLE PRUEFEN (Cousto) + ton_note: null # QUELLE PRUEFEN + traditionelles_thema: [kraft, vitalitaet, selbst, waerme] + - id: mond + ton_hz: null + ton_note: null + traditionelles_thema: [gefuehl, intuition, ruhe] + - id: merkur + ton_hz: null + ton_note: null + traditionelles_thema: [kommunikation, denken, beweglichkeit] + - id: venus + ton_hz: null + ton_note: null + traditionelles_thema: [harmonie, schoenheit, ausgleich] + - id: mars + ton_hz: null + ton_note: null + traditionelles_thema: [energie, tatkraft, durchsetzung] + - id: jupiter + ton_hz: null + ton_note: null + traditionelles_thema: [fuelle, wachstum, weite] + - id: saturn + ton_hz: null + ton_note: null + traditionelles_thema: [struktur, erdung, klarheit] + - id: erdjahr_om + ton_hz: null # bekannt als OM-Ton - QUELLE PRUEFEN, Wert NICHT geraten + ton_note: null + traditionelles_thema: [zentrierung, ruhe, ganzheit] + +offen: + - "Frequenz + Notennamen aller Planeten aus Cousto/Produktdaten einsetzen (ton_hz, ton_note)" + - "Liste vervollstaendigen (Uranus, Neptun, Pluto, Erdtag, ggf. Mondknoten)" + - "HWG-Konformitaet der Themen pruefen (Stimmung/Thema, keine Koerper-Heilaussage)" diff --git a/klangschalen/text-umfang-regel.yaml b/klangschalen/text-umfang-regel.yaml new file mode 100644 index 0000000..5491233 --- /dev/null +++ b/klangschalen/text-umfang-regel.yaml @@ -0,0 +1,36 @@ +# Text-Umfang-Regel: steuert, wie viel Text ein Set bekommt. +# Frank: kleines Set = wenig Text, schweres/grosses Set = mehr Hintergrund + Text. +schema_version: 1 +stand: 2026-06-09 + +umfang_nach_set_kategorie: + kompakt: + kurzbeschreibung_zeichen: { von: 140, bis: 180 } + schalen_block_je_schale: false # knapp, ggf. zusammengefasst + hintergrund_block: kurz + mittel: + kurzbeschreibung_zeichen: { von: 180, bis: 220 } + schalen_block_je_schale: true + hintergrund_block: mittel + profi: + kurzbeschreibung_zeichen: { von: 200, bis: 260 } + schalen_block_je_schale: true + hintergrund_block: ausfuehrlich + xxl: + kurzbeschreibung_zeichen: { von: 220, bis: 300 } + schalen_block_je_schale: true + hintergrund_block: ausfuehrlich + +ueberschriften: + # Frageform, produktangepasst; GEO/SEO/AI-Overview-tauglich + Kundenerwartung + stil: frageform + geo_regel: "Antwort-first - Frage muss in den ersten Saetzen direkt beantwortet werden" + pflicht_individuell_min: 2 # min. 2-3 produktindividuelle Fragen (Gewicht, Einsatz, OM-Gravur, ...) + set_standard_fragen: + - "Fuer wen eignet sich dieses Set?" + - "Wie ergaenzen sich die Schalen (unten-Mitte-oben)?" + - "Wie klingt dieses Set?" + - "Wie sieht das Set aus?" + - "Welchen Kloeppel bekomme ich dazu?" + - "Wie oft ist dieses Set erhaeltlich?" + - "Wer hat die Schalen hergestellt?" diff --git a/klangschalen/titel-katalog.yaml b/klangschalen/titel-katalog.yaml new file mode 100644 index 0000000..4bd9c8d --- /dev/null +++ b/klangschalen/titel-katalog.yaml @@ -0,0 +1,32 @@ +# Titel-Katalog: 3 Bauarten fuer Set-Titel. +# Pipeline-Schritt: 5 Titel-Kandidaten erzeugen -> gegen Wirkungen pruefen -> auswaehlen. +# PFLICHT in jedem Titel: Durchmesser min-max (Oe) + Gesamtgewicht. +schema_version: 1 +stand: 2026-06-09 + +pflicht_im_titel: + - durchmesser_min_max_cm + - gesamtgewicht_kg + +bauarten: + - id: aktiv_fuehlbar + eignung: [massage, klare_wirkung] + muster: "{tief_unten} - {warm_mitte} - {klar_oben} - Set aus {anzahl} Klangschalen Oe {oe_min}-{oe_max} cm, {gewicht_kg} kg" + beispiel: "Tiefer Halt - Warme Mitte - Klare Weite - Oe 17-22 cm, 2,50 kg" + - id: bildhaft_poetisch + eignung: [meditativ, leicht] + muster: "{metapher} - {eigenschaft1}, {eigenschaft2}, {eigenschaft3} - Oe {oe_min}-{oe_max} cm, {gewicht_kg} kg" + beispiel: "Sanfte Kraft im Fluss - klaerend, bewegend, zentrierend - Oe 13-15 cm, 1,29 kg" + - id: funktional_anwendung + eignung: [profi, gruppen] + muster: "Klangmassage-Set {eigenschaft1} & {eigenschaft2} - {wirkung1}, {wirkung2}, {wirkung3} - Oe {oe_min}-{oe_max} cm, {gewicht_kg} kg" + beispiel: "Profi-Klangmassage-Set - tief entspannend, beruhigend, balancierend - Oe 22-25 cm, 4,01 kg" + +auswahl_regel: + anzahl_kandidaten: 5 + pruefung: + - "Titel spricht die belegten Wirkungen des Sets an (Abgleich wirkungs-vokabular + planetenschalen)" + - "keine Generik (Abgleich generik_lexikon)" + - "keine HWG-Begriffe (Abgleich hwg_verboten)" + - "Oe min-max und Gesamtgewicht enthalten" + auswahl: "1 bis n passende Titel, die zur Set-Groesse und den Wirkungen passen" diff --git a/klangschalen/wirkungs-vokabular.yaml b/klangschalen/wirkungs-vokabular.yaml new file mode 100644 index 0000000..cbcf821 --- /dev/null +++ b/klangschalen/wirkungs-vokabular.yaml @@ -0,0 +1,62 @@ +# Wirkungs-Vokabular + Sprachregeln Klangschalen-Texte +# Deterministische Grundlage fuer: Wirkungs-Bloecke, Generik-Sucher, Recht-Gate. +schema_version: 1 +stand: 2026-06-09 + +koerper_logik: + # Bauch-Herz-Kopf als spuerbare, koerperliche Logik + - zone: bauch + klang: tief + typische_woerter: [tief, voll, stabil, tragend, erdend] + - zone: herz + klang: warm + typische_woerter: [warm, harmonisch, weich, verbindend] + - zone: kopf + klang: klar + typische_woerter: [hell, klar, fokussierend, leicht] + +generik_lexikon: + # Problemwort -> Alltags-Alternative + Grund (Anti-Generik, Schritt Sprach-Check) + - wort: strahlend + grund: generisch + alternative: [hell, klar] + - wort: pulsierend + grund: fachsprache + alternative: ["wirkt belebend", "gibt Impuls"] + - wort: wogend + grund: fachsprache + alternative: ["breitet sich weich aus", "ruhig fliessend"] + - wort: vielschichtig + grund: abstrakt + alternative: ["warm und voll", "harmonisch und voll"] + - wort: tragfaehig + grund: technisch_generisch + alternative: ["bleibt stabil beim Auflegen", "schwer genug fuer Bauch-/Beckenarbeit"] + - wort: "Atmosphaere der Ruhe" + grund: allgemeinplatz + alternative: ["ruhiger Klangraum", "tragender Klangrahmen"] + - wort: "Raum fuellen" + grund: unpraezise + alternative: ["ruhigen Klangimpuls setzen"] + +hwg_verboten: + # Recht-Gate: keine Heilversprechen. Begriff -> erlaubte Umformung. + - begriff: "Spannungen loesen" + typ: heilaussage + alternative: ["unterstuetzt beim Loslassen", "bringt Entspannung"] + - begriff: "Herzoeffnung" + typ: esoterisch + alternative: ["spricht den Herzbereich an", "bringt Waerme in die Brust"] + - begriff: "Transformation" + typ: grosses_versprechen + alternative: ["Veraenderung im Alltag unterstuetzen"] + - begriff: "Aura" + typ: esoterisch + alternative: ["Raum um den Kopf"] + +verbotene_muster: + # GEO/Struktur: nie als Einstieg, nie Nachklang in Sekunden + - "Diese Seite ..." + - "Hier finden Sie ..." + - "Ueberblick ueber ..." + - "Nachklang in Sekunden" # Sekunden-Nachklang weglassen; wenn noetig kurz/mittel/lang