Detecting high-level changes in RDF/S
Want to detect significant changes. Low-level language: report adds and removes of triples. Hight Level languages define classes of event: change_superclass, pull_up_class, etc. High level changes are closer to the intent of the change maker. High level changes are more concise.
Challenges: granularity (not too high or low), must be able to support a deterministic algorithm to assign triples to high-level changes.
Language defines triples added/removed, and semantic conditions on the triple set either before or after. For determinism, language must be complete and unambiguous in the consumption of changes.
Heuristic changes are those that require matchers, e.g. rename class.
[I have a nagging doubt that their algorithm won't work on a model that includes inference, not just raw triples. don't have a counterexample yet, though]
Algorithm is in theory quadratic, in practice the results are better than that.
Q: applies to OWL as well? A: no, only RDFS
Q: how do you know whether these are the right set of high-level applications? tested by introspection with human experts.
Q: related to refactoring languages in SW eng? A: probably, haven't looked at that.