1. A method of providing supplemental functionalities to an executable program via an ontology instance, the method being implemented by a computer system comprising one or more processors executing one or more computer program instructions that, when executed, perform the method, the method comprising: causing an executable program associated with an ontology to be run, wherein the ontology comprises information indicating attributes for a set of applications; obtaining a domain-specific ontology, wherein the domain-specific ontology is within a domain of interest; obtaining an instance of the ontology, wherein the ontology instance is derived from the domain-specific ontology and comprises information indicating attributes for an application of the set of applications that is within the domain of interest; assigning a freeze to the ontology that disables further modification to the ontology; extracting axiom information from the frozen ontology; using the axiom information to generate a set of logic rules; using the set of logic rules to transform the ontology instance to generate application metadata for the executable program, wherein the application metadata defines one or more functionalities of the application; using the set of logic rules to validate the ontology instance, wherein the application metadata becomes read-only after the validation; and providing the application metadata as input to the executable program, wherein the application metadata, at least in part, causes the one or more functionalities of the application to be made available via the executable program, the executable program executing the one or more functionalities of the application using the definitions of the one or more functionalities in the application metadata, the executable program comprising a set of runtime rules that do not alter the application metadata.
1. A method of providing supplemental functionalities to an executable program via an ontology instance, the method being implemented by a computer system comprising one or more processors executing one or more computer program instructions that, when executed, perform the method, the method comprising: causing an executable program associated with an ontology to be run, wherein the ontology comprises information indicating attributes for a set of applications; obtaining a domain-specific ontology, wherein the domain-specific ontology is within a domain of interest; obtaining an instance of the ontology, wherein the ontology instance is derived from the domain-specific ontology and comprises information indicating attributes for an application of the set of applications that is within the domain of interest; assigning a freeze to the ontology that disables further modification to the ontology; extracting axiom information from the frozen ontology; using the axiom information to generate a set of logic rules; using the set of logic rules to transform the ontology instance to generate application metadata for the executable program, wherein the application metadata defines one or more functionalities of the application; using the set of logic rules to validate the ontology instance, wherein the application metadata becomes read-only after the validation; and providing the application metadata as input to the executable program, wherein the application metadata, at least in part, causes the one or more functionalities of the application to be made available via the executable program, the executable program executing the one or more functionalities of the application using the definitions of the one or more functionalities in the application metadata, the executable program comprising a set of runtime rules that do not alter the application metadata. 2. The method of claim 1 , further comprising: obtaining another instance of the ontology, wherein the other ontology instance is derived from the domain-specific ontology and comprises information indicating attributes for another application of the set of applications that is within the domain of interest; using the set of logic rules to transform the other ontology instance to generate other application metadata for the executable program, wherein the other application metadata defines one or more functionalities of the other application; and providing the other application metadata as input to the executable program, wherein the other application metadata, at least in part, causes the other one or more functionalities of the other application be made available via the executable program.