1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  Signature v1.0.3                                                    -->
5<!--#                                                                                      -->
6<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
7<!--# available at http://www.dmtf.org/standards/redfish                                   -->
8<!--# Copyright 2014-2024 DMTF.                                                            -->
9<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
10<!--################################################################################       -->
11<!---->
12<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
13
14  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
15    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
16  </edmx:Reference>
17  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
18    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
19  </edmx:Reference>
20  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
21    <edmx:Include Namespace="Resource.v1_0_0"/>
22  </edmx:Reference>
23  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
24    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
25  </edmx:Reference>
26
27  <edmx:DataServices>
28
29    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Signature">
30      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
31      <Annotation Term="Redfish.Language" String="en"/>
32
33      <EntityType Name="Signature" BaseType="Resource.v1_0_0.Resource" Abstract="true">
34        <Annotation Term="OData.Description" String="The `Signature` schema describes a signature or a hash."/>
35        <Annotation Term="OData.LongDescription" String="This resource contains a signature for a Redfish implementation."/>
36        <Annotation Term="Capabilities.InsertRestrictions">
37          <Record>
38            <PropertyValue Property="Insertable" Bool="false"/>
39          </Record>
40        </Annotation>
41        <Annotation Term="Capabilities.UpdateRestrictions">
42          <Record>
43            <PropertyValue Property="Updatable" Bool="false"/>
44          </Record>
45        </Annotation>
46        <Annotation Term="Capabilities.DeleteRestrictions">
47          <Record>
48            <PropertyValue Property="Deletable" Bool="true"/>
49            <Annotation Term="OData.Description" String="Use the `DELETE` operation to remove signatures."/>
50          </Record>
51        </Annotation>
52        <Annotation Term="Redfish.Uris">
53          <Collection>
54            <String>/redfish/v1/Systems/{ComputerSystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Signatures/{SignatureId}</String>
55            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Signatures/{SignatureId}</String>
56            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Signatures/{SignatureId}</String>
57          </Collection>
58        </Annotation>
59      </EntityType>
60
61      <EnumType Name="SignatureTypeRegistry">
62        <Member Name="UEFI">
63          <Annotation Term="OData.Description" String="A signature defined in the UEFI Specification."/>
64          <Annotation Term="OData.LongDescription" String="This value shall indicate that the `SignatureType` string contains the #define name of the SignatureType member of the EFI_SIGNATURE_LIST, as defined by the UEFI Specification.  This value shall also indicate that the format of the `SignatureString` is a big-endian hex-encoded string of the binary value specified in the UEFI SignatureData array in EFI_SIGNATURE_DATA, as defined by the UEFI Specification."/>
65        </Member>
66      </EnumType>
67    </Schema>
68
69    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Signature.v1_0_0">
70      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
71      <Annotation Term="Redfish.Release" String="2020.1"/>
72
73      <EntityType Name="Signature" BaseType="Signature.Signature">
74        <Property Name="SignatureTypeRegistry" Type="Signature.SignatureTypeRegistry">
75          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
76          <Annotation Term="OData.Description" String="The type of the signature."/>
77          <Annotation Term="OData.LongDescription" String="This property shall contain the type for the signature."/>
78          <Annotation Term="Redfish.RequiredOnCreate"/>
79        </Property>
80        <Property Name="SignatureType" Type="Edm.String">
81          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
82          <Annotation Term="OData.Description" String="The format of the signature."/>
83          <Annotation Term="OData.LongDescription" String="This property shall contain the format type for the signature.  The format is qualified by the value of the `SignatureTypeRegistry` property."/>
84          <Annotation Term="Redfish.RequiredOnCreate"/>
85        </Property>
86        <Property Name="SignatureString" Type="Edm.String">
87          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
88          <Annotation Term="OData.Description" String="The string for the signature."/>
89          <Annotation Term="OData.LongDescription" String="This property shall contain the string of the signature, and the format shall follow the requirements specified by the value of the `SignatureType` property.  If the signature contains any private keys, they shall be removed from the string in responses.  If the private key for the signature is not known by the service and is needed to use the signature, the client shall provide the private key as part of the string in the `POST` request."/>
90          <Annotation Term="Redfish.RequiredOnCreate"/>
91        </Property>
92        <Property Name="UefiSignatureOwner" Type="Edm.Guid">
93          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
94          <Annotation Term="OData.Description" String="The UEFI signature owner for this signature."/>
95          <Annotation Term="OData.LongDescription" String="The value of this property shall contain the GUID of the UEFI signature owner for this signature as defined by the UEFI Specification.  This property shall only be present if the `SignatureTypeRegistry` property is `UEFI`."/>
96        </Property>
97        <Property Name="Actions" Type="Signature.v1_0_0.Actions" Nullable="false">
98          <Annotation Term="OData.Description" String="The available actions for this resource."/>
99          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
100        </Property>
101      </EntityType>
102
103      <ComplexType Name="Actions">
104        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
105        <Annotation Term="OData.Description" String="The available actions for this resource."/>
106        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
107        <Property Name="Oem" Type="Signature.v1_0_0.OemActions" Nullable="false">
108          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
109          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
110        </Property>
111      </ComplexType>
112
113      <ComplexType Name="OemActions">
114        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
115        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
116        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
117      </ComplexType>
118    </Schema>
119
120    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Signature.v1_0_1">
121      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
122      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
123      <EntityType Name="Signature" BaseType="Signature.v1_0_0.Signature"/>
124    </Schema>
125
126    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Signature.v1_0_2">
127      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
128      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
129      <EntityType Name="Signature" BaseType="Signature.v1_0_1.Signature"/>
130    </Schema>
131
132    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Signature.v1_0_3">
133      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
134      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
135      <EntityType Name="Signature" BaseType="Signature.v1_0_2.Signature"/>
136    </Schema>
137
138  </edmx:DataServices>
139</edmx:Edmx>
140