According to the HTML5 specification, role="navigation" is implicit for the <nav> element, and role="complementary" implicit for the <aside> element. Thus, you do not need to add them according to the specification. The question is how many ATs actually meet the specifications, so if you want it safe, you can add these roles, it wonβt hurt.
Also remember that some <aside> elements must be marked as role = note .
Also note that the HTML5 specification allows you to group multiple <ul> under <nav> . I am not sure if this implies that role="navigation" sufficient only for <nav> or that each <ul> should be marked as such. I can not find any information on this.
source share