<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Human-Usable_Textual_Notation</id>
	<title>Human-Usable Textual Notation - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Human-Usable_Textual_Notation"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Human-Usable_Textual_Notation&amp;action=history"/>
	<updated>2026-05-30T12:57:26Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Human-Usable_Textual_Notation&amp;diff=1822774&amp;oldid=prev</id>
		<title>imported&gt;TaxonKatBot: Bot: Kategorie:UML umbenannt in Kategorie:Unified Modeling Language: laut Diskussion</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Human-Usable_Textual_Notation&amp;diff=1822774&amp;oldid=prev"/>
		<updated>2022-11-18T06:05:08Z</updated>

		<summary type="html">&lt;p&gt;Bot: &lt;a href=&quot;/index.php?title=Kategorie:UML&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Kategorie:UML (Seite nicht vorhanden)&quot;&gt;Kategorie:UML&lt;/a&gt; umbenannt in &lt;a href=&quot;/index.php/Kategorie:Unified_Modeling_Language&quot; title=&quot;Kategorie:Unified Modeling Language&quot;&gt;Kategorie:Unified Modeling Language&lt;/a&gt;: laut &lt;a href=&quot;/index.php?title=Wikipedia:WikiProjekt_Kategorien/Diskussionen/2022/Mai/10&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Wikipedia:WikiProjekt Kategorien/Diskussionen/2022/Mai/10 (Seite nicht vorhanden)&quot;&gt;Diskussion&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Die &amp;#039;&amp;#039;&amp;#039;Human-Usable Textual Notation&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;HUTN&amp;#039;&amp;#039;&amp;#039;) ist in der [[Modellgetriebene Softwareentwicklung|modellgetriebenen Softwareentwicklung]] ein Standard der [[Object Management Group]] zur allgemeinen textbasierten Notation für [[Meta Object Facility|MOF]]-konforme [[Metamodell]]e. HUTN-konforme Sprachen zur Beschreibung von Metamodellen sind eine Ergänzung zur graphischen [[Unified Modeling Language|UML-Notation]] und zum textbasierten [[XML Metadata Interchange|XMI]]-Format mit dem Unterschied, dass sie trotz Textbasiertheit auf einfache Lesbarkeit für Menschen ausgerichtet sind.&lt;br /&gt;
&lt;br /&gt;
Aus jedem (MOF-konformen) Metamodell können modellspezifische HUTN-Sprachen erzeugt werden und anschließend Dokumente in dieser Sprache [[Parser|geparst]] werden. Jedes in einer HUTN-Sprache beschriebene Modell kann vollautomatisch in eine XMI-Repräsentation des Modells übersetzt werden.&lt;br /&gt;
&lt;br /&gt;
Die HUTN-Spezifikation wurde 2004 durch die Object Management Group abgeschlossen. HUTN zielt darauf ab, zu grafischen UML-Modellen eine alternative textbasierte Notation anzubieten. Derzeit gibt es nur wenige Anwendungen, die von HUTN Gebrauch machen. Ähnliche Ansätze verfolgen [[JavaScript Object Notation|JSON]] und [[YAML]].&lt;br /&gt;
&lt;br /&gt;
== Überblick ==&lt;br /&gt;
UML hat sich als allgemeine grafische Notation in der modellgetriebenen Softwareentwicklung etabliert. UML stellt unterschiedliche Diagrammtypen zur Verfügung, um die statischen oder dynamischen Aspekte von Softwaresystemen zu beschreiben. Die grafische Notation bietet oft Vorteile, um die Strukturen komplexer Systeme zu veranschaulichen. Dennoch kann es einfacher sein, Änderungen an den Modellen mit einem textbasierten Editor zu schreiben, anstatt Maus und Editor im Wechselspiel zu nutzen; vergleichbar mit anderen Routinesituationen des Computergebrauchs, in denen die Nutzung der Maus oft auch als lästig empfunden wird. Dafür wurde HUTN entwickelt. Jedes beliebige UML-Modell kann in HUTN beschrieben werden, da HUTN auf dem gleichen Metamodell wie UML beruht – dem MOF-Metamodell.&lt;br /&gt;
&lt;br /&gt;
Die für die textbasierte Notation von MOF-Modellen bereits entwickelte XMI-Notation dient dagegen dem Austausch von (UML-)Modellen zwischen Softwareapplikationen. Sie ist eine [[Extensible Markup Language|XML]]-konforme Notation, die für menschliche Anwender nur umständlich zu gebrauchen ist. Dafür ist in erster Linie der XML-typische Notationsballast in Form von öffnenden und schließenden Elementnamen verantwortlich, auf den in HUTN verzichtet wird. Dennoch lassen sich HUTN und XMI vollautomatisch ineinander umwandeln, sodass HUTN vor allem als alternative Notation für UML zu sehen ist. Die damit mögliche [[Barrierefreiheit]] der UML-Notation beispielsweise für die [[Brailleschrift]] wird derzeit nicht wahrgenommen oder diskutiert.&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
Ein Metamodell zur Personendatenverwaltung, das die Klasse &amp;#039;&amp;#039;Person&amp;#039;&amp;#039; mit Attributen &amp;#039;&amp;#039;Vorname&amp;#039;&amp;#039;, &amp;#039;&amp;#039;Nachname&amp;#039;&amp;#039; und &amp;#039;&amp;#039;Alter&amp;#039;&amp;#039; und eine Vater-Sohn-Relation definiert, spezifiziert eine HUTN-Sprache, die Worte wie &amp;#039;&amp;#039;Person&amp;#039;&amp;#039; und &amp;#039;&amp;#039;Vorname&amp;#039;&amp;#039; usw. enthält. Das folgende konkrete Modell bestehend aus zwei Personen in Vater-Sohn-Relation wird durch eine XMI-Spezifikation, ein UML-Objektdiagramm und eine HUTN-Beschreibung gleichermaßen repräsentiert.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version = &amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;XMI&amp;gt;&lt;br /&gt;
 &amp;lt;XMI.header&amp;gt;&lt;br /&gt;
  &amp;lt;XMI.model xmi.name = &amp;quot;PersonenPaket&amp;quot; xmi.version = &amp;quot;1.1&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/XMI.header&amp;gt;&lt;br /&gt;
 &amp;lt;XMI.content&amp;gt;&lt;br /&gt;
  &amp;lt;PersonenPaket xmi.id=&amp;quot;xmi-id-001&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;PersonenPaket.Person xmi.id=&amp;quot;Hans&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Vorname&amp;gt;&lt;br /&gt;
     Hans&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Vorname&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Name&amp;gt;&lt;br /&gt;
     Meier&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Name&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Alter&amp;gt;&lt;br /&gt;
     50&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Alter&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Sohn&amp;gt;&lt;br /&gt;
     &amp;lt;PersonenPaket.Person xmi.idref=&amp;quot;Peter&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Sohn&amp;gt;&lt;br /&gt;
   &amp;lt;/PersonenPaket.Person&amp;gt;&lt;br /&gt;
   &amp;lt;PersonenPaket.Person xmi.id=&amp;quot;Peter&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Vorname&amp;gt;&lt;br /&gt;
     Peter&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Vorname&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Name&amp;gt;&lt;br /&gt;
     Meier&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Name&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Alter&amp;gt;&lt;br /&gt;
     20&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Alter&amp;gt;&lt;br /&gt;
    &amp;lt;PersonenPaket.Person.Vater&amp;gt;&lt;br /&gt;
     &amp;lt;PersonenPaket.Person xmi.idref=&amp;quot;Hans&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;/PersonenPaket.Person.Vater&amp;gt;&lt;br /&gt;
   &amp;lt;/PersonenPaket.Person&amp;gt;&lt;br /&gt;
  &amp;lt;/PersonenPaket&amp;gt;&lt;br /&gt;
 &amp;lt;/XMI.content&amp;gt;&lt;br /&gt;
&amp;lt;/XMI&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;HUTN&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
PersonenPaket “id-001” {&lt;br /&gt;
 Person “Hans” {&lt;br /&gt;
  Vorname: “Hans”&lt;br /&gt;
  Nachname: “Meier”&lt;br /&gt;
  Alter: 50&lt;br /&gt;
  Sohn: Person “Peter”&lt;br /&gt;
 }&lt;br /&gt;
 Person “Peter” {&lt;br /&gt;
  Vorname: “Peter”&lt;br /&gt;
  Nachname: “Meier”&lt;br /&gt;
  Alter: 20&lt;br /&gt;
  Vater: Person “Hans”&lt;br /&gt;
 }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;UML&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[Datei:UmlOd-Beispiel-1.svg|hochkant=0.8]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://www.omg.org/cgi-bin/doc?formal/2004-08-01 Offizielle Spezifikation] durch die OMG&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Humanusable Textual Notation}}&lt;br /&gt;
[[Kategorie:Beschreibungssprache]]&lt;br /&gt;
[[Kategorie:Unified Modeling Language]]&lt;/div&gt;</summary>
		<author><name>imported&gt;TaxonKatBot</name></author>
	</entry>
</feed>