include/CSSParser/CSSParser.hpp

Go to the documentation of this file.
00001 #ifndef hpp_CPP_CSSParser_CPP_hpp
00002 #define hpp_CPP_CSSParser_CPP_hpp
00003 
00004 // We need CSS unit declaration
00005 #include "../CSS/CSSUnit.hpp"
00006 
00007 namespace CSS
00008 {
00010     struct MediaGroup
00011     {
00012         enum Group
00013         {
00014             Aural       =     0x01,     
00015             Visual      =     0x02,     
00016             Paged       =     0x04,     
00017             Interactive =     0x08,     
00018 
00019             All         =     0x0F,
00020             VisualInteractive =     0x0A,     
00021             VisualPaged       =     0x06,     
00022         } group;
00023     };
00024 
00025     struct GenericProperty
00026     {
00028         enum PropertyID
00029         {                               
00030             Azimuth                     =   0x01,
00031             Background                  =   0x02,
00032             BackgroundAttachment        =   0x03,
00033             BackgroundColor             =   0x04,
00034             BackgroundImage             =   0x05,
00035             BackgroundPosition          =   0x06,
00036             BackgroundPositionX         =   0x07,
00037             BackgroundPositionY         =   0x08,
00038             BackgroundRepeat            =   0x09,
00039             Behavior                    =   0x0A,
00040             Border                      =   0x0B,
00041             BorderBottom                =   0x0C,
00042             BorderBottomColor           =   0x0D,
00043             BorderBottomStyle           =   0x0E,
00044             BorderBottomWidth           =   0x0F,
00045             BorderCollapse              =   0x10,
00046             BorderColor                 =   0x11,
00047             BorderLeft                  =   0x12,
00048             BorderLeftColor             =   0x13,
00049             BorderLeftStyle             =   0x14,
00050             BorderLeftWidth             =   0x15,
00051             BorderRight                 =   0x16,
00052             BorderRightColor            =   0x17,
00053             BorderRightStyle            =   0x18,
00054             BorderRightWidth            =   0x19,
00055             BorderSpacing               =   0x1A,
00056             BorderStyle                 =   0x1B,
00057             BorderTop                   =   0x1C,
00058             BorderTopColor              =   0x1D,
00059             BorderTopStyle              =   0x1E,
00060             BorderTopWidth              =   0x1F,
00061             BorderWidth                 =   0x20,
00062             Bottom                      =   0x21,
00063             CaptionSide                 =   0x22,
00064             Clear                       =   0x23,
00065             Clip                        =   0x24,
00066             Color                       =   0x25,
00067             Content                     =   0x26,
00068             CounterIncrement            =   0x27,
00069             CounterReset                =   0x28,
00070             Cue                         =   0x29,
00071             CueAfter                    =   0x2A,
00072             CueBefore                   =   0x2B,
00073             Cursor                      =   0x2C,
00074             Direction                   =   0x2D,
00075             Display                     =   0x2E,
00076             Elevation                   =   0x2F,
00077             EmptyCells                  =   0x30,
00078             Filter                      =   0x31,
00079             Float                       =   0x32,
00080             Font                        =   0x33,
00081             FontFamily                  =   0x34,
00082             FontSize                    =   0x35,
00083             FontSizeAdjust              =   0x36,
00084             FontStretch                 =   0x37,
00085             FontStyle                   =   0x38,
00086             FontVariant                 =   0x39,
00087             FontWeight                  =   0x3A,
00088             Height                      =   0x3B,
00089             ImeMode                     =   0x3C,
00090             IncludeSource               =   0x3D,
00091             LayerBackgroundColor        =   0x3E,
00092             LayerBackgroundImage        =   0x3F,
00093             LayoutFlow                  =   0x40,
00094             LayoutGrid                  =   0x41,
00095             LayoutGridChar              =   0x42,
00096             LayoutGridCharSpacing       =   0x43,
00097             LayoutGridLine              =   0x44,
00098             LayoutGridMode              =   0x45,
00099             LayoutGridType              =   0x46,
00100             Left                        =   0x47,
00101             LetterSpacing               =   0x48,
00102             LineBreak                   =   0x49,
00103             LineHeight                  =   0x4A,
00104             ListStyle                   =   0x4B,
00105             ListStyleImage              =   0x4C,
00106             ListStylePosition           =   0x4D,
00107             ListStyleType               =   0x4E,
00108             Margin                      =   0x4F,
00109             MarginBottom                =   0x50,
00110             MarginLeft                  =   0x51,
00111             MarginRight                 =   0x52,
00112             MarginTop                   =   0x53,
00113             MarkerOffset                =   0x54,
00114             Marks                       =   0x55,
00115             MaxHeight                   =   0x56,
00116             MaxWidth                    =   0x57,
00117             MinHeight                   =   0x58,
00118             MinWidth                    =   0x59,
00119             MozBinding                  =   0x5A,
00120             MozBorderRadius             =   0x5B,
00121             MozBorderRadiusTopleft      =   0x5C,
00122             MozBorderRadiusTopright     =   0x5D,
00123             MozBorderRadiusBottomright  =   0x5E,
00124             MozBorderRadiusBottomleft   =   0x5F,
00125             MozBorderTopColors          =   0x60,
00126             MozBorderRightColors        =   0x61,
00127             MozBorderBottomColors       =   0x62,
00128             MozBorderLeftColors         =   0x63,
00129             MozOpacity                  =   0x64,
00130             MozOutline                  =   0x65,
00131             MozOutlineColor             =   0x66,
00132             MozOutlineStyle             =   0x67,
00133             MozOutlineWidth             =   0x68,
00134             MozUserFocus                =   0x69,
00135             MozUserInput                =   0x6A,
00136             MozUserModify               =   0x6B,
00137             MozUserSelect               =   0x6C,
00138             Orphans                     =   0x6D,
00139             Outline                     =   0x6E,
00140             OutlineColor                =   0x6F,
00141             OutlineStyle                =   0x70,
00142             OutlineWidth                =   0x71,
00143             Overflow                    =   0x72,
00144             OverflowX                   =   0x73,
00145             OverflowY                   =   0x74,
00146             Padding                     =   0x75,
00147             PaddingBottom               =   0x76,
00148             PaddingLeft                 =   0x77,
00149             PaddingRight                =   0x78,
00150             PaddingTop                  =   0x79,
00151             Page                        =   0x7A,
00152             PageBreakAfter              =   0x7B,
00153             PageBreakBefore             =   0x7C,
00154             PageBreakInside             =   0x7D,
00155             Pause                       =   0x7E,
00156             PauseAfter                  =   0x7F,
00157             PauseBefore                 =   0x80,
00158             Pitch                       =   0x81,
00159             PitchRange                  =   0x82,
00160             PlayDuring                  =   0x83,
00161             Position                    =   0x84,
00162             Quotes                      =   0x85,
00163             Replace                     =   0x86,
00164             Richness                    =   0x87,
00165             Right                       =   0x88,
00166             RubyAlign                   =   0x89,
00167             RubyOverhang                =   0x8A,
00168             RubyPosition                =   0x8B,
00169             SetLinkSource               =   0x8C,
00170             Size                        =   0x8D,
00171             Speak                       =   0x8E,
00172             SpeakHeader                 =   0x8F,
00173             SpeakNumeral                =   0x90,
00174             SpeakPunctuation            =   0x91,
00175             SpeechRate                  =   0x92,
00176             Stress                      =   0x93,
00177             ScrollbarArrowColor         =   0x94,
00178             ScrollbarBaseColor          =   0x95,
00179             ScrollbarDarkShadowColor    =   0x96,
00180             ScrollbarFaceColor          =   0x97,
00181             ScrollbarHighlightColor     =   0x98,
00182             ScrollbarShadowColor        =   0x99,
00183             Scrollbar3dLightColor       =   0x9A,
00184             ScrollbarTrackColor         =   0x9B,
00185             TableLayout                 =   0x9C,
00186             TextAlign                   =   0x9D,
00187             TextAlignLast               =   0x9E,
00188             TextDecoration              =   0x9F,
00189             TextIndent                  =   0xA0,
00190             TextJustify                 =   0xA1,
00191             TextOverflow                =   0xA2,
00192             TextShadow                  =   0xA3,
00193             TextTransform               =   0xA4,
00194             TextAutospace               =   0xA5,
00195             TextKashidaSpace            =   0xA6,
00196             TextUnderlinePosition       =   0xA7,
00197             Top                         =   0xA8,
00198             UnicodeBidi                 =   0xA9,
00199             UseLinkSource               =   0xAA,
00200             VerticalAlign               =   0xAB,
00201             Visibility                  =   0xAC,
00202             VoiceFamily                 =   0xAD,
00203             Volume                      =   0xAE,
00204             WhiteSpace                  =   0xAF,
00205             Widows                      =   0xB0,
00206             Width                       =   0xB1,
00207             WordBreak                   =   0xB2,
00208             WordSpacing                 =   0xB3,
00209             WordWrap                    =   0xB4,
00210             WritingMode                 =   0xB5,
00211             ZIndex                      =   0xB6,
00212             Zoom                        =   0xB7,
00213 
00214             OverLineHeight              =   0xB8,
00215             Unknown                             ,
00216         };
00217 
00219         struct PropertyType
00220         {
00221             enum Type
00222             {
00223                 AbsoluteSize        =  0x00, 
00224                 Angle               =  0x01, 
00225                 BorderStyle         =  0x02, 
00226                 Hundreds            =  0x03, 
00227                 BorderWidth         =  0x04, 
00228                 Color               =  0x05, 
00229                 Counter             =  0x06, 
00230                 FamilyName          =  0x07, 
00231                 Frequency           =  0x08, 
00232                 GenericFamily       =  0x09, 
00233                 GenericVoice        =  0x0A, 
00234                 Identifier          =  0x0B, 
00235                 Integer             =  0x0C, 
00236                 Length              =  0x0D, 
00237                 MarginWidth         =  0x0E, 
00238                 Number              =  0x0F, 
00239                 PaddingWidth        =  0x10, 
00240                 Percentage          =  0x11, 
00241                 RelativeSize        =  0x12, 
00242                 Shape               =  0x13, 
00243                 String              =  0x14, 
00244                 Time                =  0x15, 
00245                 URI                 =  0x16, 
00246                 SpecificVoice       =  0x17, 
00247                 HVLength            =  0x18, 
00248                 BordersWidth        =  0x19, 
00249                 BordersStyle        =  0x1A, 
00250                 Colors              =  0x1B, 
00251                 MarginsWidth        =  0x1C, 
00252                 PaddingsWidth       =  0x1D,
00253                 TextShadowParams    =  0x1E,
00254 
00255                 GroupValidationLimit =  0x20,
00256                 IndependantValue     =  0x20,
00257 
00258                 Left                =  0x21, 
00259                 Top                 =  0x22, 
00260                 Above               =  0x23, 
00261                 Absolute            =  0x24, 
00262                 Always              =  0x25, 
00263                 Armenian            =  0x26, 
00264                 Attr                =  0x27, 
00265                 Auto                =  0x28, 
00266                 Avoid               =  0x29, 
00267                 Baseline            =  0x2A, 
00268                 Behind              =  0x2B, 
00269                 Below               =  0x2C, 
00270                 BidiOverride        =  0x2D, 
00271                 Blink               =  0x2E, 
00272                 Block               =  0x2F, 
00273                 Bold                =  0x30, 
00274                 Bolder              =  0x31, 
00275                 Both                =  0x32, 
00276                 Bottom              =  0x33, 
00277                 Capitalize          =  0x34, 
00278                 Caption             =  0x35, 
00279                 Center              =  0x36, 
00280                 CenterLeft          =  0x37, 
00281                 CenterRight         =  0x38, 
00282                 Circle              =  0x39, 
00283                 CjkIdeographic      =  0x3A, 
00284                 CloseQuote          =  0x3B, 
00285                 Code                =  0x3C, 
00286                 Collapse            =  0x3D, 
00287                 Compact             =  0x3E, 
00288                 Condensed           =  0x3F, 
00289                 Continuous          =  0x40, 
00290                 Crop                =  0x41, 
00291                 Cross               =  0x42, 
00292                 Crosshair           =  0x43, 
00293                 Decimal             =  0x44, 
00294                 DecimalLeadingZero  =  0x45, 
00295                 Default             =  0x46, 
00296                 Digits              =  0x47, 
00297                 Disc                =  0x48, 
00298                 EResize             =  0x49, 
00299                 Embed               =  0x4A, 
00300                 Expanded            =  0x4B, 
00301                 ExtraCondensed      =  0x4C, 
00302                 ExtraExpanded       =  0x4D, 
00303                 FarLeft             =  0x4E, 
00304                 FarRight            =  0x4F, 
00305                 Fast                =  0x50, 
00306                 Faster              =  0x51, 
00307                 Fixed               =  0x52, 
00308                 Georgian            =  0x53, 
00309                 Hebrew              =  0x54, 
00310                 Help                =  0x55, 
00311                 Hidden              =  0x56, 
00312                 Hide                =  0x57, 
00313                 High                =  0x58, 
00314                 Higher              =  0x59, 
00315                 Hiragana            =  0x5A, 
00316                 HiraganaIroha       =  0x5B, 
00317                 Icon                =  0x5C, 
00318                 Inherit             =  0x5D, 
00319                 Inline              =  0x5E, 
00320                 InlineTable         =  0x5F, 
00321                 Inside              =  0x60, 
00322                 Invert              =  0x61, 
00323                 Italic              =  0x62, 
00324                 Justify             =  0x63, 
00325                 Katakana            =  0x64, 
00326                 KatakanaIroha       =  0x65, 
00327                 Landscape           =  0x66, 
00328                 LeftSide            =  0x67, 
00329                 Leftwards           =  0x68, 
00330                 Level               =  0x69, 
00331                 Lighter             =  0x6A, 
00332                 LineThrough         =  0x6B, 
00333                 ListItem            =  0x6C, 
00334                 Loud                =  0x6D, 
00335                 Low                 =  0x6E, 
00336                 Lower               =  0x6F, 
00337                 LowerAlpha          =  0x70, 
00338                 LowerGreek          =  0x71, 
00339                 LowerLatin          =  0x72, 
00340                 LowerRoman          =  0x73, 
00341                 Lowercase           =  0x74, 
00342                 LTR                 =  0x75, 
00343                 Marker              =  0x76, 
00344                 Medium              =  0x77, 
00345                 Menu                =  0x78, 
00346                 MessageBox          =  0x79, 
00347                 Middle              =  0x7A, 
00348                 Mix                 =  0x7B, 
00349                 Move                =  0x7C, 
00350                 NResize             =  0x7D, 
00351                 Narrower            =  0x7E, 
00352                 NeResize            =  0x7F, 
00353                 NoCloseQuote        =  0x80, 
00354                 NoOpenQuote         =  0x81, 
00355                 NoRepeat            =  0x82, 
00356                 None                =  0x83, 
00357                 Normal              =  0x84, 
00358                 Nowrap              =  0x85, 
00359                 NwResize            =  0x86, 
00360                 Oblique             =  0x87, 
00361                 Once                =  0x88, 
00362                 OpenQuote           =  0x89, 
00363                 Outside             =  0x8A, 
00364                 Overline            =  0x8B, 
00365                 Pointer             =  0x8C, 
00366                 Portrait            =  0x8D, 
00367                 Pre                 =  0x8E, 
00368                 Relative            =  0x8F, 
00369                 Repeat              =  0x90, 
00370                 RepeatX             =  0x91, 
00371                 RepeatY             =  0x92, 
00372                 Right               =  0x93, 
00373                 RightSide           =  0x94, 
00374                 Rightwards          =  0x95, 
00375                 RTL                 =  0x96, 
00376                 RunIn               =  0x97, 
00377                 SResize             =  0x98, 
00378                 Scroll              =  0x99, 
00379                 SeResize            =  0x9A, 
00380                 SemiCondensed       =  0x9B, 
00381                 SemiExpanded        =  0x9C, 
00382                 Separate            =  0x9D, 
00383                 Show                =  0x9E, 
00384                 Silent              =  0x9F, 
00385                 Slow                =  0xA0, 
00386                 Slower              =  0xA1, 
00387                 SmallCaps           =  0xA2, 
00388                 SmallCaption        =  0xA3, 
00389                 Soft                =  0xA4, 
00390                 SpellOut            =  0xA5, 
00391                 Square              =  0xA6, 
00392                 Static              =  0xA7, 
00393                 StatusBar           =  0xA8, 
00394                 Sub                 =  0xA9, 
00395                 Super               =  0xAA, 
00396                 SwResize            =  0xAB, 
00397                 Table               =  0xAC, 
00398                 TableCaption        =  0xAD, 
00399                 TableCell           =  0xAE, 
00400                 TableColumn         =  0xAF, 
00401                 TableColumnGroup    =  0xB0, 
00402                 TableFooterGroup    =  0xB1, 
00403                 TableHeaderGroup    =  0xB2, 
00404                 TableRow            =  0xB3, 
00405                 TableRowGroup       =  0xB4, 
00406                 Text                =  0xB5, 
00407                 TextBottom          =  0xB6, 
00408                 TextTop             =  0xB7, 
00409                 Transparent         =  0xB8, 
00410                 UltraCondensed      =  0xB9, 
00411                 UltraExpanded       =  0xBA, 
00412                 Underline           =  0xBB, 
00413                 UpperAlpha          =  0xBC, 
00414                 UpperLatin          =  0xBD, 
00415                 UpperRoman          =  0xBE, 
00416                 Uppercase           =  0xBF, 
00417                 Visible             =  0xC0, 
00418                 WResize             =  0xC1, 
00419                 Wait                =  0xC2, 
00420                 Wider               =  0xC3, 
00421                 XFast               =  0xC4, 
00422                 XHigh               =  0xC5, 
00423                 XLoud               =  0xC6, 
00424                 XLow                =  0xC7, 
00425                 XSlow               =  0xC8, 
00426                 XSoft               =  0xC9,
00427 
00428                 // Value below are other browser specific but interesting to implement
00429                 Enabled             =  0xCA,
00430                 Disabled            =  0xCB,
00431                 ReadOnly            =  0xCC,
00432                 WriteOnly           =  0xCD,
00433                 ReadWrite           =  0xCE,
00434                 Element             =  0xCF,
00435                 Elements            =  0xD0,
00436                 AllElements         =  0xD1,
00437                 Toggle              =  0xD2,
00438                 Ellipsis            =  0xD3,
00439                 Clip                =  0xD4,
00440 
00441                 NotSupported        =  0xFF,
00442                 Compound        =  0x80000000,
00443             } type;
00444         };
00445 
00447         enum Application
00448         {
00449             BlockLevel          =   0x00000001,   
00450             Replaced            =   0x00000002,   
00451             Table               =   0x00000004,   
00452             Positioned          =   0x00000008,   
00453             TableCaption        =   0x00000010,   
00454             BeforeAfter         =   0x00000020,   
00455             TableCell           =   0x00000040,   
00456             GeneratedContent    =   0x00000080,   
00457             NonReplacedInline   =   0x00000100,   
00458             Column              =   0x00000200,   
00459             ListItemDisplay     =   0x00000400,   
00460             MarkerDisplay       =   0x00000800,   
00461             PageContext         =   0x00001000,   
00462             InlineTable         =   0x00002000,   
00463             TableHeader         =   0x00004000,   
00464             InlineLevel         =   0x00008000,   
00465             Row                 =   0x00010000,   
00466             InputAndTextArea    =   0x00020000,   
00467 
00468             PosAndGen           =   0x00000088,   
00469             NonRIAndColumn      =   0x00000300,   
00470             NonRIAndTable       =   0x00000104,   
00471             NonRIAndRow         =   0x00010100,   
00472 
00473             AllBut              =   0x80000000,   
00474             All                 =   0x7FFFFFFF,   
00475         };
00476 
00478         enum PercentageReference
00479         {
00480             NotApplicable           = 0x00,     
00481             OwnBoxSize              = 0x01,     
00482             ContainingBlockHeight   = 0x02,     
00483             ContainingBlockWidth    = 0x03,     
00484             ParentFontSize          = 0x04,     
00485             OwnFontSize             = 0x05,     
00486             OwnLineHeight           = 0x06,     
00487             Inherited               = 0x07,     
00488             ContainingBlockSize     = 0x08,     
00489             SpeechRateProp          = 0x09,     
00490             Compound                = 0xFF,     
00491         };
00492 
00494         const tchar *           name;
00496         const tchar *           description;
00498         PropertyID              propertyID;
00499 
00501         const tchar *           defaultValue;  
00503         MediaGroup::Group       mediaGroup;
00505         uint32                  application;
00507         bool                    inherited;
00509         PercentageReference     percentageReference;
00511         PropertyType::Type      type[22];        
00512     };
00513 
00514 #define PropCompound(X) (GenericProperty::PropertyType::Type)(GenericProperty::PropertyType::Compound | GenericProperty::X)
00515 
00516     const GenericProperty allowedProperties[] = 
00517     {                                                                                                                                                                                                                                                                                                       
00518         { "azimuth"                       , "Radial position of listening plane" ,              GenericProperty::Azimuth ,              "center",               MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Angle, GenericProperty::PropertyType::LeftSide, GenericProperty::PropertyType::FarLeft, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::CenterLeft, GenericProperty::PropertyType::Center, GenericProperty::PropertyType::CenterRight, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::FarRight, GenericProperty::PropertyType::RightSide, GenericProperty::PropertyType::Behind, GenericProperty::PropertyType::Leftwards, GenericProperty::PropertyType::Rightwards, GenericProperty::PropertyType::Inherit }}, 
00519         { "background"                    , "Shorthand for background styling" ,                GenericProperty::Background ,           NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::Compound                , { GenericProperty::PropertyType::Inherit, PropCompound(BackgroundColor),  PropCompound(BackgroundImage), PropCompound(BackgroundRepeat), PropCompound(BackgroundAttachment), PropCompound(BackgroundPosition) }}, 
00520         { "background-attachment"         , "Specify how the background image is scrolled" ,    GenericProperty::BackgroundAttachment , "scroll",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Scroll, GenericProperty::PropertyType::Fixed }}, 
00521         { "background-color"              , "Specify the background color" ,                    GenericProperty::BackgroundColor ,      "transparent",          MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Color, GenericProperty::PropertyType::Transparent }}, 
00522         { "background-image"              , "Specify the background image" ,                    GenericProperty::BackgroundImage ,      "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::URI, GenericProperty::PropertyType::None }}, 
00523         { "background-position"           , "Specify the background position" ,                 GenericProperty::BackgroundPosition ,   "0% 0%",                MediaGroup::Visual              , GenericProperty::BlockLevel | GenericProperty::Replaced , false, GenericProperty::OwnBoxSize              , { GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Top, GenericProperty::PropertyType::Center, GenericProperty::PropertyType::Bottom, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Inherit } }, 
00524         { "background-position-x"         , "Specify the background position in X axis" ,       GenericProperty::BackgroundPositionX ,  "0%",                   MediaGroup::Visual              , GenericProperty::BlockLevel | GenericProperty::Replaced , false, GenericProperty::OwnBoxSize              , { GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Center, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right} }, 
00525         { "background-position-y"         , "Specify the background position in Y axis" ,       GenericProperty::BackgroundPositionY ,  "0%",                   MediaGroup::Visual              , GenericProperty::BlockLevel | GenericProperty::Replaced , false, GenericProperty::OwnBoxSize              , { GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Top, GenericProperty::PropertyType::Center, GenericProperty::PropertyType::Bottom} }, 
00526         { "background-repeat"             , "Specify the background repeat mode" ,              GenericProperty::BackgroundRepeat ,     "repeat",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Repeat, GenericProperty::PropertyType::RepeatX, GenericProperty::PropertyType::RepeatY, GenericProperty::PropertyType::NoRepeat, GenericProperty::PropertyType::Inherit } }, 
00527         { "behavior"                      , "Extent default function of an element" ,           GenericProperty::Behavior ,             NULL,                   MediaGroup::VisualInteractive   , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported } }, 
00528         { "border"                        , "Specify the borders style" ,                       GenericProperty::Border ,               "medium none black",    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(BorderWidth), PropCompound(BorderStyle), PropCompound(BorderColor) }}, 
00529         { "border-bottom"                 , "Specify the bottom border style" ,                 GenericProperty::BorderBottom ,         "medium none black",    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(BorderBottomWidth), PropCompound(BorderStyle), PropCompound(BorderColor) }}, 
00530         { "border-bottom-color"           , "Specify the bottom border color" ,                 GenericProperty::BorderBottomColor ,    "black",                MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Color, GenericProperty::PropertyType::Transparent, GenericProperty::PropertyType::Inherit }}, 
00531         { "border-bottom-style"           , "Specify the bottom border line style" ,            GenericProperty::BorderBottomStyle ,    "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderStyle, GenericProperty::PropertyType::Inherit }}, 
00532         { "border-bottom-width"           , "Specify the bottom border width" ,                 GenericProperty::BorderBottomWidth ,    "medium",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderWidth, GenericProperty::PropertyType::Inherit }}, 
00533         { "border-collapse"               , "Specify if the border collapse" ,                  GenericProperty::BorderCollapse ,       "collapse",             MediaGroup::Visual              , GenericProperty::Table | GenericProperty::InlineTable   , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Collapse, GenericProperty::PropertyType::Separate, GenericProperty::PropertyType::Inherit }}, 
00534         { "border-color"                  , "Specify the border color" ,                        GenericProperty::BorderColor ,          "black",                MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Colors, GenericProperty::PropertyType::Transparent, GenericProperty::PropertyType::Inherit }}, 
00535         { "border-left"                   , "Specify the left border style" ,                   GenericProperty::BorderLeft ,           "medium none black",    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(BorderLeftWidth), PropCompound(BorderStyle), PropCompound(BorderColor) }}, 
00536         { "border-left-color"             , "Specify the left border color" ,                   GenericProperty::BorderLeftColor ,      "black",                MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Color, GenericProperty::PropertyType::Transparent, GenericProperty::PropertyType::Inherit }}, 
00537         { "border-left-style"             , "Specify the left border line style" ,              GenericProperty::BorderLeftStyle ,      "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderStyle, GenericProperty::PropertyType::Inherit }}, 
00538         { "border-left-width"             , "Specify the left border width" ,                   GenericProperty::BorderLeftWidth ,      "medium",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderWidth, GenericProperty::PropertyType::Inherit }}, 
00539         { "border-right"                  , "Specify the right border style" ,                  GenericProperty::BorderRight ,          "medium none black",    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(BorderRightWidth), PropCompound(BorderStyle), PropCompound(BorderColor) }}, 
00540         { "border-right-color"            , "Specify the right border color" ,                  GenericProperty::BorderRightColor ,     "black",                MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Color, GenericProperty::PropertyType::Transparent, GenericProperty::PropertyType::Inherit }}, 
00541         { "border-right-style"            , "Specify the right border line style" ,             GenericProperty::BorderRightStyle ,     "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderStyle, GenericProperty::PropertyType::Inherit }}, 
00542         { "border-right-width"            , "Specify the right border width" ,                  GenericProperty::BorderRightWidth ,     "medium",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderWidth, GenericProperty::PropertyType::Inherit }}, 
00543         { "border-spacing"                , "Specify the border space property" ,               GenericProperty::BorderSpacing ,        "0",                    MediaGroup::Visual              , GenericProperty::Table | GenericProperty::InlineTable   , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::HVLength, GenericProperty::PropertyType::Inherit }}, 
00544         { "border-style"                  , "Specify the border line style" ,                   GenericProperty::BorderStyle ,          "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BordersStyle, GenericProperty::PropertyType::Inherit } }, 
00545         { "border-top"                    , "Specify the top border style" ,                    GenericProperty::BorderTop ,            "medium none black",    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(BorderTopWidth), PropCompound(BorderStyle), PropCompound(BorderColor) }}, 
00546         { "border-top-color"              , "Specify the top border color" ,                    GenericProperty::BorderTopColor ,       "black",                MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Color, GenericProperty::PropertyType::Transparent, GenericProperty::PropertyType::Inherit }}, 
00547         { "border-top-style"              , "Specify the top border line style" ,               GenericProperty::BorderTopStyle ,       "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderStyle, GenericProperty::PropertyType::Inherit }}, 
00548         { "border-top-width"              , "Specify the top border width" ,                    GenericProperty::BorderTopWidth ,       "medium",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BorderWidth, GenericProperty::PropertyType::Inherit }}, 
00549         { "border-width"                  , "Specify the border width" ,                        GenericProperty::BorderWidth ,          "medium",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BordersWidth, GenericProperty::PropertyType::Inherit }}, 
00550         { "bottom"                        , "Specify the bottom position" ,                     GenericProperty::Bottom ,               "auto",                 MediaGroup::Visual              , GenericProperty::Positioned                             , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00551         { "caption-side"                  , "Specify the position of caption elements" ,        GenericProperty::CaptionSide ,          "top",                  MediaGroup::Visual              , GenericProperty::TableCaption                           , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Top, GenericProperty::PropertyType::Bottom, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Inherit }}, 
00552         { "clear"                         , "Prevent floating element" ,                        GenericProperty::Clear ,                "none",                 MediaGroup::Visual              , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Both, GenericProperty::PropertyType::Inherit }}, 
00553         { "clip"                          , "Specify the visible portion" ,                     GenericProperty::Clip ,                 "auto",                 MediaGroup::Visual              , GenericProperty::BlockLevel | GenericProperty::Replaced , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Shape }}, 
00554         { "color"                         , "Specify the content color" ,                       GenericProperty::Color ,                "black",                MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Color }}, 
00555         { "content"                       , "Specify the element content" ,                     GenericProperty::Content ,              "",                     MediaGroup::All                 , GenericProperty::BeforeAfter                            , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::String, GenericProperty::PropertyType::URI, GenericProperty::PropertyType::Counter, GenericProperty::PropertyType::Attr, GenericProperty::PropertyType::OpenQuote, GenericProperty::PropertyType::CloseQuote, GenericProperty::PropertyType::NoOpenQuote, GenericProperty::PropertyType::NoCloseQuote, GenericProperty::PropertyType::Inherit }}, 
00556         { "counter-increment"             , "Specify the counter incrementor (used w/content)", GenericProperty::CounterIncrement ,     "none",                 MediaGroup::All                 , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Identifier, GenericProperty::PropertyType::Integer }}, 
00557         { "counter-reset"                 , "Reset a specified counter (prioritary)" ,          GenericProperty::CounterReset ,         "none",                 MediaGroup::All                 , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Identifier, GenericProperty::PropertyType::Integer }}, 
00558         { "cue"                           , "Attach a key sound" ,                              GenericProperty::Cue ,                  NULL,                   MediaGroup::Aural               , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(CueAfter), PropCompound(CueBefore) }}, 
00559         { "cue-after"                     , "Attach a key sound after the element" ,            GenericProperty::CueAfter ,             "none",                 MediaGroup::Aural               , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::URI }}, 
00560         { "cue-before"                    , "Attach a key sound before the element" ,           GenericProperty::CueBefore ,            "none",                 MediaGroup::Aural               , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::URI }}, 
00561         { "cursor"                        , "Specify the cursor over the element" ,             GenericProperty::Cursor ,               "auto",                 MediaGroup::VisualInteractive   , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::URI, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Crosshair, GenericProperty::PropertyType::Default, GenericProperty::PropertyType::Pointer, GenericProperty::PropertyType::Move, GenericProperty::PropertyType::EResize, GenericProperty::PropertyType::NeResize, GenericProperty::PropertyType::NwResize, GenericProperty::PropertyType::NResize, GenericProperty::PropertyType::SeResize, GenericProperty::PropertyType::SwResize, GenericProperty::PropertyType::SResize, GenericProperty::PropertyType::WResize, GenericProperty::PropertyType::Text, GenericProperty::PropertyType::Wait, GenericProperty::PropertyType::Help }}, 
00562         { "direction"                     , "Specify the text direction" ,                      GenericProperty::Direction ,            "ltr",                  MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::LTR, GenericProperty::PropertyType::RTL }}, 
00563         { "display"                       , "Specify how to display the element" ,              GenericProperty::Display ,              "inline",               MediaGroup::All                 , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inline, GenericProperty::PropertyType::Block, GenericProperty::PropertyType::ListItem, GenericProperty::PropertyType::RunIn, GenericProperty::PropertyType::Compact, GenericProperty::PropertyType::Marker, GenericProperty::PropertyType::Table, GenericProperty::PropertyType::InlineTable, GenericProperty::PropertyType::TableRowGroup, GenericProperty::PropertyType::TableHeaderGroup, GenericProperty::PropertyType::TableFooterGroup, GenericProperty::PropertyType::TableRow, GenericProperty::PropertyType::TableColumnGroup, GenericProperty::PropertyType::TableColumn, GenericProperty::PropertyType::TableCell, GenericProperty::PropertyType::TableCaption, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00564         { "elevation"                     , "Specify the elevation of the auditor" ,            GenericProperty::Elevation ,            "level",                MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Level, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Below, GenericProperty::PropertyType::Above, GenericProperty::PropertyType::Lower, GenericProperty::PropertyType::Higher, GenericProperty::PropertyType::Angle }}, 
00565         { "empty-cells"                   , "Specify how to render empty cells" ,               GenericProperty::EmptyCells ,           "show",                 MediaGroup::Visual              , GenericProperty::TableCell                              , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Show, GenericProperty::PropertyType::Hide, GenericProperty::PropertyType::Inherit }}, 
00566         { "filter"                        , "Specify visual effects applyed after rendering" ,  GenericProperty::Filter ,               NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00567         { "float"                         , "Specify the float mode" ,                          GenericProperty::Float ,                "none",                 MediaGroup::Visual              , GenericProperty::AllBut | GenericProperty::PosAndGen    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Inherit }}, 
00568         { "font"                          , "Specify the font to use" ,                         GenericProperty::Font ,                 "normal medium Tahoma", MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::Compound                , { GenericProperty::PropertyType::Caption, GenericProperty::PropertyType::Icon, GenericProperty::PropertyType::Menu, GenericProperty::PropertyType::MessageBox, GenericProperty::PropertyType::SmallCaption, GenericProperty::PropertyType::StatusBar, GenericProperty::PropertyType::Inherit, PropCompound(FontStyle), PropCompound(FontVariant), PropCompound(FontWeight), PropCompound(FontSize), PropCompound(OverLineHeight), PropCompound(FontFamily) }}, 
00569         { "font-family"                   , "Specify the font family to use" ,                  GenericProperty::FontFamily ,           "Tahoma",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::FamilyName, GenericProperty::PropertyType::GenericFamily, GenericProperty::PropertyType::Inherit }}, 
00570         { "font-size"                     , "Specify the font size to use" ,                    GenericProperty::FontSize ,             "medium",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::ParentFontSize          , { GenericProperty::PropertyType::AbsoluteSize, GenericProperty::PropertyType::RelativeSize, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Inherit }}, 
00571         { "font-size-adjust"              , "Used to help the renderer select a missing font" , GenericProperty::FontSizeAdjust ,       "none",                 MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Number }}, 
00572         { "font-stretch"                  , "Stretch the font" ,                                GenericProperty::FontStretch ,          "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Narrower, GenericProperty::PropertyType::Wider, GenericProperty::PropertyType::UltraCondensed, GenericProperty::PropertyType::ExtraCondensed, GenericProperty::PropertyType::Condensed, GenericProperty::PropertyType::SemiCondensed, GenericProperty::PropertyType::SemiExpanded, GenericProperty::PropertyType::Expanded, GenericProperty::PropertyType::ExtraExpanded, GenericProperty::PropertyType::UltraExpanded }}, 
00573         { "font-style"                    , "Specify the font style" ,                          GenericProperty::FontStyle ,            "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Italic, GenericProperty::PropertyType::Oblique, GenericProperty::PropertyType::Inherit }}, 
00574         { "font-variant"                  , "Specify the font variant" ,                        GenericProperty::FontVariant ,          "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::SmallCaps }}, 
00575         { "font-weight"                   , "Specify the font weight" ,                         GenericProperty::FontWeight ,           "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Bold, GenericProperty::PropertyType::Bolder, GenericProperty::PropertyType::Lighter, GenericProperty::PropertyType::Hundreds, GenericProperty::PropertyType::Inherit }}, 
00576         { "height"                        , "Specify the box height" ,                          GenericProperty::Height ,               "auto",                 MediaGroup::Visual              , GenericProperty::AllBut|GenericProperty::NonRIAndColumn , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage }}, 
00577         { "ime-mode"                      , "Specify input method editor mode" ,                GenericProperty::ImeMode ,              "auto",                 MediaGroup::Visual              , GenericProperty::InputAndTextArea                       , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00578         { "include-source"                , "Include a source" ,                                GenericProperty::IncludeSource ,        NULL,                   MediaGroup::All                 , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00579         { "layer-background-color"        , "Specify the layer background color" ,              GenericProperty::LayerBackgroundColor , NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00580         { "layer-background-image"        , "Specify the layer background image" ,              GenericProperty::LayerBackgroundImage , NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00581         { "layout-flow"                   , "Specify the layout flow" ,                         GenericProperty::LayoutFlow ,           NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }},  
00582         { "layout-grid"                   , "Specify the layout grid" ,                         GenericProperty::LayoutGrid ,           NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }},  
00583         { "layout-grid-char"              , "Specify the layout grid char" ,                    GenericProperty::LayoutGridChar ,       NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }},  
00584         { "layout-grid-char-spacing"      , "Specify the layout grid char spacing" ,            GenericProperty::LayoutGridCharSpacing, NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }},  
00585         { "layout-grid-line"              , "Specify the layout grid line" ,                    GenericProperty::LayoutGridLine ,       NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }},  
00586         { "layout-grid-mode"              , "Specify the layout grid mode" ,                    GenericProperty::LayoutGridMode ,       NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }},  
00587         { "layout-grid-type"              , "Specify the layout grid type" ,                    GenericProperty::LayoutGridType ,       NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }},  
00588         { "left"                          , "Specify the left position" ,                       GenericProperty::Left ,                 "auto",                 MediaGroup::Visual              , GenericProperty::Positioned                             , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00589         { "letter-spacing"                , "Specify the letter spacing" ,                      GenericProperty::LetterSpacing ,        "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Inherit }}, 
00590         { "line-break"                    , "Specify how to break a line in Japanese" ,         GenericProperty::LineBreak ,            "normal",               MediaGroup::Visual              , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00591         { "line-height"                   , "Specify the line height" ,                         GenericProperty::LineHeight ,           "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::OwnFontSize             , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Number, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Inherit }}, 
00592         { "list-style"                    , "Specify the list style" ,                          GenericProperty::ListStyle ,            "disc outside none",    MediaGroup::Visual              , GenericProperty::ListItemDisplay                        , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(ListStyleType), PropCompound(ListStylePosition), PropCompound(ListStyleImage) }}, 
00593         { "list-style-image"              , "Specify the list image (overwrite type)" ,         GenericProperty::ListStyleImage ,       "none",                 MediaGroup::Visual              , GenericProperty::ListItemDisplay                        , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::None, GenericProperty::PropertyType::URI }}, 
00594         { "list-style-position"           , "Specify the list bullet position" ,                GenericProperty::ListStylePosition ,    "outside",              MediaGroup::Visual              , GenericProperty::ListItemDisplay                        , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Inside, GenericProperty::PropertyType::Outside }}, 
00595         { "list-style-type"               , "Specify the list bullet type" ,                    GenericProperty::ListStyleType ,        "disc",                 MediaGroup::Visual              , GenericProperty::ListItemDisplay                        , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Disc, GenericProperty::PropertyType::Circle, GenericProperty::PropertyType::Square, GenericProperty::PropertyType::Decimal, GenericProperty::PropertyType::DecimalLeadingZero, GenericProperty::PropertyType::LowerRoman, GenericProperty::PropertyType::UpperRoman, GenericProperty::PropertyType::LowerGreek, GenericProperty::PropertyType::LowerAlpha, GenericProperty::PropertyType::LowerLatin, GenericProperty::PropertyType::UpperAlpha, GenericProperty::PropertyType::UpperLatin, GenericProperty::PropertyType::Hebrew, GenericProperty::PropertyType::Armenian, GenericProperty::PropertyType::Georgian, GenericProperty::PropertyType::CjkIdeographic, GenericProperty::PropertyType::Hiragana, GenericProperty::PropertyType::HiraganaIroha, GenericProperty::PropertyType::Katakana, GenericProperty::PropertyType::KatakanaIroha, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00596         { "margin"                        , "Specify the margin" ,                              GenericProperty::Margin ,               "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockSize     , { GenericProperty::PropertyType::MarginsWidth, GenericProperty::PropertyType::Inherit }}, 
00597         { "margin-bottom"                 , "Specify the bottom margin" ,                       GenericProperty::MarginBottom ,         "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::MarginWidth, GenericProperty::PropertyType::Inherit }}, 
00598         { "margin-top"                    , "Specify the top margin" ,                          GenericProperty::MarginTop ,            "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::MarginWidth, GenericProperty::PropertyType::Inherit }}, 
00599         { "margin-left"                   , "Specify the left margin" ,                         GenericProperty::MarginLeft ,           "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::MarginWidth, GenericProperty::PropertyType::Inherit }}, 
00600         { "margin-right"                  , "Specify the right margin" ,                        GenericProperty::MarginRight ,          "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::MarginWidth, GenericProperty::PropertyType::Inherit }}, 
00601         { "marker-offset"                 , "Specify the marker offset into the margin" ,       GenericProperty::MarkerOffset ,         "auto",                 MediaGroup::Visual              , GenericProperty::MarkerDisplay                          , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00602         { "marks"                         , "Specify the marks between pages" ,                 GenericProperty::Marks ,                "none",                 MediaGroup::VisualPaged         , GenericProperty::PageContext                            , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Crop, GenericProperty::PropertyType::Cross, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00603         { "max-height"                    , "Specify the maximum height of a box" ,             GenericProperty::MaxHeight ,            "none",                 MediaGroup::Visual              , GenericProperty::AllBut|GenericProperty::NonRIAndTable  , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00604         { "max-width"                     , "Specify the maximum width of a box" ,              GenericProperty::MaxWidth ,             "none",                 MediaGroup::Visual              , GenericProperty::AllBut|GenericProperty::NonRIAndTable  , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00605         { "min-height"                    , "Specify the minimum height of a box" ,             GenericProperty::MinHeight ,            "0",                    MediaGroup::Visual              , GenericProperty::AllBut|GenericProperty::NonRIAndTable  , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Inherit }}, 
00606         { "min-width"                     , "Specify the minimum width of a box" ,              GenericProperty::MinWidth ,             "0",                    MediaGroup::Visual              , GenericProperty::AllBut|GenericProperty::NonRIAndTable  , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Inherit }}, 
00607         { "-moz-binding"                  , "Specify the XBL to attach",                        GenericProperty::MozBinding ,           "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00608         { "-moz-border-radius"            , "Specify the round border radius" ,                 GenericProperty::MozBorderRadius ,      "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage }}, 
00609         { "-moz-border-radius-topleft"    , "Specify the top left round border radius" ,        GenericProperty::MozBorderRadiusTopleft ,"0",                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage }}, 
00610         { "-moz-border-radius-topright"   , "Specify the top right round border radius" ,       GenericProperty::MozBorderRadiusTopright ,"0",                  MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage }}, 
00611         { "-moz-border-radius-bottomright", "Specify the bottom right round border radius" ,    GenericProperty::MozBorderRadiusBottomright,"0",                MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage }}, 
00612         { "-moz-border-radius-bottomleft" , "Specify the bottom left round border radius" ,     GenericProperty::MozBorderRadiusBottomleft,"0",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage }}, 
00613         { "-moz-border-top-colors"        , "Specify the top border colors" ,                   GenericProperty::MozBorderTopColors ,   NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00614         { "-moz-border-right-colors"      , "Specify the right border colors" ,                 GenericProperty::MozBorderRightColors , NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00615         { "-moz-border-bottom-colors"     , "Specify the bottom border colors" ,                GenericProperty::MozBorderBottomColors, NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00616         { "-moz-border-left-colors"       , "Specify the left border colors" ,                  GenericProperty::MozBorderLeftColors ,  NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00617         { "-moz-opacity"                  , "Specify the opacity factor" ,                      GenericProperty::MozOpacity ,           "1",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Number, GenericProperty::PropertyType::Inherit }}, 
00618         { "-moz-outline"                  , "Draw a second outline border around the border" ,  GenericProperty::MozOutline ,           "medium none black",    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(OutlineColor), PropCompound(OutlineWidth), PropCompound(OutlineStyle) }}, 
00619         { "-moz-outline-color"            , "Specify the outline color" ,                       GenericProperty::MozOutlineColor ,      "black",                MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Colors, GenericProperty::PropertyType::Transparent, GenericProperty::PropertyType::Inherit }}, 
00620         { "-moz-outline-style"            , "Specify the outline line style" ,                  GenericProperty::MozOutlineStyle ,      "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BordersStyle, GenericProperty::PropertyType::Inherit } }, 
00621         { "-moz-outline-width"            , "Specify the outline width" ,                       GenericProperty::MozOutlineWidth ,      "medium",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BordersWidth, GenericProperty::PropertyType::Inherit }}, 
00622         { "-moz-user-focus"               , "Specify how the elements take user focus" ,        GenericProperty::MozUserFocus ,         "auto",                 MediaGroup::VisualInteractive   , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Normal }}, 
00623         { "-moz-user-input"               , "Specify if the elements take user input" ,         GenericProperty::MozUserInput ,         "none",                 MediaGroup::VisualInteractive   , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Enabled, GenericProperty::PropertyType::Disabled, GenericProperty::PropertyType::Inherit }}, 
00624         { "-moz-user-modify"              , "Specify if the elements take user focus" ,         GenericProperty::MozUserModify ,        "read-only",            MediaGroup::VisualInteractive   , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::ReadOnly, GenericProperty::PropertyType::ReadWrite, GenericProperty::PropertyType::WriteOnly }}, 
00625         { "-moz-user-select"              , "Specify if the elements take user select" ,        GenericProperty::MozUserSelect ,        "text",                 MediaGroup::VisualInteractive   , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Text, GenericProperty::PropertyType::Element, GenericProperty::PropertyType::Elements, GenericProperty::PropertyType::AllElements, GenericProperty::PropertyType::Toggle }}, 
00626         { "orphans"                       , "Minimum number of left lines on page bottom" ,     GenericProperty::Orphans ,              "2",                    MediaGroup::VisualPaged         , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Integer, GenericProperty::PropertyType::Inherit }}, 
00627         { "outline"                       , "Draw a second outline border around the border" ,  GenericProperty::Outline ,              "medium none invert",   MediaGroup::VisualInteractive   , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, PropCompound(OutlineColor), PropCompound(OutlineWidth), PropCompound(OutlineStyle) }}, 
00628         { "outline-color"                 , "Specify the outline color" ,                       GenericProperty::OutlineColor ,         "invert",               MediaGroup::VisualInteractive   , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Colors, GenericProperty::PropertyType::Transparent, GenericProperty::PropertyType::Inherit }}, 
00629         { "outline-style"                 , "Specify the outline line style" ,                  GenericProperty::OutlineStyle ,         "none",                 MediaGroup::VisualInteractive   , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BordersStyle, GenericProperty::PropertyType::Inherit } }, 
00630         { "outline-width"                 , "Specify the outline width" ,                       GenericProperty::OutlineWidth ,         "medium",               MediaGroup::VisualInteractive   , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::BordersWidth, GenericProperty::PropertyType::Inherit }}, 
00631         { "overflow"                      , "Specify how the box overflow" ,                    GenericProperty::Overflow ,             "visible",              MediaGroup::Visual              , GenericProperty::BlockLevel | GenericProperty::Replaced , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Visible, GenericProperty::PropertyType::Hidden, GenericProperty::PropertyType::Scroll, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00632         { "overflow-X"                    , "Specify how the box overflow on X axis" ,          GenericProperty::OverflowX ,            "visible",              MediaGroup::Visual              , GenericProperty::BlockLevel | GenericProperty::Replaced , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Visible, GenericProperty::PropertyType::Hidden, GenericProperty::PropertyType::Scroll, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00633         { "overflow-Y"                    , "Specify how the box overflow on Y axis" ,          GenericProperty::OverflowY ,            "visible",              MediaGroup::Visual              , GenericProperty::BlockLevel | GenericProperty::Replaced , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Visible, GenericProperty::PropertyType::Hidden, GenericProperty::PropertyType::Scroll, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00634         { "padding"                       , "Specify the padding" ,                             GenericProperty::Padding ,              "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::Compound                , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::PaddingsWidth }}, 
00635         { "padding-bottom"                , "Specify the bottom padding" ,                      GenericProperty::PaddingBottom,         "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::PaddingWidth, GenericProperty::PropertyType::Inherit }}, 
00636         { "padding-left"                  , "Specify the left padding" ,                        GenericProperty::PaddingLeft,           "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::PaddingWidth, GenericProperty::PropertyType::Inherit }}, 
00637         { "padding-right"                 , "Specify the right padding" ,                       GenericProperty::PaddingRight,          "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::PaddingWidth, GenericProperty::PropertyType::Inherit }}, 
00638         { "padding-top"                   , "Specify the top padding" ,                         GenericProperty::PaddingTop,            "0",                    MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::PaddingWidth, GenericProperty::PropertyType::Inherit }}, 
00639         { "page"                          , "Specify a particular type of page" ,               GenericProperty::Page ,                 "auto",                 MediaGroup::VisualPaged         , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Identifier }}, 
00640         { "page-break-after"              , "Specify the page break behaviour" ,                GenericProperty::PageBreakAfter ,       "auto",                 MediaGroup::VisualPaged         , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Always, GenericProperty::PropertyType::Avoid, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Inherit }}, 
00641         { "page-break-before"             , "Specify the page break behaviour" ,                GenericProperty::PageBreakBefore ,      "auto",                 MediaGroup::VisualPaged         , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Always, GenericProperty::PropertyType::Avoid, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Inherit }}, 
00642         { "page-break-inside"             , "Specify the page break behaviour" ,                GenericProperty::PageBreakInside ,      "auto",                 MediaGroup::VisualPaged         , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Avoid, GenericProperty::PropertyType::Inherit }}, 
00643         { "pause"                         , "Specify sound pause duration" ,                    GenericProperty::Pause ,                "0",                    MediaGroup::Aural               , GenericProperty::All                                    , false, GenericProperty::Compound                , { GenericProperty::PropertyType::Inherit, PropCompound(PauseAfter), PropCompound(PauseBefore) }}, 
00644         { "pause-after"                   , "Specify sound pause duration after an element" ,   GenericProperty::PauseAfter ,           "0",                    MediaGroup::Aural               , GenericProperty::All                                    , false, GenericProperty::SpeechRateProp          , { GenericProperty::PropertyType::Time, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Inherit }}, 
00645         { "pause-before"                  , "Specify sound pause duration before an element" ,  GenericProperty::PauseBefore ,          "0",                    MediaGroup::Aural               , GenericProperty::All                                    , false, GenericProperty::SpeechRateProp          , { GenericProperty::PropertyType::Time, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Inherit }}, 
00646         { "pitch"                         , "Specify the spoken pitch" ,                        GenericProperty::Pitch ,                "medium",               MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Frequency, GenericProperty::PropertyType::XLow, GenericProperty::PropertyType::Low, GenericProperty::PropertyType::Medium, GenericProperty::PropertyType::High, GenericProperty::PropertyType::XHigh, GenericProperty::PropertyType::Inherit }}, 
00647         { "pitch-range"                   , "Specify the spoken pitch range" ,                  GenericProperty::PitchRange ,           "50",                   MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Number, GenericProperty::PropertyType::Inherit }}, 
00648         { "play-during"                   , "Specify the background sound" ,                    GenericProperty::PlayDuring ,           "auto",                 MediaGroup::Aural               , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::URI, GenericProperty::PropertyType::Mix, GenericProperty::PropertyType::Repeat, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00649         { "position"                      , "Specify the box position" ,                        GenericProperty::Position ,             "static",               MediaGroup::Visual              ,GenericProperty::AllBut|GenericProperty::GeneratedContent, false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Static, GenericProperty::PropertyType::Relative, GenericProperty::PropertyType::Absolute, GenericProperty::PropertyType::Fixed, GenericProperty::PropertyType::Inherit }}, 
00650         { "quotes"                        , "Specify the quotes to use" ,                       GenericProperty::Quotes ,               "'\"' '\"' \"'\" \"'\"",MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::String, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00651         { "-replace"                      , "-replace" ,                                        GenericProperty::Replace ,              NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00652         { "richness"                      , "Specify the richness of the spoken voice" ,        GenericProperty::Richness ,             "50",                   MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Number, GenericProperty::PropertyType::Inherit }}, 
00653         { "right"                         , "Specify the right position" ,                      GenericProperty::Right ,                "auto",                 MediaGroup::Visual              , GenericProperty::Positioned                             , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00654         { "ruby-align"                    , "Specify ruby text alignment" ,                     GenericProperty::RubyAlign ,            "auto",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00655         { "ruby-overhang"                 , "Specify ruby overhang" ,                           GenericProperty::RubyOverhang ,         "auto",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00656         { "ruby-position"                 , "Specify ruby position" ,                           GenericProperty::RubyPosition ,         "auto",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00657         { "-set-link-source"              , "Opera specific" ,                                  GenericProperty::SetLinkSource ,        NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00658         { "size"                          , "Specify the page box size" ,                       GenericProperty::Size ,                 "auto",                 MediaGroup::VisualPaged         , GenericProperty::PageContext                            , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Portrait, GenericProperty::PropertyType::Landscape, GenericProperty::PropertyType::Inherit }}, 
00659         { "speak"                         , "Specify how to speak the element" ,                GenericProperty::Speak ,                "normal",               MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::None, GenericProperty::PropertyType::SpellOut, GenericProperty::PropertyType::Inherit }}, 
00660         { "speak-header"                  , "Specify how to speak headers" ,                    GenericProperty::SpeakHeader ,          "once",                 MediaGroup::Aural               , GenericProperty::TableHeader                            , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Once, GenericProperty::PropertyType::Always, GenericProperty::PropertyType::Inherit }}, 
00661         { "speak-numeral"                 , "Specify how to speak numeral" ,                    GenericProperty::SpeakNumeral ,         "continuous",           MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Digits, GenericProperty::PropertyType::Continuous, GenericProperty::PropertyType::Inherit }}, 
00662         { "speak-punctuation"             , "Specify how to speak punctuation" ,                GenericProperty::SpeakPunctuation ,     "none",                 MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Code, GenericProperty::PropertyType::None, GenericProperty::PropertyType::Inherit }}, 
00663         { "speech-rate"                   , "Specify the speech rate" ,                         GenericProperty::SpeechRate ,           "medium",               MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Number, GenericProperty::PropertyType::XSlow, GenericProperty::PropertyType::Slow, GenericProperty::PropertyType::Medium, GenericProperty::PropertyType::Fast, GenericProperty::PropertyType::XFast, GenericProperty::PropertyType::Faster, GenericProperty::PropertyType::Slower, GenericProperty::PropertyType::Inherit }}, 
00664         { "stress"                        , "Specify how to stress an element" ,                GenericProperty::Stress ,               "50",                   MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Number, GenericProperty::PropertyType::Inherit }}, 
00665         { "scrollbar-arrow-color"         , "Specify the scrollbar arrow color" ,               GenericProperty::ScrollbarArrowColor ,  "black",                MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00666         { "scrollbar-base-color"          , "Specify the scrollbar base color" ,                GenericProperty::ScrollbarBaseColor ,   "grey",                 MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00667         { "scrollbar-dark-shadow-color"   , "Specify the scrollbar dark shadow color" ,         GenericProperty::ScrollbarDarkShadowColor,"black",              MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00668         { "scrollbar-face-color"          , "Specify the scrollbar face color" ,                GenericProperty::ScrollbarFaceColor ,   "grey",                 MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00669         { "scrollbar-highlight-color"     , "Specify the scrollbar highlight color" ,           GenericProperty::ScrollbarHighlightColor,"black",               MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00670         { "scrollbar-shadow-color"        , "Specify the scrollbar shadow color" ,              GenericProperty::ScrollbarShadowColor , "black",                MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00671         { "scrollbar-3d-light-color"      , "Specify the scrollbar 3D Light color" ,            GenericProperty::Scrollbar3dLightColor ,"white",                MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00672         { "scrollbar-track-color"         , "Specify the scrollbar track color" ,               GenericProperty::ScrollbarTrackColor ,  "black",                MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00673         { "table-layout"                  , "Specify the layout algorithm to use for a table" , GenericProperty::TableLayout ,          "auto",                 MediaGroup::Visual              , GenericProperty::Table | GenericProperty::InlineTable   , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Fixed, GenericProperty::PropertyType::Inherit }}, 
00674         { "text-align"                    , "Specify how to align the text" ,                   GenericProperty::TextAlign ,            "left",                 MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Center, GenericProperty::PropertyType::Justify, GenericProperty::PropertyType::String, GenericProperty::PropertyType::Inherit }}, 
00675         { "text-align-last"               , "Specify how to align the last line of text" ,      GenericProperty::TextAlignLast ,        "auto",                 MediaGroup::Visual              , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Left, GenericProperty::PropertyType::Right, GenericProperty::PropertyType::Center, GenericProperty::PropertyType::Justify }}, 
00676         { "text-decoration"               , "Specify the text decoration" ,                     GenericProperty::TextDecoration ,       "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Underline, GenericProperty::PropertyType::Overline, GenericProperty::PropertyType::LineThrough, GenericProperty::PropertyType::Blink, GenericProperty::PropertyType::Inherit }}, 
00677         { "text-indent"                   , "Specify the text indentation" ,                    GenericProperty::TextIndent ,           "0",                    MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Inherit }}, 
00678         { "text-justify"                  , "Specify how to justify the text" ,                 GenericProperty::TextJustify ,          "auto",                 MediaGroup::Visual              , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00679         { "text-overflow"                 , "Specify how the text overflow" ,                   GenericProperty::TextOverflow ,         "clip",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Clip, GenericProperty::PropertyType::Ellipsis }}, 
00680         { "text-shadow"                   , "Specify how to shadow the text" ,                  GenericProperty::TextShadow ,           "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Color, GenericProperty::PropertyType::TextShadowParams, GenericProperty::PropertyType::Inherit }}, 
00681         { "text-transform"                , "Specify a litteral transform for the text" ,       GenericProperty::TextTransform ,        "none",                 MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::None, GenericProperty::PropertyType::Capitalize, GenericProperty::PropertyType::Uppercase, GenericProperty::PropertyType::Lowercase, GenericProperty::PropertyType::Inherit }}, 
00682         { "text-autospace"                , "Specify the spacing between ideographs" ,          GenericProperty::TextAutospace ,        "none",                 MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00683         { "text-kashida-space"            , "Specify the text kashida space used in Arabic" ,   GenericProperty::TextKashidaSpace ,     "0%",                   MediaGroup::Visual              , GenericProperty::BlockLevel                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00684         { "text-underline-position"       , "Specify the position of the underline" ,           GenericProperty::TextUnderlinePosition, "auto",                 MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00685         { "top"                           , "Specify the top position" ,                        GenericProperty::Top ,                  "auto",                 MediaGroup::Visual              , GenericProperty::Positioned                             , false, GenericProperty::ContainingBlockHeight   , { GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit }}, 
00686         { "unicode-bidi"                  , "Specify the unicode bidirectionality" ,            GenericProperty::UnicodeBidi ,          "normal",               MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Embed, GenericProperty::PropertyType::BidiOverride, GenericProperty::PropertyType::Inherit }}, 
00687         { "-use-link-source"              , "Opera specific -use-link-source" ,                 GenericProperty::UseLinkSource ,        NULL,                   MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00688         { "vertical-align"                , "Specify the vertical alignment in a line box" ,    GenericProperty::VerticalAlign ,        "baseline",             MediaGroup::Visual              , GenericProperty::InlineLevel|GenericProperty::TableCell , false, GenericProperty::OwnLineHeight           , { GenericProperty::PropertyType::Baseline, GenericProperty::PropertyType::Sub, GenericProperty::PropertyType::Super, GenericProperty::PropertyType::Top, GenericProperty::PropertyType::TextTop, GenericProperty::PropertyType::Middle, GenericProperty::PropertyType::Bottom, GenericProperty::PropertyType::TextBottom, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Inherit }}, 
00689         { "visibility"                    , "Specify the element visibility" ,                  GenericProperty::Visibility ,           "inherit",              MediaGroup::Visual              , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Visible, GenericProperty::PropertyType::Hidden, GenericProperty::PropertyType::Collapse, GenericProperty::PropertyType::Inherit }}, 
00690         { "voice-family"                  , "Specify the voice family to use" ,                 GenericProperty::VoiceFamily ,          "Bob",                  MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::SpecificVoice, GenericProperty::PropertyType::GenericVoice, GenericProperty::PropertyType::Inherit }}, 
00691         { "volume"                        , "Specify the volume" ,                              GenericProperty::Volume ,               "medium",               MediaGroup::Aural               , GenericProperty::All                                    , true , GenericProperty::Inherited               , { GenericProperty::PropertyType::Number, GenericProperty::PropertyType::Percentage, GenericProperty::PropertyType::Silent, GenericProperty::PropertyType::XSoft, GenericProperty::PropertyType::Soft, GenericProperty::PropertyType::Medium, GenericProperty::PropertyType::Loud, GenericProperty::PropertyType::XLoud, GenericProperty::PropertyType::Inherit }}, 
00692         { "white-space"                   , "Specify how white space are handled" ,             GenericProperty::WhiteSpace ,           "normal",               MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Pre, GenericProperty::PropertyType::Nowrap, GenericProperty::PropertyType::Inherit }}, 
00693         { "widows"                        , "Minimum number of left lines on page top" ,        GenericProperty::Widows ,               "2",                    MediaGroup::VisualPaged         , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Integer, GenericProperty::PropertyType::Inherit }}, 
00694         { "width"                         , "Specify the box width" ,                           GenericProperty::Width ,                "auto",                 MediaGroup::Visual              , GenericProperty::AllBut|GenericProperty::NonRIAndRow    , false, GenericProperty::ContainingBlockWidth    , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Inherit, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Percentage }}, 
00695         { "word-break"                    , "Specify how to break lines" ,                      GenericProperty::WordBreak ,            "normal",               MediaGroup::Visual              , GenericProperty::BlockLevel                             , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00696         { "word-spacing"                  , "Specify the spacing behaviour between words" ,     GenericProperty::WordSpacing ,          "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Normal, GenericProperty::PropertyType::Length, GenericProperty::PropertyType::Inherit }}, 
00697         { "word-wrap"                     , "Redundant property in IE5" ,                       GenericProperty::WordWrap ,             "normal",               MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00698         { "writing-mode"                  , "Specify the writing direction" ,                   GenericProperty::WritingMode ,          "lr-tb",                MediaGroup::Visual              , GenericProperty::All                                    , true , GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00699         { "z-index"                       , "Controls the front to back rendering position" ,   GenericProperty::ZIndex ,               "auto",                 MediaGroup::Visual              , GenericProperty::Positioned                             , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::Auto, GenericProperty::PropertyType::Integer, GenericProperty::PropertyType::Inherit }}, 
00700         { "zoom"                          , "Controls the element magnification level" ,        GenericProperty::Zoom ,                 "normal",               MediaGroup::VisualInteractive   , GenericProperty::All                                    , false, GenericProperty::NotApplicable           , { GenericProperty::PropertyType::NotSupported }}, 
00701     };
00702 
00703 
00705     namespace Rules
00706     {
00707 
00708     }
00709 
00714     class Parser
00715     {
00716 
00717     };
00718 }
00719 
00720 #endif

(C) An X-Ryl669 project 2007

This document describes Unlimited Zooming Interface source code. UZI stands for Unlimited Zooming Interface, and source code license is