I have been learning DDD and keep getting stuck at domain separation. I'm currently tackling a "Product Catalog" domain. Now in this domain some products are missing a description or image. I would like to add them if they are missing from outside sources.
Currently I have 2 models: "Product" and "RemoteProduct". RemoteProduct only has a subset of the same information as Product. They each have a repository.
My product repository would need a "GetAllMissingDescription" and "GetAllMissingImage". From a business perspective a catalog has no need to search for these 2 things so it seems like this doesn't belong in this domain. Yet all the functionality besides searching and populating this data would be the same.
Is this task suited for the "Product Catalog" by creating a service? Would it make more sense to create a "Product Catalog Updater" domain? Perhaps do this outside of DDD and create a self contained script. Or have I been doing this all wrong?
From a business perspective a catalog has no need to search for these 2 things
-- From a business perspective, are you required to display images in the catalog? If you are, then a search for missing images is in scope by definition, especially if it's a requirement. In other words, I would expect the "display images" functionality to do whatever it needs to do to display images.