如何检索聚合对象?

In DDD, Repository takes care of saving and retrieving domain objects and also serves as collection of Aggregate Roots. My question is how do you retrieve the information for those child entities (let's say from DB) of an Aggregate where basic rule is Repository should just hold collection of Aggregate Roots (parent object) and not child objects?

For example:

User (parent object) Orders (child object)

User domain object is stored in user table and Orders are stored in another table.

Basically, retrieving a Domain Object could be like this:

<?php
$userRepos = new UserRepository();
$user = $userRepos->find($userId);
?>

How then the child object (Orders) of User entity be retrieve to be as part of the User aggregate?

I believe that even though the Repositories only hold references to the Aggregate Roots, the Aggregate Roots will hold references to their child objects (Value objects). So the Factories that are generating the Aggregate objects will build these "internal" references between the Aggregate Roots and the Value objects, and then only the Aggregate Root need be placed in the Repositories. Then it is a simply matter of retrieving these child objects once you pull an Aggregate Root out of the Repository (through a simple getter API).