Fix JsonSchema indexes

JsonSchema was throwing errors in the validator, so implement changes to
the update script to add the appropiate indexes.

Tested by:
Schema validator passes on the JsonSchema Fields

Change-Id: I6cb2737901b55c1089aef744d3ce3c3dfe13f17f
Signed-off-by: Ed Tanous <ed.tanous@intel.com>
diff --git a/static/redfish/v1/JsonSchemas/Fabric/index.json b/static/redfish/v1/JsonSchemas/Fabric/index.json
index 8ef086c..ebda4d0 100644
--- a/static/redfish/v1/JsonSchemas/Fabric/index.json
+++ b/static/redfish/v1/JsonSchemas/Fabric/index.json
@@ -1,189 +1,21 @@
 {
-    "$ref": "#/definitions/Fabric",
-    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema.v1_3_0.json",
-    "copyright": "Copyright 2014-2017 Distributed Management Task Force, Inc. (DMTF). For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
-    "definitions": {
-        "Actions": {
-            "additionalProperties": false,
-            "description": "The available actions for this resource.",
-            "longDescription": "This type shall contain the available actions for this resource.",
-            "patternProperties": {
-                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message|Privileges)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
-                    "description": "This property shall specify a valid odata or Redfish property.",
-                    "type": [
-                        "array",
-                        "boolean",
-                        "number",
-                        "null",
-                        "object",
-                        "string"
-                    ]
-                }
-            },
-            "properties": {
-                "Oem": {
-                    "$ref": "#/definitions/OemActions"
-                }
-            },
-            "type": "object"
-        },
-        "Fabric": {
-            "additionalProperties": false,
-            "description": "The Fabric schema represents a simple fabric consisting of one or more switches, zero or more endpoints, and zero or more zones.",
-            "longDescription": "This resource shall be used to represent a simple switchable fabric for a Redfish implementation.",
-            "patternProperties": {
-                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message|Privileges)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
-                    "description": "This property shall specify a valid odata or Redfish property.",
-                    "type": [
-                        "array",
-                        "boolean",
-                        "number",
-                        "null",
-                        "object",
-                        "string"
-                    ]
-                }
-            },
-            "properties": {
-                "@odata.context": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_1.json#/definitions/context"
-                },
-                "@odata.id": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_1.json#/definitions/id"
-                },
-                "@odata.type": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_1.json#/definitions/type"
-                },
-                "Actions": {
-                    "$ref": "#/definitions/Actions",
-                    "description": "The available actions for this resource.",
-                    "longDescription": "The Actions property shall contain the available actions for this resource."
-                },
-                "Description": {
-                    "anyOf": [
-                        {
-                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
-                        },
-                        {
-                            "type": "null"
-                        }
-                    ],
-                    "readonly": true
-                },
-                "Endpoints": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/EndpointCollection.json#/definitions/EndpointCollection",
-                    "description": "A collection of references to the endpoints contained in this fabric.",
-                    "longDescription": "The value of this property shall be a reference to the resources that this fabric uses and shall reference a resource of type Endpoint.",
-                    "readonly": true
-                },
-                "FabricType": {
-                    "anyOf": [
-                        {
-                            "$ref": "http://redfish.dmtf.org/schemas/v1/Protocol.json#/definitions/Protocol"
-                        },
-                        {
-                            "type": "null"
-                        }
-                    ],
-                    "description": "The protocol being sent over this fabric.",
-                    "longDescription": "The value of this property shall contain the type of fabric being represented by this simple fabric.",
-                    "readonly": true
-                },
-                "Id": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
-                    "readonly": true
-                },
-                "Links": {
-                    "$ref": "#/definitions/Links",
-                    "description": "Contains references to other resources that are related to this resource.",
-                    "longDescription": "The Links property, as described by the Redfish Specification, shall contain references to resources that are related to, but not contained by (subordinate to), this resource."
-                },
-                "MaxZones": {
-                    "description": "The value of this property shall contain the maximum number of zones the switch can currently configure.",
-                    "longDescription": "The value of this property shall contain the maximum number of zones the switch can currently configure. This value can change based on changes in the logical or physical configuration of the system.",
-                    "readonly": true,
-                    "type": [
-                        "number",
-                        "null"
-                    ]
-                },
-                "Name": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
-                    "readonly": true
-                },
-                "Oem": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
-                    "description": "This is the manufacturer/provider specific extension moniker used to divide the Oem object into sections.",
-                    "longDescription": "The value of this string shall be of the format for the reserved word *Oem*."
-                },
-                "Status": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status"
-                },
-                "Switches": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/SwitchCollection.json#/definitions/SwitchCollection",
-                    "description": "A collection of references to the switches contained in this fabric.",
-                    "longDescription": "The value of this property shall be a reference to the resources that this fabric uses and shall reference a resource of type Switch.",
-                    "readonly": true
-                },
-                "Zones": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/ZoneCollection.json#/definitions/ZoneCollection",
-                    "description": "A collection of references to the zones contained in this fabric.",
-                    "longDescription": "The value of this property shall be a reference to the resources that this fabric uses and shall reference a resource of type Zone.",
-                    "readonly": true
-                }
-            },
-            "required": [
-                "Id",
-                "Name"
-            ],
-            "type": "object"
-        },
-        "Links": {
-            "additionalProperties": false,
-            "description": "Contains references to other resources that are related to this resource.",
-            "longDescription": "This type, as described by the Redfish Specification, shall contain references to resources that are related to, but not contained by (subordinate to), this resource.",
-            "patternProperties": {
-                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message|Privileges)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
-                    "description": "This property shall specify a valid odata or Redfish property.",
-                    "type": [
-                        "array",
-                        "boolean",
-                        "number",
-                        "null",
-                        "object",
-                        "string"
-                    ]
-                }
-            },
-            "properties": {
-                "Oem": {
-                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
-                    "description": "Oem extension object.",
-                    "longDescription": "This object represents the Oem property.  All values for resources described by this schema shall comply to the requirements as described in the Redfish specification."
-                }
-            },
-            "type": "object"
-        },
-        "OemActions": {
-            "additionalProperties": true,
-            "description": "The available OEM specific actions for this resource.",
-            "longDescription": "This type shall contain any additional OEM actions for this resource.",
-            "patternProperties": {
-                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message|Privileges)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
-                    "description": "This property shall specify a valid odata or Redfish property.",
-                    "type": [
-                        "array",
-                        "boolean",
-                        "number",
-                        "null",
-                        "object",
-                        "string"
-                    ]
-                }
-            },
-            "properties": {},
-            "type": "object"
+    "@odata.context": "/redfish/v1/$metadata#JsonSchemaFile.JsonSchemaFile",
+    "@odata.id": "/redfish/v1/JSONSchemas/Fabric",
+    "@odata.type": "#JsonSchemaFile.v1_0_2.JsonSchemaFile",
+    "Name": "Fabric Schema File",
+    "Schema": "#Fabric.Fabric",
+    "Description": "Fabric Schema File Location",
+    "Id": "Fabric",
+    "Languages": [
+        "en"
+    ],
+    "Languages@odata.count": 1,
+    "Location": [
+        {
+            "Language": "en",
+            "PublicationUri": "http://redfish.dmtf.org/schemas/v1/Fabric.json",
+            "Uri": "/redfish/v1/JSONSchemas/Fabric/Fabric.json"
         }
-    },
-    "title": "#Fabric.v1_0_3.Fabric"
+    ],
+    "Location@odata.count": 1
 }
\ No newline at end of file