I have problems with the fact that, in English, words can have multiple
meanings and can also be used as verbs, nouns, etc. In RDF, I feel like I'm
compelled to define a term and its one meaning that is unique across the entire
vocabulary. If I want to use the same term to mean two or more things, I have
to use two dictionaries or I have to come up with weird combinations of
multiple words. You know, like SimpleBeanFactoryAwareAspectInstanceFactory.
I was wondering if there is any way to define a term whose meaning depends on
the context. For example Lorem.foobar and Ipsum.foobar, "foobar" could mean two
entirely different things depending on whether it's a property of the type
Lorem or type Ipsum. AFAIK OWL defines domains/ranges for terms, so maybe these
can be used for this goal? What would be the practical implications, for
example if I were to use Fuseki without an OWL reasoner (ie. just by loading a
bunch of triples and start querying with SPARQL)?