The RFC 2387 defining multipart/related doesn't say too much about the
procedure for matching the parameter "start"'s value with the value in
the content-id header, unlike what is said for matching/resolving a
cid:x@y URI to its body part by means of the content-id field.
The abnf in 2387 says
related-param := [ ";" "start" "=" cid ]
[ ";" "start-info" "="
( cid-list / value ) ]
[ ";" "type" "=" type "/" subtype ]
; order independent
cid-list := cid cid-list
cid := msg-id ; c.f. [822]
and [822] said
msg-id = "<" addr-spec ">" ; Unique message id
But [2822] says
The message identifier (msg-id) is similar in syntax to an angle-addr
construct without the internal CFWS.
(so comments and whitespace are not allowed as they would be in
addr-spec)
and, most importantly,
Semantically, the angle bracket characters are not part of the
msg-id; the msg-id is what is contained between the two angle bracket
characters.
(The abnf for msg-id in [2822] differs from [822] but I don't think
those differences are relevant here.)
It is very clear what the matching procedure is for the cid scheme in
cid URIs in RFC 2392
A "cid" URL is converted to the corresponding Content-ID message
header [MIME] by removing the "cid:" prefix, converting the % encoded
character to their equivalent US-ASCII characters, and enclosing the
remaining parts with an angle bracket pair, "<" and ">". For
example, "cid:foo4%25foo1@bar.net" corresponds to
Content-ID: