Create a connector for the federation engine that contributes and exposes the content of a query against a relational database. One option is to simply place all records below a single node, but a more useful approach would be to have the query use GROUP BY and to then create a level in the content hierarchy that represents each group clause and ranges or actual values. For example, consider a query that selects products and then groups by product type, by price, and then by name. This would correspond to a repository structure with one level for the product type (values for the node names at this level might be "Exterior", "Interior", "Automotive", etc.), a second level for price (e.g., "Under $10", "$10-$20", etc.), and a third level for the models (e.g., "ACME SuperPaint", "5-gallon Gas Tank", etc.). The lowest level in the hierarchy may need to be the primary key (in other words, the GROUP BY clauses create categories under which the individual records appear).
This same approach would allow a table's contents to be organized by it's compound (primary) key simply by creating a query that uses GROUP BY for each of the columns in the compound key.
Note that this is not the same as a connector that provides access to a relational database schema (see