xref: /openbmc/bmcweb/features/redfish/schema/dmtf/csdl/ConnectionMethod_v1.xml (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  ConnectionMethod v1.2.0                                             -->
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-2025 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"/>
22    <edmx:Include Namespace="Resource.v1_0_0"/>
23  </edmx:Reference>
24  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
25    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
26  </edmx:Reference>
27  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/AggregationSource_v1.xml">
28    <edmx:Include Namespace="AggregationSource"/>
29  </edmx:Reference>
30  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/SerialInterface_v1.xml">
31    <edmx:Include Namespace="SerialInterface"/>
32  </edmx:Reference>
33
34  <edmx:DataServices>
35
36    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ConnectionMethod">
37      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
38      <Annotation Term="Redfish.Language" String="en"/>
39
40      <EntityType Name="ConnectionMethod" BaseType="Resource.v1_0_0.Resource" Abstract="true">
41        <Annotation Term="OData.Description" String="The `ConnectionMethod` schema describes the protocol, provider, or other method used to communicate to a given access point for a Redfish aggregation service."/>
42        <Annotation Term="OData.LongDescription" String="This resource shall represent a connection method for a Redfish implementation."/>
43        <Annotation Term="Capabilities.InsertRestrictions">
44          <Record>
45            <PropertyValue Property="Insertable" Bool="false"/>
46          </Record>
47        </Annotation>
48        <Annotation Term="Capabilities.UpdateRestrictions">
49          <Record>
50            <PropertyValue Property="Updatable" Bool="false"/>
51          </Record>
52        </Annotation>
53        <Annotation Term="Capabilities.DeleteRestrictions">
54          <Record>
55            <PropertyValue Property="Deletable" Bool="false"/>
56          </Record>
57        </Annotation>
58        <Annotation Term="Redfish.Uris">
59          <Collection>
60            <String>/redfish/v1/AggregationService/ConnectionMethods/{ConnectionMethodId}</String>
61          </Collection>
62        </Annotation>
63      </EntityType>
64
65    </Schema>
66
67    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ConnectionMethod.v1_0_0">
68      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
69      <Annotation Term="Redfish.Release" String="2020.2"/>
70
71      <EntityType Name="ConnectionMethod" BaseType="ConnectionMethod.ConnectionMethod">
72        <Property Name="ConnectionMethodType" Type="ConnectionMethod.v1_0_0.ConnectionMethodType">
73          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
74          <Annotation Term="OData.Description" String="The type of connection method."/>
75          <Annotation Term="OData.LongDescription" String="This property shall contain an identifier of the connection method."/>
76        </Property>
77        <Property Name="ConnectionMethodVariant" Type="Edm.String">
78          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
79          <Annotation Term="OData.Description" String="The variant of connection method."/>
80          <Annotation Term="OData.LongDescription" String="This property shall contain an additional identifier of the connection method.  This property shall be present if `ConnectionMethodType` is `OEM`."/>
81        </Property>
82        <Property Name="Links" Type="ConnectionMethod.v1_0_0.Links" Nullable="false">
83          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
84          <Annotation Term="OData.LongDescription" String="This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
85        </Property>
86        <Property Name="Actions" Type="ConnectionMethod.v1_0_0.Actions" Nullable="false">
87          <Annotation Term="OData.Description" String="The available actions for this resource."/>
88          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
89        </Property>
90      </EntityType>
91
92      <ComplexType Name="Links" BaseType="Resource.Links">
93        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
94        <Annotation Term="OData.LongDescription" String="This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
95        <NavigationProperty Name="AggregationSources" Type="Collection(AggregationSource.AggregationSource)">
96          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
97          <Annotation Term="OData.Description" String="An array of links to the access points using this connection method."/>
98          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `AggregationSource` that are using this connection method."/>
99          <Annotation Term="OData.AutoExpandReferences"/>
100        </NavigationProperty>
101      </ComplexType>
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="ConnectionMethod.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
119      <EnumType Name="ConnectionMethodType">
120        <Member Name="Redfish">
121          <Annotation Term="OData.Description" String="Redfish connection method."/>
122          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is Redfish."/>
123        </Member>
124        <Member Name="SNMP">
125          <Annotation Term="OData.Description" String="SNMP connection method."/>
126          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is SNMP."/>
127        </Member>
128        <Member Name="IPMI15">
129          <Annotation Term="OData.Description" String="IPMI 1.5 connection method."/>
130          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is IPMI 1.5."/>
131        </Member>
132        <Member Name="IPMI20">
133          <Annotation Term="OData.Description" String="IPMI 2.0 connection method."/>
134          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is IPMI 2.0."/>
135        </Member>
136        <Member Name="NETCONF">
137          <Annotation Term="OData.Description" String="NETCONF connection method."/>
138          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is NETCONF."/>
139        </Member>
140        <Member Name="OEM">
141          <Annotation Term="OData.Description" String="OEM connection method."/>
142          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is OEM.  The `ConnectionMethodVariant` property shall contain further identification information."/>
143        </Member>
144        <Member Name="ModbusSerial">
145          <Annotation Term="OData.Description" String="Modbus serial connection method."/>
146          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is Modbus serial (RTU)."/>
147          <Annotation Term="Redfish.Revisions">
148            <Collection>
149              <Record>
150                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
151                <PropertyValue Property="Version" String="v1_2_0"/>
152              </Record>
153            </Collection>
154          </Annotation>
155        </Member>
156        <Member Name="ModbusTCP">
157          <Annotation Term="OData.Description" String="Modbus TCP connection method."/>
158          <Annotation Term="OData.LongDescription" String="This value shall indicate the connection method is Modbus TCP."/>
159          <Annotation Term="Redfish.Revisions">
160            <Collection>
161              <Record>
162                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
163                <PropertyValue Property="Version" String="v1_2_0"/>
164              </Record>
165            </Collection>
166          </Annotation>
167        </Member>
168      </EnumType>
169    </Schema>
170
171    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ConnectionMethod.v1_0_1">
172      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
173      <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."/>
174      <EntityType Name="ConnectionMethod" BaseType="ConnectionMethod.v1_0_0.ConnectionMethod"/>
175    </Schema>
176
177    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ConnectionMethod.v1_1_0">
178      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
179      <Annotation Term="Redfish.Release" String="2022.3"/>
180
181      <EntityType Name="ConnectionMethod" BaseType="ConnectionMethod.v1_0_0.ConnectionMethod">
182        <Property Name="TunnelingProtocol" Type="ConnectionMethod.v1_1_0.TunnelingProtocolType">
183          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
184          <Annotation Term="OData.Description" String="The tunneling protocol used for this connection method."/>
185          <Annotation Term="OData.LongDescription" String="This property shall contain the tunneling protocol used for this connection method."/>
186        </Property>
187      </EntityType>
188
189      <EnumType Name="TunnelingProtocolType">
190        <Member Name="SSH">
191          <Annotation Term="OData.Description" String="SSH tunneling."/>
192          <Annotation Term="OData.LongDescription" String="This value shall indicate that the tunneling protocol is SSH."/>
193        </Member>
194        <Member Name="OEM">
195          <Annotation Term="OData.Description" String="OEM tunneling."/>
196          <Annotation Term="OData.LongDescription" String="This value shall indicate that the tunneling protocol is OEM-specific."/>
197        </Member>
198      </EnumType>
199    </Schema>
200
201    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ConnectionMethod.v1_1_1">
202      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
203      <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."/>
204      <EntityType Name="ConnectionMethod" BaseType="ConnectionMethod.v1_1_0.ConnectionMethod"/>
205    </Schema>
206
207    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ConnectionMethod.v1_2_0">
208      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
209      <Annotation Term="Redfish.Release" String="2025.2"/>
210      <Annotation Term="OData.Description" String="This version was created to add `ModbusSerial` and `ModbusTCP` to `ConnectionMethodType`."/>
211
212      <EntityType Name="ConnectionMethod" BaseType="ConnectionMethod.v1_1_1.ConnectionMethod"/>
213
214      <ComplexType Name="Links" BaseType="ConnectionMethod.v1_0_0.Links">
215        <NavigationProperty Name="SerialInterface" Type="SerialInterface.SerialInterface" Nullable="false">
216          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
217          <Annotation Term="OData.Description" String="The link to the serial interface for this connection method."/>
218          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `SerialInterface` that represents the serial interface for this connection method."/>
219          <Annotation Term="OData.AutoExpandReferences"/>
220        </NavigationProperty>
221      </ComplexType>
222    </Schema>
223
224  </edmx:DataServices>
225</edmx:Edmx>
226