{"id":11196,"date":"2026-04-11T04:26:07","date_gmt":"2026-04-10T20:26:07","guid":{"rendered":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/"},"modified":"2026-04-11T04:26:07","modified_gmt":"2026-04-10T20:26:07","slug":"state-machine-diagram-tutorial-iot-sensor-networks","status":"publish","type":"post","link":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/","title":{"rendered":"Tutorial zum Zustandsmaschinen-Diagramm: Erstellen klarer visueller Logik f\u00fcr IoT-Sensornetze"},"content":{"rendered":"<p>Die Gestaltung zuverl\u00e4ssiger eingebetteter Systeme erfordert mehr als nur das Schreiben von Code. Es erfordert einen strukturierten Ansatz zur Verhaltenssteuerung. Im Kontext von Internet-of-Things-(IoT)-Sensornetzen arbeiten Ger\u00e4te in unvorhersehbaren Umgebungen. Sie m\u00fcssen Ausf\u00e4lle der Verbindung, Spannungsschwankungen und Sensoranomalien bew\u00e4ltigen, ohne abzust\u00fcrzen. Eine robuste Methode, dieses Verhalten zu visualisieren, ist das UML-Zustandsmaschinen-Diagramm. Dieser Leitfaden untersucht, wie man diese Diagramme erstellt, um logische Konsistenz \u00fcber alle Sensorknoten hinweg zu gew\u00e4hrleisten.<\/p>\n<p>Die Visualisierung der Logik hilft Entwicklern, Randf\u00e4lle zu erkennen, bevor die Implementierung beginnt. Indem Sie Zust\u00e4nde und \u00dcberg\u00e4nge abbilden, erstellen Sie eine Bauplan, der sowohl f\u00fcr Entwicklungsteams als auch f\u00fcr Stakeholder n\u00fctzlich ist. Dieser Leitfaden konzentriert sich auf die praktische Anwendung der Zustandsmodellierung f\u00fcr IoT-Architekturen, wobei unn\u00f6tige Komplexit\u00e4t vermieden wird, ohne die technische Strenge zu vernachl\u00e4ssigen.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img alt=\"Chalkboard-style infographic explaining UML state machine diagrams for IoT sensor networks, showing the four pillars (states, transitions, events, actions), UML symbols reference, example sensor node workflow from Ready to Sensing to Transmitting, error handling patterns, benefits of visual logic modeling, and validation checklist for embedded system designers\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg\"\/><\/figure>\n<\/div>\n<h2>\ud83d\udd0d Verst\u00e4ndnis der Grundkonzepte von Zustandsmaschinen<\/h2>\n<p>Eine Zustandsmaschine ist ein rechnerisches Modell, das zur Gestaltung von Computerprogrammen und digitalen Logikschaltungen verwendet wird. Sie ist durch eine endliche Anzahl von Zust\u00e4nden, \u00dcberg\u00e4ngen zwischen diesen Zust\u00e4nden und Aktionen definiert. Im IoT ist die \u201eMaschine\u201c Ihr Sensorknoten. Die \u201eZust\u00e4nde\u201c sind seine Betriebsmodi, beispielsweise<strong>Wartezustand<\/strong>, <strong>Daten sammeln<\/strong>, <strong>Schlafzustand<\/strong>, oder<strong>Fehlerbehebung<\/strong>.<\/p>\n<p>Warum ist dies f\u00fcr Sensoren entscheidend? Im Gegensatz zu einer Desktop-Anwendung l\u00e4uft ein IoT-Ger\u00e4t oft autonom. Es kann nicht auf st\u00e4ndige Benutzerintervention setzen. Die Logik muss sich selbst korrigieren und zustandsbewusst sein. Wenn ein Ger\u00e4t aus dem Schlafzustand erwacht, muss es genau wissen, wo es aufgeh\u00f6rt hat oder wo es beginnen soll.<\/p>\n<h3>Die vier S\u00e4ulen eines Zustandsdiagramms<\/h3>\n<ul>\n<li><strong>Zust\u00e4nde:<\/strong>Stellen einen Zustand dar, in dem das System bestimmte Kriterien erf\u00fcllt oder bestimmte Aktionen ausf\u00fchrt. Bei einem Temperatursensor k\u00f6nnte ein Zustand beispielsweise \u201eMessung\u201c sein.<\/li>\n<li><strong>\u00dcberg\u00e4nge:<\/strong>Die Verbindungswege zwischen Zust\u00e4nden. Ein \u00dcbergang tritt ein, wenn ein bestimmtes Ereignis eine \u00c4nderung von einem Zustand in einen anderen ausl\u00f6st.<\/li>\n<li><strong>Ereignisse:<\/strong>Signale, die einen \u00dcbergang verursachen. Beispiele sind ein Ablauf eines Timers, ein Tastendruck oder ein empfangenes Netzwerksignal.<\/li>\n<li><strong>Aktionen:<\/strong>Aktivit\u00e4ten, die beim Betreten oder Verlassen eines Zustands oder w\u00e4hrend eines \u00dcbergangs ausgef\u00fchrt werden. Beispiele sind das Protokollieren von Daten, das Senden eines Pakets oder das Umschalten eines Pins.<\/li>\n<\/ul>\n<h2>\u26a1 Warum visuelle Logik f\u00fcr IoT-Sensornetze wichtig ist<\/h2>\n<p>IoT-Projekte leiden oft unter Logikdrift. Je mehr Funktionen hinzugef\u00fcgt werden, desto schwieriger wird es, den Code nachzuvollziehen. Ein Zustandsmaschinen-Diagramm fungiert als einzige Quelle der Wahrheit. Es kl\u00e4rt den Ablauf der Steuerung, ohne dass der Leser Zeilen bedingter Code analysieren muss.<\/p>\n<p>Betrachten Sie einen batteriebetriebenen Sensor. Die Energieverwaltung ist eine kritische Herausforderung. Wenn die Logik nicht visualisiert wird, k\u00f6nnte das Ger\u00e4t in eine Schleife geraten, in der es versucht, sich mit einem Netzwerk zu verbinden, w\u00e4hrend der Akku kritisch niedrig ist, wodurch unn\u00f6tig Energie verbraucht wird. Ein Zustandsdiagramm zwingt Sie, die Bedingungen f\u00fcr den Eintritt in einen<strong>Niedrigenergiemodus<\/strong>explizit zu definieren.<\/p>\n<h3>Vorteile der Modellierung vor dem Codieren<\/h3>\n<ul>\n<li><strong>Fehlerreduzierung:<\/strong> Erkennt unerreichbare Zust\u00e4nde oder Totverzweigungen bereits in der Entwurfsphase.<\/li>\n<li><strong> Dokumentation:<\/strong> Bietet einen klaren \u00dcberblick f\u00fcr neue Teammitglieder, die dem Projekt beitreten.<\/li>\n<li><strong> Teststrategie:<\/strong> Definiert spezifische Testf\u00e4lle f\u00fcr jede \u00dcbergang und jeden Zustand.<\/li>\n<li><strong> Skalierbarkeit:<\/strong> Vereinfacht das Hinzuf\u00fcgen neuer Funktionen, ohne bestehende Logik zu st\u00f6ren.<\/li>\n<\/ul>\n<h2>\ud83d\udee0\ufe0f Aufbau eines UML-Zustandsmaschinen-Diagramms<\/h2>\n<p>Die Standardisierung der Notation ist f\u00fcr die Zusammenarbeit unerl\u00e4sslich. Die Unified Modeling Language (UML) bietet eine Reihe von Symbolen, die von Softwarearchitekten und Hardware-Ingenieuren weltweit verstanden werden. Im Folgenden finden Sie eine Aufschl\u00fcsselung der wesentlichen Elemente, die bei der IoT-Modellierung verwendet werden.<\/p>\n<table>\n<thead>\n<tr>\n<th>Element<\/th>\n<th>Visuelles Symbol<\/th>\n<th>Funktion im IoT-Kontext<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Anfangszustand<\/strong><\/td>\n<td>\u25cf (F\u00fcllkreis)<\/td>\n<td>Der Einstiegspunkt, wenn das Ger\u00e4t startet oder zur\u00fcckgesetzt wird.<\/td>\n<\/tr>\n<tr>\n<td><strong>Endzustand<\/strong><\/td>\n<td>\u2298 (Kreis mit Kreuz)<\/td>\n<td>Zeigt das Ende eines bestimmten Ablaufs an (z.\u202fB. Herunterfahren).<\/td>\n<\/tr>\n<tr>\n<td><strong>Zustand<\/strong><\/td>\n<td>Rechteck mit abgerundeten Ecken<\/td>\n<td>Ein Betriebsmodus (z.\u202fB. \u201eSchlafend\u201c, \u201eSenden\u201c).<\/td>\n<\/tr>\n<tr>\n<td><strong>\u00dcbergang<\/strong><\/td>\n<td>Pfeillinie<\/td>\n<td>Der Pfad, der eingeschlagen wird, wenn ein Ereignis eintritt.<\/td>\n<\/tr>\n<tr>\n<td><strong>Ereignis-Ausl\u00f6ser<\/strong><\/td>\n<td>Text auf der \u00dcbergangslinie<\/td>\n<td>Die Bedingung, die die Bewegung ausl\u00f6st (z.\u202fB. \u201eTimer abgelaufen\u201c).<\/td>\n<\/tr>\n<tr>\n<td><strong>W\u00e4chterbedingung<\/strong><\/td>\n<td>[Bedingung]<\/td>\n<td>Eine boolesche Pr\u00fcfung, die wahr sein muss, um fortzufahren.<\/td>\n<\/tr>\n<tr>\n<td><strong>Aktion<\/strong><\/td>\n<td>Text \/ Aktion_name<\/td>\n<td>Code, der w\u00e4hrend der \u00dcbergangsphase ausgef\u00fchrt wird (z.\u202fB. \/ send_data).<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>\ud83d\udcd0 Schritt-f\u00fcr-Schritt: Modellierung eines IoT-Sensorknotens<\/h2>\n<p>Um den Prozess zu veranschaulichen, modellieren wir einen generischen Umwelt\u00fcberwachungsknoten. Dieses Ger\u00e4t erfasst Temperatur- und Feuchtigkeitsdaten und \u00fcbertr\u00e4gt sie an einen Gateway. Es muss die Akkulaufzeit verwalten und Netzwerkfehler reibungslos behandeln.<\/p>\n<h3>Schritt 1: Definieren Sie den Einstiegspunkt<\/h3>\n<p>Jeder Zustandsautomat beginnt mit einem Anfangszustand. Bei einem eingebetteten Ger\u00e4t ist dies typischerweise die Phase der Systeminitialisierung. Das Ger\u00e4t schaltet sich ein, f\u00fchrt Diagnosen durch und l\u00e4dt Konfigurationsparameter.<\/p>\n<ul>\n<li>Startknoten: \u25cf<\/li>\n<li>Erster \u00dcbergang: System initialisieren<\/li>\n<li>Zielzustand: Bereitschaftszustand<\/li>\n<\/ul>\n<h3>Schritt 2: Identifizieren Sie die Betriebszust\u00e4nde<\/h3>\n<p>Was sind die prim\u00e4ren Betriebsmodi? Vermeiden Sie die Erstellung zu vieler feinerer Zust\u00e4nde, da dies das Diagramm kompliziert. Konzentrieren Sie sich auf hochwertige Verhaltensweisen.<\/p>\n<ul>\n<li><strong>Bereit:<\/strong> Ger\u00e4t ist eingeschaltet, Sensoren sind kalibriert, wartet auf einen Ausl\u00f6ser.<\/li>\n<li><strong>Erfassung:<\/strong> Erfassung von Daten von physischen Sensoren.<\/li>\n<li><strong>Verarbeitung:<\/strong> Aggregation oder Filterung der Rohdaten.<\/li>\n<li><strong>\u00dcbertragung:<\/strong> Versuch, Daten \u00fcber das Netzwerk zu senden.<\/li>\n<li><strong>Niedrigenergie:<\/strong> Eingehen in einen Schlafmodus zur Energieeinsparung.<\/li>\n<\/ul>\n<h3>Schritt 3: \u00dcberg\u00e4nge und Ereignisse abbilden<\/h3>\n<p>Verbinden Sie nun die Zust\u00e4nde mithilfe von Ereignissen. Was verursacht es, dass das Ger\u00e4t von <strong>Bereit<\/strong> zu <strong>Erfassung<\/strong>? Ein Zeitereignis. Was passiert, wenn das Netzwerk w\u00e4hrend <strong>\u00dcbertragung<\/strong>?<\/p>\n<ul>\n<li><em>\u00dcbergang 1:<\/em> Bereit \u2192 Erfassung (Ausl\u00f6ser: <code>Messzeit<\/code>)<\/li>\n<li><em>\u00dcbergang 2:<\/em> Erfassung \u2192 Verarbeitung (Ausl\u00f6ser: <code>Daten_Sammlung_Beendet<\/code>)<\/li>\n<li><em>\u00dcbergang 3:<\/em> Verarbeitung \u2192 \u00dcbertragung (Ausl\u00f6ser: <code>Netzwerk_Erreichbar<\/code>)<\/li>\n<li><em>\u00dcbergang 4:<\/em> \u00dcbertragung \u2192 Bereit (Ausl\u00f6ser: <code>Senden_Erfolgreich<\/code>)<\/li>\n<li><em>\u00dcbergang 5:<\/em> \u00dcbertragung \u2192 Fehlerbehandlung (Ausl\u00f6ser: <code>Senden_Fehlgeschlagen<\/code>)<\/li>\n<\/ul>\n<h2>\ud83d\udd12 Fehlerbehandlung und Wiederherstellung<\/h2>\n<p>In Produktionsumgebungen gehen Dinge manchmal schief. Ein Zustandsautomat muss explizit definieren, wie sich das System verh\u00e4lt, wenn Dinge von der Norm abweichen. Dies wird oft als <strong>Ausnahmenbehandlung<\/strong> innerhalb des Zustandsdiagramms bezeichnet.<\/p>\n<p>Betrachten Sie den <strong>\u00dcbertragung<\/strong>Zustand. Wenn das Netzwerk ausf\u00e4llt, kann das Ger\u00e4t dort nicht f\u00fcr immer verbleiben. Es ben\u00f6tigt eine Schutzbedingung oder ein bestimmtes Zeit\u00fcberschreitungsereignis, um einen Wechsel in einen <strong>Fehlerbehandlung<\/strong>Zustand auszul\u00f6sen.<\/p>\n<h3>Implementierung von Zeit\u00fcberschreitungslogik<\/h3>\n<p>Zeit\u00fcberschreitungen sind entscheidend, um H\u00e4ngen zu verhindern. Verwenden Sie einen spezifischen Ereignistyp f\u00fcr Zeit\u00fcberschreitungen. Kennzeichnen Sie in der Diagramm die \u00dcberg\u00e4nge eindeutig.<\/p>\n<ul>\n<li><strong>Ereignis:<\/strong> <code>Netzwerk_Timeout<\/code><\/li>\n<li><strong>Quelle:<\/strong> \u00dcbertragung<\/li>\n<li><strong>Ziel:<\/strong> Wiederholungs-Warteschlange oder Niedrigenergie<\/li>\n<li><strong>Aktion:<\/strong> Wiederholungs-Z\u00e4hler erh\u00f6hen<\/li>\n<\/ul>\n<p>Wenn der Wiederholungs-Z\u00e4hler eine Grenze \u00fcberschreitet, sollte der \u00dcbergang zu einem <strong>Kritischer Fehler<\/strong> Zustand wechseln, in dem das Ger\u00e4t m\u00f6glicherweise auf manuelle Eingriffe oder einen Neustart warten k\u00f6nnte.<\/p>\n<h2>\ud83e\udde9 Erweiterte Muster: Zusammengesetzte Zust\u00e4nde und Verlauf<\/h2>\n<p>Je gr\u00f6\u00dfer das System wird, desto un\u00fcbersichtlicher wird eine flache Liste von Zust\u00e4nden. UML unterst\u00fctzt zusammengesetzte Zust\u00e4nde (verschachtelte Zust\u00e4nde) und Verlaufszust\u00e4nde zur Verwaltung der Komplexit\u00e4t.<\/p>\n<h3>Zusammengesetzte Zust\u00e4nde<\/h3>\n<p>Ein zusammengesetzter Zustand ist ein Zustand, der andere Zust\u00e4nde enth\u00e4lt. Dies ist n\u00fctzlich, um verwandte Verhaltensweisen zu gruppieren. Zum Beispiel k\u00f6nnte ein <strong>Verbindung<\/strong>Zustand Unterkategorien wie <strong>Suchen<\/strong>, <strong>Verbunden<\/strong>, und <strong>Getrennt<\/strong>. Dadurch bleibt das Hauptdiagramm \u00fcbersichtlich, w\u00e4hrend die detaillierte Logik innerhalb des verschachtelten Feldes erhalten bleibt.<\/p>\n<ul>\n<li><strong>Elternzustand:<\/strong>Verbindung<\/li>\n<li><strong>Kindzustand 1:<\/strong>Suchen<\/li>\n<li><strong>Kindzustand 2:<\/strong>Verbunden<\/li>\n<li><strong>Kindzustand 3:<\/strong> Getrennt<\/li>\n<\/ul>\n<h3>Verlaufszust\u00e4nde<\/h3>\n<p>Wenn ein Ger\u00e4t aus einem Tiefschlaf erwacht, muss es oft in den Zustand zur\u00fcckkehren, in dem es vor dem Schlafen war. Hier kommt ein <strong>Verlaufszustand<\/strong> n\u00fctzlich.<\/p>\n<ul>\n<li><strong>Flacher Verlauf (H):<\/strong> Keht zum letzten aktiven Zustand des Elternzustands zur\u00fcck.<\/li>\n<li><strong>Tiefer Verlauf (H mit Punkt):<\/strong> Keht zum letzten aktiven Zustand zur\u00fcck, selbst wenn er tief innerhalb eines zusammengesetzten Zustands geschachtelt war.<\/li>\n<\/ul>\n<p>F\u00fcr IoT wird der tiefe Verlauf oft bevorzugt. Wenn der Sensor in <strong>Verarbeitung \u2192 \u00dcbertragung**, und er trat in <strong>Schlaf<\/strong>, sollte beim Aufwachen den <strong>\u00dcbertragung<\/strong>Ablauf fortsetzen, falls m\u00f6glich, oder den Prozess auf Basis der Richtlinie sauber neu starten.<\/strong><\/p>\n<h2>\ud83d\udcca Vergleich von Zustandslogikans\u00e4tzen<\/h2>\n<p>Nicht alle Logikabl\u00e4ufe sind identisch. Unterschiedliche IoT-Anwendungen erfordern unterschiedliche Modellierungsstrategien. Die folgende Tabelle zeigt g\u00e4ngige Ans\u00e4tze auf.<\/p>\n<table>\n<thead>\n<tr>\n<th>Ansatz<\/th>\n<th>Beste Anwendungsfalle<\/th>\n<th>Komplexit\u00e4t<\/th>\n<th>Flexibilit\u00e4t<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Sequentiell<\/strong><\/td>\n<td>Einfaches Datenlogging<\/td>\n<td>Niedrig<\/td>\n<td>Niedrig<\/td>\n<\/tr>\n<tr>\n<td><strong>Ereignisgesteuert<\/strong><\/td>\n<td>Interaktive Ger\u00e4te (Tasten, Warnungen)<\/td>\n<td>Mittel<\/td>\n<td>Hoch<\/td>\n<\/tr>\n<tr>\n<td><strong>Hybrid<\/strong><\/td>\n<td>Komplexe Sensornetze<\/td>\n<td>Hoch<\/td>\n<td>Sehr hoch<\/td>\n<\/tr>\n<tr>\n<td><strong>Geb\u00e4rdungs-basiert<\/strong><\/td>\n<td>Energiebeschr\u00e4nkte Umgebungen<\/td>\n<td>Mittel<\/td>\n<td>Mittel<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>\ud83d\udeab H\u00e4ufige Fehler bei der Zustandsmodellierung f\u00fcr IoT<\/h2>\n<p>Selbst erfahrene Ingenieure machen Fehler bei der Erstellung von Zustandsdiagrammen. Die Kenntnis dieser h\u00e4ufigen Fallen hilft, die Integrit\u00e4t Ihrer Logik zu gew\u00e4hrleisten.<\/p>\n<ul>\n<li><strong>Zustandsexplosion:<\/strong> Zu viele Zust\u00e4nde f\u00fcr geringf\u00fcgige Unterschiede erstellen. Geringf\u00fcgige Unterschiede in Aktionen innerhalb eines einzigen Zustands gruppieren.<\/li>\n<li><strong>Unerreichbare Zust\u00e4nde:<\/strong> Ein Zustand, der vom Anfangszustand aus nicht erreicht werden kann. Dies deutet normalerweise auf einen Designfehler oder einen fehlenden \u00dcbergang hin.<\/li>\n<li><strong>Fehlende Ausgangspfade:<\/strong> Ein Zustand, der keinen \u00dcbergang nach au\u00dfen hat. Dies f\u00fchrt zu einer Sperre, bei der das Ger\u00e4t unendlich lange h\u00e4ngen bleibt.<\/li>\n<li><strong>Bedeutungslose Ereignisse:<\/strong> Verwendung desselben Ereignisnamens f\u00fcr verschiedene \u00dcberg\u00e4nge ohne Unterscheidung von W\u00e4chterbedingungen. Dies f\u00fchrt zu Rennbedingungen.<\/li>\n<li><strong>Ignorieren von Energiezust\u00e4nden:<\/strong> Vergessen, dass die Hardware sich im Schlafmodus anders verhalten k\u00f6nnte als im aktiven Modus.<\/li>\n<\/ul>\n<h2>\ud83d\udd27 \u00dcberpr\u00fcfungsliste<\/h2>\n<p>Bevor Sie das Diagramm abschlie\u00dfen, durchlaufen Sie diese Liste, um Robustheit zu gew\u00e4hrleisten.<\/p>\n<ul>\n<li>Hat jeder Zustand einen Ausgangspfad?<\/li>\n<li>Ist der Anfangszustand mit einem g\u00fcltigen Startzustand verbunden?<\/li>\n<li>Sind alle Fehlerzust\u00e4nde einem Wiederherstellungszustand zugeordnet?<\/li>\n<li>Sind W\u00e4chterbedingungen dort, wo n\u00f6tig, wechselseitig ausschlie\u00dfend?<\/li>\n<li>Ber\u00fccksichtigt das Diagramm Netzwerkverz\u00f6gerungen und Paketverlust?<\/li>\n<li>Sind Aktionen (Codeausf\u00fchrung) f\u00fcr jeden \u00dcbergang eindeutig definiert?<\/li>\n<li>Ist die Logik mit den verf\u00fcgbaren Hardware-Ressourcen kompatibel?<\/li>\n<\/ul>\n<h2>\ud83c\udf0d Integration in die Systemarchitektur<\/h2>\n<p>Ein Zustandsmaschinen-Diagramm existiert nicht isoliert. Es integriert sich in die umfassende Systemarchitektur. Das Diagramm beeinflusst die Firmware-Struktur, die wiederum die Hardware-Anforderungen festlegt.<\/p>\n<p>Zum Beispiel muss der Mikrocontroller ausreichend RAM besitzen, um Zustandsvariablen zu speichern, wenn das Diagramm ein schnelles Kontextwechseln zwischen Zust\u00e4nden erfordert. Wenn das Diagramm einen Zustand mit langer Dauer im Schlafmodus enth\u00e4lt, muss die Hardware Tiefenergie-Modi mit geringem Leckstrom unterst\u00fctzen.<\/p>\n<h3>Zust\u00e4nde in Code abbilden<\/h3>\n<p>Sobald das Diagramm genehmigt ist, beginnt die Implementierungsphase. Die visuelle Logik wird direkt in Steuerstrukturen \u00fcbersetzt. Bei C-basierter Firmware sieht dies oft wie ein <code>switch<\/code>Statement oder eine Zustandsaufz\u00e4hlung aus.<\/p>\n<ul>\n<li><strong>Zustandsaufz\u00e4hlung:<\/strong> Definiert die m\u00f6glichen Zust\u00e4nde (z.\u202fB. <code>STATE_IDLE<\/code>, <code>STATE_TX<\/code>).<\/li>\n<li><strong>Zustands-Handler:<\/strong> Eine Funktion, die basierend auf dem aktuellen Zustand ausgef\u00fchrt wird.<\/li>\n<li><strong>Ereignis-Dispatcher:<\/strong> Ein Mechanismus, um eingehende Signale an den richtigen Handler weiterzuleiten.<\/li>\n<\/ul>\n<p>Diese Trennung von Logik (Diagramm) und Implementierung (Code) erm\u00f6glicht eine einfachere Wartung. Wenn sich die Gesch\u00e4ftslogik \u00e4ndert, aktualisieren Sie zuerst das Diagramm und generieren oder refaktorisieren dann den Code, anstatt durch Spaghetti-Code zu suchen.<\/p>\n<h2>\ud83d\udee1\ufe0f Sicherheitsaspekte in der Zustandslogik<\/h2>\n<p>Sicherheit wird bei der Zustandsmodellierung oft \u00fcbersehen, ist aber f\u00fcr IoT von entscheidender Bedeutung. Eine kompromittierte Zustandsmaschine kann zu unbefugtem Zugriff oder Dienstverweigerung f\u00fchren.<\/p>\n<ul>\n<li><strong>Authentifizierungs-Zust\u00e4nde:<\/strong> Definieren Sie spezifische Zust\u00e4nde f\u00fcr Authentifizierungs-Handshakes. Erlauben Sie keine Daten\u00fcbertragung, bis der <strong>Authentifiziert<\/strong>Zustand erreicht ist.<\/li>\n<li><strong>Sperr-Zust\u00e4nde:<\/strong> Wenn mehrere fehlgeschlagene Anmeldeversuche erfolgen, wechseln Sie in einen <strong>Gesperrt<\/strong>Zustand, um Brute-Force-Angriffe zu verhindern.<\/li>\n<li><strong>Sicheres Booten:<\/strong> Stellen Sie sicher, dass der Anfangszustand nur fortgesetzt wird, wenn die Integrit\u00e4tspr\u00fcfung der Firmware erfolgreich war.<\/li>\n<\/ul>\n<h2>\ud83d\udcc8 \u00dcberwachung und Diagnose<\/h2>\n<p>Sobald es bereitgestellt ist, m\u00fcssen Sie wissen, wie die Zustandsmaschine funktioniert. Durch das Einbetten von Diagnose-Hooks in die Zustands\u00fcberg\u00e4nge k\u00f6nnen Sie die Gesundheit des Ger\u00e4ts \u00fcberwachen.<\/p>\n<p>Wenn ein \u00dcbergang stattfindet, k\u00f6nnen Sie die Ereignis-ID protokollieren. Im Laufe der Zeit offenbaren diese Daten Muster. Wenn beispielsweise ein Ger\u00e4t h\u00e4ufig von <strong>Senden<\/strong> zu <strong>Fehler<\/strong>, deutet dies auf ein Abdeckungsproblem an dieser Stelle hin. Sie k\u00f6nnen die Zustandslogik anpassen, um Wiederholungen anders zu behandeln, oder die Antennenkonfiguration der Hardware \u00e4ndern.<\/p>\n<h2>\ud83d\udd17 Zusammenfassung der wichtigsten Erkenntnisse<\/h2>\n<ul>\n<li>Zustandsmaschinen bieten einen visuellen Standard zur Definition des Ger\u00e4teverhaltens.<\/li>\n<li>Klare \u00dcberg\u00e4nge verhindern Logikfehler und Engp\u00e4sse.<\/li>\n<li>Die explizite Behandlung von Fehlern ist wichtiger als die Behandlung des normalen Ablaufs.<\/li>\n<li>Verbundzust\u00e4nde helfen, die Komplexit\u00e4t in gro\u00dfen Systemen zu verwalten.<\/li>\n<li>Sicherheitszust\u00e4nde m\u00fcssen in die Kernlogik integriert werden, nicht sp\u00e4ter hinzugef\u00fcgt werden.<\/li>\n<\/ul>\n<p>Durch Einhaltung dieser Prinzipien schaffen Sie eine widerstandsf\u00e4hige Grundlage f\u00fcr Ihre IoT-Sensornetze. Das Diagramm dient als lebendiges Dokument, das sich mit dem Produkt entwickelt und sicherstellt, dass die Logik w\u00e4hrend des gesamten Lebenszyklus des Ger\u00e4ts klar und wartbar bleibt.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Gestaltung zuverl\u00e4ssiger eingebetteter Systeme erfordert mehr als nur das Schreiben von Code. Es erfordert einen strukturierten Ansatz zur Verhaltenssteuerung.<\/p>\n","protected":false},"author":3479,"featured_media":11197,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"Tutorial zum Zustandsmaschinen-Diagramm f\u00fcr IoT-Sensoren | UML-Leitfaden","_yoast_wpseo_metadesc":"Erfahren Sie, wie Sie UML-Zustandsmaschinen-Diagramme f\u00fcr IoT-Sensornetze entwerfen. Beherrschen Sie visuelle Logik, Fehlerbehandlung und Zustandsmodellierung f\u00fcr eingebettete Systeme.","fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[127],"tags":[163,101],"class_list":["post-11196","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-unified-modeling-language","tag-academic","tag-uml"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Tutorial zum Zustandsmaschinen-Diagramm f\u00fcr IoT-Sensoren | UML-Leitfaden<\/title>\n<meta name=\"description\" content=\"Erfahren Sie, wie Sie UML-Zustandsmaschinen-Diagramme f\u00fcr IoT-Sensornetze entwerfen. Beherrschen Sie visuelle Logik, Fehlerbehandlung und Zustandsmodellierung f\u00fcr eingebettete Systeme.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutorial zum Zustandsmaschinen-Diagramm f\u00fcr IoT-Sensoren | UML-Leitfaden\" \/>\n<meta property=\"og:description\" content=\"Erfahren Sie, wie Sie UML-Zustandsmaschinen-Diagramme f\u00fcr IoT-Sensornetze entwerfen. Beherrschen Sie visuelle Logik, Fehlerbehandlung und Zustandsmodellierung f\u00fcr eingebettete Systeme.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/\" \/>\n<meta property=\"og:site_name\" content=\"ArchiMetric German\" \/>\n<meta property=\"article:published_time\" content=\"2026-04-10T20:26:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1664\" \/>\n\t<meta property=\"og:image:height\" content=\"928\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"archimetric@visual-paradigm.com\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"archimetric@visual-paradigm.com\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"10\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/\"},\"author\":{\"name\":\"archimetric@visual-paradigm.com\",\"@id\":\"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28\"},\"headline\":\"Tutorial zum Zustandsmaschinen-Diagramm: Erstellen klarer visueller Logik f\u00fcr IoT-Sensornetze\",\"datePublished\":\"2026-04-10T20:26:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/\"},\"wordCount\":1996,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg\",\"keywords\":[\"academic\",\"UML\"],\"articleSection\":[\"Unified Modeling Language\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/\",\"url\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/\",\"name\":\"Tutorial zum Zustandsmaschinen-Diagramm f\u00fcr IoT-Sensoren | UML-Leitfaden\",\"isPartOf\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg\",\"datePublished\":\"2026-04-10T20:26:07+00:00\",\"author\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28\"},\"description\":\"Erfahren Sie, wie Sie UML-Zustandsmaschinen-Diagramme f\u00fcr IoT-Sensornetze entwerfen. Beherrschen Sie visuelle Logik, Fehlerbehandlung und Zustandsmodellierung f\u00fcr eingebettete Systeme.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage\",\"url\":\"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg\",\"contentUrl\":\"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg\",\"width\":1664,\"height\":928},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.archimetric.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorial zum Zustandsmaschinen-Diagramm: Erstellen klarer visueller Logik f\u00fcr IoT-Sensornetze\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.archimetric.com\/de\/#website\",\"url\":\"https:\/\/www.archimetric.com\/de\/\",\"name\":\"ArchiMetric German\",\"description\":\"EA, Dev Ops, Scrum, Agile and More\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.archimetric.com\/de\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28\",\"name\":\"archimetric@visual-paradigm.com\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g\",\"caption\":\"archimetric@visual-paradigm.com\"},\"url\":\"https:\/\/www.archimetric.com\/de\/author\/archimetricvisual-paradigm-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tutorial zum Zustandsmaschinen-Diagramm f\u00fcr IoT-Sensoren | UML-Leitfaden","description":"Erfahren Sie, wie Sie UML-Zustandsmaschinen-Diagramme f\u00fcr IoT-Sensornetze entwerfen. Beherrschen Sie visuelle Logik, Fehlerbehandlung und Zustandsmodellierung f\u00fcr eingebettete Systeme.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/","og_locale":"de_DE","og_type":"article","og_title":"Tutorial zum Zustandsmaschinen-Diagramm f\u00fcr IoT-Sensoren | UML-Leitfaden","og_description":"Erfahren Sie, wie Sie UML-Zustandsmaschinen-Diagramme f\u00fcr IoT-Sensornetze entwerfen. Beherrschen Sie visuelle Logik, Fehlerbehandlung und Zustandsmodellierung f\u00fcr eingebettete Systeme.","og_url":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/","og_site_name":"ArchiMetric German","article_published_time":"2026-04-10T20:26:07+00:00","og_image":[{"width":1664,"height":928,"url":"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg","type":"image\/jpeg"}],"author":"archimetric@visual-paradigm.com","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"archimetric@visual-paradigm.com","Gesch\u00e4tzte Lesezeit":"10\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#article","isPartOf":{"@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/"},"author":{"name":"archimetric@visual-paradigm.com","@id":"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28"},"headline":"Tutorial zum Zustandsmaschinen-Diagramm: Erstellen klarer visueller Logik f\u00fcr IoT-Sensornetze","datePublished":"2026-04-10T20:26:07+00:00","mainEntityOfPage":{"@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/"},"wordCount":1996,"commentCount":0,"image":{"@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage"},"thumbnailUrl":"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg","keywords":["academic","UML"],"articleSection":["Unified Modeling Language"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/","url":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/","name":"Tutorial zum Zustandsmaschinen-Diagramm f\u00fcr IoT-Sensoren | UML-Leitfaden","isPartOf":{"@id":"https:\/\/www.archimetric.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage"},"image":{"@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage"},"thumbnailUrl":"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg","datePublished":"2026-04-10T20:26:07+00:00","author":{"@id":"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28"},"description":"Erfahren Sie, wie Sie UML-Zustandsmaschinen-Diagramme f\u00fcr IoT-Sensornetze entwerfen. Beherrschen Sie visuelle Logik, Fehlerbehandlung und Zustandsmodellierung f\u00fcr eingebettete Systeme.","breadcrumb":{"@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#primaryimage","url":"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg","contentUrl":"https:\/\/www.archimetric.com\/de\/wp-content\/uploads\/sites\/11\/2026\/04\/state-machine-diagram-iot-sensor-networks-chalkboard-infographic.jpg","width":1664,"height":928},{"@type":"BreadcrumbList","@id":"https:\/\/www.archimetric.com\/de\/state-machine-diagram-tutorial-iot-sensor-networks\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.archimetric.com\/de\/"},{"@type":"ListItem","position":2,"name":"Tutorial zum Zustandsmaschinen-Diagramm: Erstellen klarer visueller Logik f\u00fcr IoT-Sensornetze"}]},{"@type":"WebSite","@id":"https:\/\/www.archimetric.com\/de\/#website","url":"https:\/\/www.archimetric.com\/de\/","name":"ArchiMetric German","description":"EA, Dev Ops, Scrum, Agile and More","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.archimetric.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Person","@id":"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28","name":"archimetric@visual-paradigm.com","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.archimetric.com\/de\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g","caption":"archimetric@visual-paradigm.com"},"url":"https:\/\/www.archimetric.com\/de\/author\/archimetricvisual-paradigm-com\/"}]}},"_links":{"self":[{"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/posts\/11196","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/users\/3479"}],"replies":[{"embeddable":true,"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/comments?post=11196"}],"version-history":[{"count":0,"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/posts\/11196\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/media\/11197"}],"wp:attachment":[{"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/media?parent=11196"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/categories?post=11196"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.archimetric.com\/de\/wp-json\/wp\/v2\/tags?post=11196"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}