Question: who plays mary margret in once upon a time
Answer: She is portrayed by Ginnifer Goodwin and by Bailee Madison as a child .