Hmm, do you really want every dataset to be created with this resource? I would have thought it was more intuitive to create empty datasets, and only create resources if they're explicitly passed in to the factory method, or if they're explicitly created afterwards.