This link explains what functionality requires a license on EX4300 - https://www.juniper.net/documentation/en_US/release-independent/licensing/topics/topic-map/understanding_software_licenses.html#jd0e551
The EX4200 had/has no license requirement for L3/Routing. For EX4300 there was added a new SW license requirement for certain features, similar to what most vendors are doing with SW. The majority of EX Access layer deployments are run as L2 only. So the base price of newer ELS based EX's was lowered, and then 2 licenses tiers were created for those who desired extra functionality beyond L2 base (exception is static routes and RIP), with associated extra cost. The 2 tires are:
EFL - Enhanaced Feature License
AFL - Advanced Feature License (includes all that is in EFL)
These licenses are honor based, but in feature requireing a license is used, warning messages will be generated. So the feature can be configured and work without a license installed, but usage without a license is SW pirating.
BGP requires an AFL license to be used without fear of improper use/SW pirating.
HTH