1. A computer-implemented method of generating a semantic query, comprising: receiving a query at a relational database having a processing component and a relational data store; identifying the query as a semantic query; determining whether the semantic query can be directly expressed within the relational database without requiring use of a semantic processing engine that is distinct from the relational database; if the semantic query can be directly expressed within the relational database, generating, by the relational database, a table valued function representing the semantic query and obtaining query results from the relational database using the table valued function: and if the semantic query cannot be directly expressed within the relational database, providing the semantic query, that was received at the relational database, to the semantic processing engine and receiving, at the relational database from the semantic processing engine, a processed semantic query for obtaining query results from the relational database.