I think by 'defined types' you mean the Collections
available to query in the odata service. These are called "Entities" in the OData protocol, but in these collections, what we have are units of information (Items
) inside the Broker Database to be queried.
If you are trying to obtain a certain Page
, using the url in the request to the odata service, the solution may be the use one of the "Query options" in the OData standard, for example the "$filter
" element in the odata request, something like the following url, gives a result of the Page published with a certain url:
http://your_server:port/odata_webservice/odata.svc/Pages?$filter=(Url%20eq%20%27/AAA/index.jsp%27)
And if you want to access the published content in that Page, then you can use another "query option" of OData protocol like "$expand
"
http://your_server:port/odata_webservice/odata.svc/Pages?$filter=(Url%20eq%20%27/AAA/index.jsp%27)&$expand=PageConent
or
http://your_server:port/odata_webservice/odata.svc/Pages?$filter=(Url%20eq%20%27/AAA/index.jsp%27)&$expand=ComponentPresentations
It's important to note that the OData service implemented in Tridion is a partial implementation of the OData Protocol.
Information about the capabilities of OData service in Tridion can be followed with this link.
And information about the OData capabilities can be followed here.