Re: CDR: Appendix B lacks testable conformance criteria for user agents

Maciej Stachowiak <mjs@apple.com> wrote on 03/20/2006 01:17:32 AM:

> 
> On Mar 13, 2006, at 6:55 AM, Steve K Speicher wrote:
> 
> > Maciej Stachowiak <mjs@apple.com> wrote on 03/08/2006 05:51:51 PM:
> >> I think it would have to define what counts as a profiled subset. May
> >> anyone define the profile?
> > Sure
> >> Does it have to be defined by a W3C spec?
> > No doesn't have to be, as you see we reference ECMA standards from our
> > WICD profiles.
> >> Does DOM Level 2 Core count as a profiled subset of DOM Level 3 Core?
> > Can DOM Level 2 Core applications run in a DOM Level 3 Core UA, 
> > then yes.
> >> Does SVG uDOM (the core-related part) count?
> > If criteria above applies, then yes.
> >> I think this criterion  is still not testable as written.
> >
> > A profiled subset, is a reduced set of capabilities from the original
> > specification.  Meaning, that the subset doesn't add any new features,
> > only strips them out.  Content that conforms to the profiled subset 
> > must
> > successfully be processed/rendered by a compliant UA of the full/ 
> > superset
> > specification, in other words the full UA doesn't need to know its 
> > subset
> > content.
> >
> > So conformance statements, in addition to the above, could be:
> >
> > UA Conformance:
> >   "A conformant user agent of a superset profile specification must
> > process subset profile content as if it is the superset profile 
> > content."
> > Profile Conformance:
> >   "A conformant subset profile must not add new features from their
> > corresponding superset specification."
> >   "A conformant profile must define any dependent subset profiles."
> 
> All right, in that case I definitely disagree with this resolution. 
> The conformance criterion you have stated is vacuous, because any UA 
> developer could define any subset he or she wishes, perhaps the empty 
> subset, or the subset that includes nothing but the "Document" 
> interface with no properties, or the subset that includes the "Node" 
> interface. This makes the criterion useless for interoperability. It 
> is also not testable. There's no test of this criterion that you 
> could write that I couldn't declare inapplicable just by publishing 
> some subset profile. Further, your proposal to forbid adding new 
> features to profiles because new features can always be defined 
> separate from the subset profile or just implemented and not 
> specified anywhere.
> 

First, I understand the issue regarding subsetting to nothing.  The intent 
is to not make frameworks from different profiles interoperable, but to 
provide a basis in which profiles can be built and content conforming to 
the profile (which also conforms to the framework) can interoperate with 
profile-compliant UAs.

Second, I wasn't stating that we should forbid DOM extensions in general. 
I was stating that if a profile subsets another profile, it can't add new 
features from the profile it has been subset from.  If it does, it is not 
a subset profile but a derivative profile.  The intent is that content 
based on the subset profile can be successfully rendered by a UA that 
conforms to the profile it was subset from.

Perhaps it would be useful to define a minimal DOM3Core/Events 
profile/subset within the CDR Framework?  That way there would be a 
guarantee of at least a set of capability.  Though this may not be 
desirable as defining this could be problematic and time-consuming.  It's 
just important that a profile specifies it.

Using your argument, it could be possible that company XYZ defines a 
DOM3Core/Events profile that contains nothing.  Then they just have to 
implement the Windows object spec.  Then company XYZ could declare that 
their UA is "CDR Framework"-compliant.  Agree not to useful.  At what 
lengths should the CDF WG and W3C go to ensure this doesn't happen? 
Perhaps it's more important that the profiles W3C WGs produce are of more 
widespread usefulness.

> If you disagree, please tell me what test I could write to verify 
> conformance with this requirement.

See the profile's conformance criteria.  As you can't test a framework 
without instantiating it with a profile.  A way of thinking of the 
conformance criteria is that is accumulates from the framework to the 
profile.  For example, in the case of the WICD Mobile profile: UAs must 
conform to CDRF + WICD Core + WICD Mobile.
 
> Please register my disagreement (or better yet, reconsider the issue 
> and either remove this requirement or make it meaningful).

registered

> >>>> "Conformant user agent must implement DOM Level 3 Event 
> >>>> interfaces."
> For the same reasons as above, please register my disagreement or 
> reconsider the issue.
> 

registered

> >> I am satisfied with the specific resolutions for these comments, but
> >> I think Appendix B is still problematic. It sounds like the only
> >> conformance requirements will be requirements to implement other
> >> specs (L3 Core, L3 Events, Window). Maybe that's ok to publish, but
> >> it doesn't sound all that useful to have a spec that is just a
> >> laundry list of other specs.
> >
> > When we started our specification, it contained a bit more content. 
> > Though
> > as you can see with parent-to-child DOM access, these have been 
> > moved to
> > other (more appropriate) places.  Therefore, having a list of 
> > dependent
> > specifications is valuable in building a consistent set of profiles 
> > upon a
> > common framework.  Having a small specification is not a bad thing.
> 
> Agreed! But I think it may be that the only remaining meaningful 
> normative requirement on user agents is to implement Window. I think 
> it might be more helpful to recast CDR as a set of requirements for 
> CDR profiles, rather than a set of requirements for user agents. So 
> WICD Core would be a CDR-compliant profile, and UAs could conform to 
> WICD Core or not - we wouldn't have to worry about whether a UA 
> conforms to CDR.
> 

But what good would it be to require Window and not DOM3Core 
(Document,Node,Element,...)?  The intent of CDRF is to be the basis of 
other profiles that may not just be XHTML and SVG.  So the WG feels that 
there is still value in listing the prerequisite specifications and 
defining conformance criteria for those.

Regards,
Steve Speicher on behalf of the CDF WG

Received on Tuesday, 21 March 2006 14:29:28 UTC