4.2.4 Retrieve a Single Entity and Its Directly Related Entities by Using the AtomPub Format
The following example illustrates the exchange of messages that is required for a client to retrieve a Customer entity (with EntityKey value equal to "ALFKI") and its associated Order EntityType instances. This example uses the AtomPub format for all messages.
Request:
-
GET /service.svc/Customers('ALFKI')?$expand=Orders HTTP/1.1 Host: host Accept: application/atom+xml DataServiceVersion: 1.0 MaxDataServiceVersion: 3.0
Response:
-
HTTP/1.1 200 OK Date: Fri, 12 Dec 2008 17:17:11 GMT Content-Type: application/atom+xml;type=entry Content-Length: nnn DataServiceVersion: 3.0 <?xml version="1.0" encoding="utf-8"?> <entry xml:base="http://host/service.svc/" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:gml=http://schemas.opengis.net/gml/3.1.1/profiles/gmlsfProfile/1.0.0/gmlsf.xsd xmlns="http://www.w3.org/2005/Atom"> <category term="SampleModel.Customer" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/> <id>http://host/service.svc/Customers('ALFKI')</id> <title type="text" /> <updated>2008-03-30T21:32:23Z</updated> <author> <name /> </author> <link rel="edit" title="Customers" href="Customers('ALFKI')/SampleModel.Customer" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Orders" type="application/atom+xml;type=feed" title="Orders" href="Customers('ALFKI')/SampleModel.Customer/Orders"> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/relatedlinks/Orders" type="application/xml" title="Orders" href="Customers('ALFKI')/SampleModel.Customer/$links/Orders"> <m:inline> <feed> <title type="text">Orders</title> <id>http://host/service.svc/Customers('ALFKI')/Orders</id> <updated>2008-03-30T21:52:46Z</updated> <link rel="self" title="Orders" href="Customers('ALFKI')/SampleModel.Customer/Orders" /> <entry> <category term="SampleModel.Order" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/> <id>http://host/service.svc/Orders(1)</id> <title type="text" /> <updated>2008-03-30T21:52:45Z</updated> <author> <name /> </author> <link rel="edit" title="Orders" href="Orders(1)/SampleModel.Order" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Customer" type="application/atom+xml;type=entry" title="Customer" href="Orders(1)/SampleModel.Order/Customer" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/relatedlinks/Customer" type="application/xml" title="Customer" href="Orders(1)/SampleModel.Order/$links/Customer" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/OrderLines" type="application/atom+xml;type=feed" title="OrderLines" href="Orders(1)/SampleModel.Order/OrderLines" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/relatedlinks/OrderLines" type="application/xml" title="OrderLines" href="Orders(1)/SampleModel.Order/$links/OrderLines" /> <content type="application/xml"> <m:properties> <d:OrderID m:type="Edm.Int32">1</d:OrderID> <d:ShippedDate m:type="Edm.DateTime">1997-08-25T00:00:00</d:ShippedDate> </m:properties> </content> </entry> <entry> <category term="SampleModel.Order" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/> <id>http://host/service.svc/Orders(2)</id> <title type="text" /> <updated>2008-03-30T21:52:45Z</updated> <author> <name /> </author> <link rel="edit" title="Orders" href="Orders(2)/SampleModel.Order" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Customer" type="application/atom+xml;type=entry" title="Customer" href="Orders(2)/SampleModel.Order/Customer" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/relatedlinks/Customer" type="application/xml" title="Customer" href="Orders(2)/SampleModel.Order/$links/Customer" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/OrderLines" type="application/atom+xml;type=feed" title="OrderLines" href="Orders(2)/SampleModel.Order/OrderLines" /> <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/relatedlinks/OrderLines" type="application/xml" title="OrderLines" href="Orders(2)/SampleModel.Order/$links/OrderLines" /> <content type="application/xml"> <m:properties> <d:OrderID m:type="Edm.Int32">2</d:OrderID> <d:ShippedDate m:type="Edm.DateTime">1997-10-03T00:00:00</d:ShippedDate> </m:properties> </content> </entry> </feed> </m:inline> </link> <content type="application/xml"> <d:CustomerID>ALFKI</d:CustomerID> <d:CompanyName>Alfreds Futterkiste</d:CompanyName> <d:Address> <d:Street>57 Contoso St</d:Street> <d:City>Seattle</d:City> <d:Location m:type="Edm.Point"><gml:Point srsName="4326">-127.345345 48.23423</gml:Point></d:Location> </d:Address> <d:Version>AAAAAAAA+gE=</d:Version> </content> </entry>