Are the array elements in the OData Service document limited to the *top* level collection resources and services ?
Besides authentication concerns, certain resources may be ephemeral, such as a given chassis which can be hot-plugged out. Hence it may be necessary to generate the "url" for such resources at run time ?
They are limited to items listed in the ServiceContainer definition (which is found in ServiceRoot_v1.xml). This is how OData generically advertises the various entry points to the service, and for a generic OData client to discover those capabilities. The OData document doesn't contain specific instances of devices in your system. For example, it shows the Chassis Collection, but it doesn't show the members of the Chassis Collection. The Chassis Collection should always be present, but the contents of the collection may change based on the state of the system; this isn't known until a client goes to access the Chassis Collection URL, which is an authenticated request.