<?xml version="1.0" encoding="UTF-8"?>
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.2">
  <classes>
    <class id="FunctionalCI" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>functionalci</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field>finalclass</db_final_class_field>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-server.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="name" xsi:type="AttributeString">
          <sql>name</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="description" xsi:type="AttributeText">
          <sql>description</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="org_id" xsi:type="AttributeExternalKey">
          <sql>org_id</sql>
          <target_class>Organization</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="organization_name" xsi:type="AttributeExternalField">
          <extkey_attcode>org_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="business_criticity" xsi:type="AttributeEnum">
          <sort_type>rank</sort_type>
          <values>
            <value id="high">
              <code>high</code>
              <rank>10</rank>
            </value>
            <value id="medium">
              <code>medium</code>
              <rank>20</rank>
            </value>
            <value id="low">
              <code>low</code>
              <rank>30</rank>
            </value>
          </values>
          <sql>business_criticity</sql>
          <default_value>low</default_value>
          <is_null_allowed>true</is_null_allowed>
          <display_style>list</display_style>
        </field>
        <field id="move2production" xsi:type="AttributeDate">
          <sql>move2production</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="contacts_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkContactToFunctionalCI</linked_class>
          <ext_key_to_me>functionalci_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>contact_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="documents_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkDocumentToFunctionalCI</linked_class>
          <ext_key_to_me>functionalci_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>document_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="applicationsolution_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkApplicationSolutionToFunctionalCI</linked_class>
          <ext_key_to_me>functionalci_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>applicationsolution_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="softwares_list" xsi:type="AttributeLinkedSet">
          <linked_class>SoftwareInstance</linked_class>
          <ext_key_to_me>system_id</ext_key_to_me>
          <edit_mode>in_place</edit_mode>
          <tracking_level>all</tracking_level>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
            <item id="description">
              <rank>50</rank>
            </item>
            <item id="contacts_list">
              <rank>60</rank>
            </item>
            <item id="documents_list">
              <rank>70</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>90</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="finalclass">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </list>
      </presentation>
      <methods>
        <method id="DisplayBareRelations">
          <static>false</static>
          <access>public</access>
          <type>Overload-cmdbAbstractObject</type>
          <code><![CDATA[	function DisplayBareRelations(WebPage $oPage, $bEditMode = false)
	{
		parent::DisplayBareRelations($oPage, $bEditMode);

		$sTicketListAttCode = 'tickets_list';

		if (MetaModel::IsValidAttCode(get_class($this), $sTicketListAttCode))
		{
			// Display one list per leaf class (the only way to display the status as of now)

			$oAttDef = MetaModel::GetAttributeDef(get_class($this), $sTicketListAttCode);
			$sLnkClass = $oAttDef->GetLinkedClass();
			$sExtKeyToMe = $oAttDef->GetExtKeyToMe();
			$sExtKeyToRemote = $oAttDef->GetExtKeyToRemote();

			$iTotal = 0;
			$aSearches = array();

			foreach (MetaModel::EnumChildClasses('Ticket') as $sSubClass)
			{
				if (!MetaModel::HasChildrenClasses($sSubClass))
				{
					$sStateAttCode = MetaModel::GetStateAttributeCode($sSubClass);
					if ($sStateAttCode != '')
					{
					    // Todo: base the search condition on operational_status = 'ongoing' for a more flexible behavior
						$oSearch = DBSearch::FromOQL("SELECT $sSubClass AS t JOIN $sLnkClass AS lnk ON lnk.$sExtKeyToRemote = t.id WHERE lnk.$sExtKeyToMe = :myself AND t.$sStateAttCode NOT IN ('rejected', 'resolved', 'closed') AND lnk.impact_code != 'not_impacted'", array('myself' => $this->GetKey()));
						$aSearches[$sSubClass] = $oSearch;

						$oSet = new DBObjectSet($oSearch);
						$oSet->SetShowObsoleteData(utils::ShowObsoleteData());
						$iTotal += $oSet->Count();
					}
				}
			}

			$sCount = ($iTotal > 0) ? ' ('.$iTotal.')' : '';
			$oPage->SetCurrentTab('Class:FunctionalCI/Tab:OpenedTickets', Dict::S('Class:FunctionalCI/Tab:OpenedTickets').$sCount);

			foreach ($aSearches as $sSubClass => $oSearch)
			{
				$sBlockId = __class__.'_opened_'.$sSubClass;
				$oBlock = new DisplayBlock($oSearch, 'list', false);
				$oBlock->Display($oPage, $sBlockId, array(
				    'menu' => false,
				    'panel_title' => MetaModel::GetName($sSubClass),
				    'panel_icon' => MetaModel::GetClassIcon($sSubClass, false)
				    )
				);
			}
		}
	}]]></code>
        </method>
      </methods>
      <relations>
        <relation id="impacts">
          <neighbours>
            <neighbour id="contact">
              <attribute>contacts_list</attribute>
              <direction>down</direction>
            </neighbour>
            <neighbour id="applicationsolution">
              <attribute>applicationsolution_list</attribute>
            </neighbour>
            <neighbour id="softwareinstance">
              <attribute>softwares_list</attribute>
            </neighbour>
          </neighbours>
        </relation>
      </relations>
    </class>
    <class id="PhysicalDevice" _delta="define">
      <parent>FunctionalCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>physicaldevice</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="location_name"/>
          </complementary_attributes>
        </naming>
        <fields_semantic>
          <state_attribute>status</state_attribute>
        </fields_semantic>
        <style>
          <icon>../../images/icons/icons8-server.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="location_id"/>
            <attribute id="location_name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition><![CDATA[status = 'obsolete']]></condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="serialnumber" xsi:type="AttributeString">
          <sql>serialnumber</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="location_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT l FROM Location AS l JOIN Organization AS root ON l.org_id=root.id JOIN Organization AS child ON child.parent_id BELOW root.id WHERE child.id= :this->org_id]]></filter>
          <dependencies>
            <attribute id="org_id"/>
          </dependencies>
          <sql>location_id</sql>
          <target_class>Location</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
          <allow_target_creation>false</allow_target_creation>
        </field>
        <field id="location_name" xsi:type="AttributeExternalField">
          <extkey_attcode>location_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="status" xsi:type="AttributeEnum">
          <sort_type>rank</sort_type>
          <values>
            <value id="production">
              <code>production</code>
              <rank>30</rank>
            </value>
            <value id="implementation">
              <code>implementation</code>
              <rank>20</rank>
            </value>
            <value id="stock">
              <code>stock</code>
              <rank>10</rank>
            </value>
            <value id="obsolete">
              <code>obsolete</code>
              <rank>40</rank>
            </value>
          </values>
          <sql>status</sql>
          <default_value>production</default_value>
          <is_null_allowed>true</is_null_allowed>
          <display_style>list</display_style>
        </field>
        <field id="brand_id" xsi:type="AttributeExternalKey">
          <sql>brand_id</sql>
          <target_class>Brand</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="brand_name" xsi:type="AttributeExternalField">
          <extkey_attcode>brand_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="model_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT Model WHERE brand_id=:this->brand_id AND type=:this->finalclass]]></filter>
          <dependencies>
            <attribute id="brand_id"/>
          </dependencies>
          <sql>model_id</sql>
          <target_class>Model</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="model_name" xsi:type="AttributeExternalField">
          <extkey_attcode>model_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="asset_number" xsi:type="AttributeString">
          <sql>asset_number</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="purchase_date" xsi:type="AttributeDate">
          <sql>purchase_date</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="end_of_warranty" xsi:type="AttributeDate">
          <sql>end_of_warranty</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
            <item id="asset_number">
              <rank>90</rank>
            </item>
            <item id="move2production">
              <rank>100</rank>
            </item>
            <item id="purchase_date">
              <rank>110</rank>
            </item>
            <item id="end_of_warranty">
              <rank>120</rank>
            </item>
            <item id="description">
              <rank>130</rank>
            </item>
            <item id="contacts_list">
              <rank>140</rank>
            </item>
            <item id="documents_list">
              <rank>150</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="location_id">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
            <item id="asset_number">
              <rank>90</rank>
            </item>
            <item id="move2production">
              <rank>100</rank>
            </item>
            <item id="purchase_date">
              <rank>110</rank>
            </item>
            <item id="end_of_warranty">
              <rank>120</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="finalclass">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="ConnectableCI" _delta="define">
      <parent>PhysicalDevice</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>connectableci</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="location_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-server.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="networkdevice_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkConnectableCIToNetworkDevice</linked_class>
          <ext_key_to_me>connectableci_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>networkdevice_id</ext_key_to_remote>
          <duplicates>true</duplicates>
        </field>
        <field id="physicalinterface_list" xsi:type="AttributeLinkedSet">
          <linked_class>PhysicalInterface</linked_class>
          <ext_key_to_me>connectableci_id</ext_key_to_me>
          <edit_mode>in_place</edit_mode>
          <tracking_level>all</tracking_level>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
            <item id="asset_number">
              <rank>90</rank>
            </item>
            <item id="move2production">
              <rank>100</rank>
            </item>
            <item id="purchase_date">
              <rank>110</rank>
            </item>
            <item id="end_of_warranty">
              <rank>120</rank>
            </item>
            <item id="description">
              <rank>130</rank>
            </item>
            <item id="contacts_list">
              <rank>140</rank>
            </item>
            <item id="documents_list">
              <rank>150</rank>
            </item>
            <item id="networkdevice_list">
              <rank>160</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
            <item id="asset_number">
              <rank>90</rank>
            </item>
            <item id="move2production">
              <rank>100</rank>
            </item>
            <item id="purchase_date">
              <rank>110</rank>
            </item>
            <item id="end_of_warranty">
              <rank>120</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="finalclass">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
          </items>
        </list>
      </presentation>
      <methods/>
    </class>
    <class id="DatacenterDevice" _delta="define">
      <parent>ConnectableCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>datacenterdevice</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="location_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-server.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="rack_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT Rack WHERE location_id= :this->location_id]]></filter>
          <dependencies>
            <attribute id="location_id"/>
          </dependencies>
          <sql>rack_id</sql>
          <target_class>Rack</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
          <allow_target_creation>false</allow_target_creation>
        </field>
        <field id="rack_name" xsi:type="AttributeExternalField">
          <extkey_attcode>rack_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="enclosure_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT Enclosure WHERE rack_id= :this->rack_id]]></filter>
          <dependencies>
            <attribute id="rack_id"/>
          </dependencies>
          <sql>enclosure_id</sql>
          <target_class>Enclosure</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
          <allow_target_creation>false</allow_target_creation>
        </field>
        <field id="enclosure_name" xsi:type="AttributeExternalField">
          <extkey_attcode>enclosure_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="nb_u" xsi:type="AttributeInteger">
          <sql>nb_u</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="managementip" xsi:type="AttributeIPAddress">
          <sql>managementip</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="powerA_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT PowerConnection WHERE location_id= :this->location_id]]></filter>
          <dependencies>
            <attribute id="location_id"/>
          </dependencies>
          <sql>powera_id</sql>
          <target_class>PowerConnection</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
          <allow_target_creation>false</allow_target_creation>
        </field>
        <field id="powerA_name" xsi:type="AttributeExternalField">
          <extkey_attcode>powerA_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="powerB_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT PowerConnection WHERE location_id= :this->location_id]]></filter>
          <dependencies>
            <attribute id="location_id"/>
          </dependencies>
          <sql>powerB_id</sql>
          <target_class>PowerConnection</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
          <allow_target_creation>false</allow_target_creation>
        </field>
        <field id="powerB_name" xsi:type="AttributeExternalField">
          <extkey_attcode>powerB_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="fiberinterfacelist_list" xsi:type="AttributeLinkedSet">
          <linked_class>FiberChannelInterface</linked_class>
          <ext_key_to_me>datacenterdevice_id</ext_key_to_me>
          <edit_mode>in_place</edit_mode>
          <tracking_level>all</tracking_level>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
        <field id="san_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkSanToDatacenterDevice</linked_class>
          <ext_key_to_me>datacenterdevice_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>san_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="redundancy" xsi:type="AttributeRedundancySettings">
          <sql>redundancy</sql>
          <relation_code>impacts</relation_code>
          <from_class>PowerConnection</from_class>
          <neighbour_id>datacenterdevice</neighbour_id>
          <enabled>true</enabled>
          <enabled_mode>fixed</enabled_mode>
          <min_up>1</min_up>
          <min_up_type>count</min_up_type>
          <min_up_mode>fixed</min_up_mode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="rack_id">
              <rank>60</rank>
            </item>
            <item id="enclosure_id">
              <rank>70</rank>
            </item>
            <item id="brand_id">
              <rank>80</rank>
            </item>
            <item id="model_id">
              <rank>90</rank>
            </item>
            <item id="nb_u">
              <rank>100</rank>
            </item>
            <item id="serialnumber">
              <rank>110</rank>
            </item>
            <item id="asset_number">
              <rank>120</rank>
            </item>
            <item id="powerA_id">
              <rank>130</rank>
            </item>
            <item id="powerB_id">
              <rank>140</rank>
            </item>
            <item id="move2production">
              <rank>150</rank>
            </item>
            <item id="purchase_date">
              <rank>160</rank>
            </item>
            <item id="end_of_warranty">
              <rank>170</rank>
            </item>
            <item id="description">
              <rank>180</rank>
            </item>
            <item id="contacts_list">
              <rank>190</rank>
            </item>
            <item id="documents_list">
              <rank>200</rank>
            </item>
            <item id="networkdevice_list">
              <rank>210</rank>
            </item>
            <item id="fiberinterfacelist_list">
              <rank>220</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="managementip">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
            <item id="asset_number">
              <rank>90</rank>
            </item>
            <item id="powerA_id">
              <rank>100</rank>
            </item>
            <item id="powerB_id">
              <rank>110</rank>
            </item>
            <item id="move2production">
              <rank>120</rank>
            </item>
            <item id="purchase_date">
              <rank>130</rank>
            </item>
            <item id="end_of_warranty">
              <rank>140</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="finalclass">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="NetworkDevice" _delta="define">
      <parent>DatacenterDevice</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>networkdevice</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="networkdevicetype_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-switch.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="networkdevicetype_id" xsi:type="AttributeExternalKey">
          <sql>networkdevicetype_id</sql>
          <target_class>NetworkDeviceType</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="networkdevicetype_name" xsi:type="AttributeExternalField">
          <extkey_attcode>networkdevicetype_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="connectablecis_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkConnectableCIToNetworkDevice</linked_class>
          <ext_key_to_me>networkdevice_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>connectableci_id</ext_key_to_remote>
          <duplicates>true</duplicates>
        </field>
        <field id="iosversion_id" xsi:type="AttributeExternalKey">
          <sql>iosversion_id</sql>
          <target_class>IOSVersion</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="iosversion_name" xsi:type="AttributeExternalField">
          <extkey_attcode>iosversion_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="ram" xsi:type="AttributeString">
          <sql>ram</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="contacts_list">
              <rank>10</rank>
            </item>
            <item id="documents_list">
              <rank>20</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>35</rank>
            </item>
            <item id="physicalinterface_list">
              <rank>40</rank>
            </item>
            <item id="connectablecis_list">
              <rank>50</rank>
            </item>
            <item id="col:col1">
              <rank>80</rank>
              <items>
                <item id="fieldset:Server:baseinfo">
                  <rank>10</rank>
                  <items>
                    <item id="name">
                      <rank>10</rank>
                    </item>
                    <item id="org_id">
                      <rank>20</rank>
                    </item>
                    <item id="status">
                      <rank>30</rank>
                    </item>
                    <item id="business_criticity">
                      <rank>40</rank>
                    </item>
                    <item id="location_id">
                      <rank>50</rank>
                    </item>
                    <item id="rack_id">
                      <rank>60</rank>
                    </item>
                    <item id="enclosure_id">
                      <rank>70</rank>
                    </item>
                  </items>
                </item>
                <item id="fieldset:Server:moreinfo">
                  <rank>20</rank>
                  <items>
                    <item id="networkdevicetype_id">
                      <rank>10</rank>
                    </item>
                    <item id="brand_id">
                      <rank>20</rank>
                    </item>
                    <item id="model_id">
                      <rank>30</rank>
                    </item>
                    <item id="iosversion_id">
                      <rank>40</rank>
                    </item>
                    <item id="managementip">
                      <rank>45</rank>
                    </item>
                    <item id="ram">
                      <rank>50</rank>
                    </item>
                    <item id="nb_u">
                      <rank>60</rank>
                    </item>
                    <item id="serialnumber">
                      <rank>70</rank>
                    </item>
                    <item id="asset_number">
                      <rank>80</rank>
                    </item>
                  </items>
                </item>
              </items>
            </item>
            <item id="col:col2">
              <rank>90</rank>
              <items>
                <item id="fieldset:Server:Date">
                  <rank>10</rank>
                  <items>
                    <item id="move2production">
                      <rank>10</rank>
                    </item>
                    <item id="purchase_date">
                      <rank>20</rank>
                    </item>
                    <item id="end_of_warranty">
                      <rank>30</rank>
                    </item>
                  </items>
                </item>
                <item id="fieldset:Server:power">
                  <rank>20</rank>
                  <items>
                    <item id="powerA_id">
                      <rank>10</rank>
                    </item>
                    <item id="powerB_id">
                      <rank>20</rank>
                    </item>
                    <item id="redundancy">
                      <rank>30</rank>
                    </item>
                  </items>
                </item>
                <item id="fieldset:Server:otherinfo">
                  <rank>30</rank>
                  <items>
                    <item id="description">
                      <rank>10</rank>
                    </item>
                  </items>
                </item>
              </items>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="managementip">
              <rank>55</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
            <item id="asset_number">
              <rank>90</rank>
            </item>
            <item id="powerA_id">
              <rank>100</rank>
            </item>
            <item id="powerB_id">
              <rank>110</rank>
            </item>
            <item id="move2production">
              <rank>120</rank>
            </item>
            <item id="purchase_date">
              <rank>130</rank>
            </item>
            <item id="end_of_warranty">
              <rank>140</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="status">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="location_id">
              <rank>40</rank>
            </item>
            <item id="brand_id">
              <rank>50</rank>
            </item>
            <item id="model_id">
              <rank>60</rank>
            </item>
            <item id="serialnumber">
              <rank>70</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="location_id">
              <rank>30</rank>
            </item>
            <item id="rack_id">
              <rank>40</rank>
            </item>
            <item id="networkdevicetype_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>80</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
      <relations>
        <relation id="impacts">
          <neighbours>
            <neighbour id="connectableci">
              <query_down>SELECT ConnectableCI AS d JOIN lnkConnectableCIToNetworkDevice AS l1 ON l1.connectableci_id = d.id WHERE
								l1.networkdevice_id = :this-&gt;id AND l1.connection_type='downlink'
							</query_down>
              <query_up>SELECT NetworkDevice AS nw JOIN lnkConnectableCIToNetworkDevice AS l1 ON l1.networkdevice_id = nw.id WHERE
								l1.connectableci_id = :this-&gt;id AND l1.connection_type='downlink'
							</query_up>
            </neighbour>
          </neighbours>
        </relation>
      </relations>
    </class>
    <class id="Server" _delta="define">
      <parent>DatacenterDevice</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>server</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="location_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-server.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="osfamily_id" xsi:type="AttributeExternalKey">
          <sql>osfamily_id</sql>
          <target_class>OSFamily</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="osfamily_name" xsi:type="AttributeExternalField">
          <extkey_attcode>osfamily_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="osversion_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT OSVersion WHERE osfamily_id = :this->osfamily_id]]></filter>
          <dependencies>
            <attribute id="osfamily_id"/>
          </dependencies>
          <sql>osversion_id</sql>
          <target_class>OSVersion</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="osversion_name" xsi:type="AttributeExternalField">
          <extkey_attcode>osversion_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="oslicence_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT OSLicence WHERE osversion_id = :this->osversion_id]]></filter>
          <dependencies>
            <attribute id="osversion_id"/>
          </dependencies>
          <sql>oslicence_id</sql>
          <target_class>OSLicence</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="oslicence_name" xsi:type="AttributeExternalField">
          <extkey_attcode>oslicence_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="cpu" xsi:type="AttributeString">
          <sql>cpu</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="ram" xsi:type="AttributeString">
          <sql>ram</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="logicalvolumes_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkServerToVolume</linked_class>
          <ext_key_to_me>server_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>volume_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="softwares_list">
              <rank>10</rank>
            </item>
            <item id="contacts_list">
              <rank>20</rank>
            </item>
            <item id="documents_list">
              <rank>30</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>45</rank>
            </item>
            <item id="physicalinterface_list">
              <rank>50</rank>
            </item>
            <item id="fiberinterfacelist_list">
              <rank>60</rank>
            </item>
            <item id="networkdevice_list">
              <rank>70</rank>
            </item>
            <item id="san_list">
              <rank>80</rank>
            </item>
            <item id="logicalvolumes_list">
              <rank>90</rank>
            </item>
            <item id="col:col1">
              <rank>120</rank>
              <items>
                <item id="fieldset:Server:baseinfo">
                  <rank>10</rank>
                  <items>
                    <item id="name">
                      <rank>10</rank>
                    </item>
                    <item id="org_id">
                      <rank>20</rank>
                    </item>
                    <item id="status">
                      <rank>30</rank>
                    </item>
                    <item id="business_criticity">
                      <rank>40</rank>
                    </item>
                    <item id="location_id">
                      <rank>50</rank>
                    </item>
                    <item id="rack_id">
                      <rank>60</rank>
                    </item>
                    <item id="enclosure_id">
                      <rank>70</rank>
                    </item>
                  </items>
                </item>
                <item id="fieldset:Server:moreinfo">
                  <rank>20</rank>
                  <items>
                    <item id="brand_id">
                      <rank>10</rank>
                    </item>
                    <item id="model_id">
                      <rank>20</rank>
                    </item>
                    <item id="osfamily_id">
                      <rank>30</rank>
                    </item>
                    <item id="osversion_id">
                      <rank>40</rank>
                    </item>
                    <item id="managementip">
                      <rank>45</rank>
                    </item>
                    <item id="oslicence_id">
                      <rank>50</rank>
                    </item>
                    <item id="cpu">
                      <rank>60</rank>
                    </item>
                    <item id="ram">
                      <rank>70</rank>
                    </item>
                    <item id="nb_u">
                      <rank>80</rank>
                    </item>
                    <item id="serialnumber">
                      <rank>90</rank>
                    </item>
                    <item id="asset_number">
                      <rank>100</rank>
                    </item>
                  </items>
                </item>
              </items>
            </item>
            <item id="col:col2">
              <rank>130</rank>
              <items>
                <item id="fieldset:Server:Date">
                  <rank>10</rank>
                  <items>
                    <item id="move2production">
                      <rank>10</rank>
                    </item>
                    <item id="purchase_date">
                      <rank>20</rank>
                    </item>
                    <item id="end_of_warranty">
                      <rank>30</rank>
                    </item>
                  </items>
                </item>
                <item id="fieldset:Server:power">
                  <rank>20</rank>
                  <items>
                    <item id="powerA_id">
                      <rank>10</rank>
                    </item>
                    <item id="powerB_id">
                      <rank>20</rank>
                    </item>
                    <item id="redundancy">
                      <rank>30</rank>
                    </item>
                  </items>
                </item>
                <item id="fieldset:Server:otherinfo">
                  <rank>30</rank>
                  <items>
                    <item id="description">
                      <rank>10</rank>
                    </item>
                  </items>
                </item>
              </items>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="location_id">
              <rank>50</rank>
            </item>
            <item id="managementip">
              <rank>55</rank>
            </item>
            <item id="brand_id">
              <rank>60</rank>
            </item>
            <item id="model_id">
              <rank>70</rank>
            </item>
            <item id="serialnumber">
              <rank>80</rank>
            </item>
            <item id="asset_number">
              <rank>90</rank>
            </item>
            <item id="powerA_id">
              <rank>100</rank>
            </item>
            <item id="powerB_id">
              <rank>110</rank>
            </item>
            <item id="move2production">
              <rank>120</rank>
            </item>
            <item id="purchase_date">
              <rank>130</rank>
            </item>
            <item id="end_of_warranty">
              <rank>140</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="status">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="location_id">
              <rank>40</rank>
            </item>
            <item id="brand_id">
              <rank>50</rank>
            </item>
            <item id="model_id">
              <rank>60</rank>
            </item>
            <item id="serialnumber">
              <rank>70</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="location_id">
              <rank>30</rank>
            </item>
            <item id="rack_id">
              <rank>40</rank>
            </item>
            <item id="enclosure_id">
              <rank>50</rank>
            </item>
            <item id="model_id">
              <rank>60</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
    </class>
    <class id="ApplicationSolution" _delta="define">
      <parent>FunctionalCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>applicationsolution</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <fields_semantic>
          <state_attribute>status</state_attribute>
        </fields_semantic>
        <style>
          <icon>../../images/icons/icons8-application-window.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition><![CDATA[status='inactive']]></condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="functionalcis_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkApplicationSolutionToFunctionalCI</linked_class>
          <ext_key_to_me>applicationsolution_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>functionalci_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="businessprocess_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkApplicationSolutionToBusinessProcess</linked_class>
          <ext_key_to_me>applicationsolution_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>businessprocess_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="status" xsi:type="AttributeEnum">
          <values>
            <value id="active">
              <code>active</code>
              <style>
                <main_color>$ibo-lifecycle-active-state-primary-color</main_color>
                <complementary_color>$ibo-lifecycle-active-state-secondary-color</complementary_color>
                <decoration_classes/>
              </style>
            </value>
            <value id="inactive">
              <code>inactive</code>
              <style>
                <main_color>$ibo-lifecycle-frozen-state-primary-color</main_color>
                <complementary_color>$ibo-lifecycle-frozen-state-secondary-color</complementary_color>
                <decoration_classes/>
              </style>
            </value>
          </values>
          <sql>status</sql>
          <default_value>active</default_value>
          <is_null_allowed>true</is_null_allowed>
          <display_style>list</display_style>
        </field>
        <field id="redundancy" xsi:type="AttributeRedundancySettings">
          <sql>redundancy</sql>
          <relation_code>impacts</relation_code>
          <from_class>FunctionalCI</from_class>
          <neighbour_id>applicationsolution</neighbour_id>
          <enabled>false</enabled>
          <enabled_mode>user</enabled_mode>
          <min_up>1</min_up>
          <min_up_mode>user</min_up_mode>
          <min_up_type>count</min_up_type>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="move2production">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
            <item id="contacts_list">
              <rank>70</rank>
            </item>
            <item id="documents_list">
              <rank>80</rank>
            </item>
            <item id="functionalcis_list">
              <rank>100</rank>
            </item>
            <item id="businessprocess_list">
              <rank>110</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="move2production">
              <rank>30</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
      <relations>
        <relation id="impacts">
          <neighbours>
            <neighbour id="businessprocess">
              <attribute>businessprocess_list</attribute>
            </neighbour>
          </neighbours>
        </relation>
      </relations>
    </class>
    <class id="BusinessProcess" _delta="define">
      <parent>FunctionalCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>businessprocess</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <fields_semantic>
          <state_attribute>status</state_attribute>
        </fields_semantic>
        <style>
          <icon>../../images/icons/icons8-process-improvement.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition><![CDATA[status = 'inactive']]></condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="applicationsolutions_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkApplicationSolutionToBusinessProcess</linked_class>
          <ext_key_to_me>businessprocess_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>applicationsolution_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="status" xsi:type="AttributeEnum">
          <values>
            <value id="active">
              <code>active</code>
              <style>
                <main_color>$ibo-lifecycle-active-state-primary-color</main_color>
                <complementary_color>$ibo-lifecycle-active-state-secondary-color</complementary_color>
                <decoration_classes/>
              </style>
            </value>
            <value id="inactive">
              <code>inactive</code>
              <style>
                <main_color>$ibo-lifecycle-frozen-state-primary-color</main_color>
                <complementary_color>$ibo-lifecycle-frozen-state-secondary-color</complementary_color>
                <decoration_classes/>
              </style>
            </value>
          </values>
          <sql>status</sql>
          <default_value>active</default_value>
          <is_null_allowed>true</is_null_allowed>
          <display_style>list</display_style>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="move2production">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
            <item id="contacts_list">
              <rank>70</rank>
            </item>
            <item id="documents_list">
              <rank>80</rank>
            </item>
            <item id="applicationsolutions_list">
              <rank>100</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="move2production">
              <rank>30</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
    </class>
    <class id="SoftwareInstance" _delta="define">
      <parent>FunctionalCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>softwareinstance</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="system_name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <fields_semantic>
          <state_attribute>status</state_attribute>
        </fields_semantic>
        <style>
          <icon>../../images/icons/icons8-software-instance.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="system_id"/>
            <attribute id="system_name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition><![CDATA[status = 'inactive']]></condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="system_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT FunctionalCI WHERE finalclass IN ('Server','VirtualMachine','PC')]]></filter>
          <sql>functionalci_id</sql>
          <target_class>FunctionalCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
          <allow_target_creation>false</allow_target_creation>
        </field>
        <field id="system_name" xsi:type="AttributeExternalField">
          <extkey_attcode>system_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="software_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT Software WHERE type = :this->finalclass]]></filter>
          <sql>software_id</sql>
          <target_class>Software</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="software_name" xsi:type="AttributeExternalField">
          <extkey_attcode>software_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="softwarelicence_id" xsi:type="AttributeExternalKey">
          <filter><![CDATA[SELECT SoftwareLicence WHERE software_id= :this->software_id]]></filter>
          <dependencies>
            <attribute id="software_id"/>
          </dependencies>
          <sql>softwarelicence_id</sql>
          <target_class>SoftwareLicence</target_class>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
          <allow_target_creation>false</allow_target_creation>
        </field>
        <field id="softwarelicence_name" xsi:type="AttributeExternalField">
          <extkey_attcode>softwarelicence_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="path" xsi:type="AttributeString">
          <sql>path</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="status" xsi:type="AttributeEnum">
          <values>
            <value id="active">
              <code>active</code>
              <style>
                <main_color>$ibo-lifecycle-active-state-primary-color</main_color>
                <complementary_color>$ibo-lifecycle-active-state-secondary-color</complementary_color>
                <decoration_classes/>
              </style>
            </value>
            <value id="inactive">
              <code>inactive</code>
              <style>
                <main_color>$ibo-lifecycle-frozen-state-primary-color</main_color>
                <complementary_color>$ibo-lifecycle-frozen-state-secondary-color</complementary_color>
                <decoration_classes/>
              </style>
            </value>
          </values>
          <sql>status</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
          <display_style>list</display_style>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="system_id">
              <rank>50</rank>
            </item>
            <item id="software_id">
              <rank>60</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>70</rank>
            </item>
            <item id="path">
              <rank>80</rank>
            </item>
            <item id="move2production">
              <rank>90</rank>
            </item>
            <item id="description">
              <rank>100</rank>
            </item>
            <item id="contacts_list">
              <rank>110</rank>
            </item>
            <item id="documents_list">
              <rank>120</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>130</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="system_id">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="finalclass">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="system_id">
              <rank>40</rank>
            </item>
            <item id="software_id">
              <rank>50</rank>
            </item>
          </items>
        </list>
      </presentation>
      <methods/>
    </class>
    <class id="Middleware" _delta="define">
      <parent>SoftwareInstance</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>middleware</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="system_name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-automatic.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="system_id"/>
            <attribute id="system_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="middlewareinstance_list" xsi:type="AttributeLinkedSet">
          <linked_class>MiddlewareInstance</linked_class>
          <ext_key_to_me>middleware_id</ext_key_to_me>
          <edit_mode>in_place</edit_mode>
          <tracking_level>all</tracking_level>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="system_id">
              <rank>50</rank>
            </item>
            <item id="software_id">
              <rank>60</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>70</rank>
            </item>
            <item id="path">
              <rank>80</rank>
            </item>
            <item id="move2production">
              <rank>90</rank>
            </item>
            <item id="description">
              <rank>100</rank>
            </item>
            <item id="contacts_list">
              <rank>110</rank>
            </item>
            <item id="documents_list">
              <rank>120</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>140</rank>
            </item>
            <item id="middlewareinstance_list">
              <rank>150</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
      <relations>
        <relation id="impacts">
          <neighbours>
            <neighbour id="middlewareinstance">
              <attribute>middlewareinstance_list</attribute>
            </neighbour>
          </neighbours>
        </relation>
      </relations>
    </class>
    <class id="DBServer" _delta="define">
      <parent>SoftwareInstance</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>dbserver</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="system_name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-database.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="system_id"/>
            <attribute id="system_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="dbschema_list" xsi:type="AttributeLinkedSet">
          <linked_class>DatabaseSchema</linked_class>
          <ext_key_to_me>dbserver_id</ext_key_to_me>
          <edit_mode>in_place</edit_mode>
          <tracking_level>all</tracking_level>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="system_id">
              <rank>50</rank>
            </item>
            <item id="software_id">
              <rank>60</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>70</rank>
            </item>
            <item id="path">
              <rank>80</rank>
            </item>
            <item id="move2production">
              <rank>90</rank>
            </item>
            <item id="description">
              <rank>100</rank>
            </item>
            <item id="contacts_list">
              <rank>110</rank>
            </item>
            <item id="documents_list">
              <rank>120</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>140</rank>
            </item>
            <item id="dbschema_list">
              <rank>150</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
      <relations>
        <relation id="impacts">
          <neighbours>
            <neighbour id="databaseschema">
              <attribute>dbschema_list</attribute>
            </neighbour>
          </neighbours>
        </relation>
      </relations>
    </class>
    <class id="WebServer" _delta="define">
      <parent>SoftwareInstance</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>webserver</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="system_name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-server-custom.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="system_id"/>
            <attribute id="system_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="webapp_list" xsi:type="AttributeLinkedSet">
          <linked_class>WebApplication</linked_class>
          <ext_key_to_me>webserver_id</ext_key_to_me>
          <edit_mode>in_place</edit_mode>
          <tracking_level>all</tracking_level>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="system_id">
              <rank>50</rank>
            </item>
            <item id="software_id">
              <rank>60</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>70</rank>
            </item>
            <item id="path">
              <rank>80</rank>
            </item>
            <item id="move2production">
              <rank>90</rank>
            </item>
            <item id="description">
              <rank>100</rank>
            </item>
            <item id="contacts_list">
              <rank>110</rank>
            </item>
            <item id="documents_list">
              <rank>120</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>140</rank>
            </item>
            <item id="webapp_list">
              <rank>150</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
      <relations>
        <relation id="impacts">
          <neighbours>
            <neighbour id="webapplication">
              <attribute>webapp_list</attribute>
            </neighbour>
          </neighbours>
        </relation>
      </relations>
    </class>
    <class id="PCSoftware" _delta="define">
      <parent>SoftwareInstance</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>pcsoftware</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="system_name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-desktop.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="system_id"/>
            <attribute id="system_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields/>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="system_id">
              <rank>50</rank>
            </item>
            <item id="software_id">
              <rank>60</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>70</rank>
            </item>
            <item id="path">
              <rank>80</rank>
            </item>
            <item id="move2production">
              <rank>90</rank>
            </item>
            <item id="description">
              <rank>100</rank>
            </item>
            <item id="contacts_list">
              <rank>110</rank>
            </item>
            <item id="documents_list">
              <rank>120</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>140</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="OtherSoftware" _delta="define">
      <parent>SoftwareInstance</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>othersoftware</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="system_name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-software-other.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="system_id"/>
            <attribute id="system_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields/>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="status">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="system_id">
              <rank>50</rank>
            </item>
            <item id="software_id">
              <rank>60</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>70</rank>
            </item>
            <item id="path">
              <rank>80</rank>
            </item>
            <item id="move2production">
              <rank>90</rank>
            </item>
            <item id="description">
              <rank>100</rank>
            </item>
            <item id="contacts_list">
              <rank>110</rank>
            </item>
            <item id="documents_list">
              <rank>120</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>140</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="system_id">
              <rank>30</rank>
            </item>
            <item id="software_id">
              <rank>40</rank>
            </item>
            <item id="softwarelicence_id">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="MiddlewareInstance" _delta="define">
      <parent>FunctionalCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>middlewareinstance</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="middleware_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-automatic.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="middleware_id"/>
            <attribute id="middleware_name"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition>middleware_id_obsolescence_flag</condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="middleware_id" xsi:type="AttributeExternalKey">
          <sql>middleware_id</sql>
          <target_class>Middleware</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="middleware_name" xsi:type="AttributeExternalField">
          <extkey_attcode>middleware_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="middleware_id">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="move2production">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
            <item id="contacts_list">
              <rank>70</rank>
            </item>
            <item id="documents_list">
              <rank>80</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>100</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="middleware_id">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="move2production">
              <rank>30</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="middleware_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
    </class>
    <class id="DatabaseSchema" _delta="define">
      <parent>FunctionalCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>databaseschema</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="dbserver_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-database-custom.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition>dbserver_id_obsolescence_flag</condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="dbserver_id" xsi:type="AttributeExternalKey">
          <sql>dbserver_id</sql>
          <target_class>DBServer</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="dbserver_name" xsi:type="AttributeExternalField">
          <extkey_attcode>dbserver_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="dbserver_id">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="move2production">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
            <item id="contacts_list">
              <rank>70</rank>
            </item>
            <item id="documents_list">
              <rank>80</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>100</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="dbserver_id">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="business_criticity">
              <rank>20</rank>
            </item>
            <item id="move2production">
              <rank>30</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="dbserver_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
    </class>
    <class id="WebApplication" _delta="define">
      <parent>FunctionalCI</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>webapplication</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="webserver_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-web.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition>webserver_id_obsolescence_flag</condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="webserver_id" xsi:type="AttributeExternalKey">
          <sql>webserver_id</sql>
          <target_class>WebServer</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="webserver_name" xsi:type="AttributeExternalField">
          <extkey_attcode>webserver_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="url" xsi:type="AttributeURL">
          <sql>url</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
          <target>_blank</target>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="webserver_id">
              <rank>30</rank>
            </item>
            <item id="url">
              <rank>40</rank>
            </item>
            <item id="business_criticity">
              <rank>50</rank>
            </item>
            <item id="move2production">
              <rank>60</rank>
            </item>
            <item id="description">
              <rank>70</rank>
            </item>
            <item id="contacts_list">
              <rank>80</rank>
            </item>
            <item id="documents_list">
              <rank>90</rank>
            </item>
            <item id="applicationsolution_list">
              <rank>110</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="webserver_id">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="webserver_id">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="move2production">
              <rank>50</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="webserver_id">
              <rank>20</rank>
            </item>
            <item id="business_criticity">
              <rank>30</rank>
            </item>
            <item id="move2production">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="webserver_id">
              <rank>20</rank>
            </item>
            <item id="url">
              <rank>30</rank>
            </item>
            <item id="business_criticity">
              <rank>40</rank>
            </item>
            <item id="description">
              <rank>50</rank>
            </item>
          </items>
        </summary>
      </presentation>
      <methods/>
    </class>
    <class id="Software" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>software</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="version"/>
          </attributes>
          <complementary_attributes>
            <attribute id="vendor"/>
            <attribute id="type"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-software.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="version"/>
            <attribute id="vendor"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="name" xsi:type="AttributeString">
          <sql>name</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="vendor" xsi:type="AttributeString">
          <sql>vendor</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="version" xsi:type="AttributeString">
          <sql>version</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="documents_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkDocumentToSoftware</linked_class>
          <ext_key_to_me>software_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>document_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="type" xsi:type="AttributeEnum">
          <sort_type>label</sort_type>
          <values>
            <value id="Middleware">
              <code>Middleware</code>
            </value>
            <value id="DBServer">
              <code>DBServer</code>
            </value>
            <value id="PCSoftware">
              <code>PCSoftware</code>
            </value>
            <value id="OtherSoftware">
              <code>OtherSoftware</code>
            </value>
            <value id="WebServer">
              <code>WebServer</code>
            </value>
          </values>
          <sql>type</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
          <display_style>list</display_style>
        </field>
        <field id="softwareinstance_list" xsi:type="AttributeLinkedSet">
          <linked_class>SoftwareInstance</linked_class>
          <ext_key_to_me>software_id</ext_key_to_me>
          <edit_mode>add_only</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
        <field id="softwarepatch_list" xsi:type="AttributeLinkedSet">
          <linked_class>SoftwarePatch</linked_class>
          <ext_key_to_me>software_id</ext_key_to_me>
          <edit_mode>add_only</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
        <field id="softwarelicence_list" xsi:type="AttributeLinkedSet">
          <linked_class>SoftwareLicence</linked_class>
          <ext_key_to_me>software_id</ext_key_to_me>
          <edit_mode>add_only</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="version">
              <rank>20</rank>
            </item>
            <item id="vendor">
              <rank>30</rank>
            </item>
            <item id="type">
              <rank>40</rank>
            </item>
            <item id="documents_list">
              <rank>50</rank>
            </item>
            <item id="softwareinstance_list">
              <rank>60</rank>
            </item>
            <item id="softwarepatch_list">
              <rank>70</rank>
            </item>
            <item id="softwarelicence_list">
              <rank>80</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="vendor">
              <rank>20</rank>
            </item>
            <item id="type">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="vendor">
              <rank>20</rank>
            </item>
            <item id="version">
              <rank>30</rank>
            </item>
            <item id="type">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="vendor">
              <rank>10</rank>
            </item>
            <item id="type">
              <rank>20</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="version">
              <rank>10</rank>
            </item>
            <item id="vendor">
              <rank>20</rank>
            </item>
            <item id="type">
              <rank>30</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="Patch" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>patch</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field>finalclass</db_final_class_field>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-bandage.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="name" xsi:type="AttributeString">
          <sql>name</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="documents_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkDocumentToPatch</linked_class>
          <ext_key_to_me>patch_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>document_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="description" xsi:type="AttributeText">
          <sql>description</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="documents_list">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="description">
              <rank>20</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="finalclass">
              <rank>10</rank>
            </item>
            <item id="description">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="OSPatch" _delta="define">
      <parent>Patch</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>ospatch</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="osversion_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-bandage.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="functionalcis_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkFunctionalCIToOSPatch</linked_class>
          <ext_key_to_me>ospatch_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>functionalci_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="osversion_id" xsi:type="AttributeExternalKey">
          <sql>osversion_id</sql>
          <target_class>OSVersion</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="osversion_name" xsi:type="AttributeExternalField">
          <extkey_attcode>osversion_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="documents_list">
              <rank>20</rank>
            </item>
            <item id="functionalcis_list">
              <rank>30</rank>
            </item>
            <item id="osversion_id">
              <rank>40</rank>
            </item>
            <item id="description">
              <rank>50</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="osversion_id">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="description">
              <rank>10</rank>
            </item>
            <item id="osversion_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="osversion_id">
              <rank>10</rank>
            </item>
            <item id="description">
              <rank>20</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="SoftwarePatch" _delta="define">
      <parent>Patch</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>softwarepatch</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="software_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-bandage.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="software_id" xsi:type="AttributeExternalKey">
          <sql>software_id</sql>
          <target_class>Software</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="software_name" xsi:type="AttributeExternalField">
          <extkey_attcode>software_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="softwareinstances_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkSoftwareInstanceToSoftwarePatch</linked_class>
          <ext_key_to_me>softwarepatch_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>softwareinstance_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="documents_list">
              <rank>20</rank>
            </item>
            <item id="software_id">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
            <item id="softwareinstances_list">
              <rank>50</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="software_id">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="software_id">
              <rank>10</rank>
            </item>
            <item id="description">
              <rank>20</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="software_id">
              <rank>10</rank>
            </item>
            <item id="description">
              <rank>20</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="Licence" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>licence</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field>finalclass</db_final_class_field>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-licence.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition><![CDATA[perpetual='no' AND ISNULL(end_date)=0 AND end_date < DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 15 MONTH),'%Y-%m-%d 00:00:00')]]></condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="name" xsi:type="AttributeString">
          <sql>name</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="documents_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkDocumentToLicence</linked_class>
          <ext_key_to_me>licence_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>document_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="org_id" xsi:type="AttributeExternalKey">
          <sql>org_id</sql>
          <target_class>Organization</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="organization_name" xsi:type="AttributeExternalField">
          <extkey_attcode>org_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="usage_limit" xsi:type="AttributeString">
          <sql>usage_limit</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="description" xsi:type="AttributeText">
          <sql>description</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="start_date" xsi:type="AttributeDate">
          <sql>start_date</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="end_date" xsi:type="AttributeDate">
          <sql>end_date</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="licence_key" xsi:type="AttributeString">
          <sql>licence_key</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="perpetual" xsi:type="AttributeEnum">
          <values>
            <value id="yes">
              <code>yes</code>
            </value>
            <value id="no">
              <code>no</code>
            </value>
          </values>
          <sql>perpetual</sql>
          <default_value>no</default_value>
          <is_null_allowed>false</is_null_allowed>
          <display_style>list</display_style>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="usage_limit">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
            <item id="perpetual">
              <rank>50</rank>
            </item>
            <item id="start_date">
              <rank>60</rank>
            </item>
            <item id="end_date">
              <rank>70</rank>
            </item>
            <item id="licence_key">
              <rank>80</rank>
            </item>
            <item id="documents_list">
              <rank>90</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="description">
              <rank>20</rank>
            </item>
            <item id="licence_key">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="perpetual">
              <rank>15</rank>
            </item>
            <item id="start_date">
              <rank>20</rank>
            </item>
            <item id="end_date">
              <rank>30</rank>
            </item>
            <item id="licence_key">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="finalclass">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="usage_limit">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
            <item id="start_date">
              <rank>50</rank>
            </item>
            <item id="end_date">
              <rank>60</rank>
            </item>
            <item id="licence_key">
              <rank>70</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="OSLicence" _delta="define">
      <parent>Licence</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>oslicence</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="osversion_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-licence.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="osversion_id" xsi:type="AttributeExternalKey">
          <sql>osversion_id</sql>
          <target_class>OSVersion</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="osversion_name" xsi:type="AttributeExternalField">
          <extkey_attcode>osversion_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="virtualmachines_list" xsi:type="AttributeLinkedSet">
          <linked_class>VirtualMachine</linked_class>
          <ext_key_to_me>oslicence_id</ext_key_to_me>
          <edit_mode>none</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
        <field id="servers_list" xsi:type="AttributeLinkedSet">
          <linked_class>Server</linked_class>
          <ext_key_to_me>oslicence_id</ext_key_to_me>
          <edit_mode>none</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="documents_list">
              <rank>20</rank>
            </item>
            <item id="osversion_id">
              <rank>30</rank>
            </item>
            <item id="org_id">
              <rank>40</rank>
            </item>
            <item id="usage_limit">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
            <item id="perpetual">
              <rank>65</rank>
            </item>
            <item id="start_date">
              <rank>70</rank>
            </item>
            <item id="end_date">
              <rank>80</rank>
            </item>
            <item id="licence_key">
              <rank>90</rank>
            </item>
            <item id="servers_list">
              <rank>100</rank>
            </item>
            <item id="virtualmachines_list">
              <rank>110</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="perpetual">
              <rank>15</rank>
            </item>
            <item id="start_date">
              <rank>20</rank>
            </item>
            <item id="end_date">
              <rank>30</rank>
            </item>
            <item id="licence_key">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="osversion_id">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="usage_limit">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
            <item id="start_date">
              <rank>50</rank>
            </item>
            <item id="end_date">
              <rank>60</rank>
            </item>
            <item id="licence_key">
              <rank>70</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="osversion_id">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="SoftwareLicence" _delta="define">
      <parent>Licence</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>softwarelicence</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="organization_name"/>
            <attribute id="software_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-software-license.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="organization_name"/>
            <attribute id="software_id"/>
            <attribute id="software_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="software_id" xsi:type="AttributeExternalKey">
          <sql>software_id</sql>
          <target_class>Software</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="software_name" xsi:type="AttributeExternalField">
          <extkey_attcode>software_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="softwareinstance_list" xsi:type="AttributeLinkedSet">
          <linked_class>SoftwareInstance</linked_class>
          <ext_key_to_me>softwarelicence_id</ext_key_to_me>
          <edit_mode>none</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="documents_list">
              <rank>20</rank>
            </item>
            <item id="software_id">
              <rank>30</rank>
            </item>
            <item id="org_id">
              <rank>40</rank>
            </item>
            <item id="usage_limit">
              <rank>50</rank>
            </item>
            <item id="description">
              <rank>60</rank>
            </item>
            <item id="perpetual">
              <rank>65</rank>
            </item>
            <item id="start_date">
              <rank>70</rank>
            </item>
            <item id="end_date">
              <rank>80</rank>
            </item>
            <item id="licence_key">
              <rank>90</rank>
            </item>
            <item id="softwareinstance_list">
              <rank>100</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="perpetual">
              <rank>15</rank>
            </item>
            <item id="start_date">
              <rank>20</rank>
            </item>
            <item id="end_date">
              <rank>30</rank>
            </item>
            <item id="licence_key">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="software_id">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="usage_limit">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
            <item id="start_date">
              <rank>50</rank>
            </item>
            <item id="end_date">
              <rank>60</rank>
            </item>
            <item id="licence_key">
              <rank>70</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="software_id">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
            <item id="licence_key">
              <rank>70</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="lnkDocumentToLicence" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkdocumenttolicence</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="document_name"/>
            <attribute id="licence_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="licence_id"/>
            <attribute id="document_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="document_id"/>
              <attribute id="licence_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="licence_id" xsi:type="AttributeExternalKey">
          <sql>licence_id</sql>
          <target_class>Licence</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="licence_name" xsi:type="AttributeExternalField">
          <extkey_attcode>licence_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="document_id" xsi:type="AttributeExternalKey">
          <sql>document_id</sql>
          <target_class>Document</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="document_name" xsi:type="AttributeExternalField">
          <extkey_attcode>document_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="document_id">
              <rank>10</rank>
            </item>
            <item id="licence_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="licence_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="licence_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="OSVersion" _delta="define">
      <parent>Typology</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>osversion</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="osfamily_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="osfamily_id"/>
            <attribute id="osfamily_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="osfamily_id" xsi:type="AttributeExternalKey">
          <sql>osfamily_id</sql>
          <target_class>OSFamily</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="osfamily_name" xsi:type="AttributeExternalField">
          <extkey_attcode>osfamily_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="osfamily_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="osfamily_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="OSFamily" _delta="define">
      <parent>Typology</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>osfamily</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields/>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="Brand" _delta="define">
      <parent>Typology</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>brand</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="name">
            <attributes>
              <attribute id="name"/>
            </attributes>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="physicaldevices_list" xsi:type="AttributeLinkedSet">
          <linked_class>PhysicalDevice</linked_class>
          <ext_key_to_me>brand_id</ext_key_to_me>
          <edit_mode>add_only</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <duplicates/>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="physicaldevices_list">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="Model" _delta="define">
      <parent>Typology</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>model</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="brand_name"/>
            <attribute id="type"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="brand_id"/>
            <attribute id="brand_name"/>
            <attribute id="type"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="name_brand">
            <attributes>
              <attribute id="name"/>
              <attribute id="brand_id"/>
            </attributes>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="brand_id" xsi:type="AttributeExternalKey">
          <sql>brand_id</sql>
          <target_class>Brand</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="brand_name" xsi:type="AttributeExternalField">
          <extkey_attcode>brand_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="type" xsi:type="AttributeEnum">
          <sort_type>label</sort_type>
          <values>
            <value id="NetworkDevice">
              <code>NetworkDevice</code>
            </value>
            <value id="Server">
              <code>Server</code>
            </value>
            <value id="SANSwitch">
              <code>SANSwitch</code>
            </value>
            <value id="StorageSystem">
              <code>StorageSystem</code>
            </value>
            <value id="Rack">
              <code>Rack</code>
            </value>
            <value id="Enclosure">
              <code>Enclosure</code>
            </value>
            <value id="PC">
              <code>PC</code>
            </value>
            <value id="Tablet">
              <code>Tablet</code>
            </value>
            <value id="Phone">
              <code>Phone</code>
            </value>
            <value id="MobilePhone">
              <code>MobilePhone</code>
            </value>
            <value id="Printer">
              <code>Printer</code>
            </value>
            <value id="DiskArray">
              <code>DiskArray</code>
            </value>
            <value id="NAS">
              <code>NAS</code>
            </value>
            <value id="TapeLibrary">
              <code>TapeLibrary</code>
            </value>
            <value id="IPPhone">
              <code>IPPhone</code>
            </value>
            <value id="Peripheral">
              <code>Peripheral</code>
            </value>
            <value id="PowerSource">
              <code>PowerSource</code>
            </value>
            <value id="PDU">
              <code>PDU</code>
            </value>
          </values>
          <sql>type</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
          <display_style>list</display_style>
        </field>
        <field id="physicaldevices_list" xsi:type="AttributeLinkedSet">
          <linked_class>PhysicalDevice</linked_class>
          <ext_key_to_me>model_id</ext_key_to_me>
          <edit_mode>add_only</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <duplicates/>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="brand_id">
              <rank>20</rank>
            </item>
            <item id="type">
              <rank>30</rank>
            </item>
            <item id="physicaldevices_list">
              <rank>40</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="type">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="brand_id">
              <rank>20</rank>
            </item>
            <item id="type">
              <rank>30</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="brand_id">
              <rank>10</rank>
            </item>
            <item id="type">
              <rank>20</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="NetworkDeviceType" _delta="define">
      <parent>Typology</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>networkdevicetype</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="networkdevicesdevices_list" xsi:type="AttributeLinkedSet">
          <linked_class>NetworkDevice</linked_class>
          <ext_key_to_me>networkdevicetype_id</ext_key_to_me>
          <edit_mode>add_only</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <duplicates/>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="networkdevicesdevices_list">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="IOSVersion" _delta="define">
      <parent>Typology</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>iosversion</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="brand_name"/>
            <attribute id="name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="brand_id"/>
            <attribute id="brand_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="brand_id" xsi:type="AttributeExternalKey">
          <sql>brand_id</sql>
          <target_class>Brand</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="brand_name" xsi:type="AttributeExternalField">
          <extkey_attcode>brand_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="brand_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="brand_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkContactToFunctionalCI" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkcontacttofunctionalci</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="contact_name"/>
            <attribute id="functionalci_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="functionalci_id"/>
            <attribute id="contact_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="contact_id"/>
              <attribute id="functionalci_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="functionalci_id" xsi:type="AttributeExternalKey">
          <sql>functionalci_id</sql>
          <target_class>FunctionalCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="functionalci_name" xsi:type="AttributeExternalField">
          <extkey_attcode>functionalci_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="contact_id" xsi:type="AttributeExternalKey">
          <sql>contact_id</sql>
          <target_class>Contact</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="contact_name" xsi:type="AttributeExternalField">
          <extkey_attcode>contact_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="contact_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="functionalci_id">
              <rank>10</rank>
            </item>
            <item id="contact_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="contact_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkDocumentToPatch" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkdocumenttopatch</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="document_name"/>
            <attribute id="patch_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="patch_id"/>
            <attribute id="document_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="document_id"/>
              <attribute id="patch_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="patch_id" xsi:type="AttributeExternalKey">
          <sql>patch_id</sql>
          <target_class>Patch</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="patch_name" xsi:type="AttributeExternalField">
          <extkey_attcode>patch_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="document_id" xsi:type="AttributeExternalKey">
          <sql>document_id</sql>
          <target_class>Document</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="document_name" xsi:type="AttributeExternalField">
          <extkey_attcode>document_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="document_id">
              <rank>10</rank>
            </item>
            <item id="patch_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="patch_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="patch_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkSoftwareInstanceToSoftwarePatch" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnksoftwareinstancetosoftwarepatch</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="softwareinstance_name"/>
            <attribute id="softwarepatch_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="softwarepatch_id"/>
            <attribute id="softwareinstance_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="softwareinstance_id"/>
              <attribute id="softwarepatch_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="softwarepatch_id" xsi:type="AttributeExternalKey">
          <sql>softwarepatch_id</sql>
          <target_class>SoftwarePatch</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="softwarepatch_name" xsi:type="AttributeExternalField">
          <extkey_attcode>softwarepatch_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="softwareinstance_id" xsi:type="AttributeExternalKey">
          <sql>softwareinstance_id</sql>
          <target_class>SoftwareInstance</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="softwareinstance_name" xsi:type="AttributeExternalField">
          <extkey_attcode>softwareinstance_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="softwareinstance_id">
              <rank>10</rank>
            </item>
            <item id="softwarepatch_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="softwarepatch_id">
              <rank>10</rank>
            </item>
            <item id="softwareinstance_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="softwarepatch_id">
              <rank>10</rank>
            </item>
            <item id="softwareinstance_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkFunctionalCIToOSPatch" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkfunctionalcitoospatch</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="functionalci_name"/>
            <attribute id="ospatch_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="ospatch_id"/>
            <attribute id="functionalci_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="functionalci_id"/>
              <attribute id="ospatch_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="ospatch_id" xsi:type="AttributeExternalKey">
          <sql>ospatch_id</sql>
          <target_class>OSPatch</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="ospatch_name" xsi:type="AttributeExternalField">
          <extkey_attcode>ospatch_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="functionalci_id" xsi:type="AttributeExternalKey">
          <sql>functionalci_id</sql>
          <target_class>FunctionalCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="functionalci_name" xsi:type="AttributeExternalField">
          <extkey_attcode>functionalci_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="functionalci_id">
              <rank>10</rank>
            </item>
            <item id="ospatch_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="ospatch_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="ospatch_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkDocumentToSoftware" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkdocumenttosoftware</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="document_name"/>
            <attribute id="software_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="software_id"/>
            <attribute id="document_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="document_id"/>
              <attribute id="software_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="software_id" xsi:type="AttributeExternalKey">
          <sql>software_id</sql>
          <target_class>Software</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="software_name" xsi:type="AttributeExternalField">
          <extkey_attcode>software_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="document_id" xsi:type="AttributeExternalKey">
          <sql>document_id</sql>
          <target_class>Document</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="document_name" xsi:type="AttributeExternalField">
          <extkey_attcode>document_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="document_id">
              <rank>10</rank>
            </item>
            <item id="software_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="software_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="software_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkDocumentToFunctionalCI" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkdocumenttofunctionalci</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="document_name"/>
            <attribute id="functionalci_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="functionalci_id"/>
            <attribute id="document_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="document_id"/>
              <attribute id="functionalci_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="functionalci_id" xsi:type="AttributeExternalKey">
          <sql>functionalci_id</sql>
          <target_class>FunctionalCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="functionalci_name" xsi:type="AttributeExternalField">
          <extkey_attcode>functionalci_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="document_id" xsi:type="AttributeExternalKey">
          <sql>document_id</sql>
          <target_class>Document</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="document_name" xsi:type="AttributeExternalField">
          <extkey_attcode>document_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="document_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="functionalci_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="functionalci_id">
              <rank>10</rank>
            </item>
            <item id="document_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="Subnet" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable,configmgmt</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>subnet</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="ip"/>
            <attribute id="ip_mask"/>
          </attributes>
          <complementary_attributes>
            <attribute id="org_name"/>
            <attribute id="subnet_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-network.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="ip"/>
            <attribute id="ip_mask"/>
            <attribute id="org_id"/>
            <attribute id="org_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="description" xsi:type="AttributeText">
          <sql>description</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="subnet_name" xsi:type="AttributeString">
          <sql>subnet_name</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="org_id" xsi:type="AttributeExternalKey">
          <sql>org_id</sql>
          <target_class>Organization</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="org_name" xsi:type="AttributeExternalField">
          <extkey_attcode>org_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="ip" xsi:type="AttributeIPAddress">
          <sql>ip</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="ip_mask" xsi:type="AttributeIPAddress">
          <sql>ip_mask</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="vlans_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkSubnetToVLAN</linked_class>
          <ext_key_to_me>subnet_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>vlan_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
      <methods>
        <method id="DisplayBareRelations">
          <static>false</static>
          <access>public</access>
          <type>Overload-cmdbAbstractObject</type>
          <code><![CDATA[	function DisplayBareRelations(WebPage $oPage, $bEditMode = false)
	{
		parent::DisplayBareRelations($oPage, $bEditMode);

      $bIsCreation = ($this->GetKey() != -1)? false : true;
      if (!$bIsCreation)	{
        $oPage->SetCurrentTab('Class:Subnet/Tab:IPUsage');

        $bit_ip = ip2long($this->Get('ip'));
        $bit_mask = ip2long($this->Get('ip_mask'));

        $iIPMin = sprintf('%u', ($bit_ip & $bit_mask) | 1); // exclude the first one: identifies the subnet itself
        $iIPMax = sprintf('%u', (($bit_ip | (~$bit_mask))) & 0xfffffffe); // exclude the last one : broadcast address

        $sIPMin = long2ip($iIPMin);
        $sIPMax = long2ip($iIPMax);

        $oPage->p(Dict::Format('Class:Subnet/Tab:IPUsage-explain', $sIPMin, $sIPMax));

        $oIfFilter = DBObjectSearch::FromOQL("SELECT IPInterface AS if WHERE INET_ATON(if.ipaddress) >= INET_ATON('$sIPMin') AND INET_ATON(if.ipaddress) <= INET_ATON('$sIPMax')");
        $oIfSet = new CMDBObjectSet($oIfFilter);
        $oBlock = new DisplayBlock($oIfFilter, 'list', false);
        $oBlock->Display($oPage, 'nwif', array(
            'menu' => false,
            'panel_title' => MetaModel::GetName('IPInterface'),
				    'panel_icon' => MetaModel::GetClassIcon('IPInterface', false)
            )
        );

        $iCountUsed = $oIfSet->Count();
        $iCountRange = $iIPMax - $iIPMin; // On 32-bit systems the substraction will be computed using floats for values greater than PHP_MAX_INT;
        $iFreeCount =  $iCountRange - $iCountUsed;

        $oPage->SetCurrentTab('Class:Subnet/Tab:FreeIPs');
        $oPage->p(Dict::Format('Class:Subnet/Tab:FreeIPs-count', $iFreeCount));
        $oPage->p(Dict::S('Class:Subnet/Tab:FreeIPs-explain'));

        $aUsedIPs = $oIfSet->GetColumnAsArray('ipaddress', false);
        $iAnIP = $iIPMin;
        $iFound = 0;
        while (($iFound < min($iFreeCount, 10)) && ($iAnIP <= $iIPMax))
        {
          $sAnIP = long2ip($iAnIP);
          if (!in_array($sAnIP, $aUsedIPs))
          {
            $iFound++;
            $oPage->p($sAnIP);
          }
          $iAnIP++;
        }
			}
	}]]></code>
        </method>
      </methods>
      <presentation>
        <details>
          <items>
            <item id="ip">
              <rank>10</rank>
            </item>
            <item id="ip_mask">
              <rank>20</rank>
            </item>
            <item id="subnet_name">
              <rank>25</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
            <item id="vlans_list">
              <rank>50</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="ip">
              <rank>10</rank>
            </item>
            <item id="subnet_name">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="ip">
              <rank>10</rank>
            </item>
            <item id="ip_mask">
              <rank>20</rank>
            </item>
            <item id="subnet_name">
              <rank>25</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="ip">
              <rank>10</rank>
            </item>
            <item id="ip_mask">
              <rank>20</rank>
            </item>
            <item id="subnet_name">
              <rank>25</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="ip">
              <rank>10</rank>
            </item>
            <item id="ip_mask">
              <rank>20</rank>
            </item>
            <item id="subnet_name">
              <rank>25</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
            <item id="description">
              <rank>40</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="VLAN" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable,configmgmt</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>vlan</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="vlan_tag"/>
          </attributes>
          <complementary_attributes>
            <attribute id="org_name"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-hierarchy.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="vlan_tag"/>
            <attribute id="org_id"/>
            <attribute id="org_name"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="vlan_tag" xsi:type="AttributeString">
          <sql>vlan_tag</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="description" xsi:type="AttributeText">
          <sql>description</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="org_id" xsi:type="AttributeExternalKey">
          <sql>org_id</sql>
          <target_class>Organization</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="org_name" xsi:type="AttributeExternalField">
          <extkey_attcode>org_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="subnets_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkSubnetToVLAN</linked_class>
          <ext_key_to_me>vlan_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>subnet_id</ext_key_to_remote>
          <duplicates/>
        </field>
        <field id="physicalinterfaces_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkPhysicalInterfaceToVLAN</linked_class>
          <ext_key_to_me>vlan_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>physicalinterface_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
      <methods>
			</methods>
      <presentation>
        <details>
          <items>
            <item id="vlan_tag">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
            <item id="subnets_list">
              <rank>40</rank>
            </item>
            <item id="physicalinterfaces_list">
              <rank>50</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="vlan_tag">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="vlan_tag">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="description">
              <rank>20</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="lnkSubnetToVLAN" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnksubnettovlan</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="subnet_name"/>
            <attribute id="vlan_tag"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="subnet_id"/>
            <attribute id="vlan_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="subnet_id"/>
              <attribute id="vlan_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="subnet_id" xsi:type="AttributeExternalKey">
          <sql>subnet_id</sql>
          <target_class>Subnet</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="subnet_ip" xsi:type="AttributeExternalField">
          <extkey_attcode>subnet_id</extkey_attcode>
          <target_attcode>ip</target_attcode>
        </field>
        <field id="subnet_name" xsi:type="AttributeExternalField">
          <extkey_attcode>subnet_id</extkey_attcode>
          <target_attcode>subnet_name</target_attcode>
        </field>
        <field id="vlan_id" xsi:type="AttributeExternalKey">
          <sql>vlan_id</sql>
          <target_class>VLAN</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="vlan_tag" xsi:type="AttributeExternalField">
          <extkey_attcode>vlan_id</extkey_attcode>
          <target_attcode>vlan_tag</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="subnet_id">
              <rank>10</rank>
            </item>
            <item id="vlan_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="subnet_id">
              <rank>10</rank>
            </item>
            <item id="vlan_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="subnet_id">
              <rank>10</rank>
            </item>
            <item id="subnet_name">
              <rank>20</rank>
            </item>
            <item id="vlan_id">
              <rank>30</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="NetworkInterface" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>networkinterface</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field>finalclass</db_final_class_field>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-globe-cable.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="name" xsi:type="AttributeString">
          <sql>name</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="IPInterface" _delta="define">
      <parent>NetworkInterface</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>true</abstract>
        <key_type>autoincrement</key_type>
        <db_table>ipinterface</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="ipaddress"/>
          </complementary_attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-globe-cable.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="finalclass"/>
          </attributes>
        </reconciliation>
      </properties>
      <fields>
        <field id="ipaddress" xsi:type="AttributeIPAddress">
          <sql>ipaddress</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="macaddress" xsi:type="AttributeString">
          <sql>macaddress</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="comment" xsi:type="AttributeText">
          <sql>comment</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="ipgateway" xsi:type="AttributeIPAddress">
          <sql>ipgateway</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="ipmask" xsi:type="AttributeIPAddress">
          <sql>ipmask</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="speed" xsi:type="AttributeDecimal">
          <sql>speed</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
          <digits>12</digits>
          <decimals>2</decimals>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="ipaddress">
              <rank>20</rank>
            </item>
            <item id="macaddress">
              <rank>30</rank>
            </item>
            <item id="comment">
              <rank>40</rank>
            </item>
            <item id="ipgateway">
              <rank>50</rank>
            </item>
            <item id="ipmask">
              <rank>60</rank>
            </item>
            <item id="speed">
              <rank>70</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="friendlyname">
              <rank>10</rank>
            </item>
            <item id="ipaddress">
              <rank>20</rank>
            </item>
            <item id="macaddress">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="ipaddress">
              <rank>20</rank>
            </item>
            <item id="macaddress">
              <rank>30</rank>
            </item>
            <item id="ipgateway">
              <rank>40</rank>
            </item>
            <item id="ipmask">
              <rank>50</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="ipaddress">
              <rank>20</rank>
            </item>
            <item id="macaddress">
              <rank>30</rank>
            </item>
            <item id="comment">
              <rank>40</rank>
            </item>
            <item id="ipgateway">
              <rank>50</rank>
            </item>
            <item id="ipmask">
              <rank>60</rank>
            </item>
            <item id="speed">
              <rank>70</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="PhysicalInterface" _delta="define">
      <parent>IPInterface</parent>
      <properties>
        <category>bizmodel,searchable</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>physicalinterface</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
            <attribute id="connectableci_name"/>
          </attributes>
        </naming>
        <style>
          <icon>../../images/icons/icons8-globe-wire.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="connectableci_id"/>
            <attribute id="connectableci_name"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition>connectableci_id_obsolescence_flag</condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="connectableci_id" xsi:type="AttributeExternalKey">
          <sql>connectableci_id</sql>
          <target_class>ConnectableCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="connectableci_name" xsi:type="AttributeExternalField">
          <extkey_attcode>connectableci_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="org_id" xsi:type="AttributeExternalField">
          <extkey_attcode>connectableci_id</extkey_attcode>
          <target_attcode>org_id</target_attcode>
        </field>
        <field id="location_id" xsi:type="AttributeExternalField">
          <extkey_attcode>connectableci_id</extkey_attcode>
          <target_attcode>location_id</target_attcode>
        </field>
        <field id="vlans_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkPhysicalInterfaceToVLAN</linked_class>
          <ext_key_to_me>physicalinterface_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>vlan_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="connectableci_id">
              <rank>20</rank>
            </item>
            <item id="location_id">
              <rank>30</rank>
            </item>
            <item id="org_id">
              <rank>40</rank>
            </item>
            <item id="ipaddress">
              <rank>50</rank>
            </item>
            <item id="macaddress">
              <rank>60</rank>
            </item>
            <item id="comment">
              <rank>70</rank>
            </item>
            <item id="ipgateway">
              <rank>80</rank>
            </item>
            <item id="ipmask">
              <rank>90</rank>
            </item>
            <item id="speed">
              <rank>100</rank>
            </item>
            <item id="vlans_list">
              <rank>110</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="ipaddress">
              <rank>10</rank>
            </item>
            <item id="macaddress">
              <rank>20</rank>
            </item>
            <item id="ipgateway">
              <rank>30</rank>
            </item>
            <item id="ipmask">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="ipaddress">
              <rank>10</rank>
            </item>
            <item id="macaddress">
              <rank>20</rank>
            </item>
            <item id="comment">
              <rank>30</rank>
            </item>
            <item id="ipgateway">
              <rank>40</rank>
            </item>
            <item id="ipmask">
              <rank>50</rank>
            </item>
            <item id="speed">
              <rank>60</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="ipaddress">
              <rank>10</rank>
            </item>
            <item id="connectableci_id">
              <rank>20</rank>
            </item>
            <item id="location_id">
              <rank>30</rank>
            </item>
            <item id="org_id">
              <rank>40</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="lnkPhysicalInterfaceToVLAN" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkphysicalinterfacetovlan</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="physicalinterface_device_name"/>
            <attribute id="physicalinterface_name"/>
            <attribute id="vlan_tag"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="physicalinterface_id"/>
            <attribute id="vlan_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="physicalinterface_id"/>
              <attribute id="vlan_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="physicalinterface_id" xsi:type="AttributeExternalKey">
          <sql>physicalinterface_id</sql>
          <target_class>PhysicalInterface</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="physicalinterface_name" xsi:type="AttributeExternalField">
          <extkey_attcode>physicalinterface_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="physicalinterface_device_id" xsi:type="AttributeExternalField">
          <extkey_attcode>physicalinterface_id</extkey_attcode>
          <target_attcode>connectableci_id</target_attcode>
        </field>
        <field id="physicalinterface_device_name" xsi:type="AttributeExternalField">
          <extkey_attcode>physicalinterface_id</extkey_attcode>
          <target_attcode>connectableci_name</target_attcode>
        </field>
        <field id="vlan_id" xsi:type="AttributeExternalKey">
          <sql>vlan_id</sql>
          <target_class>VLAN</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="vlan_tag" xsi:type="AttributeExternalField">
          <extkey_attcode>vlan_id</extkey_attcode>
          <target_attcode>vlan_tag</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="physicalinterface_id">
              <rank>10</rank>
            </item>
            <item id="vlan_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="physicalinterface_id">
              <rank>10</rank>
            </item>
            <item id="vlan_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="physicalinterface_id">
              <rank>10</rank>
            </item>
            <item id="vlan_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkConnectableCIToNetworkDevice" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkconnectablecitonetworkdevice</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="connectableci_name"/>
            <attribute id="networkdevice_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="networkdevice_id"/>
            <attribute id="connectableci_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules/>
      </properties>
      <fields>
        <field id="networkdevice_id" xsi:type="AttributeExternalKey">
          <sql>networkdevice_id</sql>
          <target_class>NetworkDevice</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="networkdevice_name" xsi:type="AttributeExternalField">
          <extkey_attcode>networkdevice_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="connectableci_id" xsi:type="AttributeExternalKey">
          <sql>connectableci_id</sql>
          <target_class>ConnectableCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="connectableci_name" xsi:type="AttributeExternalField">
          <extkey_attcode>connectableci_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="network_port" xsi:type="AttributeString">
          <sql>network_port</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="device_port" xsi:type="AttributeString">
          <sql>device_port</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="connection_type" xsi:type="AttributeEnum">
          <values>
            <value id="uplink">
              <code>uplink</code>
            </value>
            <value id="downlink">
              <code>downlink</code>
            </value>
          </values>
          <sql>type</sql>
          <default_value>downlink</default_value>
          <is_null_allowed>false</is_null_allowed>
          <display_style>list</display_style>
        </field>
      </fields>
      <methods>
        <method id="AddConnectedNetworkDevice">
          <static>false</static>
          <access>protected</access>
          <type>Overload-cmdbAbstractObject</type>
          <code><![CDATA[	protected function AddConnectedNetworkDevice()
	{
		$oDevice = MetaModel::GetObject('ConnectableCI', $this->Get('connectableci_id'));
		if (is_object($oDevice) && (get_class($oDevice) == 'NetworkDevice'))
		{
			$sOQL = "SELECT  lnkConnectableCIToNetworkDevice WHERE connectableci_id = :device AND networkdevice_id = :network AND network_port = :nwport AND device_port = :devport";
			$oConnectionSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
							array(),
							array(
								'network' => $this->Get('connectableci_id'),
								'device' => $this->Get('networkdevice_id'),
								'devport' => $this->Get('network_port'),
								'nwport' => $this->Get('device_port'),
								)
			);
			if ($oConnectionSet->Count() == 0)
			{
				$sLink = $this->Get('connection_type');
				$sConnLink = ($sLink == 'uplink') ? 'downlink' : 'uplink';

				$oNewLink = new lnkConnectableCIToNetworkDevice();
				$oNewLink->Set('networkdevice_id', $this->Get('connectableci_id'));
				$oNewLink->Set('connectableci_id', $this->Get('networkdevice_id'));
				$oNewLink->Set('network_port', $this->Get('device_port'));
				$oNewLink->Set('device_port', $this->Get('network_port'));
				$oNewLink->Set('connection_type', $sConnLink);
				$oNewLink->DBInsert();
			}
		}
	}]]></code>
        </method>
        <method id="UpdateConnectedNetworkDevice">
          <static>false</static>
          <access>protected</access>
          <type>Overload-cmdbAbstractObject</type>
          <code><![CDATA[	protected function UpdateConnectedNetworkDevice()
	{
	  $aFields = array('networkdevice_id','connectableci_id','network_port','device_port','connection_type');
    $aChanges = $this->ListPreviousValuesForUpdatedAttributes();
    $aPrev = array(); // Previous values of the current link object before it was modified
    foreach ($aFields as $sFieldCode) {
        $aPrev[$sFieldCode] = array_key_exists($sFieldCode, $aChanges) ? $aChanges[$sFieldCode] : $this->Get($sFieldCode);
    }
		$sPrevLink = ($aPrev['connection_type'] == 'uplink') ? 'downlink' : 'uplink';
		$sConnLink = ($this->Get('connection_type') == 'uplink') ? 'downlink' : 'uplink';

    $oNewDevice = MetaModel::GetObject('ConnectableCI', $this->Get('connectableci_id'), false);
    $oPrevDevice = MetaModel::GetObject('ConnectableCI', $aPrev['connectableci_id'], false);
    $bNew = (is_object($oNewDevice) && (get_class($oNewDevice) == 'NetworkDevice'));
    $bPrev = (is_object($oPrevDevice) && (get_class($oPrevDevice) == 'NetworkDevice'));
		$sOQL = "SELECT  lnkConnectableCIToNetworkDevice WHERE connectableci_id = :device AND networkdevice_id = :network AND network_port = :nwport AND device_port = :devport AND connection_type = :link";

    if ($bPrev) { // There was a twin
      // Retrieve twin link using previous values of the current link
			$oConnectionSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
							array(),
							array(
								'network' => $aPrev['connectableci_id'],
								'device' => $aPrev['networkdevice_id'],
								'devport' => $aPrev['network_port'],
								'nwport' => $aPrev['device_port'],
								'link' => $sPrevLink,
								)
			);
			if ($bNew) { // and a twin must still exist, so update the existing
			  while ($oConnection = $oConnectionSet->Fetch()) {
				    $oConnection->Set('networkdevice_id', $this->Get('connectableci_id'));
				    $oConnection->Set('connectableci_id', $this->Get('networkdevice_id'));
				    $oConnection->Set('network_port', $this->Get('device_port'));
				    $oConnection->Set('device_port', $this->Get('network_port'));
				    $oConnection->Set('connection_type',$sConnLink);
				    $oConnection->DBUpdate();
			  }
			}
			else {  // and no twin is needed anymore, so delete the existing
			  while ($oConnection = $oConnectionSet->Fetch()) {
				    $oConnection->DBDelete();
			  }
			}
		}
		elseif ($bNew) { // There was no twin but a twin must exist now
      // Search for a twin link using current values inverted
			$oConnectionSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
							array(),
							array(
								'network' => $this->Get('connectableci_id'),
								'device' => $this->Get('networkdevice_id'),
								'devport' => $this->Get('device_port'),
								'nwport' => $this->Get('network_port'),
								'link' => $sConnLink,
								)
			);
			if ($oConnectionSet->Count() == 0) {
				$oNewLink = new lnkConnectableCIToNetworkDevice();
				$oNewLink->Set('networkdevice_id', $this->Get('connectableci_id'));
				$oNewLink->Set('connectableci_id', $this->Get('networkdevice_id'));
				$oNewLink->Set('network_port', $this->Get('device_port'));
				$oNewLink->Set('device_port', $this->Get('network_port'));
				$oNewLink->Set('connection_type', $sConnLink);
				$oNewLink->DBInsert();
			}
		}
	}]]></code>
        </method>
        <method id="DeleteConnectedNetworkDevice">
          <static>false</static>
          <access>protected</access>
          <type>Overload-cmdbAbstractObject</type>
          <code><![CDATA[	protected function DeleteConnectedNetworkDevice()
	{
		// The device might be already deleted (reentrance in the current procedure when both device are NETWORK devices!)
		$oDevice = MetaModel::GetObject('ConnectableCI', $this->Get('connectableci_id'), false);
		if (is_object($oDevice) && (get_class($oDevice) == 'NetworkDevice'))
		{
			// Track and delete the counterpart link
			$sOQL = "SELECT  lnkConnectableCIToNetworkDevice WHERE connectableci_id = :device AND networkdevice_id = :network AND network_port = :nwport AND device_port = :devport";
			$oConnectionSet = new DBObjectSet(DBObjectSearch::FromOQL($sOQL),
							array(),
							array(
								'network' => $this->Get('connectableci_id'),
								'device' => $this->Get('networkdevice_id'),
								'devport' => $this->Get('network_port'),
								'nwport' => $this->Get('device_port'),
								)
			);
			// There should be one link - do it in a safe manner anyway
			while ($oConnection = $oConnectionSet->Fetch())
			{
				$oConnection->DBDelete();
			}
		}
	}]]></code>
        </method>
        <method id="AfterInsert">
          <static>false</static>
          <access>protected</access>
          <type>Overload-DBObject</type>
          <code><![CDATA[	protected function AfterInsert()
	{
		$this->AddConnectedNetworkDevice();
		parent::AfterInsert();
	}]]></code>
        </method>
        <method id="AfterUpdate">
          <static>false</static>
          <access>protected</access>
          <type>Overload-DBObject</type>
          <code><![CDATA[	protected function AfterUpdate()
	{
		$this->UpdateConnectedNetworkDevice();
		parent::AfterUpdate();
	}]]></code>
        </method>
        <method id="AfterDelete">
          <static>false</static>
          <access>protected</access>
          <type>Overload-DBObject</type>
          <code><![CDATA[	protected function AfterDelete()
	{
		$this->DeleteConnectedNetworkDevice();
		parent::AfterDelete();
	}]]></code>
        </method>
      </methods>
      <presentation>
        <details>
          <items>
            <item id="connectableci_id">
              <rank>10</rank>
            </item>
            <item id="device_port">
              <rank>20</rank>
            </item>
            <item id="networkdevice_id">
              <rank>30</rank>
            </item>
            <item id="network_port">
              <rank>40</rank>
            </item>
            <item id="connection_type">
              <rank>50</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="networkdevice_id">
              <rank>10</rank>
            </item>
            <item id="connectableci_id">
              <rank>20</rank>
            </item>
            <item id="network_port">
              <rank>30</rank>
            </item>
            <item id="device_port">
              <rank>40</rank>
            </item>
            <item id="connection_type">
              <rank>50</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="connectableci_id">
              <rank>10</rank>
            </item>
            <item id="networkdevice_id">
              <rank>20</rank>
            </item>
            <item id="device_port">
              <rank>30</rank>
            </item>
            <item id="network_port">
              <rank>40</rank>
            </item>
            <item id="connection_type">
              <rank>50</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkApplicationSolutionToFunctionalCI" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkapplicationsolutiontofunctionalci</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="applicationsolution_name"/>
            <attribute id="functionalci_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="applicationsolution_id"/>
            <attribute id="functionalci_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="applicationsolution_id"/>
              <attribute id="functionalci_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="applicationsolution_id" xsi:type="AttributeExternalKey">
          <sql>applicationsolution_id</sql>
          <target_class>ApplicationSolution</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="applicationsolution_name" xsi:type="AttributeExternalField">
          <extkey_attcode>applicationsolution_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="functionalci_id" xsi:type="AttributeExternalKey">
          <sql>functionalci_id</sql>
          <target_class>FunctionalCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="functionalci_name" xsi:type="AttributeExternalField">
          <extkey_attcode>functionalci_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="applicationsolution_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="applicationsolution_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="applicationsolution_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="lnkApplicationSolutionToBusinessProcess" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkapplicationsolutiontobusinessprocess</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="applicationsolution_name"/>
            <attribute id="businessprocess_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="businessprocess_id"/>
            <attribute id="applicationsolution_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="applicationsolution_id"/>
              <attribute id="businessprocess_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="businessprocess_id" xsi:type="AttributeExternalKey">
          <sql>businessprocess_id</sql>
          <target_class>BusinessProcess</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="businessprocess_name" xsi:type="AttributeExternalField">
          <extkey_attcode>businessprocess_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="applicationsolution_id" xsi:type="AttributeExternalKey">
          <sql>applicationsolution_id</sql>
          <target_class>ApplicationSolution</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="applicationsolution_name" xsi:type="AttributeExternalField">
          <extkey_attcode>applicationsolution_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="applicationsolution_id">
              <rank>10</rank>
            </item>
            <item id="businessprocess_id">
              <rank>20</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="businessprocess_id">
              <rank>10</rank>
            </item>
            <item id="applicationsolution_id">
              <rank>20</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="businessprocess_id">
              <rank>10</rank>
            </item>
            <item id="applicationsolution_id">
              <rank>20</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="Group" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <category>bizmodel,searchable,configmgmt</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>group</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="name"/>
          </attributes>
          <complementary_attributes>
            <attribute id="owner_name"/>
            <attribute id="type"/>
          </complementary_attributes>
        </naming>
        <fields_semantic>
          <state_attribute>status</state_attribute>
        </fields_semantic>
        <style>
          <icon>../../images/icons/icons8-department.svg</icon>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="name"/>
            <attribute id="org_id"/>
            <attribute id="owner_name"/>
          </attributes>
        </reconciliation>
        <obsolescence>
          <condition>status='obsolete'</condition>
        </obsolescence>
      </properties>
      <fields>
        <field id="name" xsi:type="AttributeString">
          <sql>name</sql>
          <default_value/>
          <is_null_allowed>false</is_null_allowed>
        </field>
        <field id="status" xsi:type="AttributeEnum">
          <sort_type>rank</sort_type>
          <values>
            <value id="production">
              <code>production</code>
              <rank>20</rank>
            </value>
            <value id="implementation">
              <code>implementation</code>
              <rank>10</rank>
            </value>
            <value id="obsolete">
              <code>obsolete</code>
              <rank>30</rank>
            </value>
          </values>
          <sql>status</sql>
          <default_value>implementation</default_value>
          <is_null_allowed>false</is_null_allowed>
          <display_style>list</display_style>
        </field>
        <field id="org_id" xsi:type="AttributeExternalKey">
          <sql>org_id</sql>
          <target_class>Organization</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="owner_name" xsi:type="AttributeExternalField">
          <extkey_attcode>org_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="description" xsi:type="AttributeText">
          <sql>description</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="type" xsi:type="AttributeString">
          <sql>type</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
        <field id="parent_id" xsi:type="AttributeHierarchicalKey">
          <dependencies>
            <attribute id="org_id"/>
          </dependencies>
          <sql>parent_id</sql>
          <is_null_allowed>true</is_null_allowed>
          <on_target_delete>DEL_MANUAL</on_target_delete>
        </field>
        <field id="parent_name" xsi:type="AttributeExternalField">
          <extkey_attcode>parent_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="ci_list" xsi:type="AttributeLinkedSetIndirect">
          <linked_class>lnkGroupToCI</linked_class>
          <ext_key_to_me>group_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>ci_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="status">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
            <item id="type">
              <rank>40</rank>
            </item>
            <item id="description">
              <rank>50</rank>
            </item>
            <item id="parent_id">
              <rank>60</rank>
            </item>
            <item id="ci_list">
              <rank>70</rank>
            </item>
          </items>
        </details>
        <default_search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="type">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
          </items>
        </default_search>
        <search>
          <items>
            <item id="name">
              <rank>10</rank>
            </item>
            <item id="status">
              <rank>20</rank>
            </item>
            <item id="org_id">
              <rank>30</rank>
            </item>
            <item id="type">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="status">
              <rank>10</rank>
            </item>
            <item id="org_id">
              <rank>20</rank>
            </item>
            <item id="type">
              <rank>30</rank>
            </item>
            <item id="parent_id">
              <rank>40</rank>
            </item>
          </items>
        </list>
        <summary>
          <items>
            <item id="org_id">
              <rank>10</rank>
            </item>
            <item id="type">
              <rank>20</rank>
            </item>
            <item id="description">
              <rank>30</rank>
            </item>
            <item id="parent_id">
              <rank>40</rank>
            </item>
          </items>
        </summary>
      </presentation>
    </class>
    <class id="lnkGroupToCI" _delta="define">
      <parent>cmdbAbstractObject</parent>
      <properties>
        <is_link>1</is_link>
        <category>bizmodel,configmgmt</category>
        <abstract>false</abstract>
        <key_type>autoincrement</key_type>
        <db_table>lnkgrouptoci</db_table>
        <db_key_field>id</db_key_field>
        <db_final_class_field/>
        <naming>
          <attributes>
            <attribute id="group_name"/>
            <attribute id="ci_name"/>
          </attributes>
        </naming>
        <style>
          <icon/>
        </style>
        <reconciliation>
          <attributes>
            <attribute id="group_id"/>
            <attribute id="ci_id"/>
          </attributes>
        </reconciliation>
        <uniqueness_rules>
          <rule id="no_duplicate">
            <attributes>
              <attribute id="group_id"/>
              <attribute id="ci_id"/>
            </attributes>
            <filter><![CDATA[]]></filter>
            <disabled>false</disabled>
            <is_blocking>true</is_blocking>
          </rule>
        </uniqueness_rules>
      </properties>
      <fields>
        <field id="group_id" xsi:type="AttributeExternalKey">
          <sql>group_id</sql>
          <target_class>Group</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="group_name" xsi:type="AttributeExternalField">
          <extkey_attcode>group_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="ci_id" xsi:type="AttributeExternalKey">
          <sql>ci_id</sql>
          <target_class>FunctionalCI</target_class>
          <is_null_allowed>false</is_null_allowed>
          <on_target_delete>DEL_AUTO</on_target_delete>
        </field>
        <field id="ci_name" xsi:type="AttributeExternalField">
          <extkey_attcode>ci_id</extkey_attcode>
          <target_attcode>name</target_attcode>
        </field>
        <field id="reason" xsi:type="AttributeString">
          <sql>reason</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="group_id">
              <rank>10</rank>
            </item>
            <item id="ci_id">
              <rank>20</rank>
            </item>
            <item id="reason">
              <rank>30</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="group_id">
              <rank>10</rank>
            </item>
            <item id="ci_id">
              <rank>20</rank>
            </item>
            <item id="reason">
              <rank>30</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="group_id">
              <rank>10</rank>
            </item>
            <item id="ci_id">
              <rank>20</rank>
            </item>
            <item id="reason">
              <rank>30</rank>
            </item>
          </items>
        </list>
      </presentation>
    </class>
    <class id="Document" _delta="must_exist">
      <fields>
        <field id="cis_list" xsi:type="AttributeLinkedSetIndirect" _delta="define">
          <linked_class>lnkDocumentToFunctionalCI</linked_class>
          <ext_key_to_me>document_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>functionalci_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
      <methods/>
      <presentation>
        <details>
          <items>
            <item id="cis_list" _delta="define">
              <rank>60</rank>
            </item>
          </items>
        </details>
      </presentation>
    </class>
    <class id="Location" _delta="must_exist">
      <fields>
        <field id="physicaldevice_list" xsi:type="AttributeLinkedSet" _delta="define">
          <linked_class>PhysicalDevice</linked_class>
          <ext_key_to_me>location_id</ext_key_to_me>
          <edit_mode>add_only</edit_mode>
          <count_min>0</count_min>
          <count_max>0</count_max>
        </field>
      </fields>
      <presentation>
        <details>
          <items>
            <item id="physicaldevice_list" _delta="define">
              <rank>90</rank>
            </item>
          </items>
        </details>
      </presentation>
    </class>
    <class id="Contact" _delta="must_exist">
      <fields>
        <field id="cis_list" xsi:type="AttributeLinkedSetIndirect" _delta="define">
          <linked_class>lnkContactToFunctionalCI</linked_class>
          <ext_key_to_me>contact_id</ext_key_to_me>
          <count_min>0</count_min>
          <count_max>0</count_max>
          <ext_key_to_remote>functionalci_id</ext_key_to_remote>
          <duplicates/>
        </field>
      </fields>
    </class>
    <class id="Person" _delta="must_exist">
      <presentation>
        <details>
          <items>
            <item id="cis_list" _delta="define">
              <rank>30</rank>
            </item>
          </items>
        </details>
      </presentation>
    </class>
    <class id="Team" _delta="must_exist">
      <presentation>
        <details>
          <items>
            <item id="cis_list" _delta="define">
              <rank>90</rank>
            </item>
          </items>
        </details>
      </presentation>
    </class>
    <class id="DocumentFile" _delta="must_exist">
      <presentation>
        <details><items><item id="cis_list" _delta="define"><rank>70</rank></item></items>&gt;
        </details>
      </presentation>
    </class>
    <class id="DocumentWeb" _delta="must_exist">
      <presentation>
        <details>
          <items>
            <item id="cis_list" _delta="define">
              <rank>60</rank>
            </item>
          </items>
        </details>
      </presentation>
    </class>
    <class id="DocumentNote" _delta="must_exist">
      <presentation>
        <details>
          <items>
            <item id="cis_list" _delta="define">
              <rank>70</rank>
            </item>
          </items>
        </details>
      </presentation>
    </class>
  </classes>
  <menus>
    <menu id="WelcomeMenuPage" xsi:type="DashboardMenuNode" _delta="must_exist">
      <rank>10</rank>
      <parent>WelcomeMenu</parent>
      <definition>
        <layout>DashboardLayoutOneCol</layout>
        <title/>
        <cells>
          <cell id="0">
            <rank>0</rank>
            <dashlets>
              <dashlet id="2" xsi:type="DashletBadge" _delta="define">
                <rank>1</rank>
                <class>BusinessProcess</class>
              </dashlet>
              <dashlet id="3" xsi:type="DashletBadge" _delta="define">
                <rank>2</rank>
                <class>ApplicationSolution</class>
              </dashlet>
              <dashlet id="7" xsi:type="DashletBadge" _delta="define">
                <rank>6</rank>
                <class>Server</class>
              </dashlet>
              <dashlet id="8" xsi:type="DashletBadge" _delta="define">
                <rank>7</rank>
                <class>NetworkDevice</class>
              </dashlet>
            </dashlets>
          </cell>
        </cells>
      </definition>
    </menu>
    <menu id="ConfigManagementOverview" xsi:type="DashboardMenuNode" _delta="define">
      <rank>1</rank>
      <parent>ConfigManagement</parent>
      <definition>
        <layout>DashboardLayoutOneCol</layout>
        <title>Menu:ConfigManagementOverview</title>
        <cells>
          <cell id="0">
            <rank>0</rank>
            <dashlets>
              <dashlet id="1" xsi:type="DashletHeaderStatic">
                <rank>0</rank>
                <title>Menu:ConfigManagement:AllDevices</title>
                <icon>../images/icons/icons8-server.svg</icon>
                <subtitle>Menu_ConfigManagement_AllDevices</subtitle>
              </dashlet>
              <dashlet id="2" xsi:type="DashletBadge">
                <rank>3</rank>
                <class>Server</class>
              </dashlet>
              <dashlet id="3" xsi:type="DashletBadge">
                <rank>4</rank>
                <class>NetworkDevice</class>
              </dashlet>
            </dashlets>
          </cell>
          <cell id="3">
            <rank>3</rank>
            <dashlets>
              <dashlet id="4" xsi:type="DashletHeaderStatic">
                <rank>0</rank>
                <title>Menu:ConfigManagement:SWAndApps</title>
                <icon>../images/icons/icons8-software.svg</icon>
              </dashlet>
              <dashlet id="5" xsi:type="DashletBadge">
                <rank>1</rank>
                <class>Middleware</class>
              </dashlet>
              <dashlet id="6" xsi:type="DashletBadge">
                <rank>2</rank>
                <class>DBServer</class>
              </dashlet>
              <dashlet id="7" xsi:type="DashletBadge">
                <rank>3</rank>
                <class>WebServer</class>
              </dashlet>
              <dashlet id="8" xsi:type="DashletBadge">
                <rank>4</rank>
                <class>PCSoftware</class>
              </dashlet>
              <dashlet id="9" xsi:type="DashletBadge">
                <rank>5</rank>
                <class>OtherSoftware</class>
              </dashlet>
              <dashlet id="10" xsi:type="DashletBadge">
                <rank>6</rank>
                <class>MiddlewareInstance</class>
              </dashlet>
              <dashlet id="11" xsi:type="DashletBadge">
                <rank>7</rank>
                <class>DatabaseSchema</class>
              </dashlet>
              <dashlet id="12" xsi:type="DashletBadge">
                <rank>8</rank>
                <class>WebApplication</class>
              </dashlet>
              <dashlet id="13" xsi:type="DashletBadge">
                <rank>9</rank>
                <class>Patch</class>
              </dashlet>
              <dashlet id="14" xsi:type="DashletBadge">
                <rank>10</rank>
                <class>Licence</class>
              </dashlet>
            </dashlets>
          </cell>
          <cell id="4">
            <rank>4</rank>
            <dashlets>
              <dashlet id="15" xsi:type="DashletHeaderStatic">
                <rank>0</rank>
                <title>Menu:ConfigManagement:Misc</title>
                <icon>../images/icons/icons8-network.svg</icon>
              </dashlet>
              <dashlet id="16" xsi:type="DashletBadge">
                <rank>1</rank>
                <class>NetworkInterface</class>
              </dashlet>
              <dashlet id="17" xsi:type="DashletBadge">
                <rank>2</rank>
                <class>Subnet</class>
              </dashlet>
              <dashlet id="vlan" xsi:type="DashletBadge">
                <rank>2.1</rank>
                <class>VLAN</class>
              </dashlet>
              <dashlet id="18" xsi:type="DashletBadge">
                <rank>4</rank>
                <class>BusinessProcess</class>
              </dashlet>
              <dashlet id="19" xsi:type="DashletBadge">
                <rank>5</rank>
                <class>ApplicationSolution</class>
              </dashlet>
              <dashlet id="20" xsi:type="DashletBadge">
                <rank>6</rank>
                <class>Group</class>
              </dashlet>
            </dashlets>
          </cell>
        </cells>
      </definition>
    </menu>
    <menu id="Typology" xsi:type="DashboardMenuNode" _delta="if_exists">
      <rank>80</rank>
      <parent>Catalogs</parent>
      <definition>
        <layout>DashboardLayoutOneCol</layout>
        <title>Menu:ConfigManagement:Typology</title>
        <cells>
          <cell id="0">
            <rank>0</rank>
            <dashlets>
              <dashlet id="2" xsi:type="DashletBadge" _delta="define">
                <rank>1</rank>
                <class>Brand</class>
              </dashlet>
              <dashlet id="3" xsi:type="DashletBadge" _delta="define">
                <rank>2</rank>
                <class>Model</class>
              </dashlet>
              <dashlet id="4" xsi:type="DashletBadge" _delta="define">
                <rank>3</rank>
                <class>OSFamily</class>
              </dashlet>
              <dashlet id="5" xsi:type="DashletBadge" _delta="define">
                <rank>4</rank>
                <class>OSVersion</class>
              </dashlet>
              <dashlet id="6" xsi:type="DashletBadge" _delta="define">
                <rank>5</rank>
                <class>IOSVersion</class>
              </dashlet>
              <dashlet id="7" xsi:type="DashletBadge" _delta="define">
                <rank>6</rank>
                <class>NetworkDeviceType</class>
              </dashlet>
            </dashlets>
          </cell>
        </cells>
      </definition>
    </menu>
    <menu id="NewCI" xsi:type="NewObjectMenuNode" _delta="define">
      <rank>4</rank>
      <parent>ConfigManagement</parent>
      <class>FunctionalCI</class>
    </menu>
    <menu id="SearchCIs" xsi:type="SearchMenuNode" _delta="define">
      <rank>5</rank>
      <parent>ConfigManagement</parent>
      <class>FunctionalCI</class>
    </menu>
    <menu id="Software" xsi:type="OQLMenuNode" _delta="define">
      <rank>7</rank>
      <parent>ConfigManagement</parent>
      <oql>SELECT Software</oql>
      <do_search>1</do_search>
    </menu>
    <menu id="Group" xsi:type="OQLMenuNode" _delta="define">
      <rank>8</rank>
      <parent>ConfigManagement</parent>
      <oql>SELECT Group</oql>
      <do_search>1</do_search>
    </menu>
  </menus>
</itop_design>
