There are two versions of the Knowledge Graph Navigator, one is written in Common Lisp and one in Swift.

The app works by accepting natural language processing (NLP) queries, identifying proper nouns like people, places, organizations, etc. This app then attempts to resolve these entity references to linked data on the DDPedia SPARQL endpoint, verifies with the user that it has found the correct entity references, and then attempts to find as much information and relationships between these entities as it can.

This application is free and a work in progress. If you have comments or suggestions for future versions please email them to

All comments and suggestions for new features, bug reports, etc. will be appreciated!

There are three outputs for each query:

Parts of this application are developed and discussed in my books Loving Common Lisp, or the Savvy Programmer's Secret Weapon, Haskell Tutorial and Cookbook, and A Lisp Programmer Living in Python-Land: The Hy Programming Language that can be read free online.

Do you need help using semantic web technologies in your business? If so, you can hire me as a consultant.

References for Knowledge Graphs

Knowledge Graphs are implemented as directed graphs where nodes can represent people, locations, documents, organizations, business processes, documents on the web, etc. Graph edges represent property relations between nodes. Both nodes and edges can contain named properties.

My other free macOS application KGcreator generates graph data in two formats for both Neo4J and RDF/OWL linked data sources.

I worked as a contractor at Google with their Knowledge Graph. Facebook also has a Knowledge Graph to store information on users and connections. The use of KnowledgeGraphs at smaller organizations is gaining in popularity and I hope that this app will be of some use to you in your work and in learning more about SPARQL.

Here is some reading material:

Privacy statement: this web site collects no personal data.