ATLAS-2306: Add Area 0 0045 model and other minor model amendments

Signed-off-by: Madhan Neethiraj <madhan@apache.org>
diff --git a/addons/models/0000-Area0/0010-base_model.json b/addons/models/0000-Area0/0010-base_model.json
index fcc911c..8d4234f 100644
--- a/addons/models/0000-Area0/0010-base_model.json
+++ b/addons/models/0000-Area0/0010-base_model.json
@@ -66,6 +66,7 @@
         },
         {
             "name": "Infrastructure",
+            "description":"Infrastructure can be IT infrastructure, which contains hosts and servers. Infrastructure might not be IT orientated, such as 'Car' for IoT applications.",
             "superTypes": [
                 "Referenceable",
                 "Asset"
diff --git a/addons/models/0000-Area0/0030-HostsAndPlatforms_model.json b/addons/models/0000-Area0/0030-HostsAndPlatforms_model.json
index 18b1039..9c7415e 100644
--- a/addons/models/0000-Area0/0030-HostsAndPlatforms_model.json
+++ b/addons/models/0000-Area0/0030-HostsAndPlatforms_model.json
@@ -20,10 +20,19 @@
   ],
   "entityDefs": [
     {
+      "name": "ITInfrastructure",
+      "description":"This is IT Infrastructure.",
+      "superTypes": [
+        "Infrastructure"
+      ],
+      "typeVersion": "1.0",
+      "attributeDefs": []
+    },
+    {
       "name": "Host",
       "description":"A Host is an IT Infrastructure concept associated with the hardware running the systems. It provides a mechanism for describing a unit of hardware that provides the ability to host software servers.",
       "superTypes": [
-        "Infrastructure"
+        "ITInfrastructure"
       ],
       "typeVersion": "1.0",
       "attributeDefs": []
diff --git a/addons/models/0000-Area0/0040-Servers_model.json b/addons/models/0000-Area0/0040-Servers_model.json
index fa505be..a1b86e9 100644
--- a/addons/models/0000-Area0/0040-Servers_model.json
+++ b/addons/models/0000-Area0/0040-Servers_model.json
@@ -19,10 +19,10 @@
   "classificationDefs": [],
   "entityDefs": [
     {
-      "name": "Server",
+      "name": "SoftwareServer",
       "description": "Software Servers describe the middleware software servers (such as application servers, data movement engines and database servers) that run on the Hosts. Within the Software Server model, we capture the userid that it runs under. Most metadata repositories are run in a secure mode requiring incoming requests to incluye the requester's security credentials. Therefore we have an identifier for each unique logged on security identity (aka userId). This identity is recorded within specific entities and relationships when they are created or updated. By storing the user identifier for the server, it is possible to correlate the server with the changes to the metadata (and related data assets) that it makes.",
       "superTypes": [
-        "Infrastructure"
+        "ITInfrastructure"
       ],
       "typeVersion": "1.0",
       "attributeDefs": [
@@ -109,7 +109,7 @@
       ]
     },
     {
-      "name": "ServerCapability",
+      "name": "SoftwareServerCapability",
       "description": "Within the server are many capabilities. These range from full applications to security plugins to logging and encryption libraries. Different organizations and tools can choose the granularity in which the capabilities are captured in order to provide appropriate context to data assets and the decisions made around them.",
       "superTypes": [
         "Infrastructure"
@@ -179,7 +179,7 @@
       "typeVersion": "1.0",
       "endDef1": {
         "name": "endpoints",
-        "type": "Server",
+        "type": "SoftwareServer",
         "cardinality": "SET"
       },
       "endDef2": {
@@ -194,13 +194,13 @@
       "typeVersion": "1.0",
       "endDef1": {
         "name": "capabilities",
-        "type": "Server",
+        "type": "SoftwareServer",
         "cardinality": "SET",
         "isContainer": true
       },
       "endDef2": {
         "name": "servers",
-        "type": "ServerCapability",
+        "type": "SoftwareServerCapability",
         "cardinality": "SET"
       },
       "relationshipCategory": "AGGREGATION",
@@ -242,7 +242,7 @@
       },
       "endDef2": {
         "name": "host",
-        "type": "Server",
+        "type": "SoftwareServer",
         "cardinality": "SINGLE"
 
       },
diff --git a/addons/models/0000-Area0/0045-ServerAndAssets_model.json b/addons/models/0000-Area0/0045-ServerAndAssets_model.json
new file mode 100644
index 0000000..b9ebc78
--- /dev/null
+++ b/addons/models/0000-Area0/0045-ServerAndAssets_model.json
@@ -0,0 +1,70 @@
+{
+  "enumDefs": [
+    {
+      "name": "ServerAssetUseType",
+      "description": "The media usage types.",
+      "typeVersion": "1.0",
+      "elementDefs": [
+        {
+          "ordinal": 0,
+          "value": "OWNED"
+        },
+        {
+          "ordinal": 1,
+          "value": "GOVERNS"
+        },
+        {
+          "ordinal": 2,
+          "value": "MAINTAINS"
+        },
+        {
+          "ordinal": 3,
+          "value": "USES"
+        },
+        {
+          "ordinal": 99,
+          "value": "OTHER"
+        }
+      ]
+    }
+  ],
+  "structDefs": [],
+  "classificationDefs": [],
+  "entityDefs": [],
+  "relationshipDefs": [
+    {
+      "name": "SoftwareServerAssetUse",
+      "description": "Assets are managed or consumed by Software Server Capabilities",
+      "typeVersion": "1.0",
+      "endDef1": {
+        "name": "consumedBy",
+        "type": "Asset",
+        "cardinality": "SET"
+      },
+      "endDef2": {
+        "name": "consumedAsset",
+        "type": "SoftwareServerCapability",
+        "cardinality": "SET"
+      },
+      "relationshipCategory": "ASSOCIATION",
+      "attributeDefs": [
+        {
+          "name": "useType",
+          "typeName": "ServerAssetUseType",
+          "cardinality": "SINGLE",
+          "isIndexable": true,
+          "isOptional": true,
+          "isUnique": false
+        },
+        {
+          "name": "description",
+          "typeName": "string",
+          "cardinality": "SINGLE",
+          "isIndexable": true,
+          "isOptional": true,
+          "isUnique": false
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
diff --git a/addons/models/0000-Area0/0070-NetworksAndGateways_model.json b/addons/models/0000-Area0/0070-NetworksAndGateways_model.json
index 7e41536..e729fa9 100644
--- a/addons/models/0000-Area0/0070-NetworksAndGateways_model.json
+++ b/addons/models/0000-Area0/0070-NetworksAndGateways_model.json
@@ -6,7 +6,7 @@
     {
       "name": "Network",
       "superTypes": [
-        "Infrastructure"
+        "ITInfrastructure"
       ],
       "typeVersion": "1.0",
       "attributeDefs": []
@@ -14,7 +14,7 @@
     {
       "name": "NetworkGateway",
       "superTypes": [
-        "ServerCapability"
+        "SoftwareServerCapability"
       ],
       "typeVersion": "1.0",
       "attributeDefs": []
diff --git a/addons/models/0000-Area0/0090-CloudPlatformsAndServices.json b/addons/models/0000-Area0/0090-CloudPlatformsAndServices.json
index de5fb36..b824418 100644
--- a/addons/models/0000-Area0/0090-CloudPlatformsAndServices.json
+++ b/addons/models/0000-Area0/0090-CloudPlatformsAndServices.json
@@ -23,7 +23,7 @@
       "name": "CloudPlatform",
       "description":"If the cloud provider is offering platform as a service (PaaS), an application may deploy server capability onto the cloud platform.",
       "superTypes": [],
-      "entityTypes":["Server"],
+      "entityTypes":["SoftwareServer"],
       "typeVersion": "1.0",
       "attributeDefs": [
         {
@@ -40,7 +40,7 @@
       "name": "CloudService",
       "description":"If the cloud provider is offering Software as a Service (SaaS) then it has provided APIs backed by pre-deployed server capability that an organization can call as a cloud service.",
       "superTypes": [],
-      "entityTypes":["ServerCapability"],
+      "entityTypes":["SoftwareServerCapability"],
       "typeVersion": "1.0",
       "attributeDefs": [
         {