We fielded several questions as part of our recent webinar (recording and slides available here): Taxonomies, Ontologies, Knowledge Graphs, Oh My! What to Know When You’re Not in Kansas Anymore

Questions from the webinar included:

Q1: Do you support multi-type inheritance?


Q2: I struggle with the concept of KNOWLEDGE outside of a human context, or, in some (future?) Strong AI context. The difference between KNOWLEDGE and INFORMATION is awareness. When knowledge is reduced to information, it may be stored and retrieved, however, the dimension of awareness (I, we or it also “knows what it knows”). I think that comingling the concepts of knowledge, information and data, absent Strong AI, limits the effectiveness of so-called knowledge based systems. How do practitioners resolve this equivocation, or, is it simply not a problem?

A knowledge system like EDG (using RDF and SHACL), establishes the ability to ‘expect’ and therefore ‘compare’…in a way that a machine can handle generically without having to hardcode logic. We think the fuzzyiness of knowledge is accepted and not a problem anymore. We simply want the machine to do as much for us as possible, for big and small situations.

Q3: What are the export formats from TopBraid EDG?

Many formats, RDF of course but you can export spreadsheets, images, etc. Web services can negotiate the content into any format and you may want JSON directly from the GraphQL endpoint.

Q4: How is the TopBraid EDG editor different from TopBraid composer?

TopBraid Composer is a desktop thick-client IDE (dev environment) while EDG is a collaborative environment.


Q5: How much control does the user have for tunning the auto-classification of content?

You provide input in the training process and then human-in-the-loop review can be done to approve/reject tags that the ML learns from.

Q6: Please explain type vs class

CLASSes make up your blueprint. TYPE is the relationship that connects the instance data to the blueprint. For example, in the slides, BMW’s type would be Organization.

Q7: You briefly mentioned SHACL during your demo.  Is SHACL useful for taxonomies or ontologies (or both)?  And how does it relate to OWL?

SHACL is a W3C standard for defining a model (structure, shape) of RDF data. In EDG, SHACL is used as a language for defining ontologies. Since ontologies define the blueprint for taxonomy data, SHACL directly supports taxonomies. SKOS properties and custom properties such as ‘capital’, ‘calling code’, ‘neighboring country’, etc. are all defined using SHACL. Rules for calculating (inferring) new values are also defined in SHACL e.g., that there can be only one preferred label in a given language, that taxonomy concepts should not be orphans, that number of related concepts is calculated based on the number of values of “related’ property and so on.
SHACL is a newer knowledge representation language. It has been standardized 2 years ago, in 2017. OWL is an older language. It was published in 2001. SHACL addresses usability, extensibility and other issues with OWL. SHACL support by products and use in projects has been growing rapidly. Having said this, you can use OWL for ontology development in EDG. You can load into EDG any ontology in OWL and keep OWL axioms or auto-convert them to SHACL.


Q8: How do you use taxonomies with other datasets?  

Taxonomies can compliment other data sets as tagging vocabularies being manually referenced or through autoclassification.  They can also stand alone and be highly advanced and interconnected knowledge graphs themselves.