summaryrefslogtreecommitdiff
path: root/static/redfish/v1/JsonSchemas/CollectionCapabilities/CollectionCapabilities.json
blob: 237727f27fda23a7e593fa1669a66f2f5bcddff2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
{
    "$id": "http://redfish.dmtf.org/schemas/v1/CollectionCapabilities.v1_1_1.json",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2018 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
    "definitions": {
        "Capability": {
            "additionalProperties": false,
            "description": "This type describes a specific capability of a collection for a given use case.",
            "longDescription": "This type shall describe a specific capability of a collection in terms of how a client is able to create new resources within the collection for the specified use case.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "CapabilitiesObject": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/idRef",
                    "description": "Reference to the resource the client may GET to in order to understand how to form a POST request for a given collection.",
                    "longDescription": "The value of this property shall be a reference to a Resource that matches the type for the given collection and shall contain annotations that describe the properties allowed in the POST request.",
                    "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."
                },
                "UseCase": {
                    "$ref": "#/definitions/UseCase",
                    "description": "This property represents the use case in which a client may issue a POST request to the collection.",
                    "longDescription": "The value of this property shall be an enumerated value describing the use case for this capability instance.",
                    "readonly": true
                }
            },
            "required": [
                "CapabilitiesObject",
                "UseCase",
                "Links"
            ],
            "type": "object"
        },
        "CollectionCapabilities": {
            "additionalProperties": false,
            "description": "This type describes the capabilities of a collection.",
            "longDescription": "This type shall describe any capabilities of a collection in terms of how a client is able to create new resources within the collection.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "Capabilities": {
                    "description": "This property contains the list of capabilities supported by this resource.",
                    "items": {
                        "$ref": "#/definitions/Capability"
                    },
                    "longDescription": "The value of this property shall be an array of Capability structures.",
                    "type": "array"
                }
            },
            "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)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "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."
                },
                "RelatedItem": {
                    "description": "The ID(s) of the resources associated with this capability.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/idRef"
                    },
                    "longDescription": "The value of this property shall be an array of IDs containing pointers consistent with JSON pointer syntax to the resource that is related to this capability.",
                    "readonly": true,
                    "type": "array"
                },
                "RelatedItem@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/count"
                },
                "TargetCollection": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResourceCollection",
                    "description": "Reference to the collection that this capabilities structure is describing.",
                    "longDescription": "The value of this property shall be a reference to a Resource Collection that this structure is describing.  This structure may be used by a client in order to understand how to form the POST request for the given collection.",
                    "readonly": true
                }
            },
            "required": [
                "TargetCollection"
            ],
            "type": "object"
        },
        "UseCase": {
            "enum": [
                "ComputerSystemComposition",
                "ComputerSystemConstrainedComposition",
                "VolumeCreation"
            ],
            "enumDescriptions": {
                "ComputerSystemComposition": "This capability describes a client creating a new ComputerSystem instance from a set of disaggregated hardware.",
                "ComputerSystemConstrainedComposition": "This capability describes a client creating a new ComputerSystem instance from a set of constraints.",
                "VolumeCreation": "This capability describes a client creating a new Volume instance as part of an existing storage subsystem."
            },
            "enumVersionAdded": {
                "ComputerSystemConstrainedComposition": "v1_1_0"
            },
            "type": "string"
        }
    },
    "owningEntity": "DMTF",
    "release": "2018.2",
    "title": "#CollectionCapabilities.v1_1_1"
}