I've just looked at `getItems()` in isolation (typical mistake in code review), but the way you put it makes sense. The field acquires items by having `setValue()` called (either directly or indirectly), if you call `getItems()` before this its empty of course. Some PHPDoc on `setItems()` and `setValue()` to document this sync will help though.