I have seen that many children during the early school years, from about age six through to perhaps nine or ten, are capable of logical thinking, but not abstract thinking. Piaget called these early logical thoughts "concrete operations", that is, logical reasoning applied to things you can see and feel. This kind of thinking shows up in children's approach to right and wrong.
-A six year old, for example my niece, is likely to feel that a game can be played by one set of rules. It would not be right to change the rules, even if all the players agree, because rules have to be followed.
-A nine year old might consider breaking a window with a wildly thrown cricket ball to be a more serious crime than stealing sweets, because the window costs so much more. The fact that the window breaking was completely unintentional, while the theft was premeditated, would not necessarily figure in this concrete operational reasoning.
-Another area where a concrete operational child might have difficulty is in working out other people's motivations. It's fascinating to read a story to a young school age child, and ask her to explain why a certain character did what they did. You'll quickly discover that what may seem obvious to you is actually very hard for your bright eight year old to grasp.