How many unconfirmed childs can I have? I don't seem to be able to ask the right question in the title, the way I asked the question is not correct.
What I really want to know is this:  

I can spend an unconfirmed output, then I can spend the output that spends that unconfirmed output, and I can spend that output, too, and so on...  

My question is: how many times can I do it?  



Edit: I just tried it in the testnet, I got this message: 64: too-long-mempool-chain. Is this 64 an universal number?
Edit 2: It turns out 64 is the error code. The actual number is 25.
There is no limit in the consensus rules about that. However nodes have a local policy rule about this. In Bitcoin Core, the limit is 25 unconfirmed transactions. This limit is user configurable.