What I realized the other day is that the property restrictions in OWL are a lot like the options you see on a typical search interface, say,
https://ropercenter.cornell.edu/ipoll/
It is hidden in plain site, for instance if you read this
https://www.w3.org/TR/owl-ref/#Restriction
you might not realized that there are some other axioms documented elsewhere in the standard that let you query on "less than", "greater than", "matches a regex", etc. Instead of fighting with Protege or writing turtle you should be able to compose queries out of restrictions plus complements, unions and intersections the way you snap together a program in Scratch, but somehow the idea that OWL works as a query language (logically define a class in terms of its properties) had eluded people completely.
For an example of where such a system is used, see:
- WikiData[6]: They use RDF but they don't use OWL, they have a similar though less formal way of defining types, and then entailment has to be encoded in SPARQL queries.
- schema.org[7]: Uses RDF and also provide OWL specifications.
[1]: https://www.w3.org/TR/rdf11-primer/ [2]: https://www.w3.org/TR/owl2-primer/ [3]: https://www.w3.org/TR/rdf11-mt/#entailment-rules-informative [4]: https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/... [5]: https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/... [6]: https://www.wikidata.org/wiki/Wikidata:Main_Page [7]: https://schema.org/