forked from oasis-tcs/odata-vocabularies
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathOrg.OData.Validation.V1.xml
149 lines (131 loc) · 9.04 KB
/
Org.OData.Validation.V1.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?xml version="1.0" encoding="utf-8"?>
<!--
Technical Committee:
OASIS Open Data Protocol (OData) TC
https://www.oasis-open.org/committees/odata
Chairs:
- Ralf Handl ([email protected]), SAP SE
- Ram Jeyaraman ([email protected]), Microsoft
Editors:
- Ralf Handl ([email protected]), SAP SE
- Ram Jeyaraman ([email protected]), Microsoft
- Michael Pizzo ([email protected]), Microsoft
Additional artifacts:
This vocabulary is one component of a Work Product that also includes the following vocabulary components:
- OData Core Vocabulary. Latest version: https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Core.V1.xml.
- OData Measures Vocabulary. Latest version: https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Measures.V1.xml.
- OData Capabilities Vocabulary. Latest version: https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Capabilities.V1.xml.
- OData Validation Vocabulary. Latest version: https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Validation.V1.xml.
- OData Aggregation Vocabulary. Latest version: https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Aggretation.V1.xml.
- OData Authorization Vocabulary. Latest version: https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Authorization.V1.xml.
Related work:
This vocabulary replaces or supersedes:
- None.
This vocabulary is related to:
- OData Version 4.01 Part 1: Protocol. Latest version: http://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html.
- OData Version 4.01 Part 2: URL Conventions. Latest version: http://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html.
- OData Common Schema Definition Language (CSDL) JSON Representation Version 4.01. Latest version: http://docs.oasis-open.org/odata/odata-csdl-json/v4.01/odata-csdl-json-v4.01.html.
- OData Common Schema Definition Language (CSDL) XML Representation Version 4.01. Latest version: http://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/odata-csdl-xml-v4.01.html.
- OData JSON Format Version 4.01. Latest version: http://docs.oasis-open.org/odata/odata-json-format/v4.01/odata-json-format-v4.01.html.
- OData Extension for Data Aggregation Version 4.0. Latest version: http://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/odata-data-aggregation-ext-v4.0.html.
Abstract:
This document contains terms describing validation rules.
-->
<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
<edmx:Reference Uri="https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Core.V1.xml">
<edmx:Include Alias="Core" Namespace="Org.OData.Core.V1" />
</edmx:Reference>
<edmx:DataServices>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Org.OData.Validation.V1" Alias="Validation">
<Annotation Term="Core.Description">
<String>Terms describing validation rules</String>
</Annotation>
<Annotation Term="Core.Links">
<Collection>
<Record>
<PropertyValue Property="rel" String="latest-version" />
<PropertyValue Property="href"
String="https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Validation.V1.xml" />
</Record>
<Record>
<PropertyValue Property="rel" String="alternate" />
<PropertyValue Property="href"
String="https://oasis-tcs.github.io/odata-vocabularies/vocabularies/Org.OData.Validation.V1.json" />
</Record>
<Record>
<PropertyValue Property="rel" String="describedby" />
<PropertyValue Property="href"
String="https://github.com/oasis-tcs/odata-vocabularies/blob/master/vocabularies/Org.OData.Validation.V1.md" />
</Record>
</Collection>
</Annotation>
<Term Name="Pattern" Type="Edm.String" AppliesTo="Property Parameter Term">
<Annotation Term="Core.Description"
String="The pattern that a string property, parameter, or term must match. This SHOULD be a valid regular expression, according to the ECMA 262 regular expression dialect." />
<Annotation Term="Core.RequiresType" String="Edm.String" />
</Term>
<Term Name="Minimum" Type="Edm.Decimal" Scale="variable" AppliesTo="Property Parameter Term">
<Annotation Term="Core.Description" String="Minimum value that a property, parameter, or term can have." />
</Term>
<Term Name="Maximum" Type="Edm.Decimal" Scale="variable" AppliesTo="Property Parameter Term">
<Annotation Term="Core.Description" String="Maximum value that a property, parameter, or term can have." />
</Term>
<Term Name="Exclusive" Type="Core.Tag" DefaultValue="true" AppliesTo="Annotation">
<Annotation Term="Core.Description" String="Tags a Minimum or Maximum as exclusive, i.e. an open interval boundary." />
</Term>
<Term Name="AllowedValues" Type="Collection(Validation.AllowedValue)" AppliesTo="Property Parameter TypeDefinition">
<Annotation Term="Core.Description" String="A collection of valid values for the annotated property, parameter, or type definition" />
</Term>
<ComplexType Name="AllowedValue">
<Property Name="Value" Type="Edm.PrimitiveType">
<Annotation Term="Core.Description" String="An allowed value for the property, parameter, or type definition" />
</Property>
</ComplexType>
<Term Name="MultipleOf" Type="Edm.Decimal" Scale="variable" AppliesTo="Property Parameter Term">
<Annotation Term="Core.Description"
String="The value of the annotated property, parameter, or term must be an integer multiple of this positive value. For temporal types, the value is measured in seconds." />
</Term>
<Term Name="Constraint" Type="Validation.ConstraintType" AppliesTo="Property EntityType ComplexType">
<Annotation Term="Core.Description" String="Condition that the annotation target has to fulfill" />
</Term>
<ComplexType Name="ConstraintType">
<Property Name="FailureMessage" Type="Edm.String" Nullable="true">
<Annotation Term="Core.IsLanguageDependent" />
<Annotation Term="Core.Description" String="Human-readable message that can be shown to end users if the constraint is not fulfilled" />
</Property>
<Property Name="Condition" Type="Edm.Boolean" Nullable="false">
<Annotation Term="Core.Description"
String="Value MUST be a dynamic expression that evaluates to true if and only if the constraint is fulfilled" />
</Property>
</ComplexType>
<Term Name="ItemsOf" Type="Collection(Validation.ItemsOfType)" AppliesTo="EntityType ComplexType">
<Annotation Term="Core.Description"
String="A list of constraints describing that entities related via one navigation property MUST also be related via another, collection-valued navigation property. The same `path` value MUST NOT occur more than once." />
<Annotation Term="Core.LongDescription">
<String>Example: entity type `Customer` has navigation properties `AllOrders`, `OpenOrders`, and `ClosedOrders`.
The term allows to express that items of `OpenOrders` and `ClosedOrders` are also items of the `AllOrders` navigation property,
even though they are defined in an `Orders` entity set.</String>
</Annotation>
</Term>
<ComplexType Name="ItemsOfType">
<Annotation Term="Core.Description"
String="Entities related via the single- or collection-valued navigation property identified by `path` are also related via the collection-valued navigation property identified by `target`." />
<Property Name="path" Type="Edm.NavigationPropertyPath">
<Annotation Term="Core.Description" String="A path to a single- or collection-valued navigation property" />
</Property>
<Property Name="target" Type="Edm.NavigationPropertyPath">
<Annotation Term="Core.Description" String="A path to a collection-valued navigation property" />
</Property>
</ComplexType>
<Term Name="OpenPropertyTypeConstraint" Type="Collection(Core.QualifiedTypeName)" AppliesTo="ComplexType EntityType">
<Annotation Term="Core.Description"
String="Dynamic properties added to the annotated open structured type are restricted to the listed types" />
</Term>
<Term Name="DerivedTypeConstraint" Type="Collection(Core.QualifiedTypeName)" AppliesTo="Property TypeDefinition">
<Annotation Term="Core.Description" String="Values are restricted to types derived from the declared type and listed in this collection" />
<Annotation Term="Core.LongDescription"
String="Types listed in this collection that are not derived form the declared type of the annotated model element are ignored" />
</Term>
</Schema>
</edmx:DataServices>
</edmx:Edmx>