1. A computer-implemented method of generating a semantic query, comprising: receiving a query at a relational database; identifying the query as a semantic query; determining whether the semantic query can be directly expressed within the relational database; if so, generating a table valued function representing the semantic query within the relational database; and if not, providing the semantic query to a semantic processing engine for processing.