blob: cf7541ac61d5f33a0a4d019470aa8430b8c35cdf [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!---->
<!--################################################################################ -->
<!--# Redfish Schema: CollectionCapabilities v1.0.0-->
<!--# -->
<!--# For a detailed change log, see the README file contained in the DSP8010 bundle, -->
<!--# available at http://www.dmtf.org/standards/redfish -->
<!--# Copyright 2014-2017 Distributed Management Task Force, Inc. (DMTF). -->
<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
<!--################################################################################ -->
<!---->
<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
<edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
<edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
</edmx:Reference>
<edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
<edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
</edmx:Reference>
<edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
<edmx:Include Namespace="Resource"/>
</edmx:Reference>
<edmx:DataServices>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<ComplexType Name="CollectionCapabilities" Abstract="true"/>
</Schema>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_0_0">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.CollectionCapabilities">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<Annotation Term="OData.AdditionalProperties" Bool="false"/>
<Annotation Term="OData.Description" String="This type describes the capabilities of a collection."/>
<Annotation Term="OData.LongDescription" String="This type shall describe any capabilities of a collection in terms of how a client is able to create new resources within the collection."/>
<Property Name="Capabilities" Type="Collection(CollectionCapabilities.v1_0_0.Capability)" Nullable="false">
<Annotation Term="OData.Description" String="This property contains the list of capabilities supported by this resource."/>
<Annotation Term="OData.LongDescription" String="The value of this property shall be an array of Capability structures."/>
</Property>
</ComplexType>
<ComplexType Name="Capability">
<Annotation Term="OData.AdditionalProperties" Bool="false"/>
<Annotation Term="OData.Description" String="This type describes a specific capability of a collection for a given use case."/>
<Annotation Term="OData.LongDescription" String="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."/>
<NavigationProperty Name="CapabilitiesObject" Type="Resource.Item" Nullable="false">
<Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
<Annotation Term="OData.Description" String="Reference to the resource the client may GET to in order to understand how to form a POST request for a given collection."/>
<Annotation Term="OData.LongDescription" String="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."/>
<Annotation Term="OData.AutoExpandReferences"/>
<Annotation Term="Redfish.Required"/>
</NavigationProperty>
<Property Name="UseCase" Type="CollectionCapabilities.v1_0_0.UseCase" Nullable="false">
<Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
<Annotation Term="OData.Description" String="This property represents the use case in which a client may issue a POST request to the collection."/>
<Annotation Term="OData.LongDescription" String="The value of this property shall be an enumerated value describing the use case for this capability instance."/>
<Annotation Term="Redfish.Required"/>
</Property>
<Property Name="Links" Type="CollectionCapabilities.v1_0_0.Links" Nullable="false">
<Annotation Term="OData.Description" String="Contains references to other resources that are related to this resource."/>
<Annotation Term="OData.LongDescription" String="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."/>
<Annotation Term="Redfish.Required"/>
</Property>
</ComplexType>
<EnumType Name="UseCase">
<Member Name="ComputerSystemComposition">
<Annotation Term="OData.Description" String="This capability describes a client creating a new ComputerSystem instance from a set of disaggregated hardware."/>
</Member>
<Member Name="VolumeCreation">
<Annotation Term="OData.Description" String="This capability describes a client creating a new Volume instance as part of an existing storage subsystem."/>
</Member>
</EnumType>
<ComplexType Name="Links" BaseType="Resource.Links">
<Annotation Term="OData.Description" String="Contains references to other resources that are related to this resource."/>
<Annotation Term="OData.LongDescription" String="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."/>
<NavigationProperty Name="TargetCollection" Type="Resource.ResourceCollection" Nullable="false">
<Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
<Annotation Term="OData.Description" String="Reference to the collection that this capabilities structure is describing."/>
<Annotation Term="OData.LongDescription" String="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."/>
<Annotation Term="OData.AutoExpandReferences"/>
<Annotation Term="Redfish.Required"/>
</NavigationProperty>
<NavigationProperty Name="RelatedItem" Type="Collection(Resource.Item)">
<Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
<Annotation Term="OData.Description" String="The ID(s) of the resources associated with this capability."/>
<Annotation Term="OData.LongDescription" String="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."/>
<Annotation Term="OData.AutoExpandReferences"/>
</NavigationProperty>
</ComplexType>
</Schema>
</edmx:DataServices>
</edmx:Edmx>