1. A method for searching an applied data model, comprising: on a computer having a computer memory and a processor, translating a query to a set of statements operable to search the applied data model to an arbitrary level, wherein the applied data model comprises a plurality of defined data structures, wherein each of the data structures comprises one or more fields or properties associated with the data structure, wherein all data structures of the same type contain the same properties, wherein the applied data model comprises at least one component and a relationship corresponding to the at least one component, wherein the at least one component represents a physical or logical entity in the arbitrarily complex environment, wherein each component has a set of fields which contains information relating to an atomic entity associated with the at least one component, wherein the set of fields comprises: a set of property fields containing information about the attributes or characteristics of the component; and a field that contains a link to its component type, wherein values assigned to the properties in the component are based on the attributes of the entity which the component was instantiated to represent, wherein the relationship represents an association between the physical or logical entity and other physical or logical entities in the arbitrarily complex environment, wherein the relationship comprises: a field that is a foreign key to its relationship type; and a set of property fields containing information about one or more of the attributes of the relationship, wherein the components are stored in a schema, wherein property definitions of each component are linked to a type of component, wherein changes made to the type of component are automatically associated with all components of that type of component without changing the schema to reflect a corresponding change in the arbitrarily complex environment, wherein the schema is implemented in a database, wherein the query is a component query or a relationship query; searching the applied data model to the arbitrary level based on the set of statements translated from the query, wherein the query is in a first query language, and wherein the set of statements is capable of execution by a database management system supporting a second query language, wherein the database management system is associated with the database; producing a set of replies to the set of statements, wherein the set of replies includes at least one component or one relationship at the arbitrary level; and processing the set of replies according to the query.