1. A method to be executed at least in part in a computing device for performing object oriented searches, the method comprising: crawling searched contents; determining textual and non-textual elements within a document of the searched contents, at least some of the non-textual elements including external data received dynamically from an external data source; analyzing relationships between the textual and non-textual elements; analyzing metadata associated with the document and the textual and non-textual elements; organizing analysis results of the relationships and the metadata into a unified object model using the unified object model to set a scope and at least one filter for a query; and using one or more of element structure, the external data source, and the metadata for search result ranking before rendering and for enhancing a user interface layout and style at a rendering client.