Okay we have IDM 3.5 without provisioning.

So I have lots of dumb questions

1) if we decide to eval/purchase the provisioning module, can it be
"added" into the current IDM server? Or do I need to completely
reinstall UserApp? Right now we have 3.5.0 on SLES 10

2) Does Provisioning allow for self-registration that can then go
through workflow (ie, someone else has to like verify that the person is
real and whatnot)?

3) Is there any intelligence that can be built into it to check if the
userid that the user chose is not already taken?

4) Can it be used for a diff. O=whatever than the current User
Application? Meaning, our current User App is setup for O=ABC. But we
want to use Provisioning for both O=ABC and a new O=XYZ. I don't think
it can be used for two O's without setting up two instances. Which is
okay, I just need to know about it ahead of time.

5) On the self-registration page can the userid request be fancy like:
must contain X characters and X numbers?

I'm sure I'll have more questions, but I've not played with it or
installed it or anything yet.

Initially we're looking at something relatively simple:

external users will hit a URL and "self-register". This would kick off
a workflow to go to a person in a DIFF. O (O=ABC would be responsible
for approvals). They will verify some stuff and then maybe fill in a
few extra pieces of information and then click "OK" or whatever. The
account would then be created in O=XYZ. That's pretty much it for now.

We would then later expand this for O=ABC account creation/deletion,