There was an offline discussion last week concerning the current use
of oa:hasStyle being attached to the Specific Resources which we
should continue online in the larger group.
The concerns that were raised with the current model for style:
* Specific Resource nodes cannot be re-used between annotations, as
someone might attach a Style to it in another annotation, thereby
changing all of the uses of the Specific Resource. If the nodes
cannot be reused, then they're significantly less valuable
(essentially they may as well be blank nodes!)
* The Specific Resources would then identify the section of the
representation, rather than a styled section of the representation.
* Conceptually the style is for the Annotation. It would be cleaner
if it were attached to the Annotation rather than the individual
* It would thus be somewhat easier to ignore for clients that don't
expect to process it.
* The CssValueStyle class is a nasty hack -- it's not a valid CSS
file. If we're just creating our own hack, we can do it in a
different way just as easily.
And after some discussion the proposed change was:
Instead of attaching to the Specific Resource, oa:hasStyle would
attach to the Annotation. The object of the relationship would be a
valid CSS file that describes all of the stylistic features for the
resources that are part of the annotation graph.
A diagram form is attached.
There is a slight loss in functionality if we adopt this approach, as
any alternative style format would need a means to address the
resources in the annotation graph. Thus it would be more difficult to
use, for example, XSLT as a styling language.
The current requirements from the use cases and stakeholders are only
for describing stylistic or rendering features, rather than arbitrary
transformations. For example, red strike-through and yellow
background is required, but we don't have a strong case for
transformation of arbitrary XML into HTML or JPEG into PNG.