Repository: olingo-odata4 Updated Branches: refs/heads/master 53065cdfa -> 280bc019c
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/6d94f0e3/lib/server-core-ext/src/test/resources/trippin.xml ---------------------------------------------------------------------- diff --git a/lib/server-core-ext/src/test/resources/trippin.xml b/lib/server-core-ext/src/test/resources/trippin.xml index 5970793..3266344 100644 --- a/lib/server-core-ext/src/test/resources/trippin.xml +++ b/lib/server-core-ext/src/test/resources/trippin.xml @@ -1,356 +1,458 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> +<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor + license agreements. See the NOTICE file distributed with this work for additional + information regarding copyright ownership. The ASF licenses this file to + you under the Apache License, Version 2.0 (the "License"); you may not use + this file except in compliance with the License. You may obtain a copy of + the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required + by applicable law or agreed to in writing, software distributed under the + License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS + OF ANY KIND, either express or implied. See the License for the specific + language governing permissions and limitations under the License. --> <edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx"> - <edmx:DataServices> - <Schema Namespace="Microsoft.OData.SampleService.Models.TripPin" xmlns="http://docs.oasis-open.org/odata/ns/edm"> - <EnumType Name="PersonGender"> - <Member Name="Male" Value="0" /> - <Member Name="Female" Value="1" /> - <Member Name="Unknown" Value="2" /> - </EnumType> - <ComplexType Name="City"> - <Property Name="CountryRegion" Type="Edm.String" Nullable="false" /> - <Property Name="Name" Type="Edm.String" Nullable="false" /> - <Property Name="Region" Type="Edm.String" Nullable="false" /> - </ComplexType> - <ComplexType Name="Location" OpenType="true"> - <Property Name="Address" Type="Edm.String" Nullable="false" /> - <Property Name="City" Type="Microsoft.OData.SampleService.Models.TripPin.City" Nullable="false" /> - </ComplexType> - <ComplexType Name="EventLocation" BaseType="Microsoft.OData.SampleService.Models.TripPin.Location" OpenType="true"> - <Property Name="BuildingInfo" Type="Edm.String" /> - </ComplexType> - <ComplexType Name="AirportLocation" BaseType="Microsoft.OData.SampleService.Models.TripPin.Location" OpenType="true"> - <Property Name="Loc" Type="Edm.GeographyPoint" Nullable="false" SRID="4326" /> - </ComplexType> - <EntityType Name="Photo" HasStream="true"> - <Key> - <PropertyRef Name="Id" /> - </Key> - <Property Name="Id" Type="Edm.Int64" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Permissions"> - <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> - </Annotation> - </Property> - <Property Name="Name" Type="Edm.String" /> - <Annotation Term="Org.OData.Core.V1.AcceptableMediaTypes"> - <Collection> - <String>image/jpeg</String> - </Collection> - </Annotation> - </EntityType> - <EntityType Name="Person" OpenType="true"> - <Key> - <PropertyRef Name="UserName" /> - </Key> - <Property Name="UserName" Type="Edm.String" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Permissions"> - <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> - </Annotation> - </Property> - <Property Name="FirstName" Type="Edm.String" Nullable="true" /> - <Property Name="LastName" Type="Edm.String" Nullable="false" /> - <Property Name="Emails" Type="Collection(Edm.String)" /> - <Property Name="AddressInfo" Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Location)" /> - <Property Name="Gender" Type="Microsoft.OData.SampleService.Models.TripPin.PersonGender" /> - <Property Name="Concurrency" Type="Edm.Int64" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Computed" Bool="true" /> - </Property> - <NavigationProperty Name="Friends" Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Person)" /> - <NavigationProperty Name="Trips" Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Trip)" ContainsTarget="true" /> - <NavigationProperty Name="Photo" Type="Microsoft.OData.SampleService.Models.TripPin.Photo" /> - </EntityType> - <EntityType Name="Airline"> - <Key> - <PropertyRef Name="AirlineCode" /> - </Key> - <Property Name="AirlineCode" Type="Edm.String" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Permissions"> - <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> - </Annotation> - </Property> - <Property Name="Name" Type="Edm.String" Nullable="false" /> - <Property Name="Picture" Type="Edm.Stream" Nullable="true" /> - </EntityType> - <EntityType Name="Airport"> - <Key> - <PropertyRef Name="IcaoCode" /> - </Key> - <Property Name="IcaoCode" Type="Edm.String" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Permissions"> - <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> - </Annotation> - </Property> - <Property Name="Name" Type="Edm.String" Nullable="false" /> - <Property Name="IataCode" Type="Edm.String" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Immutable" Bool="true" /> - </Property> - <Property Name="Location" Type="Microsoft.OData.SampleService.Models.TripPin.AirportLocation" Nullable="false" /> - </EntityType> - <EntityType Name="PlanItem"> - <Key> - <PropertyRef Name="PlanItemId" /> - </Key> - <Property Name="PlanItemId" Type="Edm.Int32" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Permissions"> - <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> - </Annotation> - </Property> - <Property Name="ConfirmationCode" Type="Edm.String" /> - <Property Name="StartsAt" Type="Edm.DateTimeOffset" /> - <Property Name="EndsAt" Type="Edm.DateTimeOffset" /> - <Property Name="Duration" Type="Edm.Duration" /> - </EntityType> - <EntityType Name="PublicTransportation" BaseType="Microsoft.OData.SampleService.Models.TripPin.PlanItem"> - <Property Name="SeatNumber" Type="Edm.String" /> - </EntityType> - <EntityType Name="Flight" BaseType="Microsoft.OData.SampleService.Models.TripPin.PublicTransportation"> - <Property Name="FlightNumber" Type="Edm.String" Nullable="false" /> - <NavigationProperty Name="From" Type="Microsoft.OData.SampleService.Models.TripPin.Airport" Nullable="false" /> - <NavigationProperty Name="To" Type="Microsoft.OData.SampleService.Models.TripPin.Airport" Nullable="false" /> - <NavigationProperty Name="Airline" Type="Microsoft.OData.SampleService.Models.TripPin.Airline" Nullable="false" /> - </EntityType> - <EntityType Name="Event" BaseType="Microsoft.OData.SampleService.Models.TripPin.PlanItem" OpenType="true"> - <Property Name="Description" Type="Edm.String" /> - <Property Name="OccursAt" Type="Microsoft.OData.SampleService.Models.TripPin.EventLocation" Nullable="false" /> - </EntityType> - <EntityType Name="Trip"> - <Key> - <PropertyRef Name="TripId" /> - </Key> - <Property Name="TripId" Type="Edm.Int32" Nullable="false"> - <Annotation Term="Org.OData.Core.V1.Permissions"> - <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> - </Annotation> - </Property> - <Property Name="ShareId" Type="Edm.Guid" /> - <Property Name="Description" Type="Edm.String" /> - <Property Name="Name" Type="Edm.String" Nullable="false" /> - <Property Name="Budget" Type="Edm.Single" Nullable="false"> - <Annotation Term="Org.OData.Measures.V1.ISOCurrency" String="USD" /> - <Annotation Term="Org.OData.Measures.V1.Scale" Int="2" /> - </Property> - <Property Name="StartsAt" Type="Edm.DateTimeOffset" Nullable="false" /> - <Property Name="EndsAt" Type="Edm.DateTimeOffset" Nullable="false" /> - <Property Name="Tags" Type="Collection(Edm.String)" Nullable="false" /> - <NavigationProperty Name="Photos" Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Photo)" /> - <NavigationProperty Name="PlanItems" Type="Collection(Microsoft.OData.SampleService.Models.TripPin.PlanItem)" ContainsTarget="true" /> - </EntityType> - <Function Name="GetFavoriteAirline" IsBound="true" EntitySetPath="person/Trips/PlanItems/Microsoft.OData.SampleService.Models.TripPin.Flight/Airline" IsComposable="true"> - <Parameter Name="person" Type="Microsoft.OData.SampleService.Models.TripPin.Person" Nullable="false" /> - <ReturnType Type="Microsoft.OData.SampleService.Models.TripPin.Airline" Nullable="false" /> - </Function> - <Function Name="GetInvolvedPeople" IsBound="true" IsComposable="true"> - <Parameter Name="trip" Type="Microsoft.OData.SampleService.Models.TripPin.Trip" Nullable="false" /> - <ReturnType Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Person)" Nullable="false" /> - </Function> - <Function Name="GetFriendsTrips" IsBound="true" EntitySetPath="person/Friends/Trips" IsComposable="true"> - <Parameter Name="person" Type="Microsoft.OData.SampleService.Models.TripPin.Person" Nullable="false" /> - <Parameter Name="userName" Type="Edm.String" Nullable="false" /> - <ReturnType Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Trip)" Nullable="false" /> - </Function> - <Function Name="GetNearestAirport" IsComposable="true"> - <Parameter Name="lat" Type="Edm.Double" Nullable="false" /> - <Parameter Name="lon" Type="Edm.Double" Nullable="false" /> - <ReturnType Type="Microsoft.OData.SampleService.Models.TripPin.Airport" Nullable="false" /> - </Function> - <Action Name="ResetDataSource" /> - <Action Name="ShareTrip" IsBound="true"> - <Parameter Name="person" Type="Microsoft.OData.SampleService.Models.TripPin.Person" Nullable="false" /> - <Parameter Name="userName" Type="Edm.String" Nullable="false" /> - <Parameter Name="tripId" Type="Edm.Int32" Nullable="false" /> - </Action> - <EntityContainer Name="DefaultContainer"> - <EntitySet Name="Photos" EntityType="Microsoft.OData.SampleService.Models.TripPin.Photo"> - <Annotation Term="Org.OData.Core.V1.ResourcePath" String="Photos" /> - <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> - <Record> - <PropertyValue Property="Searchable" Bool="true" /> - <PropertyValue Property="UnsupportedExpressions"> - <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none</EnumMember> - </PropertyValue> - </Record> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> - <Record> - <PropertyValue Property="Insertable" Bool="true" /> - <PropertyValue Property="NonInsertableNavigationProperties"> - <Collection /> - </PropertyValue> - </Record> - </Annotation> - </EntitySet> - <EntitySet Name="People" EntityType="Microsoft.OData.SampleService.Models.TripPin.Person"> - <NavigationPropertyBinding Path="Friends" Target="People" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Flight/Airline" Target="Airlines" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Flight/From" Target="Airports" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Flight/To" Target="Airports" /> - <NavigationPropertyBinding Path="Photo" Target="Photos" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Trip/Photos" Target="Photos" /> - <Annotation Term="Org.OData.Core.V1.OptimisticConcurrency"> - <Collection> - <PropertyPath>Concurrency</PropertyPath> - </Collection> - </Annotation> - <Annotation Term="Org.OData.Core.V1.ResourcePath" String="People" /> - <Annotation Term="Org.OData.Capabilities.V1.NavigationRestrictions"> - <Record> - <PropertyValue Property="Navigability"> - <EnumMember>Org.OData.Capabilities.V1.NavigationType/None</EnumMember> - </PropertyValue> - <PropertyValue Property="RestrictedProperties"> - <Collection> - <Record> - <PropertyValue Property="NavigationProperty" NavigationPropertyPath="Friends" /> - <PropertyValue Property="Navigability"> - <EnumMember>Org.OData.Capabilities.V1.NavigationType/Recursive</EnumMember> - </PropertyValue> - </Record> - </Collection> - </PropertyValue> - </Record> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> - <Record> - <PropertyValue Property="Searchable" Bool="true" /> - <PropertyValue Property="UnsupportedExpressions"> - <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none</EnumMember> - </PropertyValue> - </Record> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> - <Record> - <PropertyValue Property="Insertable" Bool="true" /> - <PropertyValue Property="NonInsertableNavigationProperties"> - <Collection> - <NavigationPropertyPath>Trips</NavigationPropertyPath> - <NavigationPropertyPath>Friends</NavigationPropertyPath> - </Collection> - </PropertyValue> - </Record> - </Annotation> - </EntitySet> - <EntitySet Name="Airlines" EntityType="Microsoft.OData.SampleService.Models.TripPin.Airline"> - <Annotation Term="Org.OData.Core.V1.ResourcePath" String="Airlines" /> - <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> - <Record> - <PropertyValue Property="Searchable" Bool="true" /> - <PropertyValue Property="UnsupportedExpressions"> - <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none</EnumMember> - </PropertyValue> - </Record> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> - <Record> - <PropertyValue Property="Insertable" Bool="true" /> - <PropertyValue Property="NonInsertableNavigationProperties"> - <Collection /> - </PropertyValue> - </Record> - </Annotation> - </EntitySet> - <EntitySet Name="Airports" EntityType="Microsoft.OData.SampleService.Models.TripPin.Airport"> - <Annotation Term="Org.OData.Core.V1.ResourcePath" String="Airports" /> - <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> - <Record> - <PropertyValue Property="Searchable" Bool="true" /> - <PropertyValue Property="UnsupportedExpressions"> - <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none</EnumMember> - </PropertyValue> - </Record> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> - <Record> - <PropertyValue Property="Insertable" Bool="false" /> - <PropertyValue Property="NonInsertableNavigationProperties"> - <Collection /> - </PropertyValue> - </Record> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.DeleteRestrictions"> - <Record> - <PropertyValue Property="Deletable" Bool="false" /> - <PropertyValue Property="NonDeletableNavigationProperties"> - <Collection /> - </PropertyValue> - </Record> - </Annotation> - </EntitySet> - <Singleton Name="Me" Type="Microsoft.OData.SampleService.Models.TripPin.Person"> - <NavigationPropertyBinding Path="Friends" Target="People" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Flight/Airline" Target="Airlines" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Flight/From" Target="Airports" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Flight/To" Target="Airports" /> - <NavigationPropertyBinding Path="Photo" Target="Photos" /> - <NavigationPropertyBinding Path="Microsoft.OData.SampleService.Models.TripPin.Trip/Photos" Target="Photos" /> - <Annotation Term="Org.OData.Core.V1.ResourcePath" String="Me" /> - </Singleton> - <FunctionImport Name="GetNearestAirport" Function="Microsoft.OData.SampleService.Models.TripPin.GetNearestAirport" EntitySet="Airports" IncludeInServiceDocument="true"> - <Annotation Term="Org.OData.Core.V1.ResourcePath" String="Microsoft.OData.SampleService.Models.TripPin.GetNearestAirport" /> - </FunctionImport> - <ActionImport Name="ResetDataSource" Action="Microsoft.OData.SampleService.Models.TripPin.ResetDataSource" /> - <Annotation Term="Org.OData.Core.V1.Description" String="TripPin service is a sample service for OData V4." /> - </EntityContainer> - <Annotations Target="Microsoft.OData.SampleService.Models.TripPin.DefaultContainer"> - <Annotation Term="Org.OData.Core.V1.DereferenceableIDs" Bool="true" /> - <Annotation Term="Org.OData.Core.V1.ConventionalIDs" Bool="true" /> - <Annotation Term="Org.OData.Capabilities.V1.ConformanceLevel"> - <EnumMember>Org.OData.Capabilities.V1.ConformanceLevelType/Advanced</EnumMember> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.SupportedFormats"> - <Collection> - <String>application/json;odata.metadata=full;IEEE754Compatible=false;odata.streaming=true</String> - <String>application/json;odata.metadata=minimal;IEEE754Compatible=false;odata.streaming=true</String> - <String>application/json;odata.metadata=none;IEEE754Compatible=false;odata.streaming=true</String> - </Collection> - </Annotation> - <Annotation Term="Org.OData.Capabilities.V1.AsynchronousRequestsSupported" Bool="true" /> - <Annotation Term="Org.OData.Capabilities.V1.BatchContinueOnErrorSupported" Bool="false" /> - <Annotation Term="Org.OData.Capabilities.V1.FilterFunctions"> - <Collection> - <String>contains</String> - <String>endswith</String> - <String>startswith</String> - <String>length</String> - <String>indexof</String> - <String>substring</String> - <String>tolower</String> - <String>toupper</String> - <String>trim</String> - <String>concat</String> - <String>year</String> - <String>month</String> - <String>day</String> - <String>hour</String> - <String>minute</String> - <String>second</String> - <String>round</String> - <String>floor</String> - <String>ceiling</String> - <String>cast</String> - <String>isof</String> - </Collection> - </Annotation> - </Annotations> - </Schema> - </edmx:DataServices> + <edmx:DataServices> + <Schema Namespace="Microsoft.OData.SampleService.Models.TripPin" + xmlns="http://docs.oasis-open.org/odata/ns/edm"> + <EnumType Name="PersonGender"> + <Member Name="Male" Value="0" /> + <Member Name="Female" Value="1" /> + <Member Name="Unknown" Value="2" /> + </EnumType> + <ComplexType Name="City"> + <Property Name="CountryRegion" Type="Edm.String" Nullable="false" /> + <Property Name="Name" Type="Edm.String" Nullable="false" /> + <Property Name="Region" Type="Edm.String" Nullable="false" /> + </ComplexType> + <ComplexType Name="Location" OpenType="true"> + <Property Name="Address" Type="Edm.String" Nullable="false" /> + <Property Name="City" + Type="Microsoft.OData.SampleService.Models.TripPin.City" Nullable="false" /> + </ComplexType> + <ComplexType Name="EventLocation" + BaseType="Microsoft.OData.SampleService.Models.TripPin.Location" + OpenType="true"> + <Property Name="BuildingInfo" Type="Edm.String" /> + </ComplexType> + <ComplexType Name="AirportLocation" + BaseType="Microsoft.OData.SampleService.Models.TripPin.Location" + OpenType="true"> + <Property Name="Loc" Type="Edm.GeographyPoint" Nullable="false" + SRID="4326" /> + </ComplexType> + <EntityType Name="Photo" HasStream="true"> + <Key> + <PropertyRef Name="Id" /> + </Key> + <Property Name="Id" Type="Edm.Int64" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Permissions"> + <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> + </Annotation> + </Property> + <Property Name="Name" Type="Edm.String" /> + <Annotation Term="Org.OData.Core.V1.AcceptableMediaTypes"> + <Collection> + <String>image/jpeg</String> + </Collection> + </Annotation> + </EntityType> + <EntityType Name="Person" OpenType="true"> + <Key> + <PropertyRef Name="UserName" /> + </Key> + <Property Name="UserName" Type="Edm.String" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Permissions"> + <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> + </Annotation> + </Property> + <Property Name="FirstName" Type="Edm.String" Nullable="true" /> + <Property Name="LastName" Type="Edm.String" Nullable="false" /> + <Property Name="Emails" Type="Collection(Edm.String)" /> + <Property Name="AddressInfo" + Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Location)" /> + <Property Name="Gender" + Type="Microsoft.OData.SampleService.Models.TripPin.PersonGender" /> + <Property Name="Concurrency" Type="Edm.Int64" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Computed" Bool="true" /> + </Property> + <NavigationProperty Name="Friends" + Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Person)" /> + <NavigationProperty Name="Trips" + Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Trip)" + ContainsTarget="true" /> + <NavigationProperty Name="Photo" + Type="Microsoft.OData.SampleService.Models.TripPin.Photo" /> + </EntityType> + <EntityType Name="Airline"> + <Key> + <PropertyRef Name="AirlineCode" /> + </Key> + <Property Name="AirlineCode" Type="Edm.String" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Permissions"> + <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> + </Annotation> + </Property> + <Property Name="Name" Type="Edm.String" Nullable="false" /> + <Property Name="Picture" Type="Edm.Stream" Nullable="true" /> + </EntityType> + <EntityType Name="Airport"> + <Key> + <PropertyRef Name="IcaoCode" /> + </Key> + <Property Name="IcaoCode" Type="Edm.String" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Permissions"> + <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> + </Annotation> + </Property> + <Property Name="Name" Type="Edm.String" Nullable="false" /> + <Property Name="IataCode" Type="Edm.String" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Immutable" Bool="true" /> + </Property> + <Property Name="Location" + Type="Microsoft.OData.SampleService.Models.TripPin.AirportLocation" + Nullable="false" /> + </EntityType> + <EntityType Name="PlanItem"> + <Key> + <PropertyRef Name="PlanItemId" /> + </Key> + <Property Name="PlanItemId" Type="Edm.Int32" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Permissions"> + <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> + </Annotation> + </Property> + <Property Name="ConfirmationCode" Type="Edm.String" /> + <Property Name="StartsAt" Type="Edm.DateTimeOffset" /> + <Property Name="EndsAt" Type="Edm.DateTimeOffset" /> + <Property Name="Duration" Type="Edm.Duration" /> + </EntityType> + <EntityType Name="PublicTransportation" + BaseType="Microsoft.OData.SampleService.Models.TripPin.PlanItem"> + <Property Name="SeatNumber" Type="Edm.String" /> + </EntityType> + <EntityType Name="Flight" + BaseType="Microsoft.OData.SampleService.Models.TripPin.PublicTransportation"> + <Property Name="FlightNumber" Type="Edm.String" Nullable="false" /> + <NavigationProperty Name="From" + Type="Microsoft.OData.SampleService.Models.TripPin.Airport" + Nullable="false" /> + <NavigationProperty Name="To" + Type="Microsoft.OData.SampleService.Models.TripPin.Airport" + Nullable="false" /> + <NavigationProperty Name="Airline" + Type="Microsoft.OData.SampleService.Models.TripPin.Airline" + Nullable="false" /> + </EntityType> + <EntityType Name="Event" + BaseType="Microsoft.OData.SampleService.Models.TripPin.PlanItem" + OpenType="true"> + <Property Name="Description" Type="Edm.String" /> + <Property Name="OccursAt" + Type="Microsoft.OData.SampleService.Models.TripPin.EventLocation" + Nullable="false" /> + </EntityType> + <EntityType Name="Trip"> + <Key> + <PropertyRef Name="TripId" /> + </Key> + <Property Name="TripId" Type="Edm.Int32" Nullable="false"> + <Annotation Term="Org.OData.Core.V1.Permissions"> + <EnumMember>Org.OData.Core.V1.Permission/Read</EnumMember> + </Annotation> + </Property> + <Property Name="ShareId" Type="Edm.Guid" /> + <Property Name="Description" Type="Edm.String" /> + <Property Name="Name" Type="Edm.String" Nullable="false" /> + <Property Name="Budget" Type="Edm.Single" Nullable="false"> + <Annotation Term="Org.OData.Measures.V1.ISOCurrency" + String="USD" /> + <Annotation Term="Org.OData.Measures.V1.Scale" Int="2" /> + </Property> + <Property Name="StartsAt" Type="Edm.DateTimeOffset" + Nullable="false" /> + <Property Name="EndsAt" Type="Edm.DateTimeOffset" Nullable="false" /> + <Property Name="Tags" Type="Collection(Edm.String)" + Nullable="false" /> + <NavigationProperty Name="Photos" + Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Photo)" /> + <NavigationProperty Name="PlanItems" + Type="Collection(Microsoft.OData.SampleService.Models.TripPin.PlanItem)" + ContainsTarget="true" /> + </EntityType> + <Function Name="GetFavoriteAirline" IsBound="true" + EntitySetPath="person/Trips/PlanItems/Microsoft.OData.SampleService.Models.TripPin.Flight/Airline" + IsComposable="true"> + <Parameter Name="person" + Type="Microsoft.OData.SampleService.Models.TripPin.Person" + Nullable="false" /> + <ReturnType Type="Microsoft.OData.SampleService.Models.TripPin.Airline" + Nullable="false" /> + </Function> + <Function Name="GetInvolvedPeople" IsBound="true" + IsComposable="true"> + <Parameter Name="trip" + Type="Microsoft.OData.SampleService.Models.TripPin.Trip" Nullable="false" /> + <ReturnType + Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Person)" + Nullable="false" /> + </Function> + <Function Name="GetFriendsTrips" IsBound="true" + EntitySetPath="person/Friends/Trips" IsComposable="true"> + <Parameter Name="person" + Type="Microsoft.OData.SampleService.Models.TripPin.Person" + Nullable="false" /> + <Parameter Name="userName" Type="Edm.String" Nullable="false" /> + <ReturnType + Type="Collection(Microsoft.OData.SampleService.Models.TripPin.Trip)" + Nullable="false" /> + </Function> + <Function Name="GetNearestAirport" IsComposable="true"> + <Parameter Name="lat" Type="Edm.Double" Nullable="false" /> + <Parameter Name="lon" Type="Edm.Double" Nullable="false" /> + <ReturnType Type="Microsoft.OData.SampleService.Models.TripPin.Airport" + Nullable="false" /> + </Function> + <Action Name="ResetDataSource" /> + <Action Name="ShareTrip" IsBound="true"> + <Parameter Name="person" + Type="Microsoft.OData.SampleService.Models.TripPin.Person" + Nullable="false" /> + <Parameter Name="userName" Type="Edm.String" Nullable="false" /> + <Parameter Name="tripId" Type="Edm.Int32" Nullable="false" /> + </Action> + <EntityContainer Name="DefaultContainer"> + <EntitySet Name="Photos" + EntityType="Microsoft.OData.SampleService.Models.TripPin.Photo"> + <Annotation Term="Org.OData.Core.V1.ResourcePath" + String="Photos" /> + <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> + <Record> + <PropertyValue Property="Searchable" Bool="true" /> + <PropertyValue Property="UnsupportedExpressions"> + <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none + </EnumMember> + </PropertyValue> + </Record> + </Annotation> + <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> + <Record> + <PropertyValue Property="Insertable" Bool="true" /> + <PropertyValue Property="NonInsertableNavigationProperties"> + <Collection /> + </PropertyValue> + </Record> + </Annotation> + </EntitySet> + <EntitySet Name="People" + EntityType="Microsoft.OData.SampleService.Models.TripPin.Person"> + <NavigationPropertyBinding Path="Friends" + Target="People" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Flight/Airline" + Target="Airlines" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Flight/From" + Target="Airports" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Flight/To" + Target="Airports" /> + <NavigationPropertyBinding Path="Photo" + Target="Photos" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Trip/Photos" + Target="Photos" /> + <Annotation Term="Org.OData.Core.V1.OptimisticConcurrency"> + <Collection> + <PropertyPath>Concurrency</PropertyPath> + </Collection> + </Annotation> + <Annotation Term="Org.OData.Core.V1.ResourcePath" + String="People" /> + <Annotation Term="Org.OData.Capabilities.V1.NavigationRestrictions"> + <Record> + <PropertyValue Property="Navigability"> + <EnumMember>Org.OData.Capabilities.V1.NavigationType/None + </EnumMember> + </PropertyValue> + <PropertyValue Property="RestrictedProperties"> + <Collection> + <Record> + <PropertyValue Property="NavigationProperty" + NavigationPropertyPath="Friends" /> + <PropertyValue Property="Navigability"> + <EnumMember>Org.OData.Capabilities.V1.NavigationType/Recursive + </EnumMember> + </PropertyValue> + </Record> + </Collection> + </PropertyValue> + </Record> + </Annotation> + <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> + <Record> + <PropertyValue Property="Searchable" Bool="true" /> + <PropertyValue Property="UnsupportedExpressions"> + <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none + </EnumMember> + </PropertyValue> + </Record> + </Annotation> + <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> + <Record> + <PropertyValue Property="Insertable" Bool="true" /> + <PropertyValue Property="NonInsertableNavigationProperties"> + <Collection> + <NavigationPropertyPath>Trips</NavigationPropertyPath> + <NavigationPropertyPath>Friends</NavigationPropertyPath> + </Collection> + </PropertyValue> + </Record> + </Annotation> + </EntitySet> + <EntitySet Name="Airlines" + EntityType="Microsoft.OData.SampleService.Models.TripPin.Airline"> + <Annotation Term="Org.OData.Core.V1.ResourcePath" + String="Airlines" /> + <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> + <Record> + <PropertyValue Property="Searchable" Bool="true" /> + <PropertyValue Property="UnsupportedExpressions"> + <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none + </EnumMember> + </PropertyValue> + </Record> + </Annotation> + <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> + <Record> + <PropertyValue Property="Insertable" Bool="true" /> + <PropertyValue Property="NonInsertableNavigationProperties"> + <Collection /> + </PropertyValue> + </Record> + </Annotation> + </EntitySet> + <EntitySet Name="Airports" + EntityType="Microsoft.OData.SampleService.Models.TripPin.Airport"> + <Annotation Term="Org.OData.Core.V1.ResourcePath" + String="Airports" /> + <Annotation Term="Org.OData.Capabilities.V1.SearchRestrictions"> + <Record> + <PropertyValue Property="Searchable" Bool="true" /> + <PropertyValue Property="UnsupportedExpressions"> + <EnumMember>Org.OData.Capabilities.V1.SearchExpressions/none + </EnumMember> + </PropertyValue> + </Record> + </Annotation> + <Annotation Term="Org.OData.Capabilities.V1.InsertRestrictions"> + <Record> + <PropertyValue Property="Insertable" Bool="false" /> + <PropertyValue Property="NonInsertableNavigationProperties"> + <Collection /> + </PropertyValue> + </Record> + </Annotation> + <Annotation Term="Org.OData.Capabilities.V1.DeleteRestrictions"> + <Record> + <PropertyValue Property="Deletable" Bool="false" /> + <PropertyValue Property="NonDeletableNavigationProperties"> + <Collection /> + </PropertyValue> + </Record> + </Annotation> + </EntitySet> + <Singleton Name="Me" + Type="Microsoft.OData.SampleService.Models.TripPin.Person"> + <NavigationPropertyBinding Path="Friends" + Target="People" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Flight/Airline" + Target="Airlines" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Flight/From" + Target="Airports" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Flight/To" + Target="Airports" /> + <NavigationPropertyBinding Path="Photo" + Target="Photos" /> + <NavigationPropertyBinding + Path="Microsoft.OData.SampleService.Models.TripPin.Trip/Photos" + Target="Photos" /> + <Annotation Term="Org.OData.Core.V1.ResourcePath" + String="Me" /> + </Singleton> + <FunctionImport Name="GetNearestAirport" + Function="Microsoft.OData.SampleService.Models.TripPin.GetNearestAirport" + EntitySet="Airports" IncludeInServiceDocument="true"> + <Annotation Term="Org.OData.Core.V1.ResourcePath" + String="Microsoft.OData.SampleService.Models.TripPin.GetNearestAirport" /> + </FunctionImport> + <ActionImport Name="ResetDataSource" + Action="Microsoft.OData.SampleService.Models.TripPin.ResetDataSource" /> + <Annotation Term="Org.OData.Core.V1.Description" + String="TripPin service is a sample service for OData V4." /> + </EntityContainer> + <Annotations + Target="Microsoft.OData.SampleService.Models.TripPin.DefaultContainer"> + <Annotation Term="Org.OData.Core.V1.DereferenceableIDs" + Bool="true" /> + <Annotation Term="Org.OData.Core.V1.ConventionalIDs" + Bool="true" /> + <Annotation Term="Org.OData.Capabilities.V1.ConformanceLevel"> + <EnumMember>Org.OData.Capabilities.V1.ConformanceLevelType/Advanced + </EnumMember> + </Annotation> + <Annotation Term="Org.OData.Capabilities.V1.SupportedFormats"> + <Collection> + <String>application/json;odata.metadata=full;IEEE754Compatible=false;odata.streaming=true + </String> + <String>application/json;odata.metadata=minimal;IEEE754Compatible=false;odata.streaming=true + </String> + <String>application/json;odata.metadata=none;IEEE754Compatible=false;odata.streaming=true + </String> + </Collection> + </Annotation> + <Annotation + Term="Org.OData.Capabilities.V1.AsynchronousRequestsSupported" + Bool="true" /> + <Annotation + Term="Org.OData.Capabilities.V1.BatchContinueOnErrorSupported" + Bool="false" /> + <Annotation Term="Org.OData.Capabilities.V1.FilterFunctions"> + <Collection> + <String>contains</String> + <String>endswith</String> + <String>startswith</String> + <String>length</String> + <String>indexof</String> + <String>substring</String> + <String>tolower</String> + <String>toupper</String> + <String>trim</String> + <String>concat</String> + <String>year</String> + <String>month</String> + <String>day</String> + <String>hour</String> + <String>minute</String> + <String>second</String> + <String>round</String> + <String>floor</String> + <String>ceiling</String> + <String>cast</String> + <String>isof</String> + </Collection> + </Annotation> + </Annotations> + <Term Name="IsURI" Type="Core.Tag" DefaultValue="true" + AppliesTo="Property"> + <Annotation Term="Core.Description"> + <String> + Properties and terms annotated with this term MUST contain a valid URI + </String> + </Annotation> + <Annotation Term="Core.RequiresType" String="Edm.String" /> + </Term> + </Schema> + </edmx:DataServices> </edmx:Edmx> \ No newline at end of file
