Given the public address, how is the one time address generated. Also, cryptographically, what links them?
A one time address for Bob is generated by taking a random r, multiply by Bob's public spend key, hash the result and multiply it by the curve base point, adding (in ECC terms) Bob's public view key.
The private key can be derived from this public key without further information.
See 4.3 in https://cryptonote.org/whitepaper.pdf for the details.