-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
What should be in the spec for affordances? #143
Comments
Here is a possible first list for each (not necessarily in this order):
The open question in my mind whether this WG would have to engage into lower level specifications around item (4) above. (Eg, whether to define some API-s to describe text search over several resources.) My personal opinion is that this should not be done by this WG, but it is worth considering and have a consensus on it. Anything else? |
I personally see the affordances as a way to identify the technical gap between what the Web offers today and what’s needed for Web publications, but not necessarily as something that requires being specified as normative statements. @iherman: you’re suggesting to define affordances as normative (RFC2119) statements; do you mean that these should eventually be made into a rec track deliverable? If yes, I would be wary of adopting this top-down approach (which –to the extent of my limited knowledge– doesn’t have much precedent in Web standardization). If have a collection of statements along the lines of “A UA MUST do <insert your fave high-level affordance>”, we put the onus on the UA to implement Web pub as an all-or-nothing beast, which isn’t likely to happen with Web browsers. Also, keep in mind that we’ll have to define an error-handling model: what will happen when a UA doesn’t implement affordance X which is a MUST? Is there any usefulness in declaring a UA “Web publication conformant” (or not)? I think that even if one of the MUSTs is missing, there could still be a variety of things that can be useful for the end user. In my opinion, the definition of affordances are "just" an intermediary step, after the use cases, and can be loosely described. With a list of affordances on hand, we’ll be able to better identify the technical pieces that are missing in the Web, and how to articulate these with one another, and with the current Web standards. That will hopefully give us a list of technical things to specify, where technical things could be extensions to current specs (app manifest members, CSS feature queries, CSS properties) or new specs altogether (API, declarative data structures). It is also my expectation (and my hope) that these technical things will be low-level. Some of them will have to be defined by this WG, some of them should better be handled by other WGs (CSS) but pushed and driven by us (by us read @dauwhe 😄). A set of low-level, as-independent-as-possible things is easier to implement, easier to work around individually, and increase the likeliness of adoption and usefulness to the Web. So, to answer the original question, I think we need to define affordances informatively, but as precisely as possible, and perhaps identify which are critical, and which are nice to have. |
@rdeltour I find your arguments compelling, so I am not strongly in favour of the normative/informative notions in the RFC sense. But (as you say) we must try to be as prescriptive as possible every step of the way. |
Would it not make sense to distinguish between specific metadata (in the manifest or in the primary resources) which are an integral part of the WP and which enable to implement specific affordances. For example on the basis of an exhaustive list of primary resources and a default reading order the notion of "moving forward and backward" is pretty obvious. Should we perhaps have a separate category prerequisites in our template that could describe the data/metadata requirements for a specific affordance? I could imagine that for many affordances the decisive prerequisite would be that the WP can be treated as a logical unit. |
Yes I agree with "we should describe the expected behaviour of a UA" and metadata should be separate from affordance but some of them do have some relationship or dependency. I think the prerequisities is a good idea to avoid conflict for example some metadata is not a MUST but the affordance which depends on the metadata is a MUST. I also think this could be a step further discussion once we have the template since it sounds more like discussion about which part of affordance is a MUST which is a SHOULD. In terms of if we need to define if an Affordance X is a MUST, I think we could have part of Affordance X to be a MUST. For example when a UA is switching to publication mode it MUST let user know about it. And provide some way to switch back. On the other hand, pagination will not be a MUST. If UA can not support pagination mode well it can let user scroll. However, I feel we don't need to emphasis normative too much we can put it inside each of feature we defined at here. Considering above comments, here is my suggestion for template of each feature (base on #143 (comment), basically almost same) for discussion
|
@rakutenjeff, my only disagreement with what you propose is the choice of normative vs. informative. We must be very careful about normativeness (see also a previous comment). Describing a feature normatively when the implementation of the feature is not normative sounds counterintuitive to me. To make my proposal clear(er), I have taken your list and slightly modified it:
I am not sure we will many (if at all?) normatively required affordances. You cite the affordance whereby a User Agent MUST provide information to the User that it operates in publishing mode; this may be one of those indeed. I must admit nothing else comes to my mind. |
Thanks @iherman . Yes I was confused between normative and informative sometime :) . I totally agree with the current proposal. I don't have anything more to add but one thing I want to be a bit more clear is it could be some affordance feature itself is not a MUST but if UA is going to support this affordance, some of sub item would become MUST . It could also depend on scope of each affordance item though. That is also the reason I was trying to avoid put normative to a very emphasis position. |
@rakutenjeff Can you give an example for:
please? I think that this more a matter of mutual dependencies of affordances; this should be documented. These do not have an effect on the normativeness of a statement or not, except that if the "larger" affordance is a MUST in the spec, then the dependency should also be a MUST. It would be good if we had a TF agreement on the proposal, though, so that we can move on to individual affordances. ping @mteixeira-wwn @jmulliken |
@iherman For example here https://github.com/w3c/wpub/blob/master/index.html#L1152 of the individual item |
@rakutenjeff those texts are all early drafts and must be reviewed also in this respect. The discussion we just had will help straightening those out, hopefully... |
Got it. Thanks @iherman |
The reason we want to give an example of affordance item in #4 is to give visualized information to reader about what we want to define in this specific affordance item. |
Affordances addressed in the UCR document, as mentioned in the meeting on Feb 4 2019, I am closing this issue. |
Before starting a discussion on the individual affordances' issues, the WG should have a consensus on what exactly is to be defined for each of those.
The text was updated successfully, but these errors were encountered: