Mappingbeispiele

Beispiel 1

Dieses Beispiel zeigt, wie eine Tabelle mit einer Objektdefinition verbunden wird und wie (Wert-)Eigenschaften mit ARIS-Attributen verbunden werden. Zudem ist es möglich, ein overview-Modell anzulegen und eine Ausprägung jedes Objekts aus dieser Tabelle im Modell zu platzieren. Eine Reference- oder ReferenceArray-Eigenschaft kann mit einer Kante, einer Hinterlegung oder einer Kante plus Hinterlegung verbunden werden. Eine Werteigenschaft kann mit einer Kante, einer Hinterlegung oder beidem gleichzeitig verbunden werden. Werteigenschaften können einer angelegten Kante statt dem Objekt selbst zugeordnet werden.

<table name="APPLICATIONGROUP" arisgroupname="Application groups" aristype="OT_APPL_SYS_CLS" isgroup="true" overview-model="MT_APPL_SYS_TYPE_DGM,ST_APPL_SYS_CLS">

<attr alfabet="name" aris="AT_NAME" />

<attr alfabet="description" aris="AT_DESC" />

<attr alfabet="a_size" aris="" /> <!-- not mapped-->

...

<cxn property="belongsto" cxntype="CT_CAN_SUBS_2" srctotarget="false" />

<!-- overview-model="ST_APPL_SYS_CLS" means: show in overview model with its CXN and the given symbol -->

<!-- an attr element within a cxn element maps an attribute from the Alfabet table to the cxn -->

<cxn property="belongsto" cxntype="CT_CAN_SUBS_2" srctotarget="false" connected-objtype="OT_APPL_SYS_CLS" overview-model="ST_APPL_SYS_CLS" ordernum="1" >

<attr alfabet="refstr" aris="AT_EXTERNAL_ID" />

</cxn>

<cxn property="applications" cxntype="CT_BELONGS_TO_CLS" srctotarget="true" >

<!-- "each" would mean 1 assignment per child, all=assign them all to the parent in one model -->

<!-- add-parent: assignment contains occ of the parent. This needs: parent-symbol="ST_APPL_SYS_CLS" -->

<assign type="all" model="MT_APPL_SYS_TYPE_DGM" add-parent="true" parent-symbol="ST_APPL_SYS_CLS" child-symbol="ST_APPL_SYS_TYPE" />

</cxn>

<cxn property="processes" /> <!-- not mapped-->

</table>

Beispiel 2

Dieses Beispiel zeigt das Mapping zu einem Objekt mit einem hinterlegten Modell. Zudem wird im Zielmodell eine Objektausprägung angelegt.

<table name="BUSINESSPROCESS" arisgroupname="Business processes" aristype="OT_FUNC" isgroup="true" overview-model="MT_VAL_ADD_CHN_DGM,ST_VAL_ADD_CHN_SML_2" check-master="ARIS_GUID" >

<!-- "each" would mean 1 assignment per child, all=assign them all to the parent in one model -->

<!-- add-parent: assignment contains occ of the parent. This needs: parent-symbol="ST_APPL_SYS_CLS" -->

<assign type="each" model="MT_FUNC_ALLOC_DGM" add-parent="true" parent-symbol="ST_VAL_ADD_CHN_SML_2" child-symbol="ST_FUNC" />

<attr alfabet="name" aris="AT_NAME" />

<attr alfabet="shortname" aris="AT_REM" />

...

<cxn property="belongsto" srctotarget="false" cxntype="CT_IS_PRCS_ORNT_SUPER" overview-model="ST_VAL_ADD_CHN_SML_2" /> <!-- BusinessProcess–>

<createocc property="model" symbol="ST_VAL_ADD_CHN_SML_2" forceexist="false" /> <!-- creates occ in the model if the model exists -->

<cxn property="executingorganizations" srctotarget="false" cxntype="CT_EXEC_1" forceexist="true" assigned-model="ST_ORG_UNIT_2" />

<cxn property="applications" srctotarget="false" cxntype="CT_CAN_SUPP_1" forceexist="true" assigned-model="ST_APPL_SYS_TYPE"/>

...

</table>

Beispiel 3

Im folgenden Beispiel wird die foreignattr-Eigenschaft, die eine Liste mit attr-Eigenschaften ist, akzeptiert. Diese Liste definiert die zu importierenden Attribute. In diesem Beispiel wird die Verwendung von Fremdattributen und Attribut-Bedingungen verdeutlicht. Fremdattribute werden aus der zusätzlichen Alfabet-Tabelle eingelesen.

<table name="APPLICATION" arisgroupname="Application" aristype="OT_APPL_SYS_TYPE" isgroup="false" overview-model="MT_APPL_SYS_TYPE_DGM,ST_APPL_SYS_TYPE">

<foreignattr table="TIMESTATUS" property="Owner"> <!-- Select * from TIMESTATUS where Owner = '<our AlfabetID>'. Will be written after processing "normal" attr-Elements, so will probably overwrite them -->

<attr alfabet="StartDate" condition="Status" value="Evaluation" aris="AT_EVALUATION_START" />

<attr alfabet="EndDate" condition="Status" value="Evaluation" aris="AT_EVALUATION_END" />

<attr alfabet="StartDate" condition="Status" value="Pilot" aris="AT_TO_BE_PHASED_IN_START" />

<attr alfabet="EndDate" condition="Status" value="Pilot" aris="AT_TO_BE_PHASED_IN_END" />

<attr alfabet="StartDate" condition="Status" value="Production" aris="AT_STANDARD_START" />

<attr alfabet="EndDate" condition="Status" value="Production" aris="AT_STANDARD_END" />

<attr alfabet="StartDate" condition="Status" value="Limited Production" aris="" /> <!-- tbd -->

<attr alfabet="EndDate" condition="Status" value="Limited Production" aris="" />

<attr alfabet="StartDate" condition="Status" value="Retired - Shut Down" aris="AT_TO_BE_PHASED_OUT_START" />

<attr alfabet="EndDate" condition="Status" value="Retired - Shut Down" aris="AT_TO_BE_PHASED_OUT_END" />

</foreignattr>

<attr alfabet="Name" aris="AT_NAME" />

<attr alfabet="ObjectState" aris="AT_REM" />

<attr alfabet="Description" aris="AT_DESC" />

...

<cxn property="NextVersion" cxntype="CT_IS_PRED_OF" srctotarget="true" forceexist="true" connected-objtype="OT_APPL_SYS_TYPE" overview-model="ST_APPL_SYS_TYPE"/>

<cxn property="ApplicationGroups" cxntype="CT_BELONGS_TO_CLS" srctotarget="true" forceexist="true" connected-objtype="OT_APPL_SYS_CLS" />

<cxn property="ICTObject" cxntype="CT_GENERAL" srctotarget="false" forceexist="true" connected-objtype="OT_APPL_SYS_TYPE" overview-model="ST_APPL_SYS_TYPE"/>

<cxn property="Products" />

...

</table>