Finally, we got through the support services processes at Microsoft and got a solution!
First, Microsoft stated this to be a bug. It is a minor bug, because there is a good workaround, so it may take some longer time, until this bug will be fixed (the support technician said something with next service pack oder next version (!)).
But now for the problem.
The reaseon
Let's take a look at the CAML code from my question:
<Method ID='1' Cmd='Update'>
<Field Name='ID'>1</Field>
<Field Name='myDummyPropertyField'>NewValue</Field>
</Method>
For any reason the Workflow Manager does not work with the ID, we entered in the second line. Strange, all other SharePoint commands are working with the ID, but not the Workflow Manager. The Workflow Manager works with the "fully qualified" document name. So, because we had no clue and didn't entered any fully qualified document name, the Workflow Manager defaults to the name of the current document library. And now the error message begins to make sense:
The object specified does not belong to a list.
Of course, the object (document library) does not belong to a list, it IS the list.
The solution
We have to add one more line to our CAML Query:
<Field Name='FileRef'>/sites/mySite/myDocLib/myFolder/myDocument.txt</Field>
The FileRef passes the fully qualified document name to the Workflow Manager, which - now totally happy - starts the workflow of the item.
Be careful, you have to include the full absolute server path, omitting your server name (found for example in ServerRelativePath property of your SPItem).
Full working CAML Query:
<Method ID='1' Cmd='Update'>
<Field Name='ID'>1</Field>
<Field Name='FileRef'>/sites/mySite/myDocLib/myFolder/myDocument.txt</Field>
<Field Name='myDummyPropertyField'>NewValue</Field>
</Method>
The future
Perhaps this undocumented behaviour will be fixed in one of the upcoming service packs, perhaps not. Microsoft Support apologized and is going to release an MSDN Article on this topic. For the next month I hope this article on stackoverflow will help developers in the same situation.
Thanks for reading!
Best Answer
I had a similar requirement a long while back. I ended up using a CustomAction to extend the Upload UI; and made a modal lightbox popup when the item was clicked; the box's UI included a file upload control and all standard as well as custom fields. The trick was simply using the UrlAction element's "Url" attribute to initiate the script. The upload was handled with a web service.
The users upload workflow then only requires a single postback (navigating to the doclib itself)
I called it something to the effect of "Quick Upload".
Here's an idea of what the Elements.xml looked like