It seems like RDFS/OWL (maybe also RIF?) inference is an important part of the Semantic Web. However, I don’t yet understand how it is supposed to be used in practice, when creating data consumers.
Suppose we have an application that inputs RDF data and searches it for all foaf:OnlineAccounts of a certain person. Naturally, these accounts may be of any rdf:type that is an rdfs:subClassOf foaf:OnlineAccount. And these classes are not limited to what FOAF itself provides: I could just as easily define my own ex:OnlineForumAccount. So it appears to me that the only reliable way to interpret such data would be to fetch all ontologies used in the input graph (by dereferencing some of the URIs) and then perform full inference, adding all resulting triples to the graph.
But is this really how people work, or are supposed to work, with RDF?