OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

cgmo-webcgm message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re[5]: [cgmo-webcgm] ISSUE: what does 'get..' return? [2 of 2]


Hi Lofton,

See inline...

Monday, May 9, 2005, 9:22:21 AM, Lofton wrote:

LH> Hi Benoit,

LH> I have gotten back to this thread, and re-read the whole
LH> thing. After reading the last half-dozen messages between you and
LH> Dieter, I think we actually have answered the initial question of
LH> the thread! At least, it seems that everyone can live with this
LH> answer...

LH> Initial question was:  What does getAppStructureAttr return
LH> for'interactivity', if no value is explicitly specified (WebCGM
LH> instance,applied XCF, or subsequent DOM transactions), and given
LH> that there is no specified default (i.e., in the DTD-like sense)? 

LH> Consensus(?):  It seems, from the thread, that everyone can accept
LH> "empty string". 
I think we should make this a consensus... going once, twice ...

LH> There are a couple of peripheral and IMO orthogonal
LH> questions, like "Should we add 'inherit' to the list of settable
LH> values of...?"
Dieter was asking for this. I think that the implementation cost of
adding 'inherit' is quite low. Forrest also mentioned 'inherit' some
time ago. So let's add it in. Any objections?

Proposal 'visibility' and 'interactivity':
Initial value: on
Applies to: layer, grobject, para, subpara 
Inherited: yes 
Valid values:  on, off, inherit

Note: the XCF DTD has to be updated.

I'm not proposing 'inherit' on other style properties such as
'intensity', 'stroke-color' etc... I think that's a separate issue.

LH> I actually agreed with almost everything that you said about
LH> peripheral issues in the thread, but this puzzled me a bit and
LH> perhaps you can clarify...

LH> At 09:21 AM 4/28/2005 -0400, Benoit Bezaire wrote:
LH> [...]
LH> I don't think we should re-invent an inheritance model with 1,2,3,4.
LH> It is already defined in the spec, please read: 5.4.1.1 Specified
LH> values. That particular wording talks about the CSS style attribute
LH> which should be replaced to WebCGM Style attributes (or something
LH> equivalent), but the concept is there.


LH> Actually, I didn't think I was re-inventing anything. 
LH> Rather, Ithought I was explaining what I understand the spec says
LH> (and has saidfor quite some time, as I recall).  To refresh, here
LH> is a quote fromthe spec (about visibility, because it has a clear
LH> parallel in SVG) andmy 1,2,3,4...The spec says in 3.2.2.9: 
LH> Initial value: on 

LH> Applies to: layer, grobject, para, subpara 

LH> Inherited: yes 

LH> Valid values:  on, off


LH> And my interpretation, in the context of the current
LH> question, was(w/ corrected terminology): 

LH> 1.) if explicitly specified value on particular node, that is
LH> it forboth display and DOM query (no dispute here); 

LH> 2.) if no explicitly specified value on particular node,
LH> including onany ancestors, then "Initial value" is used for
LH> display("Initial value: on" rules); 

LH> 3.) if no explicitly specified value on particular node, but
LH> expliciton an ancestor, then that ancestor value used for
LH> display("Inherited: yes" rules, overrides initial value); 

LH> 4.) if no explicitly specified value on particular node,
LH> DOM"getAppStructureAttr" query returns empty string (standard DOM
LH> rule)

LH> If we reverse the order of #2 and #3, we get:
Yes, we have to switch #2 and #3.

LH> 1.) if explicitly specified value on particular node, that is
LH> it for both display and DOM query (no dispute here);
LH> 2.) if no explicitly specified value on particular node, but
LH> explicit on an ancestor, then that ancestor value used for display
LH> ("Inherited:yes" rules). 
LH> 3.) if no explicitly specified value on particular node,
LH> including on any ancestors, then "Initial value" is used for
LH> display("Initial value: on" rules); 
LH> 4.) if no explicitly specified value on particular node,
LH> DOM"getAppStructureAttr" query returns empty string (standard DOM
LH> rule)

LH> Isn't 1-3 above now the same as 1-3 in 5.4.4.1?
Yes, very close.

LH> (I think revised 1-4 above better and more cleanly expresses what
LH> I was trying to get at.)  Well, not exactly.  5.4.1.1, #2 says
LH> that the Computed Value inherits.  As I understand it, CV would be
LH> the same as Specified Value for 'visibility' (and 'inheritance').
Not 100%, but I don't think it makes a big difference, ex:

BEGAPS 'one'
  ATTR 'visibility' 'on'
  BEGAPS 'two'
    ATTR 'visibility' 'inherit'
    BEGAPS 'three'
    ENDAPS
  ENDAPS
ENDAPS

- 'one' has a clearly specified value of 'on', ok, the APS is visible.
- 'two' has a clearly specified value of 'inherit', but it's 'computed
value' (this is a CSS term) is 'on' (came from 'one'), 'two' is also
visible.
- 'three does not have a specified value, so it inherits the 'computed
value' of its parent which is 'on', not 'inherit'. (small distinction)

LH> Now ... there is a bit more in 5.4 than just that list of
LH> 5.4.4.1. There is the issue of "inherit", which 5.4.2.1 says may
LH> be a valid value of every "style attribute".  At the least, I have
LH> my doubts about the necessity of adding "inherit" values, both to
LH> the proper WebCGM ApsAttrs ('visibility', 'interactivity', ...), as
LH> well as the for-DOM-invented "style attributes" (stroke-weight,
LH> intensity, fill-color, ... ). 

LH> I'm not taking a position quite yet on whether the
LH> specifiable "inherit" value is desirable or not, for some
LH> "style attributes", for some ApsAttrs, etc.  There is an
LH> interesting use case that both Dieter and I each proposed
LH> separately (for 'visibility').  (Question.  Is it interesting
LH> enough to justify the cost of implementing it?).  However, that use
LH> case aside, I am I am not yet convinced that the value "inherit"
LH> adds anything to the basic inheritance model or improves its
LH> working, especially for the ApsAttrs like 'visibility'.  My doubt
LH> is in fact reinforced by these words from 5.4.2.1:  "...the inherit
LH> value can be used to strengthen inherited values."  (Strengthen?)
I think the need for 'inherit' on 'visibility' and 'interactivity' is
demonstrated by Dieter's use case (i.e., XCF). It's true that we have
a missing feature there. If that feature will get use frequently, I
honestly don't know? But the implementation cost is very small, so
let's add it.

LH> (Btw, it seems that where Dieter really wants "inherit" is
LH> in an XCF use case.  In DOM scripts, it looks like we got all
LH> necessary capabilities by properly applying the inheritance model,
LH> and sometimes using the removeAppStructureAttr method.  So an
LH> explicit "inherit" value in the XCF would be used to accomplish the
LH> same thing that you can do with the removeAppStructureAttr method
LH> in a DOMscript.  Is this correct?)
Yes. But I think we should allow for setAppStructureAttr("visibility",
"inherit"), or else the users will be asking questions (i.e, why is it
a valid value in the XCF and not in the DOM API).

It seems like we are close to closing down this thread and these
issues.

-- 
 Benoit   mailto:benoit@itedo.com

 
LH> Regards,
LH> -Lofton.





[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]