blob: cd57421fb8a440ade1da9bf84f2e007bded8c2b7 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!---->
<!--################################################################################ -->
<!--# Redfish Schema: PrivilegeRegistry v1.1.1 -->
<!--# -->
<!--# 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://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
<edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
</edmx:Reference>
<edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
<edmx:Include Namespace="Resource.v1_0_0"/>
</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/Privileges_v1.xml">
<edmx:Include Namespace="Privileges"/>
</edmx:Reference>
<edmx:DataServices>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PrivilegeRegistry">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<EntityType Name="PrivilegeRegistry" BaseType="Resource.v1_0_0.Resource" Abstract="true">
<Annotation Term="OData.Description" String="This is the schema definition for Operation to Privilege mapping."/>
<Annotation Term="OData.LongDescription" String="This resource shall be used to represent operation to privilege mappings."/>
<Annotation Term="Capabilities.InsertRestrictions">
<Record>
<PropertyValue Property="Insertable" Bool="false"/>
</Record>
</Annotation>
<Annotation Term="Capabilities.UpdateRestrictions">
<Record>
<PropertyValue Property="Updatable" Bool="true"/>
<Annotation Term="OData.Description" String="A Privilege Resource resource can be updated to change permissions on the various resource types based on a user's privilege level."/>
</Record>
</Annotation>
<Annotation Term="Capabilities.DeleteRestrictions">
<Record>
<PropertyValue Property="Deletable" Bool="false"/>
</Record>
</Annotation>
</EntityType>
</Schema>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PrivilegeRegistry.v1_0_0">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<EntityType Name="PrivilegeRegistry" BaseType="PrivilegeRegistry.PrivilegeRegistry">
<Annotation Term="OData.Description" String="This is the schema definition for Operation to Privilege mapping."/>
<Annotation Term="OData.LongDescription" String="This resource shall be used to represent operation to privilege mappings."/>
<Property Name="PrivilegesUsed" Type="Collection(Privileges.PrivilegeType)" Nullable="false">
<Annotation Term="OData.Permissions" EnumMember="OData.Permissions/Read"/>
<Annotation Term="OData.Description" String="Lists the set of Redfish standard priviliges used in building this mapping."/>
</Property>
<Property Name="OEMPrivilegesUsed" Type="Collection(Edm.String)" Nullable="false">
<Annotation Term="OData.Permissions" EnumMember="OData.Permissions/Read"/>
<Annotation Term="OData.Description" String="Lists the set of OEM Priviliges used in building this mapping."/>
</Property>
<Property Name="Mappings" Type="Collection(PrivilegeRegistry.v1_0_0.Mapping)" Nullable="false">
</Property>
</EntityType>
<ComplexType Name="Mapping">
<Annotation Term="OData.Description" String="This type describes a mapping between an entity and the relevant privileges used to access it."/>
<Annotation Term="OData.LongDescription" String="This type shall describe a mapping between an entity and the relevant privileges used to access it."/>
<Property Name="Entity" Type="Edm.String" Nullable="false">
<Annotation Term="OData.Permissions" EnumMember="OData.Permissions/Read"/>
<Annotation Term="OData.Description" String="Indicates entity name. e.g., Manager."/>
<Annotation Term="OData.LongDescription" String="Indicates entity name. e.g., Manager."/>
</Property>
<Property Name="SubordinateOverrides" Type="Collection(PrivilegeRegistry.v1_0_0.Target_PrivilegeMap)" Nullable="true">
<Annotation Term="OData.Description" String="Indicates privilege overrides of subordinate resource."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege overrides of subordinate resource. Target lists referenced by Entity."/>
</Property>
<Property Name="ResourceURIOverrides" Type="Collection(PrivilegeRegistry.v1_0_0.Target_PrivilegeMap)" Nullable="true">
<Annotation Term="OData.Description" String="Indicates privilege overrides of Resource URI."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege overrides of Resource URI. Target lists Resource URI."/>
</Property>
<Property Name="PropertyOverrides" Type="Collection(PrivilegeRegistry.v1_0_0.Target_PrivilegeMap)" Nullable="true">
<Annotation Term="OData.Description" String="Indicates privilege overrides of property or element within a entity."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege overrides of property or element. e.g., password property."/>
</Property>
<Property Name="OperationMap" Type="PrivilegeRegistry.v1_0_0.OperationMap" Nullable="false">
<Annotation Term="OData.Description" String="List mapping between HTTP method and privilege required for entity."/>
<Annotation Term="OData.LongDescription" String="List mapping between HTTP method and privilege required for entity."/>
</Property>
</ComplexType>
<ComplexType Name="Target_PrivilegeMap">
<Annotation Term="OData.Description" String="This type describes a mapping between one or more targets and the HTTP operations associated with them."/>
<Annotation Term="OData.LongDescription" String="This type shall describe a mapping between one or more targets and the HTTP operations associated with them."/>
<Property Name="Targets" Type="Collection(Edm.String)" Nullable="true">
<Annotation Term="OData.Permissions" EnumMember="OData.Permissions/Read"/>
<Annotation Term="OData.Description" String="Indicates the URI or Entity."/>
<Annotation Term="OData.LongDescription" String="Indicates the set of URI(s) or Entity(s) or property(s). e.g./redfish/v1/Systems/1, Manager, Password. When targets property is not mentioned, then there is no override."/>
</Property>
<Property Name="OperationMap" Type="PrivilegeRegistry.v1_0_0.OperationMap" >
<Annotation Term="OData.Description" String="List mapping between HTTP operation and privilege needed to perform operation."/>
<Annotation Term="OData.LongDescription" String="List mapping between HTTP operation and privilege needed to perform operation."/>
</Property>
</ComplexType>
<ComplexType Name="OperationMap">
<Annotation Term="OData.Description" String="Used for describing the specific privileges for a set of HTTP operations."/>
<Annotation Term="OData.LongDescription" String="This type shall describe the specific privileges required for a set of HTTP operations."/>
<Annotation Term="OData.AdditionalProperties" Bool="false"/>
<Property Name="GET" Type="Collection(PrivilegeRegistry.v1_0_0.OperationPrivilege)" Nullable="false">
<Annotation Term="OData.Description" String="Indicates privilege required for HTTP GET operation."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege required for HTTP GET operation."/>
</Property>
<Property Name="HEAD" Type="Collection(PrivilegeRegistry.v1_0_0.OperationPrivilege)" Nullable="false">
<Annotation Term="OData.Description" String="Indicates privilege required for HTTP HEAD operation."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege required for HTTP HEAD operation."/>
</Property>
<Property Name="PATCH" Type="Collection(PrivilegeRegistry.v1_0_0.OperationPrivilege)" Nullable="false">
<Annotation Term="OData.Description" String="Indicates privilege required for HTTP PATCH operation."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege required for HTTP PATCH operation."/>
</Property>
<Property Name="POST" Type="Collection(PrivilegeRegistry.v1_0_0.OperationPrivilege)" Nullable="false">
<Annotation Term="OData.Description" String="Indicates privilege required for HTTP POST operation."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege required for HTTP POST operation."/>
</Property>
<Property Name="PUT" Type="Collection(PrivilegeRegistry.v1_0_0.OperationPrivilege)" Nullable="false">
<Annotation Term="OData.Description" String="Indicates privilege required for HTTP PUT operation."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege required for HTTP PUT operation."/>
</Property>
<Property Name="DELETE" Type="Collection(PrivilegeRegistry.v1_0_0.OperationPrivilege)" Nullable="false">
<Annotation Term="OData.Description" String="Indicates privilege required for HTTP DELETE operation."/>
<Annotation Term="OData.LongDescription" String="Indicates privilege required for HTTP DELETE operation."/>
</Property>
</ComplexType>
<ComplexType Name="OperationPrivilege">
<Annotation Term="OData.Description" String="Used for describing the specific privileges for a given type of HTTP operation."/>
<Annotation Term="OData.LongDescription" String="This type shall describe the specific privileges required for a given type of HTTP operation."/>
<Property Name="Privilege" Type="Collection(Edm.String)" Nullable="false">
<Annotation Term="OData.Permissions" EnumMember="OData.Permissions/Read"/>
<Annotation Term="OData.Description" String="Lists the privileges that are allowed to perform the given type of HTTP operation on the entity type."/>
<Annotation Term="OData.LongDescription" String="This array shall contain a set of strings that match 0 or more of the strings found in the PrivilegesUsed and OEMPrivilegesUsed properties."/>
</Property>
</ComplexType>
</Schema>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PrivilegeRegistry.v1_0_1">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<Annotation Term="OData.Description" String="This version was created to show annotations in previous namespaces were updated."/>
<EntityType Name="PrivilegeRegistry" BaseType="PrivilegeRegistry.v1_0_0.PrivilegeRegistry"/>
</Schema>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PrivilegeRegistry.v1_0_2">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<Annotation Term="OData.Description" String="This version was created to change references to PrivilegeType to use the unversioned definition."/>
<EntityType Name="PrivilegeRegistry" BaseType="PrivilegeRegistry.v1_0_1.PrivilegeRegistry"/>
</Schema>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PrivilegeRegistry.v1_1_0">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<EntityType Name="PrivilegeRegistry" BaseType="PrivilegeRegistry.v1_0_1.PrivilegeRegistry">
<Property Name="Actions" Type="PrivilegeRegistry.v1_1_0.Actions" Nullable="false">
<Annotation Term="OData.Description" String="The available actions for this resource."/>
<Annotation Term="OData.LongDescription" String="The Actions property shall contain the available actions for this resource."/>
</Property>
</EntityType>
<ComplexType Name="Actions">
<Annotation Term="OData.AdditionalProperties" Bool="false"/>
<Annotation Term="OData.Description" String="The available actions for this resource."/>
<Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
<Property Name="Oem" Type="PrivilegeRegistry.v1_1_0.OemActions" Nullable="false"/>
</ComplexType>
<ComplexType Name="OemActions">
<Annotation Term="OData.AdditionalProperties" Bool="true"/>
<Annotation Term="OData.Description" String="The available OEM specific actions for this resource."/>
<Annotation Term="OData.LongDescription" String="This type shall contain any additional OEM actions for this resource."/>
</ComplexType>
</Schema>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PrivilegeRegistry.v1_1_1">
<Annotation Term="Redfish.OwningEntity" String="DMTF"/>
<Annotation Term="OData.Description" String="This version was created to change references to PrivilegeType to use the unversioned definition."/>
<EntityType Name="PrivilegeRegistry" BaseType="PrivilegeRegistry.v1_1_0.PrivilegeRegistry"/>
</Schema>
</edmx:DataServices>
</edmx:Edmx>