There are several tailor-made languages designed for querying KBs, such as SPARQL (Prudhommeaux and Seaborne, 2008).
to handle such query languages, users are required to not only be familiar with the particular language grammars, but also be aware of the architectures of the KBs.