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] Updated: (ODATA-16) Define an Edm.AnyType to allow functions to apply to entity sets of any entity type


     [ http://tools.oasis-open.org/issues/browse/ODATA-16?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael Pizzo updated ODATA-16:
-------------------------------

        Summary: Define an Edm.AnyType to allow functions to apply to entity sets of any entity type  (was: allow functions to apply to entity sets of any entity type)
       Proposal: 
Add the following types to the list of built-in types:
-Edm.PrimitiveType
-Edm.ComplexType
-Edm.EntityType

Conceptually, these are the (default) abstract base types for primitive types, complex types, and entity types, respectively, and can be used anywhere the corresponding type can be used, except:
1) you can't use Edm.EntityType as the type for a named top-level entity in your container.
2) you can't use Edm.EntityType as the type of an entityset (because all entities in an entityset must currently have the same key fields to uniquely identify it within the set)
3) in the base attribute of an EntityType/ComplexType definition (it's assumed)

Examples of where you can use these abstract base types, as appropriate:
-as the type of a collection (i.e., Collection(Edm.EntityType) in a navigation property)
-in a TypeDefinition
-in a Property definition (Edm.ComplexType, Edm.PrimitiveType, Collection(Edm.ComplexType), Collection(Edm.PrimitiveType)
-in a navigation property definition (Edm.EntityType, Collection(Edm.EntityType)
-in a Parameter definition
-as a Function returntype
-in a Term definition (?)

Note that you can cast the results of a function, for example, to a particular type in order to access it's properties (i.e., in a $filter, $expand, or $orderby). For example:
~MyFunctionThatReturnsAnyEntityType()/MyModel.Customer?$filter=FirstName eq 'Ralf'
This filters the results to only those that match the specified type and casts the results to that type.
    Environment: [Proposed]
    Description: 
OData might be extended to allow functions to apply to entity sets of any entity type. This could greatly reduce the number of functions that need to be defined for OData Extension for Temporal Data.

This can also greatly simplify the Data Aggregation Extension, especially the WHERE-GROUPBY-HAVING dilemma.

Consider a general Edm.Any type that can be used in Type= throughout the CSDL.

  was:
OData might be extended to allow functions to apply to entity sets of any entity type. This could greatly reduce the number of functions that need to be defined for OData Extension for Temporal Data.

This can also greatly simplify the Data Aggregation Extension, especially the WHERE-GROUPBY-HAVING dilemma.


> Define an Edm.AnyType to allow functions to apply to entity sets of any entity type
> -----------------------------------------------------------------------------------
>
>                 Key: ODATA-16
>                 URL: http://tools.oasis-open.org/issues/browse/ODATA-16
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Improvement
>          Components: OData CSDL v1.0
>         Environment: [Proposed]
>            Reporter: Andrew Eisenberg
>            Assignee: Michael Pizzo
>
> OData might be extended to allow functions to apply to entity sets of any entity type. This could greatly reduce the number of functions that need to be defined for OData Extension for Temporal Data.
> This can also greatly simplify the Data Aggregation Extension, especially the WHERE-GROUPBY-HAVING dilemma.
> Consider a general Edm.Any type that can be used in Type= throughout the CSDL.

-- 
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]