<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards Semantic Integration of Plant Behavior Models with AutomationML's Intermediate Modeling Layer</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Tanja Mayerhofer</string-name>
          <email>mayerhofer@big.tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Manuel Wimmer</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Luca Berardinelli</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Emanuel Maetzler</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nicole Schmidt</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Business Informatics Group TU Wien</institution>
          ,
          <addr-line>Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Faculty of Mechanical Engineering Otto-v.-Guericke University Magdeburg</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Institute of Software Technology &amp; Interactive Systems, CDL Flex TU Wien</institution>
          ,
          <addr-line>Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>AutomationML is an emerging IEC standard for storing and exchanging engineering data among the heterogeneous software tools involved in the engineering of production systems. One important subset of such engineering data is the plant behavior. To make this data exchangeable, AutomationML uses the existing industry data format PLCopen XML. However, at the development stages of production systems, the plant behavior is usually defined using other representation means, such as Gantt charts, impulse diagrams, and sequential function charts. To make such plant behavior models exchangeable, AutomationML introduces the so-called Intermediate Modeling Layer (IML) with corresponding transformation rules to decouple the employed modeling languages from the target format PLCopen XML. However, IML itself as well as the transformations from and to IML are only semi-formally described. This not only hinders the adoption of IML as a common language for representing plant behavior, but also renders impossible the composition of heterogeneous plant behavior models for carrying out integrated analyses of the global plant behavior. In this work, we aim at clarifying syntactical and semantical aspects of IML by proposing a metamodel and operational semantics for IML. This constitutes the first step towards formalizing and validating transformations between behavioral modeling languages currently employed in the production domain (e.g., Gantt charts), IML, and PLCopen XML. Having this foundation, we aim at utilizing IML as the semantic domain for the composition of heterogeneous plant behavior models.</p>
      </abstract>
      <kwd-group>
        <kwd>AutomationML</kwd>
        <kwd>Production Systems Engineering</kwd>
        <kwd>Executable Modeling Languages</kwd>
        <kwd>Operational Semantics</kwd>
        <kwd>Model Transformations</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        tems engineering [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. The engineering of production systems is on the one hand a
collaborative work of many different engineering disciplines, which usually use software
tools specialized for their specific purpose (e.g., plant layout planning, 3D
construction). On the other hand it has different development stages: In the beginning of the
engineering process, only a rough overall description of the production system exists,
which gets more and more detailed until the production system is fully specified and
ready to be built-up and used. It seems reasonable to expect that these software tools
are able to exchange data. However, until now much data is exchanged as PDF or
printout because of the proprietary and incompatible interfaces of the employed engineering
tools. This forces engineers to transfer data between their tools manually, which is time
consuming and error-prone. The aim of AutomationML is to avoid or at least reduce
this redundant work [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. To achieve this goal, AutomationML combines three
existing industry data formats for the storage and exchange of engineering data: (i) CAEX
as the main format for representing structural information about production systems,
(ii) COLLADA for representing geometry and kinematics of production systems, and
(iii) PLCopen XML for representing behavioral information about production systems.
      </p>
      <p>
        In this paper we focus on PLCopen XML, which is utilized by AutomationML as an
exchange format for plant behavior models [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. PLCopen XML itself intends to enable
an XML-based exchange of PLC code [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] used for programming industrial
electromechanical processes. However, at earlier development stages, usually other behavior
descriptions with different intentions are used. In particular, AutomationML provides a
selection of five behavioral modeling languages typically employed in automation
engineering [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]: Gantt charts, PERT charts, impulse diagrams, state charts, and sequential
function charts. To make plant behavior models defined with those languages
expressible in PLCopen XML, AutomationML introduces the intermediate format Intermediate
Modeling Layer (IML) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] as shown at the bottom of Fig. 1. This way, the target format
PLCopen XML is decoupled from the various formats used for defining plant behavior
models. In particular, complex transformation rules from and to PLCopen XML have
to be defined only once for IML. For each employed plant behavior modeling language
only transformation rules to the simpler intermediate layer IML need to be defined.
This facilitates the extensibility of AutomationML with new plant behavior modeling
languages. Furthermore, IML also enables the automated transformation of plant
behavior models from one representation into another. This facilitates the refinement of
plant behavior models in the consecutive development stages of production systems that
usually use different representations.
      </p>
      <p>However, IML itself as well as the mappings between IML and the various
behavioral modeling languages supported by AutomationML, and between IML and PLCopen
XML are only semi-formally described. As a consequence, the mappings from and to
IML are largely unvalidated. In particular, it is unclear whether the mappings preserve
the semantics of plant behavior models. This hinders the adoption of IML as a common
language for representing plant behavior and impedes the composition of heterogeneous
plant behavior models as needed for analyzing the global plant behavior.</p>
      <p>In this paper, we aim at clarifying syntactical and semantical aspects of IML by
proposing a metamodel and operational semantics for IML. This constitutes the first
step towards formalizing and validating transformations from and to IML. Furthermore,
…
Tool A
Tool B
Tool C</p>
      <p>Gantt Chart
PERT Chart
Impulse Diagram
…</p>
      <p>Proprietary
data formats</p>
      <p>IML</p>
      <p>Model</p>
      <p>Execution</p>
      <p>Intermediate PLCOpen XML</p>
      <p>Modeling Layer (IML) (IEC 61131-3)
we advocate the utilization of IML as a semantic integration layer for plant
behavior models as depicted at the top of Fig. 1. In particular, we propose to use IML as
the semantic domain for the plant behavior modeling languages supported by
AutomationML. In a first step, this enables the execution of plant behavior models and the
performance of dynamic validation and verification (V&amp;V) activities for such models,
such as model simulations and animation, trace analyses, etc. Going one step further,
utilizing IML as the semantic domain for plant behavior models enables the
composition of heterogeneous plant behavior models in IML and, consequently, the performance
of analyses of the global plant behavior defined in the composed models. Such analyses
comprise, for instance, the integrated simulation and animation of plant behavior
models, the analyses of consistency among a set of plant behavior models, and the validation
of refinement relationships between plant behavior models.</p>
      <p>The remainder of this paper is structured as follows: In Section 2, we discuss
stateof-the-art approaches in production systems engineering. Thereafter, in Section 3, we
detail the contribution of this work, namely a formalization of IML. Finally, Section 4
concludes the paper with an outlook on future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>State-of-the-Art</title>
      <p>
        Modeling languages are essential in planning, designing, realizing, and maintaining
production systems especially in the light of Industrie 4.0 [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. The interest in
adopting modeling languages is increasing in industrial automation, and consequently, a huge
amount of discipline-specific languages exists [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. When it comes to cross-disciplinary
work, the integration of different modeling tools is becoming an issue and potential
benefits of combining tools in tool chains may be achieved [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. In this context,
standardized modeling languages are available for the exchange and integration of behavioral
aspects. IML is used for this purpose [
        <xref ref-type="bibr" rid="ref1 ref13 ref14">1, 13, 14</xref>
        ], but there exist of course alternatives.
In the following, we discuss prominent alternative approaches with respect to the
contribution of this paper.
      </p>
      <p>
        The System Modeling Language (SysML) [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] provides sublanguages for
capturing behavior in terms of activity diagrams, state machines, sequence diagrams, and
parametrics diagrams. Transformations may be applied to translate other languages to
SysML to facilitate model exchange as well as to form an integrated system model.
SysML is a modeling standard heavily influenced by software modeling languages, but
it is also used in the automation domain (cf., e.g., [
        <xref ref-type="bibr" rid="ref11 ref12 ref19 ref3">3,11,12,19</xref>
        ]). The commonalities and
differences of SysML and AutomationML have been discussed in previous work [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
While there is definitely an overlap between SysML and AutomationML, there are also
several features in AutomationML, which are tailored to the industrial automation
domain, such as dedicated support for prototype-based system modeling [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>
        Concerning the exchange and integration of continuous behavior models, the
Functional Mockup Interface (FMI) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] enables engineering tools to import/export models
through the concept of Functional Mockup Unit (FMU) and to (co-)simulate them. It
avoids the existence of transformations between different languages. However, for
exchanging and integrating models in the very early engineering phases, FMUs may
already be focusing too specifically on (co)-simulation. For instance, for transferring the
general formulas needed for describing the system’s behavior, additional artifacts are
needed [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Furthermore, in industrial automation, a mix of continuous and discrete
models is needed. This is especially of major importance on the general systems
viewpoint. Therefore, the integration of AutomationML and FMUs has been already
considered in previous work [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] by providing a dedicated data connector for AutomationML.
      </p>
      <p>
        For modeling and exchanging discrete-event systems and sequential control
processes in the context of industrial automation, GRAFCET [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] was proposed in the past.
GRAFCET is a modeling language, which takes inspiration from Petri nets and forms
also the basis for sequential function charts (SFCs). As IML is considered a subset
of SFCs, GRAFCET also clearly influences IML. This is reflected in the operational
semantics of IML proposed in this paper.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Formalization of IML</title>
      <p>
        As described above, IML is defined by AutomationML as an intermediate
representation format for plant behavior [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Thereby, IML does not constitute a new language,
but is instead based on the sequential function charts (SFC) language defined by the
IEC 61131-3 standard [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. Therewith, IML essentially allows the definition of plant
behaviors as discrete state-based operation sequences. However, IML applies
restrictions on SFCs to simplify mappings from and to IML, and also extends SFCs to make
plant behavior models defined with different languages expressible with IML.
      </p>
      <p>In this section, we describe our formalization of IML comprising a metamodel
defining IML’s abstract syntax and an operational semantics defining IML’s execution
semantics. Thereafter, we discuss an exemplary transformation towards IML.
3.1 IML Metamodel
nnectionPoint, State.init and State.terminal, OCL contraints have to be introduced.
, Jumps, Activity.initial, Activity.terminal, Time.start, Time.end have been left out.</p>
      <p>Header inherit from IdentifyableElement (would mean that a Header can contain another Header).
ements are State, StateTransition, Activity and Variable. The class State is used to
represent the states of a system characterized by, for instance, running operations and values
of process variables. Every IML model has to have exactly one initial state and may have
a terminal state, which are indicated by the boolean flags init and terminal, respectively.</p>
      <p>A state may comprise a set of operations represented by the class Activity, which are
executed by the system within the state. Thereby, an activity may define its earliest and
latest start and end time, time delay, and duration represented by the class Time.
Transitions between states are represented by the class StateTransition. They may define
variables represented by the class Variable as guards. IML also allows the definition of
alternative and parallel state transitions. In particular, the classes SelectionDivergence and
SelectionConvergence can be used to represent alternative and exclusive disjoint state
transitions, while the classes SimultaneousDivergence and SimultaneousConvergence
can be used to represent simultaneous state transitions.</p>
      <p>Example. Figure 3 shows an exemplary IML model defining the behavior of a gripping
robot. After the initial state InitialStep, the robot transitions through the state
transition ST1 and the simultaneous divergence SD into the simultaneous states
S_InitialiseRobot1 and S_LiftSkid. These states comprise two activities each, namely the activity
DA_InitialiseRobot1 with a start time of 0, the activity TA_InitialiseRobot1 with a
duration of 6, the activity DA_LiftSkid with a start time of 7, and the activity TA_LiftSkid
with a duration of 9. Through the state transitions ST2 and ST3 the robot reaches the
synchronization states Sys_ExecuteManufacturingRobot1_1 and
Sys_ExecuteManufacS_InitialiseRobot1</p>
      <p>ST2
Sys_ExecuteManufacturing</p>
      <p>Robot1_1
Figure 4 gives an overview of the operational semantics that we defined for IML. To
capture the execution state of an IML model, we introduced the properties current and
value into the classes State and Variable, respectively. The property current indicates the
current state(s) of an IML model, while the property value captures the current value
of a variable. The steps of computation involved in the execution of IML models are
defined by means of an endogenous in-place transformation. In Fig. 4, the rules of this
transformation are depicted as operations contained by those classes that are matched
by the rules. The rule execute of the class Header is the entry point of the transformation
and defines the main control loop for executing an IML model. In particular, as shown
in Algorithm 1, it first activates the initial state of the IML model by calling the rule
activate on the initial state. Thereafter, enabled successor elements of the previously
set current state (e.g., a state transition) are fired by calling the rule fire of the class
ConnectionPoint. The rule fire of the class StateTransition is shown in Algorithm 2. It
first deactivates the current state by calling the rule deactivate. In case the target element
is a state, this state is activated. Otherwise, the successor element (e.g., a simultaneous
convergence) is fired if it is enabled. The rule activate of the class State (not shown) first
sets the state as being the current state and then executes the activities of this state by
calling the rule executeActivities. The main control loop of the rule execute continues
to fire enabled elements as long as the terminal state is reached.</p>
      <p>Example. Figure 5 shows an excerpt of the execution of the example IML model shown
in Fig. 3. For starting the execution, the rule execute is called for the single Header
element. This rule first activates the initial state InitialStep. Then, it fires the state transition</p>
      <p>Header
execute()</p>
      <p>ConnectionPoint
isEnabled() : boolean
fire()</p>
      <p>State
/currentStates current : boolean
* activate()
deactivate()
executeActivities()</p>
      <p>Variable
value : String</p>
      <p>Activity
execute()
Header::execFuigt. 4e:(O)ver{view of IML operational semantics.</p>
      <p>initial  {m Є members | m.isTypeOf(State) and m.init}
Algoirinthimti1a:lex.eacuctte(iHveaadteer)()
1 begfinoreach s Є currentStates do
2 initiaflorfema2chmemcbeЄrs j{mc:isTЄypemOefm(Sbtaeter)s^m|:inictg.isTypeOf(Connection) and m.source = s}
3 initial:aictfivate()</p>
      <p>cfa.lstearget.isEnabled() then
4 terminate
5 while :termcin.afteidroe()
6 } foreach s 2 currentStates do
7 foreach c 2 fm 2 members j m:isTypeOf(Connection)^m:source = sg do</p>
      <p>if c:taanrgseti:itsEinoanbl:ed:(f)tihrene() {
89 StateTcr:target:fire()</p>
      <p>if source.isTypeOf(State do
10 if tts a2rfcgse2tc.urdreenatSctattiesvjacst:teer(m)inalg then
11 terminate true
if target.isTypeOf(State) do</p>
      <p>target.activate()
Algoerilthsme 2i:ffiret(SatartgeTertan.siitsioEn)nabled() then
1 begin target.fire()
2 } if source:isTypeOf(State)^source:current then
3 source:deactivate()
4 Stifattarege:t.:isaTycpteOifv(Satattee)(th)en{
5 ctuarrgerte:ancttivat=e()true
6 else if target:isEnabled() then
7 target:fire()
ST1, which in turn fires the simultaneous divergence SD. This results in the
deactivation of the initial state InitialStep, and the activation of the states S_InitialiseRobot1 and
S_LiftSkid, which execute their contained activities by calling the rule executeActivities.</p>
      <p>H : Header</p>
      <p>InitialStep :</p>
      <p>State</p>
      <p>ST1 :
StateTransition</p>
      <p>S_LiftSkid :</p>
      <p>State</p>
      <p>SD :
Simultaneous</p>
      <p>Divergence</p>
      <p>Implementation. We have implemented the operational semantics for IML using the
language and modeling workbench GEMOC studio4. The complete implementation
may be found in our project repository5.
The presented formalization enables the execution of plant behavior models defined
with IML, as well as the performance of dynamic V&amp;V activities for such models.</p>
      <p>GEMOC studio provides, for instance, model debugging, model animation, and trace
exploration tools that can be utilized for IML models directly based on the defined
operational semantics. However, to utilize IML as a semantic domain for other commonly
used plant behavior modeling languages, also the transformations from and to IML have
to be formalized. We are currently in the process of developing such formalizations. In
the following, we discuss as an example the transformation of Gantt charts.</p>
      <p>Gantt charts are commonly used in the early phases of plant engineering processes
to represent timing aspects of manufacturing processes. They offer two main types of
modeling concepts: activities represented as bars, and predecessor-successor
relationships between activities represented as connections between bars. For activities, a start
time, end time, and duration relative to a global clock may be defined in addition.</p>
      <p>Figure 6 shows the Gantt chart corresponding to the IML model depicted in Fig. 3.</p>
      <p>For each of the bars defined in a Gantt chart, one state is created in the IML model
4 http://gemoc.org/studio
5 https://github.com/moliz/moliz.gemoc
(1) Head.execute()
effect: InitialStep.current = true
(2) ST1.fire()
(3) SD.fire()
effect: S_InitialiseRobot1.current = true, S_LiftS
(4) ST2.fire()
effect: S_InitialiseRobot1.current = true, S_LiftS
TerminalStep</p>
      <p>ST5</p>
      <p>Lift Skid</p>
      <p>Initialise Robot 1
Execute Manufacturing Robot 1
0
(S_InitialiseRobot1, S_LiftSkid, S_ExecuteManufacturingRobot1). Two activities are
added to each created state: The first activity represents the start time of the bar (e.g.,
DA_InitialiseRobot1) and the second activity represents the duration of the bar
ensuring the correct deactivation of the state (e.g., TA_InitialiseRobot1). The start time and
duration of bars have to be converted from a global clock used in Gantt charts to a
local clock used in IML. If a Gantt bar has multiple successors, a simultaneous
divergence is created in the IML model (SD). Similarly, a simultaneous convergence (SC) is
created for bars that have multiple predecessors. In addition to the simultaneous
convergence, synchronization states are created for each predecessor state
(Sys_ExecuteManufacturingRobot1_1 and Sys_ExecuteManufacturingRobot1_2). Furthermore, one
initial state InitialStep and one terminal state TerminalStep are created. The created
elements are connected with state transitions (ST1-ST5).
4</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions and Future Work</title>
      <p>In this paper, we have introduced a formalization of the Intermediate Modeling Layer
(IML) of AutomationML comprising a metamodel and an operational semantics.
Furthermore, we have proposed the utilization of IML as a semantic domain for
heterogeneous plant behavior models.</p>
      <p>
        Currently, we are working on the refinement of the operational semantics of IML,
such as the introduction of timing aspects. Furthermore, we are in the process of
formalizing and validating transformations between IML and the various plant behavior
modeling languages supported by AutomationML based on the semi-formal
descriptions given in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Based on these foundations, our next step will be the investigation
of model composition possibilities provided by AutomationML. In particular, we will
investigate how heterogeneous plant behavior models can be syntactically integrated by
means of the linking mechanisms provided by the CAEX format of AutomationML (cf.
Chap. 6 of [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]) and semantically integrated by means of the developed transformations
to IML. The ultimate goal of these efforts is to enable the performance of analyses of
the global plant behavior defined by a set of heterogeneous plant behavior models.
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgment</title>
      <p>This work has been supported by the Christian Doppler Forschungsgesellschaft, the
BMWFW (Austria) and the COST Action MPM4CPS (IC1404).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Alvarez</surname>
            ,
            <given-names>M.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sarachaga</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burgos</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Estévez</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marcos</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A Methodological Approach to Model-Driven Design and Development of Automation Systems</article-title>
          .
          <source>IEEE Transactions on Automation Science and Engineering PP(99)</source>
          ,
          <fpage>1</fpage>
          -
          <lpage>13</lpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. AutomationML Consortium:
          <article-title>Whitepaper AutomationML Part 4 (</article-title>
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Barbieri</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kernschmidt</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fantuzzi</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vogel-Heuser</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>A SysML based design pattern for the high-level development of mechatronic systems to enhance re-usability</article-title>
          . In: IFAC World Congress (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Barth</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Drath</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fay</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zimmer</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eckert</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Evaluation of the openness of automation tools for interoperability in engineering tool chains</article-title>
          . In: ETFA (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Berardinelli</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Biffl</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lüder</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mätzler</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mayerhofer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wimmer</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wolny</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Cross-disciplinary engineering with AutomationML and SysML</article-title>
          .
          <source>Automatisierungstechnik</source>
          <volume>64</volume>
          (
          <issue>4</issue>
          ),
          <fpage>253</fpage>
          -
          <lpage>269</lpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Berardinelli</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Biffl</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mätzler</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mayerhofer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wimmer</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Model-based coevolution of production systems and their libraries with AutomationML</article-title>
          . In: ETFA (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Blochwitz</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Otter</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arnold</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bausch</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Elmqvist</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Junghanns</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mauß</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Monteiro</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Neidhold</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Neumerkel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , et al.:
          <article-title>The functional mockup interface for tool independent exchange of simulation models</article-title>
          .
          <source>In: Modelica Conference</source>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>David</surname>
          </string-name>
          , R.:
          <article-title>Grafcet: A powerful tool for specification of logic controllers</article-title>
          .
          <source>IEEE Transactions on Control Systems Technology</source>
          <volume>3</volume>
          (
          <issue>3</issue>
          ),
          <fpage>253</fpage>
          -
          <lpage>268</lpage>
          (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Drath</surname>
            ,
            <given-names>R</given-names>
          </string-name>
          . (ed.): Datenaustausch in der Anlagenplanung mit AutomationML. Springer (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. International Electrotechnical Commission:
          <article-title>IEC 62714-1 - Engineering data exchange format for use in industrial automation systems engineering - Automation markup language - Part 1: Architecture and general requirements (</article-title>
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Kernschmidt</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barbieri</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fantuzzi</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vogel-Heuser</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Possibilities and Challenges of an Integrated Development Using a Combined SysML-Model and Corresponding Domain Specific Models</article-title>
          . In: MIM (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Kerzhner</surname>
            ,
            <given-names>A.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paredis</surname>
            ,
            <given-names>C.J.J.:</given-names>
          </string-name>
          <article-title>Combining SysML and Model Transformations to Support Systems Engineering Analysis</article-title>
          .
          <source>ECEASST 42</source>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Lüder</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Estévez</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hundt</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marcos</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Automatic transformation of logic models within engineering of embedded mechatronical units</article-title>
          .
          <source>The International Journal of Advanced Manufacturing Technology</source>
          <volume>54</volume>
          (
          <issue>9-12</issue>
          ),
          <fpage>1077</fpage>
          -
          <lpage>1089</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Lüder</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schmidt</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosendahl</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Data exchange toward PLC programming and virtual commissioning: Is AutomationML an appropriate data exchange format? In: INDIN (</article-title>
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Lüder</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schmidt</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yemenicioglu</surname>
          </string-name>
          , E.:
          <article-title>Herstellerunabhängiger Austausch von Verhaltensmodellen mittels AutomationML</article-title>
          . In: Automation (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>OMG: Systems Modeling Language (SysML)</surname>
          </string-name>
          (
          <year>2015</year>
          ), www.omg.org/spec/SysML
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17. PLCopen Association: PLCopen XML (
          <year>2012</year>
          ), http://www.plcopen.org
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18. VDI:
          <article-title>Statusreport Referenzarchitekturmodell Industrie 4.0</article-title>
          (
          <issue>RAMI4</issue>
          .0). www.vdi.de/ industrie40 (April
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Vogel-Heuser</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schütz</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Frank</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Legat</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Model-driven engineering of Manufacturing Automation Software Projects - A SysML-based approach</article-title>
          .
          <source>Mechatronics</source>
          <volume>24</volume>
          (
          <issue>7</issue>
          ),
          <fpage>883</fpage>
          -
          <lpage>897</lpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Vyatkin</surname>
          </string-name>
          , V.:
          <article-title>Software engineering in industrial automation: State-of-the-art review</article-title>
          .
          <source>IEEE Transactions on Industrial Informatics</source>
          <volume>9</volume>
          (
          <issue>3</issue>
          ),
          <fpage>1234</fpage>
          -
          <lpage>1249</lpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>