1*f2a8e57eSGunnar Mills{ 2*f2a8e57eSGunnar Mills "$id": "http://redfish.dmtf.org/schemas/v1/CollectionCapabilities.v1_4_1.json", 3*f2a8e57eSGunnar Mills "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json", 4*f2a8e57eSGunnar Mills "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright", 5*f2a8e57eSGunnar Mills "definitions": { 6*f2a8e57eSGunnar Mills "Capability": { 7*f2a8e57eSGunnar Mills "additionalProperties": false, 8*f2a8e57eSGunnar Mills "description": "This type describes a capability of a collection for a specific use case.", 9*f2a8e57eSGunnar Mills "longDescription": "This type shall describe a capability of a resource collection in terms of how a client can create resources within the collection for the specified use case.", 10*f2a8e57eSGunnar Mills "patternProperties": { 11*f2a8e57eSGunnar Mills "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 12*f2a8e57eSGunnar Mills "description": "This property shall specify a valid odata or Redfish property.", 13*f2a8e57eSGunnar Mills "type": [ 14*f2a8e57eSGunnar Mills "array", 15*f2a8e57eSGunnar Mills "boolean", 16*f2a8e57eSGunnar Mills "integer", 17*f2a8e57eSGunnar Mills "number", 18*f2a8e57eSGunnar Mills "null", 19*f2a8e57eSGunnar Mills "object", 20*f2a8e57eSGunnar Mills "string" 21*f2a8e57eSGunnar Mills ] 22*f2a8e57eSGunnar Mills } 23*f2a8e57eSGunnar Mills }, 24*f2a8e57eSGunnar Mills "properties": { 25*f2a8e57eSGunnar Mills "CapabilitiesObject": { 26*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef", 27*f2a8e57eSGunnar Mills "description": "The link to the resource the client can issue a `GET` request against to understand how to form a `POST` request for a collection.", 28*f2a8e57eSGunnar Mills "longDescription": "This property shall contain a link to a resource that matches the type for a resource collection and shall contain annotations that describe the properties allowed in the `POST` request.", 29*f2a8e57eSGunnar Mills "readonly": true 30*f2a8e57eSGunnar Mills }, 31*f2a8e57eSGunnar Mills "Links": { 32*f2a8e57eSGunnar Mills "$ref": "#/definitions/Links", 33*f2a8e57eSGunnar Mills "description": "The links to other resources that are related to this resource.", 34*f2a8e57eSGunnar Mills "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource." 35*f2a8e57eSGunnar Mills }, 36*f2a8e57eSGunnar Mills "UseCase": { 37*f2a8e57eSGunnar Mills "$ref": "#/definitions/UseCase", 38*f2a8e57eSGunnar Mills "description": "The use case in which a client can issue a `POST` request to the collection.", 39*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an enumerated value that describes the use case for this capability instance.", 40*f2a8e57eSGunnar Mills "readonly": true 41*f2a8e57eSGunnar Mills } 42*f2a8e57eSGunnar Mills }, 43*f2a8e57eSGunnar Mills "required": [ 44*f2a8e57eSGunnar Mills "CapabilitiesObject", 45*f2a8e57eSGunnar Mills "UseCase", 46*f2a8e57eSGunnar Mills "Links" 47*f2a8e57eSGunnar Mills ], 48*f2a8e57eSGunnar Mills "type": "object" 49*f2a8e57eSGunnar Mills }, 50*f2a8e57eSGunnar Mills "CollectionCapabilities": { 51*f2a8e57eSGunnar Mills "additionalProperties": false, 52*f2a8e57eSGunnar Mills "description": "This type describes the capabilities of a collection.", 53*f2a8e57eSGunnar Mills "longDescription": "This type shall describe any capabilities of a resource collection in terms of how a client can create resources within the resource collection.", 54*f2a8e57eSGunnar Mills "patternProperties": { 55*f2a8e57eSGunnar Mills "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 56*f2a8e57eSGunnar Mills "description": "This property shall specify a valid odata or Redfish property.", 57*f2a8e57eSGunnar Mills "type": [ 58*f2a8e57eSGunnar Mills "array", 59*f2a8e57eSGunnar Mills "boolean", 60*f2a8e57eSGunnar Mills "integer", 61*f2a8e57eSGunnar Mills "number", 62*f2a8e57eSGunnar Mills "null", 63*f2a8e57eSGunnar Mills "object", 64*f2a8e57eSGunnar Mills "string" 65*f2a8e57eSGunnar Mills ] 66*f2a8e57eSGunnar Mills } 67*f2a8e57eSGunnar Mills }, 68*f2a8e57eSGunnar Mills "properties": { 69*f2a8e57eSGunnar Mills "Capabilities": { 70*f2a8e57eSGunnar Mills "description": "The list of capabilities supported by this resource.", 71*f2a8e57eSGunnar Mills "items": { 72*f2a8e57eSGunnar Mills "$ref": "#/definitions/Capability" 73*f2a8e57eSGunnar Mills }, 74*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an array of objects that describe the capabilities of this resource collection.", 75*f2a8e57eSGunnar Mills "type": "array" 76*f2a8e57eSGunnar Mills }, 77*f2a8e57eSGunnar Mills "MaxMembers": { 78*f2a8e57eSGunnar Mills "description": "The maximum number of members allowed in this collection.", 79*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the maximum number of members allowed in this resource collection.", 80*f2a8e57eSGunnar Mills "minimum": 1, 81*f2a8e57eSGunnar Mills "readonly": true, 82*f2a8e57eSGunnar Mills "type": "integer", 83*f2a8e57eSGunnar Mills "versionAdded": "v1_2_0" 84*f2a8e57eSGunnar Mills } 85*f2a8e57eSGunnar Mills }, 86*f2a8e57eSGunnar Mills "type": "object" 87*f2a8e57eSGunnar Mills }, 88*f2a8e57eSGunnar Mills "Links": { 89*f2a8e57eSGunnar Mills "additionalProperties": false, 90*f2a8e57eSGunnar Mills "description": "The links to other resources that are related to this resource.", 91*f2a8e57eSGunnar Mills "longDescription": "This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.", 92*f2a8e57eSGunnar Mills "patternProperties": { 93*f2a8e57eSGunnar Mills "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 94*f2a8e57eSGunnar Mills "description": "This property shall specify a valid odata or Redfish property.", 95*f2a8e57eSGunnar Mills "type": [ 96*f2a8e57eSGunnar Mills "array", 97*f2a8e57eSGunnar Mills "boolean", 98*f2a8e57eSGunnar Mills "integer", 99*f2a8e57eSGunnar Mills "number", 100*f2a8e57eSGunnar Mills "null", 101*f2a8e57eSGunnar Mills "object", 102*f2a8e57eSGunnar Mills "string" 103*f2a8e57eSGunnar Mills ] 104*f2a8e57eSGunnar Mills } 105*f2a8e57eSGunnar Mills }, 106*f2a8e57eSGunnar Mills "properties": { 107*f2a8e57eSGunnar Mills "Oem": { 108*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem", 109*f2a8e57eSGunnar Mills "description": "The OEM extension property.", 110*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the OEM extensions. All values for properties contained in this object shall conform to the Redfish Specification-described requirements." 111*f2a8e57eSGunnar Mills }, 112*f2a8e57eSGunnar Mills "RelatedItem": { 113*f2a8e57eSGunnar Mills "description": "An array of links to resources associated with this capability.", 114*f2a8e57eSGunnar Mills "items": { 115*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef" 116*f2a8e57eSGunnar Mills }, 117*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an array of links to resources that are related to this capability.", 118*f2a8e57eSGunnar Mills "readonly": true, 119*f2a8e57eSGunnar Mills "type": "array" 120*f2a8e57eSGunnar Mills }, 121*f2a8e57eSGunnar Mills "RelatedItem@odata.count": { 122*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count" 123*f2a8e57eSGunnar Mills }, 124*f2a8e57eSGunnar Mills "TargetCollection": { 125*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResourceCollection", 126*f2a8e57eSGunnar Mills "description": "The link to the collection that this capabilities structure is describing.", 127*f2a8e57eSGunnar Mills "longDescription": "This property shall contain a link to a resource collection that this structure describes. A client can use this structure to understand how to form the `POST` request for the collection.", 128*f2a8e57eSGunnar Mills "readonly": true 129*f2a8e57eSGunnar Mills } 130*f2a8e57eSGunnar Mills }, 131*f2a8e57eSGunnar Mills "required": [ 132*f2a8e57eSGunnar Mills "TargetCollection" 133*f2a8e57eSGunnar Mills ], 134*f2a8e57eSGunnar Mills "type": "object" 135*f2a8e57eSGunnar Mills }, 136*f2a8e57eSGunnar Mills "UseCase": { 137*f2a8e57eSGunnar Mills "enum": [ 138*f2a8e57eSGunnar Mills "ComputerSystemComposition", 139*f2a8e57eSGunnar Mills "ComputerSystemConstrainedComposition", 140*f2a8e57eSGunnar Mills "VolumeCreation", 141*f2a8e57eSGunnar Mills "ResourceBlockComposition", 142*f2a8e57eSGunnar Mills "ResourceBlockConstrainedComposition", 143*f2a8e57eSGunnar Mills "RegisterResourceBlock" 144*f2a8e57eSGunnar Mills ], 145*f2a8e57eSGunnar Mills "enumDescriptions": { 146*f2a8e57eSGunnar Mills "ComputerSystemComposition": "This capability describes a client creating a new computer system resource from a set of disaggregated hardware.", 147*f2a8e57eSGunnar Mills "ComputerSystemConstrainedComposition": "This capability describes a client creating a new computer system resource from a set of constraints.", 148*f2a8e57eSGunnar Mills "RegisterResourceBlock": "This capability describes a client creating a new resource block from an existing computer system to enable it to be used by the composition service.", 149*f2a8e57eSGunnar Mills "ResourceBlockComposition": "This capability describes a client creating a new resource block from a set of other resource blocks.", 150*f2a8e57eSGunnar Mills "ResourceBlockConstrainedComposition": "This capability describes a client creating a new resource block from a set of constraints.", 151*f2a8e57eSGunnar Mills "VolumeCreation": "This capability describes a client creating a new volume resource as part of an existing storage subsystem." 152*f2a8e57eSGunnar Mills }, 153*f2a8e57eSGunnar Mills "enumVersionAdded": { 154*f2a8e57eSGunnar Mills "ComputerSystemConstrainedComposition": "v1_1_0", 155*f2a8e57eSGunnar Mills "RegisterResourceBlock": "v1_4_0", 156*f2a8e57eSGunnar Mills "ResourceBlockComposition": "v1_3_0", 157*f2a8e57eSGunnar Mills "ResourceBlockConstrainedComposition": "v1_3_0" 158*f2a8e57eSGunnar Mills }, 159*f2a8e57eSGunnar Mills "type": "string" 160*f2a8e57eSGunnar Mills } 161*f2a8e57eSGunnar Mills }, 162*f2a8e57eSGunnar Mills "language": "en", 163*f2a8e57eSGunnar Mills "owningEntity": "DMTF", 164*f2a8e57eSGunnar Mills "release": "2022.1", 165*f2a8e57eSGunnar Mills "title": "#CollectionCapabilities.v1_4_1" 166*f2a8e57eSGunnar Mills}