17. A device comprising: one or more processors; a memory, wherein the memory is coupled to the one or more processors, the memory having stored thereon instructions, wherein the instructions, when executed by the one or more processors, cause the one or more processors to: provide a plurality of reusable templates for creating a plurality of data models for managing data associated with a plurality of tangible objects, wherein each reusable template is specific to a type of tangible object, and wherein the plurality of reusable templates are organized in a hierarchical structure in which one or more reusable templates have a parent relationship to other reusable templates such that contents of each parent template are automatically replicated in corresponding children templates; receive a request to tag, with one or more semantic tags for managing the plurality of the reusable templates of the data model, a first reusable template having a parent relationship to one or more child reusable templates, wherein a semantic tag of the one or more semantic tags comprises a term associated with a content of the first reusable template; in response to a request, tag i) the first reusable template with the semantic tag and ii) each of the one or more child reusable templates, with the one or more semantic tags; and in response to a search request with a tag term, retrieve one or more reusable templates having a semantic tag matching, at least in part, the tag term and causing graphical representation of the retrieved one or more reusable templates.
17. A device comprising: one or more processors; a memory, wherein the memory is coupled to the one or more processors, the memory having stored thereon instructions, wherein the instructions, when executed by the one or more processors, cause the one or more processors to: provide a plurality of reusable templates for creating a plurality of data models for managing data associated with a plurality of tangible objects, wherein each reusable template is specific to a type of tangible object, and wherein the plurality of reusable templates are organized in a hierarchical structure in which one or more reusable templates have a parent relationship to other reusable templates such that contents of each parent template are automatically replicated in corresponding children templates; receive a request to tag, with one or more semantic tags for managing the plurality of the reusable templates of the data model, a first reusable template having a parent relationship to one or more child reusable templates, wherein a semantic tag of the one or more semantic tags comprises a term associated with a content of the first reusable template; in response to a request, tag i) the first reusable template with the semantic tag and ii) each of the one or more child reusable templates, with the one or more semantic tags; and in response to a search request with a tag term, retrieve one or more reusable templates having a semantic tag matching, at least in part, the tag term and causing graphical representation of the retrieved one or more reusable templates. 23. The device as set forth in claim 17 , wherein the instructions, when executed by the processor, cause the processor to store the tagged first reusable template and each of the one or more tagged child reusable templates in persistent memory.