Hi,
I recently noticed that empty directories included in a transfer are not carried over to the AIP. Is there a micro-service that specifically removes empty directories or is this happening as a side effect of having a new bag created at the Prepare AIP stage?
As I understand it, empty directories will be preserved if you create a bag "in place" using either bagit-python or bagit-java (with the keepemptydirs option), but if you create a new bag with bagit-java, there's no way to keep empty directories.[1] The BagIt specification mentions making a .keep file in the empty directory to get the path into the manifest, but inserting a .keep in every empty directory seems like a workaround that ideally wouldn't be necessary.
This does raise the question of how to validate an AIP that includes empty directories in the absence of .keep files. One possibility would be to run two validation steps, one for the bagit manifest, and one for the directory tree.
[1]
http://sourceforge.net/p/loc-xferutils/mailman/message/32384643/Andrew