My AP chemistry book "Chemistry: the Central Science 12th edition" says that one molecule of citric acid generates 3 H+(aq) ions when dissolved in water. Looking at the structural formula:
There are three carboxyl groups. However, there are four instances of an -O-H link. Why don't all of these break? My guess is that the carboxyl groups can form resonance groups and thus obey the octet rule.