Context from method to called email

I've got an email that I'm calling from a "post" method on the Part lifecycle, but the default context that's passed to that email message isn't the Part, it instead seems to be the alphabetically first Identity in my database?

Why is this happening, and is it possible to (and how can I) pass the Part as the context item to the email, so I can use xpath variables for that part in the email?

Alternatively, if there's a good way to just find the part that's being promoted via the email message query, that's fine too. That's the goal, however I need to get there.

Here's the method that's running, for what it's worth:

Innovator inn = this.getInnovator();

if (this.getProperty("classification", "") == "Hull Assembly")
{
Item checkIsRoot = this.newItem("Part BOM","get");
checkIsRoot.setAttribute("select","id");
checkIsRoot.setAttribute("maxRecords","1");
checkIsRoot.setProperty("related_id",this.getID());
checkIsRoot = checkIsRoot.apply();
if(checkIsRoot.isError())
{
//First grab an identity to send the mail to.
Item iden = inn.getItemById("Identity", "097FB092EBDE42EB9E5A274ABC0059DA");
//Next, grab the email we want
Item myResult = inn.applyAML("<AML>"+
"<Item type='Email Message' action='get'>"+
"<name>BOM_Release</name>"+
"</Item></AML>");
Item myEmail = myResult.getItemByIndex(0);
iden.email(myEmail, iden);
}
}

return this;