Good point, but should that be if workspace is NOT null?

If not specifying a workspace, then behaviour is as before; looks in current workspace.
If specifying a workspace, then throw the NotImplementedException 

(but should I allow the case where workspace is specified, but equals the current workspace?)