Human-Usable Textual Notation

from Wikipedia, the free encyclopedia

The Human-Usable Textual Notation ( HUTN ) is a standard of the Object Management Group in model-driven software development for general text-based notation for MOF -compliant metamodels . HUTN-compliant languages ​​for describing metamodels are a supplement to the graphical UML notation and the text-based XMI format, with the difference that, despite being text-based, they are geared towards easy readability for people.

Model-specific HUTN languages ​​can be generated from each (MOF-compliant) metamodel and documents in this language can then be parsed . Any model described in a HUTN language can be translated fully automatically into an XMI representation of the model.

The HUTN specification was finalized in 2004 by the Object Management Group. HUTN aims to offer an alternative text-based notation to graphic UML models. There are currently only a few applications that make use of HUTN. JSON and YAML take similar approaches .

overview

UML has established itself as a general graphic notation in model-driven software development. UML provides different types of diagrams to describe the static or dynamic aspects of software systems. Graphic notation is often useful for illustrating the structure of complex systems. However, it can be easier to write changes to the models with a text-based editor instead of using the mouse and editor in interplay; comparable to other routine situations of computer use, in which the use of the mouse is often perceived as a nuisance. That is why HUTN was developed. Any UML model can be described in HUTN, since HUTN is based on the same metamodel as UML - the MOF metamodel.

The XMI notation already developed for the text-based notation of MOF models, on the other hand, is used for the exchange of (UML) models between software applications. It is an XML -compliant notation that human users find difficult to use. This is primarily due to the XML-typical notation ballast in the form of opening and closing element names, which is not used in HUTN. Nevertheless, HUTN and XMI can be converted into one another fully automatically, so that HUTN can primarily be seen as an alternative notation for UML. The accessibility of the UML notation, for example for Braille , is currently not recognized or discussed.

example

A metamodel for personal data management, which defines the class Person with attributes first name , last name and age and a father-son relation, specifies a HUTN language that contains words such as person and first name etc. The following concrete model consisting of two people in father-son relation is represented by an XMI specification, a UML object diagram and a HUTN description.

<?xml version = "1.0"?>
<XMI>
 <XMI.header>
  <XMI.model xmi.name = "PersonenPaket" xmi.version = "1.1"/>
 </XMI.header>
 <XMI.content>
  <PersonenPaket xmi.id="xmi-id-001">
   <PersonenPaket.Person xmi.id="Hans">
    <PersonenPaket.Person.Vorname>
     Hans
    </PersonenPaket.Person.Vorname>
    <PersonenPaket.Person.Name>
     Meier
    </PersonenPaket.Person.Name>
    <PersonenPaket.Person.Alter>
     50
    </PersonenPaket.Person.Alter>
    <PersonenPaket.Person.Sohn>
     <PersonenPaket.Person xmi.idref="Peter">
    </PersonenPaket.Person.Sohn>
   </PersonenPaket.Person>
   <PersonenPaket.Person xmi.id="Peter">
    <PersonenPaket.Person.Vorname>
     Peter
    </PersonenPaket.Person.Vorname>
    <PersonenPaket.Person.Name>
     Meier
    </PersonenPaket.Person.Name>
    <PersonenPaket.Person.Alter>
     20
    </PersonenPaket.Person.Alter>
    <PersonenPaket.Person.Vater>
     <PersonenPaket.Person xmi.idref="Hans">
    </PersonenPaket.Person.Vater>
   </PersonenPaket.Person>
  </PersonenPaket>
 </XMI.content>
</XMI>

HUTN


PersonenPaket id-001 {
 Person Hans {
  Vorname: Hans
  Nachname: Meier
  Alter: 50
  Sohn: Person Peter
 }
 Person Peter {
  Vorname: Peter
  Nachname: Meier
  Alter: 20
  Vater: Person Hans
 }
}

UML

UmlOd-example-1.svg

Web links