1. A configurable software application system comprising: a processor; and a memory coupled to the processor and configured to store a software application configuration tool executable by the processor for generation of customized metadata variants of a software application, the software application configuration tool including: base metadata configured to characterize data processing logic within the software application; custom metadata configured to define a variant of the software application including custom data processing logic within the software application, the custom metadata data being configured to be overlaid on the base metadata and to inherit attributes of the base metadata; a context evaluator configured to overlay the custom metadata on the base metadata in response to a request to execute the software application received from an end user, responsive to an execution context; a runtime metadata interpreter configured to generate executable instructions for the software application using the base metadata and overlaid custom metadata at runtime; wherein the configuration system includes a metadata packager configured to determine that the custom metadata and the base metadata are needed to generate an executable variant of the software application; and a metadata analyzer configured to determine if the first custom metadata meets the requirements of relationship metadata when overlaid on the base metadata.
1. A configurable software application system comprising: a processor; and a memory coupled to the processor and configured to store a software application configuration tool executable by the processor for generation of customized metadata variants of a software application, the software application configuration tool including: base metadata configured to characterize data processing logic within the software application; custom metadata configured to define a variant of the software application including custom data processing logic within the software application, the custom metadata data being configured to be overlaid on the base metadata and to inherit attributes of the base metadata; a context evaluator configured to overlay the custom metadata on the base metadata in response to a request to execute the software application received from an end user, responsive to an execution context; a runtime metadata interpreter configured to generate executable instructions for the software application using the base metadata and overlaid custom metadata at runtime; wherein the configuration system includes a metadata packager configured to determine that the custom metadata and the base metadata are needed to generate an executable variant of the software application; and a metadata analyzer configured to determine if the first custom metadata meets the requirements of relationship metadata when overlaid on the base metadata. 8. The system of claim 1 , further including package metadata configured for identifying which metadata is required by the variant of the software application.