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: how to add Style Properties to XCF?


WebCGM TC,

Feedback welcome, if you have a preference...

I think we decided today to add Style Properties to XCF (correct?).  Please 
state your preferences about...   How should we add them?

Alt.1: to each element in XCF, add 9 attributes with names as in the SP 
table of 5.7.5.
Alt.2:  to each element in XCF, add 1 attribute which is a string of 2n 
wsp-separated simple string-valued items (names and  values).

RECOMMENDATION:  Alt.1

DISCUSSION:

For reference, the method in 5.7.5 is setStyleProperty(name, value), where 
name and value are type WebCGMString.  Discussion and examples....

Alt.2 would look like, for grobject (4.4) example:
==========
content
----
<grobject  apsid="myObj1"  styleProperties="stroke-weight  50% 
stroke-color  #FF0000" ...>

DTD
-----
<!ENTITY % grobjectEXT "" >
<!ENTITY % grobjectAttEXT "" >
<!ELEMENT grobject ( linkuri %grobjectEXT; )* >
<!ATTLIST grobject
                     apsid         ID           #REQUIRED
                     screentip     CDATA        #IMPLIED
                     region        CDATA        #IMPLIED
                     viewcontext   CDATA        #IMPLIED
                     visibility    ( on | off | inherit) #IMPLIED
                     interactivity ( on | off | inherit) #IMPLIED
                     styleProperties   CDATA        #IMPLIED
                     %grobjectAttEXT;
 >

and would contain some verbiage about the structure of the string  [(name 
wsp value wsp)+].  Such verbiage could be centralized in 4.10, "Attribute 
encoding", and referenced from each XCF element's section.

Alt.1 would look like:
==========
content
-----
<grobject  apsid="myObj1"  stroke-weight="50%"  stroke-color="#FF0000" ...>

DTD
-----
On every element of XCF, the single styleProperty line of Alt.2 would be 
replaced by 9 lines (if we keep text-font, 8 otherwise):

<!ENTITY % grobjectEXT "" >
<!ENTITY % grobjectAttEXT "" >
<!ELEMENT grobject ( linkuri %grobjectEXT; )* >
<!ATTLIST grobject
                     apsid         ID           #REQUIRED
                     screentip     CDATA        #IMPLIED
                     region        CDATA        #IMPLIED
                     viewcontext   CDATA        #IMPLIED
                     visibility    ( on | off | inherit) #IMPLIED
                     interactivity ( on | off | inherit) #IMPLIED
                     background-color     CDATA        #IMPLIED
                     character-height     CDATA        #IMPLIED
                     fill-color     CDATA        #IMPLIED
                     intensity     CDATA        #IMPLIED
                     stroke-color     CDATA        #IMPLIED
                     stroke-weight     CDATA        #IMPLIED
                     text-color     CDATA        #IMPLIED
                     text-font     CDATA        #IMPLIED
                     raster-intensity     CDATA        #IMPLIED 
%grobjectAttEXT;
 >

and would pretty much just point to the table in 5.7.5 for contents of CDATA.

Alt.1 seems more natural from the usage perspective, though it is uglier 
from the DTD-definition perspective, having to add 9 lines to every element 
in the DTD.  (That could be mitigated somewhat -- the DTD of XCF could also 
define an entity and put it in place of the 9 lines.)

Preferences?

-Lofton.






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