CONTENTS
1. Introduction............................................................................................................................................... 6
2. Schema files............................................................................................................................................. 6
2.1. CSDL format ........................................................................................................................... 6
2.1.1. The Property element ............................................................................................ 7
2.1.2. The NavigationProperty element ........................................................................... 8
2.1.3. The Collection type ................................................................................................ 8
2.1.4. The EnumType element ........................................................................................ 9
2.1.5. The ComplexType element.................................................................................. 10
2.1.6. The EntityType element ....................................................................................... 11
2.1.7. The Action element.............................................................................................. 12
2.1.8. The Annotation element ...................................................................................... 14
2.1.9. Inheritance........................................................................................................... 15
2.2. Redfish modeling practices................................................................................................... 16
2.2.1. Core Redfish definitions ...................................................................................... 16
2.2.2. Defining Redfish resources ................................................................................. 16
2.2.3. Referenceable Members ..................................................................................... 19
2.2.4. Schema versioning .............................................................................................. 20
2.3. CSDL vs. JSON Schema ...................................................................................................... 22
3. Payload annotations............................................................................................................................... 22
3.1. Annotating a single property in a response........................................................................... 22
3.2. Annotating an object in a response....................................................................................... 23
4. OData service document........................................................................................................................ 24
5. Metadata document................................................................................................................................ 25
6. Appendix ................................................................................................................................................ 26
6.1. Primitive OData types used in Redfish ................................................................................. 26
6.2. Schema annotations used in Redfish ................................................................................... 27
6.2.1. Core annotations defined by OData .................................................................... 27
6.2.2. Redfish annotations defined in RedfishExtensions_v1.xml ................................. 28
6.3. Sample OData service document ......................................................................................... 29
6.4. Sample metadata document ................................................................................................. 30
6.5. References............................................................................................................................ 34
DSP2052 Redfish and OData White Paper
Version 1.0.0 Published 3