-
Proposal:
Hide
Define the following symbolic names:
odata.mediaEditLink
odata.mediaReadLink
odata.mediaContentType
Allow to use these symbolic names in the path attribute of the annotation element.
They may also be appended to Named Stream properties, separated by an @ sign: NamedStream@odata.mediaEditLink etc.
Example:
<EntityType Name="SomeMediaLinkEntryType" HasStream= "true">
<Annotation Term="Movie.MovieURL" Path="@odata.mediaReadLink"/>
<Annotation Term="Movie.MovieMimeType" Path="@odata.mediaContentType"/>
<Property Name="Something" Type="String">
<Property Name="SomethingElse" Type="String"/>
</EntityType>
Accepted: https://www.oasis-open.org/committees/download.php/48174/odata-meeting-24_on-20130207-minutes.html#odata-227
Show
Define the following symbolic names:
odata.mediaEditLink
odata.mediaReadLink
odata.mediaContentType
Allow to use these symbolic names in the path attribute of the annotation element.
They may also be appended to Named Stream properties, separated by an @ sign: NamedStream@odata.mediaEditLink etc.
Example:
<EntityType Name="SomeMediaLinkEntryType" HasStream= "true">
<Annotation Term="Movie.MovieURL" Path="@odata.mediaReadLink"/>
<Annotation Term="Movie.MovieMimeType" Path="@odata.mediaContentType"/>
<Property Name="Something" Type="String">
<Property Name="SomethingElse" Type="String"/>
</EntityType>
Accepted: https://www.oasis-open.org/committees/download.php/48174/odata-meeting-24_on-20130207-minutes.html#odata-227
-
Resolution:
Show
https://www.oasis-open.org/committees/download.php/48200/odata-core-v1.0-wd01-part3-csdl-2013-02-11-RH.doc
Accepted: https://www.oasis-open.org/committees/download.php/48269/odata-meeting-25_on-20130214-minutes.html#odata-227
An Annotation should be able to use one of a set of pre-defined symbolic names when specifying a value.
For example, the value of the "MovieURL" Annotation should be the MediaRessource of the "Movie" type (which is a Media Link Entry).
{"report":{"apdex":1,"isInitial":true,"journeyId":"22a97d68-5c3f-4c24-8641-f05714d8bfa2","key":"jira.project.issue.view-issue","navigationType":0,"readyForUser":650,"redirectCount":0,"resourceLoadedEnd":647.2999997138977,"resourceLoadedStart":160.2999997138977,"resourceTiming":[{"duration":46.30000019073486,"initiatorType":"link","name":"https://issues.oasis-open.org/s/3edeca31ab9ba77980aae0809fbe7121-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/0a4716d29b2d5b1bdcdb168b4efc119e/_/download/contextbatch/css/_super/batch.css","startTime":160.2999997138977,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":160.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":206.59999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":113.90000009536743,"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":160.5,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":160.5,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":274.40000009536743,"responseStart":0,"secureConnectionStart":0},{"duration":113.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":160.69999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":160.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":274.59999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":113.90000009536743,"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":160.7999997138977,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":160.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":274.69999980926514,"responseStart":0,"secureConnectionStart":0},{"duration":114,"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":161,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":161,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":275,"responseStart":0,"secureConnectionStart":0},{"duration":128.30000019073486,"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":161.19999980926514,"connectEnd":161.19999980926514,"connectStart":161.19999980926514,"domainLookupEnd":161.19999980926514,"domainLookupStart":161.19999980926514,"fetchStart":161.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":161.19999980926514,"responseEnd":289.5,"responseStart":289.40000009536743,"secureConnectionStart":161.19999980926514},{"duration":162.90000009536743,"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":161.2999997138977,"connectEnd":161.2999997138977,"connectStart":161.2999997138977,"domainLookupEnd":161.2999997138977,"domainLookupStart":161.2999997138977,"fetchStart":161.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":161.2999997138977,"responseEnd":324.19999980926514,"responseStart":324.19999980926514,"secureConnectionStart":161.2999997138977},{"duration":165.90000009536743,"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":161.5,"connectEnd":161.5,"connectStart":161.5,"domainLookupEnd":161.5,"domainLookupStart":161.5,"fetchStart":161.5,"redirectEnd":0,"redirectStart":0,"requestStart":161.5,"responseEnd":327.40000009536743,"responseStart":327.40000009536743,"secureConnectionStart":161.5},{"duration":167.30000019073486,"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":161.69999980926514,"connectEnd":161.69999980926514,"connectStart":161.69999980926514,"domainLookupEnd":161.69999980926514,"domainLookupStart":161.69999980926514,"fetchStart":161.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":161.69999980926514,"responseEnd":329,"responseStart":329,"secureConnectionStart":161.69999980926514},{"duration":167.60000038146973,"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":161.7999997138977,"connectEnd":161.7999997138977,"connectStart":161.7999997138977,"domainLookupEnd":161.7999997138977,"domainLookupStart":161.7999997138977,"fetchStart":161.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":161.7999997138977,"responseEnd":329.40000009536743,"responseStart":329.40000009536743,"secureConnectionStart":161.7999997138977},{"duration":168,"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":162,"connectEnd":162,"connectStart":162,"domainLookupEnd":162,"domainLookupStart":162,"fetchStart":162,"redirectEnd":0,"redirectStart":0,"requestStart":162,"responseEnd":330,"responseStart":330,"secureConnectionStart":162},{"duration":278.30000019073486,"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":162.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":162.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":440.5,"responseStart":0,"secureConnectionStart":0},{"duration":168.59999990463257,"initiatorType":"script","name":"https://issues.oasis-open.org/rest/api/1.0/shortcuts/803004/a29179d70fa8562374ee16707692af77/shortcuts.js?context=issuenavigation&context=issueaction","startTime":162.40000009536743,"connectEnd":162.40000009536743,"connectStart":162.40000009536743,"domainLookupEnd":162.40000009536743,"domainLookupStart":162.40000009536743,"fetchStart":162.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":162.40000009536743,"responseEnd":331,"responseStart":331,"secureConnectionStart":162.40000009536743},{"duration":252.5,"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":188.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":188.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":440.69999980926514,"responseStart":0,"secureConnectionStart":0},{"duration":143.2999997138977,"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":188.5,"connectEnd":188.5,"connectStart":188.5,"domainLookupEnd":188.5,"domainLookupStart":188.5,"fetchStart":188.5,"redirectEnd":0,"redirectStart":0,"requestStart":188.5,"responseEnd":331.7999997138977,"responseStart":331.7999997138977,"secureConnectionStart":188.5},{"duration":341.2999997138977,"initiatorType":"script","name":"https://issues.oasis-open.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":198,"connectEnd":198,"connectStart":198,"domainLookupEnd":198,"domainLookupStart":198,"fetchStart":198,"redirectEnd":0,"redirectStart":0,"requestStart":198,"responseEnd":539.2999997138977,"responseStart":539.2999997138977,"secureConnectionStart":198},{"duration":428.2999997138977,"initiatorType":"script","name":"https://issues.oasis-open.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/nu8zej/803004/aeedb5937bed650f2f0cc4ec9ceaa5d3/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":219,"connectEnd":219,"connectStart":219,"domainLookupEnd":219,"domainLookupStart":219,"fetchStart":219,"redirectEnd":0,"redirectStart":0,"requestStart":219,"responseEnd":647.2999997138977,"responseStart":647.1999998092651,"secureConnectionStart":219},{"duration":95.10000038146973,"initiatorType":"xmlhttprequest","name":"https://issues.oasis-open.org/rest/webResources/1.0/resources","startTime":470.7999997138977,"connectEnd":470.7999997138977,"connectStart":470.7999997138977,"domainLookupEnd":470.7999997138977,"domainLookupStart":470.7999997138977,"fetchStart":470.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":470.7999997138977,"responseEnd":565.9000000953674,"responseStart":565.9000000953674,"secureConnectionStart":470.7999997138977}],"threshold":1000,"fetchStart":0,"domainLookupStart":43,"domainLookupEnd":43,"connectStart":43,"connectEnd":92,"secureConnectionStart":67,"requestStart":92,"responseStart":141,"responseEnd":218,"domLoading":157,"domInteractive":751,"domContentLoadedEventStart":751,"domContentLoadedEventEnd":798,"domComplete":895,"loadEventStart":895,"loadEventEnd":897,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[],"measures":[],"correlationId":"1b5219c1e652ce","effectiveType":"4g","downlink":9.2,"rtt":0,"serverDuration":95,"dbReadsTimeInMs":19,"dbConnsTimeInMs":22,"applicationHash":"4d4040e0714d65b7fffa4801569d014c0b16eaa9","experiments":[]}}
Using the @ sign as the separator for named stream properties (only) feels odd, because until now we don't differentiate "term casts" in CSDL Path expressions by property type. Accessing a display.hidden annotation on a property would be
Path="PropertyName/display.hidden"
independently of whether the property is primitive or complex or navigation. So
Path="NamedStream/odata.mediaReadLink"
is more consistent than
Path="NamedStream@odata.mediaReadLink"
We COULD consistently switch to the @ sign for all "term casts":
Path="PropertyName@display.hidden"
The examples in
ODATA-108andODATA-109would then be changed to<PropertyValue Property="PhoneNumbers" Path="Phones@vCard.PhoneNumber#work" />
and
<Annotation Term="Display.Caption" Path="@CreativeWorks.Movie/Title"/> (empty prefix means "this", then look for annotation)
<Annotation Term="Display.Caption" Path="@vCard.Contact/Fullname" />
<Property Name="Something" Type="String">
<Annotation Term="Display.Hidden" Path="Something@Core.ReadOnly" />
</Property>
<Property Name="SomethingElse" Type="String">
<Annotation Term="Display.Hidden" Path="Something@Core.ReadOnly" />
</Property>
Thoughts?