The second part of this rule (saying that the child element types must have been declared) is not really necessary, since we already said that in the paragraph at the beginning of this list. ANY means exactly what it sounds like it means; the element can contain any old thing in any old order, as long as it doesn't break any of the other rules of XML.
Back when we were working through the design of XML, I couldn't see any excuse for having ANY, and voted against it. I lost that vote, and that was probably a good thing, because I have since learned of a very useful way to use ANY. Suppose you're given an existing well-formed XML document and you want to build a DTD for it. One way to do this is as follows: