Skip to content

Commit ef43e2e

Browse files
committed
odata-dd-5 more work on step 1
1 parent b63351b commit ef43e2e

1 file changed

Lines changed: 14 additions & 4 deletions

File tree

tutorials/odata-dd-5-annotations/odata-dd-5-annotations.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ import { "Org.OData.Core.V1" as "Core" } from "https://oasis-tcs.github.io/.../O
6464
Note that each of the referenced external documents in our OData metadata document are resources in GitHub repositories:
6565

6666
- two belonging to OASIS in <https://oasis-tcs.github.io/odata-vocabularies/>
67-
- one belongint to SAP in <https://sap.github.io/odata-vocabularies/>
67+
- one belonging to SAP in <https://sap.github.io/odata-vocabularies/>
6868

6969
Taking the first of the three `<edmx:Reference>` elements here, we see that:
7070

@@ -74,7 +74,7 @@ Taking the first of the three `<edmx:Reference>` elements here, we see that:
7474

7575
![OASIS OData TC - Vocabularies](oasis-vocabularies-toc.png)
7676

77-
If we look at the XML representation of the "Capabilities" vocabulary in CSDL form, we see this:
77+
If we look specifically at the XML representation of the "Capabilities" vocabulary in CSDL form, we see this:
7878

7979
```xml
8080
<?xml version="1.0" encoding="utf-8"?>
@@ -107,7 +107,7 @@ It's another EDMX document! There is a beauty to the OData specifications that i
107107
- this document _also_ has references to vocabularies
108108
- there is a single `<Schema>` element, with the OData namespace "Org.Data.Capabilities.V1"
109109

110-
And that specific schema is exactly the one that's referenced in the `<edmx:Include>` element:
110+
And that specific schema is exactly the one that's referenced in the `<edmx:Include>` element within the `<edmx:Reference>` element:
111111

112112
```xml
113113
<edmx:Reference
@@ -116,4 +116,14 @@ And that specific schema is exactly the one that's referenced in the `<edmx:Incl
116116
</edmx:Reference>
117117
```
118118

119-
It just so happens that in this referenced CSDL document, there _is_ only one schema, but there could be more. So an `<edmx:Include>` element forms an important part of the `<edmx:Reference>` (indeed, [section 3.3 Element edmx:Reference](https://docs.oasis-open.org/odata/odata/v4.0/errata03/os/complete/part3-csdl/odata-v4.0-errata03-os-part3-csdl-complete.html#_Toc453752504) states that at least one `<edmx:Include>` or `<edmx:IncludeAnnotation>` is mandatory) and serves to identify a particular schema to be included, from the referenced vocabulary. The `<edmx:Include>` element does one more thing here - it specifies a short name, in the form of a value for an `Alias` attribute, which can be used to refer to that imported vocabulary schema. Just like the `as` aliasing in our imaginary JavaScript equivalent example earlier.
119+
It just so happens that in this referenced CSDL document, there _is_ only one schema, but there could be more.
120+
121+
So an `<edmx:Include>` element forms an important part of the `<edmx:Reference>`.
122+
123+
> Indeed, [section 3.3 Element edmx:Reference](https://docs.oasis-open.org/odata/odata/v4.0/errata03/os/complete/part3-csdl/odata-v4.0-errata03-os-part3-csdl-complete.html#_Toc453752504) states that at least one `<edmx:Include>` or `<edmx:IncludeAnnotation>` is mandatory.
124+
125+
The `<edmx:Include>` element serves to identify a particular schema to be included, from the referenced vocabulary.
126+
127+
It also does one more thing here - it specifies a short name, in the form of a value for an `Alias` attribute, which can be used to refer to that imported vocabulary schema. Just like the `as` aliasing in our imaginary JavaScript equivalent example earlier. So instead of the full name "Org.OData.Capabilities.V1" being needed to prefix vocabulary terms, the short form "Capabilities" can be used, as we'll see in subsequent steps.
128+
129+

0 commit comments

Comments
 (0)