You are on page 1of 20

OData Dictionary

Publication Date: 9/23/2019


Published Version: 1.0.0
Confidentiality: Confidential

OData Dictionary

Document Type: Specification

Document Status: Draft

Document Language: en-us


OData Dictionary

Copyright Notice
Copyright © 2019 Automotive Edge Computing Consortium (ODATA). All rights reserved.
ODATA is a not-for-profit association of industry members dedicated to promoting Automotive
edge computing. Members and non-members MAY reproduce ODATA specifications and
documents, provided that correct attribution is given. As ODATA specifications MAY be revised
from time to time, the particular version and publication date SHOULD always be noted.
Implementation of certain elements of this standard or proposed standard MAY be subject to
third party patent rights, including provisional patent rights (herein "patent rights"). ODATA
makes no representations to users of the standard as to the existence of such rights, and is not
responsible to recognize, disclose, or identify any or all such third-party patent right, owners or
claimants, nor for any incomplete or inaccurate identification or disclosure of such rights, owners
or claimants. ODATA SHALL have no liability to any party, in any manner or circumstance,
under any legal theory whatsoever, for failure to recognize, disclose, or identify any such third-
party patent rights, or for such party’s reliance on the standard or incorporation thereof in its
product, protocols or testing procedures. ODATA SHALL have no liability to any party
implementing such standard, whether such implementation is foreseeable or not, nor to any
patent owner or claimant, and SHALL have no liability or responsibility for costs or losses
incurred if a standard is withdrawn or modified after publication, and SHALL be indemnified and
held harmless by any party implementing the standard from any and all claims of infringement
by a patent owner for such implementations.
For information about patents held by third-parties which have notified the ODATA that, in their
opinion, such patent MAY relate to or impact implementations of ODATA standards, visit
https://members.OData.org/termsandconditions.

Trademarks
Not applicable

Page 2 Draft Version 1.0.0


OData Dictionary

CONTENTS
Foreword...................................................................................................................................................... 6
Acknowledgments........................................................................................................................................ 6
1 Introduction.......................................................................................................................................... 7
1.1 Document Conventions..................................................................................................................... 7
1.2 Typographical Conventions............................................................................................................... 7
2 Scope................................................................................................................................................... 7
3 Normative References......................................................................................................................... 7
4 Abbreviations....................................................................................................................................... 7
5 Terms................................................................................................................................................... 8
5.1 Standard terms.................................................................................................................................. 8
5.2 Common terms and definitions.......................................................................................................... 8
Abstract Type.................................................................................................................................. 8
Action.............................................................................................................................................. 8
Action Import................................................................................................................................... 8
Action Overload.............................................................................................................................. 8
Alias................................................................................................................................................ 8
Alternate Key.................................................................................................................................. 8
Annotation....................................................................................................................................... 8
Arithmetic Operator......................................................................................................................... 9
Asynchronous Request................................................................................................................... 9
Authentication................................................................................................................................. 9
Base Type....................................................................................................................................... 9
Batch Request................................................................................................................................ 9
Binding Parameter.......................................................................................................................... 9
Boolean Expression........................................................................................................................ 9
Bound Action................................................................................................................................... 9
Built-In Type.................................................................................................................................. 10
Canonical Function....................................................................................................................... 10
Canonical Key............................................................................................................................... 10
Canonical URL.............................................................................................................................. 10
Cast.............................................................................................................................................. 10
Client-Side Function...................................................................................................................... 10
Collection...................................................................................................................................... 10
Common Schema Definition Language......................................................................................... 10
Comparison Operator................................................................................................................... 10
Complex Property......................................................................................................................... 10
Complex Type............................................................................................................................... 10
Composable Function................................................................................................................... 10
Conformance................................................................................................................................ 10
Constant Exxpression................................................................................................................... 10
Containment Navigation Property.................................................................................................10
Context URL................................................................................................................................. 10
Count............................................................................................................................................ 10
Cross Join..................................................................................................................................... 10
CSDL Element.............................................................................................................................. 10
Data Model.................................................................................................................................... 11
Data Service................................................................................................................................. 11
Delta Payload................................................................................................................................ 11
Derived Complex Type.................................................................................................................. 11
Derived Entity................................................................................................................................ 11
Derived Entity Type....................................................................................................................... 11
Derived Type................................................................................................................................. 11

Version 1.0.0 Draft Page 3


OData Dictionary
Dynamic Expression..................................................................................................................... 11
Edit URL........................................................................................................................................ 11
Entity............................................................................................................................................. 11
Entity Collection............................................................................................................................ 11
Entity Container............................................................................................................................ 11
Entity-Id......................................................................................................................................... 11
Entity Reference........................................................................................................................... 11
Entity Set....................................................................................................................................... 11
Entity Set Path.............................................................................................................................. 11
Entity Type.................................................................................................................................... 11
Enumeration Type......................................................................................................................... 11
Error Response............................................................................................................................. 11
Expression.................................................................................................................................... 11
Format........................................................................................................................................... 11
Format Extension.......................................................................................................................... 11
Function........................................................................................................................................ 11
Function import............................................................................................................................. 12
Function Overloads....................................................................................................................... 12
Header Field................................................................................................................................. 12
Header Field Extension................................................................................................................. 12
Identifier........................................................................................................................................ 12
Interoperable................................................................................................................................. 12
Key................................................................................................................................................ 12
Key-as-Segment........................................................................................................................... 12
Labeled Element........................................................................................................................... 12
Logical Operator........................................................................................................................... 12
Media Entity.................................................................................................................................. 12
Media Entity Type......................................................................................................................... 12
Member......................................................................................................................................... 12
Metadata....................................................................................................................................... 12
Metadata Document...................................................................................................................... 12
Metadata Extension...................................................................................................................... 12
Model Version............................................................................................................................... 12
Multipart Batch Response............................................................................................................. 12
Namespace................................................................................................................................... 12
Navigation Property...................................................................................................................... 12
Navigation Property Binding.......................................................................................................... 12
Navigation Property Binding Target.............................................................................................. 13
Navigation Property Path Binding.................................................................................................13
Nominal Type................................................................................................................................ 13
Null................................................................................................................................................ 13
Nullable......................................................................................................................................... 13
Nullable Navigation Property......................................................................................................... 13
On-Delete Action........................................................................................................................... 13
Open Complex Type..................................................................................................................... 13
Open Type.................................................................................................................................... 13
Operation...................................................................................................................................... 13
Parameter..................................................................................................................................... 14
Parameter Alias............................................................................................................................ 14
Path Expression............................................................................................................................ 14
Partner Navigation Property.......................................................................................................... 14
Payload Extension........................................................................................................................ 14
Primary Key.................................................................................................................................. 14
Primitive Property.......................................................................................................................... 14
Primitive Type............................................................................................................................... 14
Projected Entity............................................................................................................................. 14

Page 4 Draft Version 1.0.0


OData Dictionary
Property........................................................................................................................................ 14
Property Value.............................................................................................................................. 14
Protocol Version............................................................................................................................ 14
Qualified Name............................................................................................................................. 14
Qualifier......................................................................................................................................... 14
Query............................................................................................................................................ 14
Query Option................................................................................................................................. 14
Query Option Extension................................................................................................................ 14
Read URL..................................................................................................................................... 14
Record.......................................................................................................................................... 14
Reference..................................................................................................................................... 14
Referential Constraint................................................................................................................... 14
Request......................................................................................................................................... 14
Request Body............................................................................................................................... 14
Response Code............................................................................................................................ 14
Return Type.................................................................................................................................. 14
Schema......................................................................................................................................... 15
Schema Declaration...................................................................................................................... 15
Service.......................................................................................................................................... 15
Service-Defined Operation............................................................................................................ 15
Service Document......................................................................................................................... 15
Service Model............................................................................................................................... 15
Simple Identifier............................................................................................................................ 15
Singleton....................................................................................................................................... 15
Specialized Term.......................................................................................................................... 15
Specialized Type........................................................................................................................... 15
Status Code.................................................................................................................................. 15
Stream Property............................................................................................................................ 15
Structural Property........................................................................................................................ 15
Structured Type............................................................................................................................ 15
Synchronous Request................................................................................................................... 15
Target............................................................................................................................................ 15
Target Path................................................................................................................................... 15
Term............................................................................................................................................. 15
Transient Entity............................................................................................................................. 16
Type.............................................................................................................................................. 16
Type Facet.................................................................................................................................... 16
Unbound Action............................................................................................................................ 16
Underlying Primitive Type............................................................................................................. 16
URL Reference............................................................................................................................. 16
Upsert........................................................................................................................................... 16
Vocabulary.................................................................................................................................... 16
Vocabulary Extension................................................................................................................... 16
ANNEX A : Revision History...................................................................................................................... 17

Figures
No table of figures entries found.

Tables
Table 1: Abbreviated Terms.........................................................................................................6

Version 1.0.0 Draft Page 5


OData Dictionary

Foreword

The OData Dictionary (#1) was prepared by the Vocabulary Special Interest Group of the
Dictionary.
ODATA is a not-for-profit association of industry members dedicated to promoting enterprise
and systems management and interoperability. For information about the ODATA, see
http://www.OData.org/.

Acknowledgments
The ODATA acknowledges the following individuals for their contributions to this document:
Editor:
 George Ericson – Dell
Contributors:
 Michael Pizzo – Microsoft
 Ralph Handl - SAP

Page 6 Draft Version 1.0.0


OData Dictionary

OData Dictionary
1 Introduction
The OData Dictionary provides definitions for terms, term abbreviations, and symbols that are
commonly used across multiple OData documents and specifications.

1.1 Document Conventions

1.2 Typographical Conventions


The following typographical conventions are used in this document:
 Document titles are marked in italics.
 Important terms that are used for the first time are marked in italics.
 ABNF rules and code text are in monospaced font.

2 Scope
ODATA participation comes from many different technical communities. Each community
develops a community specific vocabulary, often without collaboration from other communities.
The result is that specific words and abbreviations carry community specific connotations that
do not apply outside of the community. The purpose of the proposed vocabulary document is to
explicitly define terms and their meanings as they are used within the ODATA community.

3 Normative References
 ISO/IEC Directives, Part 2, Rules for the structure and drafting of International Standards,
Eighth Edition 2018
https://www.iso.org/sites/directives/current/part2/index.xhtml
 OData Version 4.01. Edited by Michael Pizzo, Ralf Handl, and Martin Zurmuehl. A multi-part
Work Product which includes:
o OData Version 4.01. Part 1: Protocol. Latest version:
https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html.
o OData Version 4.01. Part 2: URL Conventions. Latest version: https://docs.oasis-
open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html.
o ABNF components: OData ABNF Construction Rules Version 4.01 and OData ABNF
Test Cases. https://docs.oasis-open.org/odata/odata/v4.01/csprd05/abnf/.
 OData Common Schema Definition Language (CSDL) XML Representation Version 4.01. Edited
by Michael Pizzo, Ralf Handl, and Martin Zurmuehl. Latest version:
https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/odata-csdl-xml-v4.01.html.
 OData Common Schema Definition Language (CSDL) JSON Representation Version 4.01.
Edited by Michael Pizzo, Ralf Handl, and Martin Zurmuehl. Latest version: https://docs.oasis-
open.org/odata/odata-csdl-json/v4.01/odata-csdl-json-v4.01.html.

Version 1.0.0 Draft Page 7


OData Dictionary

 OData Vocabularies Version 4.0. Edited by Michael Pizzo, Ralf Handl, and Ram Jeyaraman.
Latest version: http://docs.oasis-open.org/odata/odata-vocabularies/v4.0/odata-vocabularies-
v4.0.html.
 OData JSON Format Version 4.01. Edited by Michael Pizzo, Ralf Handl, and Mark Biamonte.
Latest version: https://docs.oasis-open.org/odata/odata-json-format/v4.01/odata-json-format-
v4.01.html.
 Duerst, M. and, M. Suignard, “Internationalized Resource Identifiers (IRIs)”, RFC 3987, January
2005. https://tools.ietf.org/html/rfc3987.
 Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174,
DOI 10.17487/RFC8174, May 2017, https://www.rfc-editor.org/info/rfc8174.

4 Abbreviations
The following abbreviations definitions apply to the ODATA community.

Table 1: Abbreviated Terms


Abbreviation Definition
CDSL Common Schema Definition Language
OASIS Organization for the Advancement of Structured Information Standards
OData OASIS Open Data Protocol
JSON Java Schema Object Notation
URL Uniform Resource Locator

5 Terms
5.1 Standard terms
The terms "SHALL" ("REQUIRED"), "SHALL NOT", "SHOULD", ("RECOMMENDED"),
"SHOULD NOT", ("NOT RECOMMENDED"), "MAY", "NEED NOT" ("NOT REQUIRED"), "CAN",
"CANNOT", ’MUST", and "MUST NOT" as used in ODATA documents, and only when specified
in all caps (see RFC8174), are to be interpreted as described in ISO/IEC Directives, Part 2,
clause 7.
The terms in parenthesis are alternatives for the preceding term, for use in exceptional cases
when the preceding term cannot be used for linguistic reasons. ISO/IEC Directives, Part 2,
clause 7 specifies additional alternatives. Occurrences of such additional alternatives shall be
interpreted in their normal English meaning.
The terms "MUST" and "SHALL" are not interchangeable. The former indicates a constraint or
obligation that is not defined by the document while the later indicates a constraint or obligation
defined by the document.

5.2 Common terms and definitions


The following are common industry or dictionary terms that SHOULD be used when applicable
within the ODATA community.

Abstract Type
each instance is an instance of one of its specializations

Page 8 Draft Version 1.0.0


OData Dictionary
Action
a service-defined operation that might have observable side effects and might return a single
instance or a collection of instances of any type.

Action Import
a schema declaration that binds an unbound action to an entity set

Action Overload
multiple unbound actions within the same schema declaration having the same name but
different binding parameter

Action Parameter
a parameter of an action

Alias
a short string to be substituted for a long namespace

Alternate Key
an additional key that might be used in place of an entity's canonical (primary) key

Annotation
the value of a term

Applied Term
annotation

Arithmetic Operator
symbols that represent arithmetic math operations

Asynchronous Request
a request that before completion returns an intermediate result with a reference to a new
resource that can be tested for completion of the request

Authentication
the process or action of verifying the identity of a user or process

Base Type
a more general type

Batch Request
the grouping of multiple individual requests into a single HTTP request

Version 1.0.0 Draft Page 9


OData Dictionary

Binding Parameter
the first parameter of a bound action or function

Boolean Expression
an expression that evaluates to either TRUE or FALSE 

Bound Action
an action declared with a binding parameter

Built-In Type
types defined natively by CSDL

Canonical Function
a set of functions defined for use with the $compute, $filter or $orderby system query
options, or in parameter alias values

Canonical Key
a key segment of a canonical URL

Canonical URL
absolute URL identifying a contained entity is formed by adding a single path segment to the
service root URL.

Cast
an expression that transforms the result value of a single child expression to a specified type

Client-Side Function
a function used to compute instance, property or annotation values

Collection
A set of zero or more values

Common Schema Definition Language


one of a set of languages represented in XML, JSON, or other formats, that is used to represent
an entity data model exposed by an OData service

Comparison Operator
an operators that compare values and return true or false

Complex Property
a property or term that has a complex type

Page 10 Draft Version 1.0.0


OData Dictionary
Complex Type
A keyless structural type composed of structural properties and navigation properties

Composable Function

Conformant Service
an OData service that follows all of the rules specified by CSDLConstant Expression
an expression that assigns a constant value to an annotation

Containment Navigation Property


a navigation property that contains its values

Context URL
an URL that addresses the portion of the metadata document that describes a payload

Cross Join
the cartesian product of the rows (records) of two or more tables (collections)

CSDL Element
A metadata element defined by CSDL model

Delta Payload
a representation of changes to a known state

Derived Complex Type


a specialization of another complex type

Derived Entity Type


a specialization of another entity type

Derived Type
a specialization of another type

Dynamic Expression
an annotation expression that assigns a calculated value to an annotation

Edit URL
the URL that can be used to update or delete the entity or property

Element
A constituent of a model

Version 1.0.0 Draft Page 11


OData Dictionary

Entity
An instance value conformant to an entity type

Entity Container
A structured type that defines the top level model element exposed by an OData service

Entity Data Model


a set of concepts that describe the structure of data, regardless of its stored form

Entity-Id
a durable, opaque, globally unique URI of an entity

Entity Model
the model defined by an OData service

Entity Reference
a reference to an entity using its entity-id

Entity Set
An entity typed, containment, collection property that supports by-value and by-reference
representations and which is declared within an entity container

Entity Set Path


a path starting with the name of the binding parameter, and consisting of additional segments
joined together with forward slashes that together navigate to the entity set that contains entities
returned by a function or action

Entity Type
a named, structured type with a key and that consists of one or more structural properties

Enumeration Type
a named type having a non-empty set of named values

Error Response
a response to a request that did not complete as expected

Expression
numbers, symbols and operators grouped together to show the value of something

Format
the way in which something is arranged or set out

Page 12 Draft Version 1.0.0


OData Dictionary
Function
an operation that has no observable side effects and that returns a single instance or a
collection of instances of any type

Function import
a schema declaration that binds an unbound function to an entity type

Function Overload
a function having the same name as another in the same schema

Function Parameter
a parameter of a function

Header Field
metadata that affects the semantics or syntax of an OData service request or response

Identifier
a sequence of characters used to identify or refer to element, such as a variable or a set of data

Instance
a value of a named element

Interoperable
the ability to work together to achieve some outcome

Key
A unique identifier of an entity within an entity set

Key-as-Segment
a convention for addressing entities by appending a segment containing the unquoted key value
of an entity to the URL of the collection containing that entity

Labeled Element
a named child expression of an If-Then-Else expression

Logical Operator
the boolean operations, (OR, AND, NOT), used in boolean expressions

Media Entity
an entity that represents structured additional information about a media stream, such as a
photo.

Version 1.0.0 Draft Page 13


OData Dictionary

Media Entity Type


a structured type with values that are media entities and the associated media stream

Media Stream
a value, such as a photograph, video, audio file, …

Member
a value of a collection property or an enumeration

Metadata
data that describes other data.

Metadata Document
a representation of the schema that describes the data model understood by an OData service

Model Version
an identifier of a contract for the data model representation between an OData service and its
clients

Named Element
an element that can be identified by a name

Namespace
an element that contains a set of named elements

Navigation Property
an entity typed property that supports by-value and by-reference representations

Navigation Property Binding


a declaration of which entity set or singleton will contain the related entities specified by a
Navigation Property

Navigation Property Binding Target


a specification of the entity set, singleton, or containment navigation property that contains the
entities.

Navigation Property Path Binding


the path from the binding target to the Navigation Property

Nominal Type
a type that is known by its name

Page 14 Draft Version 1.0.0


OData Dictionary
Null
a keyword that indicates that something has no value

Nullable
a keyword that indicates that something might have no value

Nullable Navigation Property


a navigation property that might not reference an entity

OData Service
a service that advertises a concrete data model in a machine-readable form, allowing generic
clients to interact with the service in a well-defined way

OData Service Request


a request made to an OData service

OData Service Response


a response from an OData service to request

On-Delete Action
an action triggered when an entity related by a navigation property is deleted

Open Complex Type


a complex type that allows clients to add properties

Open Entity Type


an entity type that allows clients to add properties

Open Type
an open complex type or an open entity type

Operation
a feature of a type that specifies a behavior of its instances

Parameter
a specification of an argument used to pass information into or out of an invocation of an action
or function

Parameter Alias
an identifier for the literal values in entity keys, function parameters or expressions

Path Expression
a dynamic expression that results in the values of an instance or collection of instances

Version 1.0.0 Draft Page 15


OData Dictionary

Partner Navigation Property


the navigation property of a second entity that refers to a first entity that contains the navigation
property that declares the partner navigation property

Payload
a request body or a response body

Primary Key
the set of properties who's values collectively define an entity's key

Primitive Property
a property with a primitive type

Primitive Type
a predefined type without any substructure

Projected Entity
a subset of the elements of an entity

Projected Entity Type


a subset of the elements of an entity type

Property
a named and typed structural characteristic of a complex type, entity container, or entity type.

Property Value
The value of a property in the context of an entity

Protocol Version
an identifier for a protocol contract between an OData service and its clients

Qualified Name
the name of an element together with the names of all of the namespaces that contain that
element

Qualifier
an simple identifier used to qualify an annotation to allow multiple values of the same term to be
applied to an element

Query
the part of a uniform resource locator that assigns values to specified query options

Page 16 Draft Version 1.0.0


OData Dictionary
Query Option
a substring of an query that has a name and value

Read URL
the URL that can be used to read the entity

Record
an expression that specifies a value for an entity type or complex type

Reference
an identifier for resource

Referential Constraint
an assertion that a selected set of property values belonging to a first entity will have the same
values as the properties of a corresponding set of properties belonging a second entity type

Request Body
data passed with an OData service request

Response Body
data passed with an OData service response

Response Code
a valid status code, appropriate to the result of a request

Return Type
the data type of the result of an action or function

Schema
an outline, diagram, or model used to describe the structure of data

Schema Declaration
a statement that specifies an instance of metadata

Service
a means of delivering value to customers by facilitating outcomes customers want to achieve
without the ownership of specific costs and risks

Service-Defined Operation
an operation defined by an OData Service

Service Document
a representation of the entity container of an OData Service

Version 1.0.0 Draft Page 17


OData Dictionary

Service Model
a model that described by a metadata document and a service document that together describe
the data model serviced by an OData Service

Simple Identifier
A name starting with a letter or underscore and followed by at most 127 letters, underscores or
digits.

Singleton
An entity typed, containment property of an entity container and that supports by-value and by-
reference representations

Specialization
a taxonomic relationship such that each instance of a more specific element is also an instance
of the more general element

Specialized Term
a Term that specializes another Term

Specialized Type
a type that inherits the actions, annotations, functions, and properties of a more general type

Status Code
a code value that indicates the result of an OData service request

Stream Property
a property with a media stream type

Structural Property
a property of a structured type with values contained in the instances that type

Structured Type
a type composed of zero or more structural properties and navigation properties

Substitutability
a relationship between a substitution element and a contract element that asserts that instances
of the substitution type comply with all requirements and constraints on the contract type

Synchronous Request
a request that must complete before it returns a result

Target Path
a path that identifies another element

Page 18 Draft Version 1.0.0


OData Dictionary
Term
a schema declaration that defines metadata about one or more named elements

Transient Entity
an instance of an entity type that only exists within a single payload

Type
a specification of the set of allowed values known as the instances of the type

Type Definition
a specialization of a primitive type

Type Facet
metadata about a type

Unbound Action
an action of an OData service that does not rely on the prior existence of an entity

Underlying Type
the type from which specialized type is derived

Unified Resource Locator


a reference to a resource that specifies its location on a computer network and a mechanism for
retrieving it

URL Reference expression


An expression that returns a value that is an URL

Upsert
a request to create an entity by address

Vocabulary
a schema defining a set of terms.

Version 1.0.0 Draft Page 19


OData Dictionary

ANNEX A: Revision History

Release Date Description of changes


1.0.0 Initial Release

Page 20 Draft Version 1.0.0

You might also like