This document defines version 1.0, version 2.0, and version 3.0 of the Open Data (OData) protocol. The OData 3.0 protocol is a superset of OData 2.0, which, in turn, is a superset of OData 1.0. OData 3.0 includes incremental additions to OData 2.0, which, in turn, includes incremental additions to OData 1.0. Any constructs or semantics that are defined in this document and that exist only in OData 2.0 and OData 3.0 or that exist only in OData 3.0 are explicitly denoted as such.
Sections 1.8, 2, and 3 of this specification are normative and can contain the terms MAY, SHOULD, MUST, MUST NOT, and SHOULD NOT as defined in RFC 2119. Sections 1.5 and 1.9 are also normative but cannot contain those terms. All other sections and examples in this specification are informative.