[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [OASIS Issue Tracker] Updated: (ODATA-108) Define rules for the target of an annotation that supports implicit casting of relationships
[ http://tools.oasis-open.org/issues/browse/ODATA-108?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ralf Handl updated ODATA-108:
-----------------------------
Proposal:
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
was:
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>
> Define rules for the target of an annotation that supports implicit casting of relationships
> --------------------------------------------------------------------------------------------
>
> Key: ODATA-108
> URL: http://tools.oasis-open.org/issues/browse/ODATA-108
> Project: OASIS Open Data Protocol (OData) TC
> Issue Type: Bug
> Components: OData CSDL v1.0
> Environment: [Proposed]
> Reporter: Michael Pizzo
>
> 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.
--
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]