"@custom.ItemIsA":"X.Movie" }, "SomeThing":{ "": "Y.SomeThingType" } } Annotations Annotations can appear inline within a element, or externally as a block that targets a model element. Annotations with external targeting are represented as an annotations name/value pair whose value is an array of JSON objects. Each of these objects contains a target name/value pair whose value is a string with a path expression identifying the annotated model element. In addition, each object contains at least one annotation in the same format that is used for inline annotations and specified in the remaining part of this section. Example : Annotations with external targeting "annotations":[ { "target":"Some.EntityType/SomeProperty", "@X.Y":…, … }, { "target":"Another.EntityType", "@X.Y":…, … }, … ] Annotations are represented similar to instance annotations in , chapter 18. Annotations for JSON objects are name/value pairs placed within the object, the name is an at (@) sign followed by the namespace-qualified name of the term, optionally followed by a hash (#) sign and the qualifier of the annotation. Annotations for JSON arrays or primitives are pairs placed next to the name/value pair whose value is the annotated array or primitive value. The name is the name of the annotated name/value pair followed by the namespace-qualified name of the term, optionally followed by a hash (#) sign and the qualifier of the annotation. The value of the annotation is either a plain JSON value or a JSON object. Example : annotation within an object, annotation of a non-object and annotation of an annotation "@Some.Term" : …, "Hugo@Some.Term" : …, "@Some.Term#SomeQualifier@Some.Term": … Annotations without Explicit Annotations that don't specify an explicit value are represented with an empty object as their value. The actual value is the default value of the term.
"@custom.ItemIsA":"X.Movie" }, "SomeThing":{ "": "Y.SomeThingType" } } Annotations Annotations can appear inline within a element, or externally as a block that targets a model element. Annotations with external targeting are represented as an annotations name/value pair whose value is an array of JSON objects. Each of these objects contains a target name/value pair whose value is a string with a path expression identifying the annotated model element. In addition, each object contains at least one annotation in the same format that is used for inline annotations and specified in the remaining part of this section. Example : Annotations with external targeting "annotations":[ { "target":"Some.EntityType/SomeProperty", "@X.Y":…, … }, { "target":"Another.EntityType", "@X.Y":…, … }, … ] Annotations are represented similar to instance annotations in , chapter 18. Annotations for JSON objects are name/value pairs placed within the object, the name is an at (@) sign followed by the namespace-qualified name of the term, optionally followed by a hash (#) sign and the qualifier of the annotation. Annotations for JSON arrays or primitives are pairs placed next to the name/value pair whose value is the annotated array or primitive value. The name is the name of the annotated name/value pair followed by the namespace-qualified name of the term, optionally followed by a hash (#) sign and the qualifier of the annotation. The value of the annotation is either a plain JSON value or a JSON object. Example : annotation within an object, annotation of a non-object and annotation of an annotation "@Some.Term" : …, "Hugo@Some.Term" : …, "@Some.Term#SomeQualifier@Some.Term": … Annotations without Explicit Annotations that don't specify an explicit value are represented with an empty object as their value. The actual value is the default value of the term.
odata-json-csdl-v4.0-wd01-2015-10-16.docx