Here goes nothing!
I would defer to this definition, in addition to being in the DRI camp:
"The quality or condition of being whole or undivided; completeness."
Therefore child/sibling records MUST have parent records, not MAY have parent records. The only way to be 100% certain that this will happen is to create the physical relationships.
An application in theory may be 100% sure of maintaining this integrity, but not necessarily be 100% complete. One change to an application may inadvertently cause data integrity issues, then your left with stray ("divided") records and trying to figure how to "clean-up/fix" this data. Even though the application may have been through an intensive testing process how can someone be 100% certain that data integrity will always be maintained. The only way is physically through the database.
How can you be certain that your kid won't drive your car when you're on vacation? Plead with him and get his word, hide the car keys, siphon the gas from the tank, remove the battery, put the car up on blocks and remove the tires, or physically take the car with you on vacation.