<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Architecture | The .NET Blog</title><link>https://thedotnetblog.com/de/tags/architecture/</link><description>Articles, tutorials and insights from the .NET community.</description><generator>Hugo</generator><language>de</language><managingEditor>@thedotnetblog (The .NET Blog)</managingEditor><webMaster>@thedotnetblog</webMaster><lastBuildDate>Mon, 11 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://thedotnetblog.com/de/tags/architecture/index.xml" rel="self" type="application/rss+xml"/><item><title>SDD Conference 2026</title><link>https://thedotnetblog.com/de/events/sdd-conference-2026/</link><pubDate>Mon, 11 May 2026 00:00:00 +0000</pubDate><guid>https://thedotnetblog.com/de/events/sdd-conference-2026/</guid><description>Eine 5-tägige Software-Entwicklungskonferenz im Barbican Centre in London mit 78 Sessions und 14 Workshops zu Architektur, .NET, KI, Azure, DevOps und mehr.</description><content:encoded>&lt;p&gt;&lt;strong&gt;SDD 2026&lt;/strong&gt; findet vom &lt;strong&gt;11. bis 15. Mai 2026&lt;/strong&gt; im &lt;strong&gt;Barbican Centre in London&lt;/strong&gt; statt. Die 3-tägige Kernkonferenz läuft von Dienstag bis Donnerstag, mit optionalen Ganztags-Workshops am Montag und Freitag.&lt;/p&gt;
&lt;p&gt;Mit &lt;strong&gt;78 Sessions&lt;/strong&gt; und &lt;strong&gt;14 Workshops&lt;/strong&gt; ist dies eine der umfangreichsten Entwicklerkonferenzen in Europa.&lt;/p&gt;
&lt;h2 id="themen"&gt;Themen&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Architektonisches Denken&lt;/li&gt;
&lt;li&gt;Funktionaler Code in C# 13&lt;/li&gt;
&lt;li&gt;Serverless-Design&lt;/li&gt;
&lt;li&gt;Semantische KI&lt;/li&gt;
&lt;li&gt;Azure Kubernetes Services&lt;/li&gt;
&lt;li&gt;Lean DevOps Strategien&lt;/li&gt;
&lt;li&gt;The Model Context Protocol (MCP)&lt;/li&gt;
&lt;li&gt;Agentische KI in .NET&lt;/li&gt;
&lt;li&gt;Refactoring des Monolithen&lt;/li&gt;
&lt;li&gt;Schneller programmieren mit LLMs&lt;/li&gt;
&lt;li&gt;Kryptographie in einer Post-Quanten-Welt&lt;/li&gt;
&lt;li&gt;Local-First-Entwicklung&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="speaker"&gt;Speaker&lt;/h2&gt;
&lt;p&gt;Weltklasse-Lineup mit &lt;strong&gt;Kevlin Henney&lt;/strong&gt;, &lt;strong&gt;Neal Ford&lt;/strong&gt;, &lt;strong&gt;Sander Hoogendoorn&lt;/strong&gt;, &lt;strong&gt;Andrew Clymer&lt;/strong&gt;, &lt;strong&gt;Jacqui Read&lt;/strong&gt;, &lt;strong&gt;Christian Weyer&lt;/strong&gt;, &lt;strong&gt;Jeff Prosise&lt;/strong&gt;, &lt;strong&gt;Jules May&lt;/strong&gt;, &lt;strong&gt;Oliver Sturm&lt;/strong&gt; und &lt;strong&gt;Raju Gandhi&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="tickets-und-infos"&gt;Tickets und Infos&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://sddconf.com/"&gt;Event-Website&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://sddvault.s3.amazonaws.com/assets/SDD_2026_schedule.pdf"&gt;Vollständige Agenda PDF&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://sddconf.com/register"&gt;Registrierungsoptionen&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;98 % der SDD 2025-Teilnehmer bewerteten das Gesamterlebnis als gut, sehr gut oder exzellent.&lt;/p&gt;</content:encoded></item><item><title>Eine KI-gestützte Konferenz-App mit dem komponierbaren .NET-Stack erstellen</title><link>https://thedotnetblog.com/de/news/emiliano-montesdeoca/ai-conference-app-dotnet-composable-stack/</link><pubDate>Wed, 06 May 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/de/news/emiliano-montesdeoca/ai-conference-app-dotnet-composable-stack/</guid><description>Microsoft hat ConferencePulse — eine Blazor-App für Live-Konferenzen — durch Kombination von Microsoft.Extensions.AI, DataIngestion, VectorData, MCP und Agent Framework erstellt. So passen die Teile zusammen.</description><content:encoded>&lt;p&gt;&lt;em&gt;Dieser Beitrag wurde automatisch übersetzt. Zur Originalversion &lt;a href="https://thedotnetblog.com/de/news/emiliano-montesdeoca/ai-conference-app-dotnet-composable-stack/"&gt;hier klicken&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devblogs.microsoft.com/dotnet/building-ai-conference-app-dotnet-composable-stack/"&gt;Eine KI-gestützte Konferenz-App mit dem komponierbaren .NET-Stack erstellen&lt;/a&gt; — Microsoft hat ConferencePulse entwickelt, eine Blazor Server-App für Live-Konferenzsessions, indem fünf .NET-Erweiterungsbibliotheken kombiniert wurden. Sie wurde auf dem MVP Summit eingesetzt.&lt;/p&gt;
&lt;h2 id="was-conferencepulse-leistet"&gt;Was ConferencePulse leistet&lt;/h2&gt;
&lt;p&gt;ConferencePulse läuft während Live-Sessions und bietet: KI-generierte Umfragen aus dem Session-Inhalt, Publikums-Q&amp;amp;A mit einer RAG-Pipeline, die aus einer Live-Wissensdatenbank schöpft, automatisch generierte Erkenntnisse und Session-Zusammenfassungen, die von mehreren gleichzeitig laufenden KI-Agenten erstellt werden. Der Stack ist .NET 10, Blazor Server, Aspire, aufgeteilt auf fünf Projekte: Web, Core, Ingestion, Agents, Mcp und AppHost.&lt;/p&gt;
&lt;h2 id="microsoftextensionsai-eine-abstraktion-für-alles"&gt;Microsoft.Extensions.AI: eine Abstraktion für alles&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;IChatClient&lt;/code&gt; ist die einheitliche Abstraktion — einmal eingerichtet, funktioniert dieselbe Schnittstelle für Azure OpenAI, OpenAI, Anthropic oder jeden anderen Anbieter. Sechs Zeilen für einen vollständig konfigurierten Client mit Funktionsaufruf, OpenTelemetry-Tracing und Logging-Middleware:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-csharp" data-lang="csharp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;AddChatClient&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;AzureOpenAIClient&lt;/span&gt;&lt;span class="p"&gt;(...).&lt;/span&gt;&lt;span class="n"&gt;GetChatClient&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;gpt-4o&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;UseFunctionInvocation&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;UseOpenTelemetry&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;UseLogging&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Derselbe &lt;code&gt;IChatClient&lt;/code&gt; wird später für den Anreicherungsschritt der Datenaufnahme wiederverwendet — kein separater Client dafür nötig.&lt;/p&gt;
&lt;h2 id="dataingestion-pipeline"&gt;DataIngestion-Pipeline&lt;/h2&gt;
&lt;p&gt;Session-Inhalte fließen durch eine Pipeline: &lt;code&gt;MarkdownReader&lt;/code&gt; → &lt;code&gt;HeaderChunker&lt;/code&gt; (500 Token, 50 Token Überlappung) → &lt;code&gt;SummaryEnricher&lt;/code&gt; + &lt;code&gt;KeywordEnricher&lt;/code&gt; → &lt;code&gt;VectorStoreWriter&lt;/code&gt; (Qdrant). Die Anreicherungskomponenten verwenden denselben &lt;code&gt;IChatClient&lt;/code&gt;, um Zusammenfassungen zu generieren und Schlüsselwörter vor der Indexierung zu extrahieren. Publikumsfragen, Q&amp;amp;A-Paare und Umfrageergebnisse werden in Echtzeit aufgenommen, während die Session fortschreitet — die Wissensdatenbank wächst während des Vortrags.&lt;/p&gt;
&lt;h2 id="vectordata-anbieterunabhängige-suche"&gt;VectorData: anbieterunabhängige Suche&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;VectorStoreCollection.SearchAsync()&lt;/code&gt; funktioniert gleich, egal ob der zugrunde liegende Speicher Qdrant oder Azure AI Search ist. Hybridsuche (Vektor + Volltext) wird unterstützt. Die RAG-Pipeline für Publikums-Q&amp;amp;A fragt diese Sammlung ab und erhält relevante Chunks, die als Kontext an den Chat-Client weitergegeben werden.&lt;/p&gt;
&lt;h2 id="mcp-session-inhalt-als-tools"&gt;MCP: Session-Inhalt als Tools&lt;/h2&gt;
&lt;p&gt;Der Session-Inhalt wird über MCP bereitgestellt, sodass jeder MCP-kompatible Client darauf zugreifen kann. Sowohl Server als auch Client sind implementiert — der Server stellt Session-Wissen als MCP-Tools bereit, und der Client ermöglicht das Aufrufen dieser Tools innerhalb der Agenten-Pipeline.&lt;/p&gt;
&lt;h2 id="agent-framework-parallele-multi-agent-zusammenfassung"&gt;Agent Framework: parallele Multi-Agent-Zusammenfassung&lt;/h2&gt;
&lt;p&gt;Die Session-Zusammenfassung wird von drei gleichzeitig laufenden Agenten generiert — &lt;code&gt;PollSummaryAgent&lt;/code&gt;, &lt;code&gt;QuestionSummaryAgent&lt;/code&gt; und &lt;code&gt;InsightSummaryAgent&lt;/code&gt; — und dann zusammengeführt. Dies verwendet das Gruppen-Chat- oder parallele Ausführungsmuster aus dem Microsoft Agent Framework. Jeder Agent behandelt einen Aspekt; der Orchestrator fügt die Ausgaben zusammen.&lt;/p&gt;
&lt;h2 id="das-designprinzip"&gt;Das Designprinzip&lt;/h2&gt;
&lt;p&gt;Der Beitrag macht einen bemerkenswerten Punkt: Verwende das einfachste Tool, das passt. Direkte &lt;code&gt;IChatClient&lt;/code&gt;-Aufrufe für einfache Generierungsaufgaben. Tool-/Funktionsaufruf für strukturierte Datenextraktion. Vollständige Agenten nur, wenn autonomes mehrstufiges Reasoning benötigt wird. Die Bibliotheksschichtung erzwingt dies — du kannst &lt;code&gt;Microsoft.Extensions.AI&lt;/code&gt; verwenden, ohne das vollständige Agent Framework einzubinden.&lt;/p&gt;
&lt;p&gt;Siehe den &lt;a href="https://devblogs.microsoft.com/dotnet/building-ai-conference-app-dotnet-composable-stack/"&gt;vollständigen Beitrag&lt;/a&gt; für die vollständige Projektstruktur und Quellcode-Links.&lt;/p&gt;</content:encoded></item><item><title>Wo Erinnert sich dein Agent an Dinge? Ein Praxisleitfaden zur Chat-Verlauf-Speicherung</title><link>https://thedotnetblog.com/de/news/emiliano-montesdeoca/chat-history-storage-patterns-agent-framework/</link><pubDate>Sat, 25 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/de/news/emiliano-montesdeoca/chat-history-storage-patterns-agent-framework/</guid><description>Service-managed oder client-managed? Linear oder verzweigend? Die Architekturentscheidung, die bestimmt, was dein KI-Agent wirklich tun kann — mit Code-Beispielen in C# und Python.</description><content:encoded>&lt;p&gt;&lt;em&gt;Dieser Beitrag wurde automatisch übersetzt. Zur Originalversion &lt;a href="https://thedotnetblog.com/de/news/emiliano-montesdeoca/chat-history-storage-patterns-agent-framework/"&gt;hier klicken&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Beim Aufbau eines KI-Agenten investierst du die meiste Energie in Modell, Tools und Prompts. Die Frage, &lt;em&gt;wo der Gesprächsverlauf lebt&lt;/em&gt;, scheint ein Implementierungsdetail — ist aber eine der wichtigsten Architekturentscheidungen, die du treffen wirst.&lt;/p&gt;
&lt;p&gt;Sie bestimmt, ob Nutzer Gespräche verzweigen, Antworten rückgängig machen, Sitzungen nach einem Neustart fortsetzen können und ob deine Daten deine Infrastruktur jemals verlassen.&lt;/p&gt;
&lt;h2 id="zwei-grundlegende-muster"&gt;Zwei grundlegende Muster&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Service-managed&lt;/strong&gt;: Der KI-Dienst speichert den Gesprächszustand. Deine App hält eine Referenz und der Dienst fügt automatisch den relevanten Verlauf in jede Anfrage ein.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Client-managed&lt;/strong&gt;: Deine App verwaltet den vollständigen Verlauf und sendet relevante Nachrichten mit jeder Anfrage. Der Dienst ist zustandslos. Du kontrollierst alles.&lt;/p&gt;
&lt;h2 id="wie-agent-framework-das-abstrahiert"&gt;Wie Agent Framework das abstrahiert&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-csharp" data-lang="csharp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// C# — funktioniert gleich, unabhängig vom Provider&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;AgentSession&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;CreateSessionAsync&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;var&lt;/span&gt; &lt;span class="n"&gt;first&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RunAsync&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;Mein Name ist Alice.&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;var&lt;/span&gt; &lt;span class="n"&gt;second&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RunAsync&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;Wie ist mein Name?&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Python&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;session&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;create_session&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;first&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;run&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Mein Name ist Alice.&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;second&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;run&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Wie ist mein Name?&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="provider-schnellreferenz"&gt;Provider-Schnellreferenz&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Provider&lt;/th&gt;
&lt;th&gt;Speicherort&lt;/th&gt;
&lt;th&gt;Modell&lt;/th&gt;
&lt;th&gt;Komprimierung&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;OpenAI/Azure Chat Completions&lt;/td&gt;
&lt;td&gt;Client&lt;/td&gt;
&lt;td&gt;N/A&lt;/td&gt;
&lt;td&gt;Du&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Foundry Agent Service&lt;/td&gt;
&lt;td&gt;Service&lt;/td&gt;
&lt;td&gt;Linear&lt;/td&gt;
&lt;td&gt;Service&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Responses API (Standard)&lt;/td&gt;
&lt;td&gt;Service&lt;/td&gt;
&lt;td&gt;Verzweigend&lt;/td&gt;
&lt;td&gt;Service&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Anthropic Claude, Ollama&lt;/td&gt;
&lt;td&gt;Client&lt;/td&gt;
&lt;td&gt;N/A&lt;/td&gt;
&lt;td&gt;Du&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="wie-du-die-wahl-triffst"&gt;Wie du die Wahl triffst&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Brauchst du Verzweigung oder „Rückgängig&amp;quot;?&lt;/strong&gt; → Responses API service-managed&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Brauchst du vollständige Datensouveränität?&lt;/strong&gt; → Client-managed mit datenbankgestütztem Provider&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ist es ein einfacher Chatbot?&lt;/strong&gt; → Service-managed linear reicht&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Brauchst du Portabilität zwischen Providern?&lt;/strong&gt; → Client-managed bietet Portabilität&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Lies den &lt;a href="https://devblogs.microsoft.com/agent-framework/chat-history-storage-patterns-in-microsoft-agent-framework/"&gt;vollständigen Beitrag&lt;/a&gt; für den vollständigen Entscheidungsbaum.&lt;/p&gt;</content:encoded></item></channel></rss>