1<?xml version="1.0" encoding="UTF-8"?>
2<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
3    <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
4        <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData" />
5    </edmx:Reference>
6    <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
7        <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
8        <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
9    </edmx:Reference>
10    <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/ComputerSystem_v1.xml">
11        <edmx:Include Namespace="ComputerSystem"/>
12        <edmx:Include Namespace="ComputerSystem.v1_4_0"/>
13    </edmx:Reference>
14    <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
15        <edmx:Include Namespace="Resource"/>
16        <edmx:Include Namespace="Resource.v1_0_0"/>
17    </edmx:Reference>
18
19    <edmx:DataServices>
20        <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OemComputerSystem">
21            <ComplexType Name="Oem" BaseType="Resource.OemObject">
22                <Annotation Term="OData.AdditionalProperties" Bool="true" />
23                <Annotation Term="OData.Description" String="OemComputerSystem Oem properties." />
24                <Annotation Term="OData.AutoExpand"/>
25                <Property Name="OpenBmc" Type="OemComputerSystem.OpenBmc"/>
26            </ComplexType>
27
28            <ComplexType Name="OpenBmc" BaseType="Resource.OemObject">
29                <Annotation Term="OData.AdditionalProperties" Bool="true" />
30                <Annotation Term="OData.Description" String="Oem properties for OpenBmc." />
31                <Annotation Term="Redfish.DynamicPropertyPatterns">
32                    <Collection>
33                        <NavigationProperty Type="OemComputerSystem.FirmwareProvisioning">
34                            <Annotation Term="OData.AutoExpand"/>
35                            <PropertyValue Property="Pattern" String="[A-Za-z0-9_.:]+" />
36                            <PropertyValue Property="Type" String="OemComputerSystem.FirmwareProvisioning" />
37                        </NavigationProperty>
38                    </Collection>
39                </Annotation>
40            </ComplexType>
41
42            <ComplexType Name="FirmwareProvisioning" BaseType="Resource.OemObject">
43                <Annotation Term="OData.AdditionalProperties" Bool="false" />
44                <Annotation Term="OData.Description" String="Configuration data for platform firmware provisioning." />
45                <Property Name="ProvisioningStatus" Type="OemComputerSystem.FirmwareProvisioningStatus">
46                    <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
47                    <Annotation Term="OData.Description" String="This indicates platform firmware provisioning state."/>
48                    <Annotation Term="OData.LongDescription" String="The value of this property indicating provisioning status of platform firmware."/>
49                </Property>
50            </ComplexType>
51
52            <EnumType Name="FirmwareProvisioningStatus">
53                <Member Name="NotProvisioned">
54                    <Annotation Term="OData.Description" String="Platform firmware is not provisioned."/>
55                    <Annotation Term="OData.LongDescription" String="Platform firmware is not provisioned."/>
56                </Member>
57                <Member Name="ProvisionedButNotLocked">
58                    <Annotation Term="OData.Description" String="Platform firmware is provisioned but not locked."/>
59                    <Annotation Term="OData.LongDescription" String="Platform firmware is provisioned but not locked. So re-provisioning is allowed in this state."/>
60                </Member>
61                <Member Name="ProvisionedAndLocked">
62                    <Annotation Term="OData.Description" String="Platform firmware is provisioned and locked."/>
63                    <Annotation Term="OData.LongDescription" String="Platform firmware is provisioned and locked. So re-provisioning is not allowed in this state."/>
64                </Member>
65            </EnumType>
66        </Schema>
67    </edmx:DataServices>
68</edmx:Edmx>
69