14. A method for creating expressions, the method being implemented by one or more data processors and comprising: providing, by at least one data processor, a graphical palette of expression components; providing, by at least one data processor, a workspace for a user to create expressions from the expression components; forming an initial placeholder in the workspace; receiving, by at least one data processor, an initial expression component from the graphical palette at the initial placeholder; forming, by at least one data processor, an additional placeholder in response to receiving, wherein the initial placeholder and the additional placeholder lay out the visual structure of expression components in the workplace to illustrate semantic relationships between the expression components; enforcing, by at least one data processor, data types for expression components when inserted into the workspace; and providing, by at least one data processor, a structured visual representation of additional expression components inserted in the workspace; wherein: at least one of the expression components comprises an aggregation, the aggregation having a corresponding graphical user interface element, which when activated, provides a panel in the workspace adjacent to the corresponding expression component to allow a user to specify filters and dimensions for the aggregation; brackets are inserted in the workspace to enforce an order of operations and to illustrate the order of operations to the user; and Boolean operators are represented in the workspace as a list within a bracket.
14. A method for creating expressions, the method being implemented by one or more data processors and comprising: providing, by at least one data processor, a graphical palette of expression components; providing, by at least one data processor, a workspace for a user to create expressions from the expression components; forming an initial placeholder in the workspace; receiving, by at least one data processor, an initial expression component from the graphical palette at the initial placeholder; forming, by at least one data processor, an additional placeholder in response to receiving, wherein the initial placeholder and the additional placeholder lay out the visual structure of expression components in the workplace to illustrate semantic relationships between the expression components; enforcing, by at least one data processor, data types for expression components when inserted into the workspace; and providing, by at least one data processor, a structured visual representation of additional expression components inserted in the workspace; wherein: at least one of the expression components comprises an aggregation, the aggregation having a corresponding graphical user interface element, which when activated, provides a panel in the workspace adjacent to the corresponding expression component to allow a user to specify filters and dimensions for the aggregation; brackets are inserted in the workspace to enforce an order of operations and to illustrate the order of operations to the user; and Boolean operators are represented in the workspace as a list within a bracket. 16. The method of claim 14 , wherein enforcing data types for expression components comprises indicating a data type for each placeholder and alerting the user when an expression component is inserted into a placeholder having an incompatible data type.