Hi Darren,
I'm probably missing something but I'm thinking you can use a combination of Document Sub-Types and Templates. The Template is essentially the form at that point and creating a new Document essentially creates a new "Record" Document (with unfilled form as initial content). The question I have is would you relate to the Part (WTPart) or a Part Instance?
Maybe you can elaborate on your use case?