[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [OASIS Issue Tracker] Updated: (ODATA-530) Navigable capability term should apply to entityset, not navigationproperty directly
[ http://tools.oasis-open.org/issues/browse/ODATA-530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Pizzo updated ODATA-530:
--------------------------------
Proposal:
Replace the "Navigable" term in the Capabilities vocabulary with a "NavigationRestrictions" term that can be applied to the entity set:
<!--NavigationRestrictions-->
<Term Name="NavigationRestrictions" Type="Capabilities.NavigationRestrictionsType" AppliesTo="EntitySet">
<Annotation Term="Core.Description" String="Restrictions on navigating properties according to OData URL conventions" />
</Term>
<ComplexType Name="NavigationRestrictionsType">
<Property Name="Navigability" Type="Capabilities.NavigationType" >
<Annotation Term="Core.Description" String="Supported Navigability"/>
</Property>
<Property Name="RestrictedProperties" Type="Collection(Capabilities.NavigationPropertyRestriction)"/>
</ComplexType>
<ComplexType Name="NavigationPropertyRestriction">
<Property Name="NavigationProperty" Type="Edm.NavigationPropertyPath">
<Annotation Term="Core.Description" String="Navigation properties can be navigated to a single level" />
</Property>
<Property Name="Navigability" Type="Capabilities.NavigationType">
<Annotation Term="Core.Description" String="Navigation properties can be navigated to a single level" />
</Property>
</ComplexType>
<EnumType Name="NavigationType">
<Member Name="Recursive">
<Annotation Term="Core.Description" String="Navigation properties can be recursively navigated" />
</Member>
<Member Name="Single">
<Annotation Term="Core.Description" String="Navigation properties can be navigated to a single level" />
</Member>
<Member Name="None">
<Annotation Term="Core.Description" String="Navigation properties are not navigable" />
</Member>
</EnumType>
was:
Replace the "Navigable" term in the Capabilities vocabulary with a "NavigationRestrictions" term that can be applied to the entity set:
<!--NavigationRestrictions-->
<Term Name="NavigationRestrictions" Type="Capabilities.NavigationRestrictionsType" AppliesTo="EntitySet">
<Annotation Term="Core.Description" String="Restrictions on navigating properties according to OData URL conventions" />
</Term>
<ComplexType Name="NavigationRestrictionsType">
<Property Name="Navigability" Type="Capabilities.NavigationType" DefaultValue="Capabilities.NavigationType/Recursive">
<Annotation Term="Core.Description" String="Supported Navigability"/>
</Property>
<Property Name="RestrictedProperties" Type="Collection(Capabilities.NavigationPropertyRestriction)"/>
</ComplexType>
<ComplexType Name="NavigationPropertyRestriction">
<Property Name="NavigationProperty" Type="Edm.NavigationPropertyPath">
<Annotation Term="Core.Description" String="Navigation properties can be navigated to a single level" />
</Property>
<Property Name="Navigability" Type="Capabilities.NavigationType">
<Annotation Term="Core.Description" String="Navigation properties can be navigated to a single level" />
</Property>
</ComplexType>
<EnumType Name="NavigationType">
<Member Name="Recursive">
<Annotation Term="Core.Description" String="Navigation properties can be recursively navigated" />
</Member>
<Member Name="Single">
<Annotation Term="Core.Description" String="Navigation properties can be navigated to a single level" />
</Member>
<Member Name="None">
<Annotation Term="Core.Description" String="Navigation properties are not navigable" />
</Member>
</EnumType>
Probably doesn't make sense to have a default for Navigability. Edited proposal.
> Navigable capability term should apply to entityset, not navigationproperty directly
> ------------------------------------------------------------------------------------
>
> Key: ODATA-530
> URL: http://tools.oasis-open.org/issues/browse/ODATA-530
> Project: OASIS Open Data Protocol (OData) TC
> Issue Type: Bug
> Components: Vocabularies
> Affects Versions: V4.0_CS01
> Environment: [Proposed]
> Reporter: Michael Pizzo
> Fix For: V4.0_CSD03
>
>
> We decided to define all capabilities on either the entity set or the entity container, rather than type, so that we could share a type definitions across sets, and even services, and define the relative restrictions based on the actual exposed set.
> Somehow we missed the navigable term in doing this, the current definition of which is:
> <Term Name="Navigable" Type="Core.Tag" DefaultValue="true" AppliesTo="NavigationProperty">
> <Annotation Term="Core.Description" String="Supports navigation paths according to OData URL conventions" />
> </Term>
> Also, note that many service support one level of navigation but not recursive navigation. We should capture that as well.
--
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]