OpenAPI.NET.OData/test/Microsoft.OpenAPI.OData.Reader.Tests/Resources/TripService.OData.xml
Irvine Sunday b1fed423ab
Describes path operations descriptions from vocabulary annotations (#104)
* Add support for operation descriptions and update tests

* Update tests for Entityset paths operations descriptions

* Code cleanup

* Update test OpenAPI output files.

Co-authored-by: Irvine Sunday <irochand@microsoft.com>
2021-05-04 17:36:03 -07:00

182 lines
11 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
<edmx:DataServices>
<Schema Namespace="Microsoft.OData.Service.Sample.TrippinInMemory.Models" xmlns="http://docs.oasis-open.org/odata/ns/edm">
<EntityType Name="Person">
<Key>
<PropertyRef Name="UserName" />
</Key>
<Property Name="UserName" Type="Edm.String" Nullable="false" />
<Property Name="FirstName" Type="Edm.String" Nullable="false" />
<Property Name="LastName" Type="Edm.String" />
<Property Name="MiddleName" Type="Edm.String" />
<Property Name="Gender" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.PersonGender" Nullable="false" />
<Property Name="Age" Type="Edm.Int64" />
<Property Name="Emails" Type="Collection(Edm.String)" />
<Property Name="AddressInfo" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location)" />
<Property Name="HomeAddress" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location" />
<Property Name="FavoriteFeature" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature" Nullable="false" />
<Property Name="Features" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature)" Nullable="false" />
<NavigationProperty Name="Friends" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)" />
<NavigationProperty Name="BestFriend" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person">
<Annotation Term="Org.OData.Core.V1.Description" String="The best friend." />
</NavigationProperty>
<NavigationProperty Name="Trips" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Trip)" ContainsTarget="true">
<Annotation Term="Org.OData.Core.V1.Description" String="Collection of trips." />
</NavigationProperty>
</EntityType>
<EntityType Name="Airline">
<Key>
<PropertyRef Name="AirlineCode" />
</Key>
<Property Name="AirlineCode" Type="Edm.String" Nullable="false" />
<Property Name="Name" Type="Edm.String" />
</EntityType>
<EntityType Name="Airport">
<Key>
<PropertyRef Name="IcaoCode" />
</Key>
<Property Name="Name" Type="Edm.String" />
<Property Name="IcaoCode" Type="Edm.String" Nullable="false" />
<Property Name="IataCode" Type="Edm.String" />
<Property Name="Location" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.AirportLocation" />
</EntityType>
<ComplexType Name="Location">
<Property Name="Address" Type="Edm.String" />
<Property Name="City" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.City" />
</ComplexType>
<ComplexType Name="City">
<Property Name="Name" Type="Edm.String" />
<Property Name="CountryRegion" Type="Edm.String" />
<Property Name="Region" Type="Edm.String" />
</ComplexType>
<ComplexType Name="AirportLocation" BaseType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location">
<Property Name="Loc" Type="Edm.GeographyPoint" />
</ComplexType>
<ComplexType Name="EventLocation" BaseType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location">
<Property Name="BuildingInfo" Type="Edm.String" />
</ComplexType>
<EntityType Name="Trip">
<Key>
<PropertyRef Name="TripId" />
</Key>
<Property Name="TripId" Type="Edm.Int32" Nullable="false" />
<Property Name="ShareId" Type="Edm.Guid" Nullable="false" />
<Property Name="Name" Type="Edm.String" />
<Property Name="Budget" Type="Edm.Single" Nullable="false" />
<Property Name="Description" Type="Edm.String" />
<Property Name="Tags" Type="Collection(Edm.String)" />
<Property Name="StartsAt" Type="Edm.DateTimeOffset" Nullable="false" />
<Property Name="EndsAt" Type="Edm.DateTimeOffset" Nullable="false" />
<NavigationProperty Name="PlanItems" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.PlanItem)" />
</EntityType>
<EntityType Name="PlanItem">
<Key>
<PropertyRef Name="PlanItemId" />
</Key>
<Property Name="PlanItemId" Type="Edm.Int32" Nullable="false" />
<Property Name="ConfirmationCode" Type="Edm.String" />
<Property Name="StartsAt" Type="Edm.DateTimeOffset" Nullable="false" />
<Property Name="EndsAt" Type="Edm.DateTimeOffset" Nullable="false" />
<Property Name="Duration" Type="Edm.Duration" Nullable="false" />
</EntityType>
<EntityType Name="Event" BaseType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.PlanItem">
<Property Name="OccursAt" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.EventLocation" />
<Property Name="Description" Type="Edm.String" />
</EntityType>
<EntityType Name="PublicTransportation" BaseType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.PlanItem">
<Property Name="SeatNumber" Type="Edm.String" />
</EntityType>
<EntityType Name="Flight" BaseType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.PublicTransportation">
<Property Name="FlightNumber" Type="Edm.String" />
<NavigationProperty Name="Airline" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airline" />
<NavigationProperty Name="From" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airport" />
<NavigationProperty Name="To" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airport" />
</EntityType>
<EntityType Name="Employee" BaseType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person">
<Property Name="Cost" Type="Edm.Int64" Nullable="false" />
<NavigationProperty Name="Peers" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)" />
</EntityType>
<EntityType Name="Manager" BaseType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person">
<Property Name="Budget" Type="Edm.Int64" Nullable="false" />
<Property Name="BossOffice" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location" />
<NavigationProperty Name="DirectReports" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)" />
</EntityType>
<EnumType Name="PersonGender">
<Member Name="Male" Value="0" />
<Member Name="Female" Value="1" />
<Member Name="Unknow" Value="2" />
</EnumType>
<EnumType Name="Feature">
<Member Name="Feature1" Value="0" />
<Member Name="Feature2" Value="1" />
<Member Name="Feature3" Value="2" />
<Member Name="Feature4" Value="3" />
</EnumType>
<Function Name="GetPersonWithMostFriends">
<ReturnType Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
</Function>
<Function Name="GetNearestAirport">
<Parameter Name="lat" Type="Edm.Double" Nullable="false" />
<Parameter Name="lon" Type="Edm.Double" Nullable="false" />
<ReturnType Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airport" />
</Function>
<Function Name="GetFavoriteAirline" IsBound="true" EntitySetPath="person">
<Parameter Name="person" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
<ReturnType Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airline" />
</Function>
<Function Name="GetFriendsTrips" IsBound="true">
<Parameter Name="person" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
<Parameter Name="userName" Type="Edm.String" Nullable="false" Unicode="false" />
<ReturnType Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Trip)" />
</Function>
<Function Name="GetInvolvedPeople" IsBound="true">
<Parameter Name="trip" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Trip" />
<ReturnType Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)" />
</Function>
<Action Name="ResetDataSource" />
<Function Name="UpdatePersonLastName" IsBound="true">
<Parameter Name="person" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
<Parameter Name="lastName" Type="Edm.String" Nullable="false" Unicode="false" />
<ReturnType Type="Edm.Boolean" Nullable="false" />
</Function>
<Action Name="ShareTrip" IsBound="true">
<Annotation Term="Org.OData.Core.V1.Description" String="Details of the shared trip." />
<Parameter Name="personInstance" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
<Parameter Name="userName" Type="Edm.String" Nullable="false" Unicode="false" />
<Parameter Name="tripId" Type="Edm.Int32" Nullable="false" />
</Action>
<Action Name="GetPeersForTrip" IsBound="true">
<Parameter Name="personInstance" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
<Parameter Name="userName" Type="Edm.String" Nullable="false" Unicode="false" />
<Parameter Name="tripId" Type="Edm.Int32" Nullable="false" />
<ReturnType Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)" />
</Action>
<EntityContainer Name="Container">
<EntitySet Name="People" EntityType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person">
<NavigationPropertyBinding Path="Friends" Target="People" />
<NavigationPropertyBinding Path="BestFriend" Target="People" />
<NavigationPropertyBinding Path="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Employee/Peers" Target="People" />
<NavigationPropertyBinding Path="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Manager/DirectReports" Target="People" />
</EntitySet>
<EntitySet Name="Airlines" EntityType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airline">
<Annotation Term="Org.OData.Core.V1.OptimisticConcurrency">
<Collection>
<PropertyPath>Name</PropertyPath>
</Collection>
</Annotation>
</EntitySet>
<EntitySet Name="Airports" EntityType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airport" />
<EntitySet Name="NewComePeople" EntityType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
<Singleton Name="Me" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person" />
<FunctionImport Name="GetPersonWithMostFriends" Function="Microsoft.OData.Service.Sample.TrippinInMemory.Models.GetPersonWithMostFriends" EntitySet="People">
<Annotation Term="Org.OData.Core.V1.Description" String="The person with most friends." />
</FunctionImport>
<FunctionImport Name="GetNearestAirport" Function="Microsoft.OData.Service.Sample.TrippinInMemory.Models.GetNearestAirport" EntitySet="Airports" />
<ActionImport Name="ResetDataSource" Action="Microsoft.OData.Service.Sample.TrippinInMemory.Models.ResetDataSource">
<Annotation Term="Org.OData.Core.V1.Description" String="Resets the data source to default values." />
</ActionImport>
</EntityContainer>
</Schema>
</edmx:DataServices>
</edmx:Edmx>