OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

odata message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [OASIS Issue Tracker] Commented: (ODATA-234) Merge Reference and AnnotationReference element


    [ http://tools.oasis-open.org/issues/browse/ODATA-234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=32392#action_32392 ] 

Ralf Handl commented on ODATA-234:
----------------------------------

I see a difference between "being in scope" and "being used".

Reference just tells a client where it might look for stuff that is used in the current document without being defined there. So Reference brings annotations into scope, but clients might not even follow the reference url unless there's something triggering them to do so.

Now one way to tell a client to go looking for annotations in a referenced document is using a "term cast" segment in a path expression. If the main document contains an annotation that uses

<Path>vCard.Contact/Fullname</Path>

then the client is forced to look for an annotation that applies the vCard.Contact term to the targeted CSDL element, or it will be unable to compute this expression. So it follows all reference urls until it finds an annotation that applies the term vCard.Contact to the current entity type. It may encounter dozens of other annotations and can safely ignore them until they are used somewhere.

The <IncludeAnnotations> child element is a way to tell the client "please look at these annotations" even if they are not used by anything in the main document.

> Merge Reference and AnnotationReference element
> -----------------------------------------------
>
>                 Key: ODATA-234
>                 URL: http://tools.oasis-open.org/issues/browse/ODATA-234
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Improvement
>          Components: OData CSDL v1.0
>    Affects Versions: WD01
>         Environment: [Proposed]
>            Reporter: Ralf Handl
>            Priority: Minor
>             Fix For: WD01
>
>
> Currently there are two ways of referring to other EDMX documents: Reference and AnnotationsReference.
> Their purpose is slightly different:
> - Reference brings model elements defined in the referenced document into scope,
> - AnnotationsReference includes annotations from the referenced document into the current document as if they would have been declared "locally".
> In some situations we want to include annotation elements as well as refer to them, e.g. point in a UI "view" annotation to a vCard annotation and thus express the intent of rendering the vCard information in the UI "view".
> To increase readability I'd like to introduce an Alias via a Using element, and It is unclear whether I'd also need a Reference element pointing to the same document in addition to the AnnotationsReference, or whether the AnnotationsReference also brings the referenced document, or just the included annotations, into scope.
> While we could clarify that in the prose description of these elements, it seems more intuitive to have only one Reference element with an IncludeAnnotations child element instead of an AnnotationsReference element with an Include child element.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]