-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution:
Fixed
-
Affects Version/s:
None
-
Fix Version/s:
None
-
-
-
-
Proposal:
Hide
When mapping properties of a term the target of the mapping MUST be of the type specified in the term definition or a derived type of the specified type, or annotated with the specified type or a subtype of the specified type.
Example vocabulary:
<Schema Namespace="vCard">
<Term Name="Contact" Type="vCard.ContactType" AppliesTo="EntityType,ComplexType" />
<ComplexType Name="ContactType">
<Property Name="PhoneNumbers" Type="Collection(vCard.PhoneNumberType)" />
...
</ComplexType>
<Term Name="PhoneNumber" Type="vCard.PhoneNumberType" AppliesTo="EntityType,ComplexType" />
<ComplexType Name="PhoneNumberType">
<Property Name="Number" Type="String"/>
...
</ComplexType>
</Schema>
Example service with annotations:
<Schema Namespace="SomeService">
<EntityType Name="Customer">
...
<NavigationProperty Name="Phones" Type="Collection(SomeService.Phone)"/>
...
<Annotation Term="vCard.Contact">
<Record>
<PropertyValue Property="PhoneNumbers" Path="Phones/vCard.PhoneNumber#work" />
</Record>
</Annotation>
</EntityType>
<EntityType Name="Phone">
...
<Property Name="work_phone_number" Type="String"/>
...
<Annotation Term="vCard.PhoneNumber" Qualifier="work">
<Record>
<PropertyValue Property="Number" Path="work_phone_number" />
</Record>
</Annotation>
</EntityType>
</Schema>
Accepted: https://www.oasis-open.org/committees/download.php/48097/odata-meeting-23_on-20130130_31-F2F-minutes.html#odata-108
Show
When mapping properties of a term the target of the mapping MUST be of the type specified in the term definition or a derived type of the specified type, or annotated with the specified type or a subtype of the specified type.
Example vocabulary:
<Schema Namespace="vCard">
<Term Name="Contact" Type="vCard.ContactType" AppliesTo="EntityType,ComplexType" />
<ComplexType Name="ContactType">
<Property Name="PhoneNumbers" Type="Collection(vCard.PhoneNumberType)" />
...
</ComplexType>
<Term Name="PhoneNumber" Type="vCard.PhoneNumberType" AppliesTo="EntityType,ComplexType" />
<ComplexType Name="PhoneNumberType">
<Property Name="Number" Type="String"/>
...
</ComplexType>
</Schema>
Example service with annotations:
<Schema Namespace="SomeService">
<EntityType Name="Customer">
...
<NavigationProperty Name="Phones" Type="Collection(SomeService.Phone)"/>
...
<Annotation Term="vCard.Contact">
<Record>
<PropertyValue Property="PhoneNumbers" Path="Phones/vCard.PhoneNumber#work" />
</Record>
</Annotation>
</EntityType>
<EntityType Name="Phone">
...
<Property Name="work_phone_number" Type="String"/>
...
<Annotation Term="vCard.PhoneNumber" Qualifier="work">
<Record>
<PropertyValue Property="Number" Path="work_phone_number" />
</Record>
</Annotation>
</EntityType>
</Schema>
Accepted: https://www.oasis-open.org/committees/download.php/48097/odata-meeting-23_on-20130130_31-F2F-minutes.html#odata-108
-
Resolution:
Show
https://www.oasis-open.org/committees/download.php/48171/odata-core-v1.0-wd01-part3-csdl-2013-02-07-RH.doc
https://tools.oasis-open.org/version-control/browse/wsvn/odata/trunk/spec/schemas/csdl.xsd?rev=175
Accepted: https://www.oasis-open.org/committees/download.php/48269/odata-meeting-25_on-20130214-minutes.html#odata-108
Define rules around what the target of a PropertyValue in an Annotation may be. It MUST be the specified type, or contain an Annotation mapping it to the specified type.
There are no comments yet on this issue.
{"report":{"apdex":1,"isInitial":true,"journeyId":"228d81a0-8e35-45fd-8314-71dc255ef4c7","key":"jira.project.issue.view-issue","navigationType":0,"readyForUser":870.6999998092651,"redirectCount":0,"resourceLoadedEnd":1014.8999996185303,"resourceLoadedStart":316.7999997138977,"resourceTiming":[{"duration":178.40000009536743,"initiatorType":"link","name":"https://issues.oasis-open.org/s/3edeca31ab9ba77980aae0809fbe7121-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/0a4716d29b2d5b1bdcdb168b4efc119e/_/download/contextbatch/css/_super/batch.css","startTime":316.7999997138977,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":316.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":495.19999980926514,"responseStart":0,"secureConnectionStart":0},{"duration":181.30000019073486,"initiatorType":"link","name":"https://issues.oasis-open.org/s/7d2823769c2e7b66e860863fe879b7f8-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/9aebb1c0aaa4c36289529757ec9dbb54/_/download/contextbatch/css/project.issue.navigator,jira.view.issue,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&richediton=true","startTime":317.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":317.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":498.5,"responseStart":0,"secureConnectionStart":0},{"duration":181.90000009536743,"initiatorType":"link","name":"https://issues.oasis-open.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/8.0.5/_/download/batch/com.atlassian.auiplugin:split_aui.pattern.label/com.atlassian.auiplugin:split_aui.pattern.label.css","startTime":317.3999996185303,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":317.3999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":499.2999997138977,"responseStart":0,"secureConnectionStart":0},{"duration":186,"initiatorType":"link","name":"https://issues.oasis-open.org/s/645acc233eb869f48a571293b8358a7d-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/1.0/_/download/batch/jira.webresources:global-static-adgs/jira.webresources:global-static-adgs.css","startTime":317.59999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":317.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":503.59999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":186.30000019073486,"initiatorType":"link","name":"https://issues.oasis-open.org/s/a0dd6509771c1de0667aae5429c04cda-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/1.0/_/download/batch/jira.webresources:global-static/jira.webresources:global-static.css","startTime":317.8999996185303,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":317.8999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":504.19999980926514,"responseStart":0,"secureConnectionStart":0},{"duration":228.5,"initiatorType":"script","name":"https://issues.oasis-open.org/s/e5479157e7a0c08b005e6522f2f04104-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/0a4716d29b2d5b1bdcdb168b4efc119e/_/download/contextbatch/js/_super/batch.js?locale=en-US","startTime":318.09999990463257,"connectEnd":318.09999990463257,"connectStart":318.09999990463257,"domainLookupEnd":318.09999990463257,"domainLookupStart":318.09999990463257,"fetchStart":318.09999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":318.09999990463257,"responseEnd":546.5999999046326,"responseStart":546.5999999046326,"secureConnectionStart":318.09999990463257},{"duration":252,"initiatorType":"script","name":"https://issues.oasis-open.org/s/83514d5d4e8543747b02042eafcdc99c-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/9aebb1c0aaa4c36289529757ec9dbb54/_/download/contextbatch/js/project.issue.navigator,jira.view.issue,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en-US&richediton=true","startTime":318.59999990463257,"connectEnd":318.59999990463257,"connectStart":318.59999990463257,"domainLookupEnd":318.59999990463257,"domainLookupStart":318.59999990463257,"fetchStart":318.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":318.59999990463257,"responseEnd":570.5999999046326,"responseStart":570.5999999046326,"secureConnectionStart":318.59999990463257},{"duration":254.2000002861023,"initiatorType":"script","name":"https://issues.oasis-open.org/s/70bb2263e59e7e1f04fbd137c80b895b-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/aae1242f5fc81cc6a5bb8bc963ccda29/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en-US","startTime":318.7999997138977,"connectEnd":318.7999997138977,"connectStart":318.7999997138977,"domainLookupEnd":318.7999997138977,"domainLookupStart":318.7999997138977,"fetchStart":318.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":318.7999997138977,"responseEnd":573,"responseStart":573,"secureConnectionStart":318.7999997138977},{"duration":254.2999997138977,"initiatorType":"script","name":"https://issues.oasis-open.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":319.09999990463257,"connectEnd":319.09999990463257,"connectStart":319.09999990463257,"domainLookupEnd":319.09999990463257,"domainLookupStart":319.09999990463257,"fetchStart":319.09999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":319.09999990463257,"responseEnd":573.3999996185303,"responseStart":573.3999996185303,"secureConnectionStart":319.09999990463257},{"duration":254.69999980926514,"initiatorType":"script","name":"https://issues.oasis-open.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":319.19999980926514,"connectEnd":319.19999980926514,"connectStart":319.19999980926514,"domainLookupEnd":319.19999980926514,"domainLookupStart":319.19999980926514,"fetchStart":319.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":319.19999980926514,"responseEnd":573.8999996185303,"responseStart":573.8999996185303,"secureConnectionStart":319.19999980926514},{"duration":254.90000009536743,"initiatorType":"script","name":"https://issues.oasis-open.org/s/cda37faab827dbdf305de8efe8282062-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/8.0.5/_/download/batch/com.atlassian.auiplugin:split_aui.pattern.label/com.atlassian.auiplugin:split_aui.pattern.label.js?locale=en-US","startTime":319.3999996185303,"connectEnd":319.3999996185303,"connectStart":319.3999996185303,"domainLookupEnd":319.3999996185303,"domainLookupStart":319.3999996185303,"fetchStart":319.3999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":319.3999996185303,"responseEnd":574.2999997138977,"responseStart":574.2999997138977,"secureConnectionStart":319.3999996185303},{"duration":255.19999980926514,"initiatorType":"link","name":"https://issues.oasis-open.org/s/07245784f53abc49bad9d9d4d36c577a-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/cadc4f20cc5c138dee060d42cf85f220/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":319.59999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":319.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":574.7999997138977,"responseStart":0,"secureConnectionStart":0},{"duration":255,"initiatorType":"script","name":"https://issues.oasis-open.org/rest/api/1.0/shortcuts/803004/a29179d70fa8562374ee16707692af77/shortcuts.js?context=issuenavigation&context=issueaction","startTime":319.7999997138977,"connectEnd":319.7999997138977,"connectStart":319.7999997138977,"domainLookupEnd":319.7999997138977,"domainLookupStart":319.7999997138977,"fetchStart":319.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":319.7999997138977,"responseEnd":574.7999997138977,"responseStart":574.7999997138977,"secureConnectionStart":319.7999997138977},{"duration":339.40000009536743,"initiatorType":"link","name":"https://issues.oasis-open.org/s/f77fd89aa211a76b20e9b0e63564383c-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/4a9288299d147101bf66484f4be48925/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-jira.view.issue,-project.issue.navigator/batch.css?jira.create.linked.issue=true&richediton=true","startTime":352.69999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":352.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":692.0999999046326,"responseStart":0,"secureConnectionStart":0},{"duration":262.3999996185303,"initiatorType":"script","name":"https://issues.oasis-open.org/s/41525c48ddceeb9b11e54085268fc285-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/4a9288299d147101bf66484f4be48925/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-jira.view.issue,-project.issue.navigator/batch.js?jira.create.linked.issue=true&locale=en-US&richediton=true","startTime":353,"connectEnd":353,"connectStart":353,"domainLookupEnd":353,"domainLookupStart":353,"fetchStart":353,"redirectEnd":0,"redirectStart":0,"requestStart":353,"responseEnd":615.3999996185303,"responseStart":615.3999996185303,"secureConnectionStart":353}],"threshold":1000,"fetchStart":0,"domainLookupStart":210,"domainLookupEnd":210,"connectStart":210,"connectEnd":259,"secureConnectionStart":234,"requestStart":259,"responseStart":308,"responseEnd":370,"domLoading":312,"domInteractive":1033,"domContentLoadedEventStart":1033,"domContentLoadedEventEnd":1073,"domComplete":1133,"loadEventStart":1133,"loadEventEnd":1136,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[],"measures":[],"correlationId":"da61fe07c5f742","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":85,"dbReadsTimeInMs":10,"dbConnsTimeInMs":12,"applicationHash":"4d4040e0714d65b7fffa4801569d014c0b16eaa9","experiments":[]}}