I created my WFR on the Contact object. "Arrival__c" is an Account custom date field that should trigger an email alert to all Contacts of said account on the arrival date. There is also a picklist value filtering records whose Account custom Source value is 'somevalue', and a basic email opt-out filter.
This rule worked for me in my dev edition, but I have trouble getting it to fire in the live org. I am pretty new at this so perhaps I just don't understand formula logic well enough.
Account.Arrival__c = TODAY() && NOT( ISPICKVAL( Account.Custom_Source__c , 'somevalue') ) && HasOptedOutOfEmail = FALSE
Account
field to process child records? You can't use aWorkflow Rule
for that, and it wouldn't be on the child object.