John,Ok, ok, forget SQL. When I wrote normalized I was thinking about the design where you put fields in the right tables. We have that in Gramps, even though Gramps is noSQL. Person names are in the person table, dates in the events, and so forth. I call that normalized, even though it's not in a pure relational way. That's OK.
That's your SQL hat speaking. Time to put it back in the closet and think NoSQLy. ;-) If these data are normalized they'd just have to be joined every time you wanted to use them. Yes, it would save a little space, but only at the cost of more complex queries and slower response.
Likewise, we put author and title in the source table, page/volume and date in the citation table, which is where I also paste the contents from a record that I find on FamilySearch or Wie Was Wie. So far, so good.
Now, with the evidence style prototype, which I just tried in trunk, it appears as if everything goes to the citation table now. In one way, I think that's very simple and straightforward, but it also looks like a diversion from the way we went from sources to citations in Gramps 3.4.