Issue #1

 

Email header names have a set value, but in practice SMTP servers do what they want.  So this is the required header name for content type:

 

Content-Type: <some value>

 

But variations exist, such as this:

 

Content-type:  <some value>

 

Rather than trying to guess every possible combination, I think it would be good to simply ignore the case of the header name.

 

(I have modeled header names as initiators.)

 

Issue #2

 

The spec says that the value of the content type is case insensitive, so all the following possibilities (and more) are allowed:

 

Content-Type:  text/html

Content-Type:  TEXT/HTML

Content-Type:  Text/Html

Content-Type:  tExT/hTmL

 

So obviously I need to be able to ignore the case of the header’s value.

 

(I have modeled the type (e.g., text) and the subtype (e.g., html) as elements.  And as there’s obviously a limited set of allowed for each, I’ve constrained these with an enumerated list.)

 

I have attached a simplified version of the schema I’m using for the content header.  How would I modify it in order to ignore the case of the header name and the header value?

 

TIA!