Knowledgetree metadata has been a pain to interface with. Below is an example of posting metadata to Knowledgetree document. Sending SOAP::Data->type(‘xml’ => $xml) will populate the Date on Document and Notes. I am in the process of incorporating it into my ktdrop.pl script. It is true that you cannot send an array via a HTTP post as said in some forums, but in SOAP there is an array.
$xml = ''; $r = $session->add_document_with_metadata($ktsessionid,$dropboxid,$uploadRes->{name},$uploadRes->{name},$ktDocumenttype,$uploadRes->{filename}, SOAP::Data->type('xml' => $xml), '' );