A few small tweaks to profile validation

* downcases the incoming occurence, to treat 'Required' the same as 'required'
* creates a rule if either occurrence, implementation, or value is present vs. before, which was just occurrence