PK が値として設定されているドキュメントを削除するには
options.setPartitionKey(new PartitionKey(pkValue));
client.deleteDocument(doc.getSelfLink(), options);
とすればよいのですが、PKが設定されていない文書を
options.setPartitionKey(null);
client.deleteDocument(doc.getSelfLink(), options);
や
client.deleteDocument(doc.getSelfLink(), null);
のように削除しようとするとなぜか
PartitionKey value must be supplied for this operation.
のエラーが返されます。
これを回避するためには
// com.microsoft.azure.documentdb.Undefined
options.setPartitionKey(new PartitionKey(Undefined.Value()));
としないといけない仕様となっているようです。
Javaのみならず、他の言語でも同様のようです。
(そもそも値が存在しないのだから null で通すようにしてくれたらいいのに、と思うのですが)