Howdy-- Good question... we discuss this a little on page 471. Here's the deal: inside <c:if>, for example, in the JSTL spec, it tells you that the attribute type of *test* is <rtexprvalue>true</rtexprvalue>. So... means it can be one of three things;
So, to answer your question, you CAN have more than just EL when the attribute type is defined as <rtexprvalue> (otherwise, it must be ONLY a static String value).
So, that means that ANY place you see us using EL within an attribute value for a JSTL tag, you know that the rtexprvalue must be true, which means you can also use regular scripting expressions or a <jsp:attribute> in addition to EL.