PageSourceSearch

https://atomium.be/DXR.axd?r=4_1-SfFRl

js atomium.be collected 2026-10-02 03:01:26 UTC 67,088 bytes, 1,439 lines download raw bytes

1(function() {
2 var AttributeValueListConst = {
3  Align: ["left", "center", "right" ],
4  ButtonType: ["button", "submit", "reset" ],
5  CaptionAlign: ["top", "bottom", "left", "right" ],
6  CellHAlign: ["left", "center", "right", "justify", "char" ],
7  CellVAlign: ["top", "middle", "bottom", "baseline" ],
8  Clear: ["left", "all", "right", "none" ],
9  Direction: ["ltr", "rtl" ],
10  ImageAlign: ["top", "middle", "bottom", "left", "right" ],
11  InputType: ["text", "password", "checkbox", "radio", "submit", "reset", "file", "hidden", "image", "button", 
12   "color", "date", "datetime", "datetime-local", "email", "month", "number", "range", "search", "tel", "time", "url", "week" ],
13  FrameBorder: ["1", "0" ],
14  LegendAlign: ["top", "bottom", "left", "right" ],
15  Method: ["get", "post" ],
16  Scope: ["row", "col", "rowgroup", "colgroup" ],
17  Scrolling: ["yes", "no", "auto" ],
18  Shape: ["rect", "circle", "poly", "default" ],
19  TableAlign: ["left", "center", "right" ],
20  TableFrame: ["void", "above", "below", "hsides", "lhs", "rhs", "vsides", "box", "border" ],
21  TableRules: ["none", "groups", "rows", "cols", "all" ],
22  TextAlign: ["left", "center", "right", "justify" ],
23  ULStyle: ["disc", "square", "circle" ],
24  ValueType: ["data", "ref", "object" ]
25 };
26 var A = {
27  Abbr: "abbr",
28  Accept: "accept",
29  AcceptCharset: "accept-charset",
30  AccessKey: "accesskey",
31  Action: "action",
32  Align: "align",
33  Alt: "alt",
34  Archive: "archive",
35  Axis: "axis",
36  Background: "background",
37  BgColor: "bgcolor",
38  Border: "border",
39  BorderColor: "bordercolor",
40  Char: "char",
41  CharOffset: "charoff",
42  CellPadding: "cellpadding",
43  CellSpacing: "cellspacing",
44  Charset: "charset",
45  Checked: "checked",
46  Cite: "cite",
47  Class: "class",
48  ClassID: "classid",
49  Clear: "clear",
50  Code: "code",
51  CodeBase: "codebase",
52  CodeType: "codetype",
53  Color: "color",
54  Cols: "cols",
55  ColSpan: "colspan",
56  Compact: "compact",
57  Content: "content",
58  Coords: "coords",
59  Data: "data",
60  DateTime: "datetime",
61  Declare: "declare",
62  Defer: "defer",
63  Dir: "dir",
64  Disabled: "disabled",
65  EncType: "enctype",
66  Face: "face",
67  For: "for",
68  Frame: "frame",
69  FrameBorder: "frameborder",
70  Headers: "headers",
71  Height: "height",
72  Href: "href",
73  HrefLang: "hreflang",
74  HSpace: "hspace",
75  HttpEquiv: "http-equiv",
76  ID: "id",
77  IsMap: "ismap",
78  Label: "label",
79  Lang: "lang",
80  Language: "language",
81  Link: "link",
82  LongDesc: "longdesc",
83  MarginHeight: "marginheight",
84  MarginWidth: "marginwidth",
85  MaxLength: "maxlength",
86  Media: "media",
87  Method: "method",
88  Multiple: "multiple",
89  Name: "name",
90  NoHref: "nohref",
91  NoShade: "noshade",
92  NoWrap: "nowrap",
93  Object: "object",
94  OnClick: "onclick",
95  OnDblClick: "ondblclick",
96  OnMouseDown: "onmousedown",
97  OnMouseUp: "onmouseup",
98  OnMouseOver: "onmouseover",
99  OnMouseMove: "onmousemove",
100  OnMouseOut: "onmouseout",
101  OnKeyPress: "onkeypress",
102  OnKeyDown: "onkeydown",
103  OnKeyUp: "onkeyup",
104  OnBlur: "onblur",
105  OnChange: "onchange",
106  OnFocus: "onfocus",
107  OnLoad: "onload",
108  OnReset: "onreset",
109  OnSelect: "onselect",
110  OnSubmit: "onsubmit",
111  OnUnload: "onunload",
112  Profile: "profile",
113  Prompt: "prompt",
114  ReadOnly: "readonly",
115  Rel: "rel",
116  Rev: "rev",
117  Rows: "rows",
118  RowSpan: "rowspan",
119  Rules: "rules",
120  Scheme: "scheme",
121  Scope: "scope",
122  Scrolling: "scrolling",
123  Selected: "selected",
124  Shape: "shape",
125  Size: "size",
126  Span: "span",
127  Src: "src",
128  StandBy: "standby",
129  Start: "start",
130  Style: "style",
131  Summary: "summary",
132  TabIndex: "tabindex",
133  Target: "target",
134  Text: "text",
135  Title: "title",
136  Type: "type",
137  UseMap: "usemap",
138  Value: "value",
139  ValueType: "valuetype",
140  VerticalAlign: "valign",
141  VLink: "vlink",
142  VSpace: "vspace",
143  Width: "width",
144  XmlLang: "xml:lang",
145  ContentEditable: "contenteditable",
146  ContextMenu: "contextmenu",
147  Draggable: "draggable",
148  Dropzone: "dropzone",
149  Hidden: "hidden",
150  Spellcheck: "spellcheck",
151  AutoPlay: "autoplay",
152  Controls: "controls",
153  Loop: "loop",
154  PreLoad: "preload",
155  Icon: "icon",
156  RadioGroup: "radiogroup",
157  Open: "open",
158  Keytype: "keytype",
159  Optimum: "optimum",
160  High: "high",
161  Low: "low",
162  Max: "max",
163  Min: "min",
164  SrcLang: "srclang",
165  Kind: "kind",
166  Default: "default",
167  PubDate: "pubdate",
168  Poster: "poster",
169  Muted: "muted",
170  Async: "async",
171  Form: "form",
172  Challenge: "challenge",
173  AutoComplete: "autocomplete",
174  AutoFocus: "autofocus",
175  FormAction: "formaction",
176  FormEncType: "formenctype",
177  FormMethod: "formmethod",
178  FormNoValidate: "formnovalidate",
179  FormTarget: "formtarget",
180  List: "list",
181  Pattern: "pattern",
182  Placeholder: "placeholder",
183  Step: "step",
184  Required: "required",
185  Wrap: "wrap",
186  Reversed: "reversed",
187  OnAfterPrint: "onafterprint",
188  OnBeforePrint: "onbeforeprint",
189  OnBeforeOnLoad: "onbeforeonload",
190  OnError: "onerror",
191  OnHasChange: "onhaschange",
192  OnMessage: "onmessage",
193  OnOffline: "onoffline",
194  OnOnline: "ononline",
195  OnPageHide: "onpagehide",
196  OnPageShow: "onpageshow",
197  OnPopState: "onpopstate",
198  OnRedo: "onredo",
199  OnResize: "onresize",
200  OnStorage: "onstorage",
201  OnUndo: "onundo",
202  OnContextMenu: "oncontextmenu",
203  OnFormChange: "onformchange",
204  OnFormInput: "onforminput",
205  OnInput: "oninput",
206  OnInvalid: "oninvalid",
207  OnDrag: "ondrag",
208  OnDragEnd: "ondragend",
209  OnDragEnter: "ondragenter",
210  OnDragLeave: "ondragleave",
211  OnDragOver: "ondragover",
212  OnDragStart: "ondragstart",
213  OnDrop: "ondrop",
214  OnMouseWheel: "onmousewheel",
215  OnScroll: "onscroll",
216  OnCanPlay: "oncanplay",
217  OnCanPlayThrough: "oncanplaythrough",
218  OnDurationChange: "ondurationchange",
219  OnEmptied: "onemptied",
220  OnEnded: "onended",
221  OnLoadeddata: "onloadeddata",
222  OnLoadedmetadata: "onloadedmetadata",
223  OnLoadstart: "onloadstart",
224  OnPause: "onpause",
225  OnPlay: "onplay",
226  OnPlaying: "onplaying",
227  OnProgress: "onprogress",
228  OnRatechange: "onratechange",
229  OnReadystatechange: "onreadystatechange",
230  OnSeeked: "onseeked",
231  OnSeeking: "onseeking",
232  OnStalled: "onstalled",
233  OnSuspend: "onsuspend",
234  OnTimeupdate: "ontimeupdate",
235  OnVolumechange: "onvolumechange",
236  OnWaiting: "onwaiting",
237  Property: "property",
238  CrossOrigin: "crossorigin",
239  Sizes: "sizes",
240  Translate: "translate",
241  Manifest: "manifest"
242 };
243 var E = {
244  Html: "html",
245  Head: "head",
246  Title: "title",
247  BaseElement: "base",
248  Meta: "meta",
249  Style: "style",
250  Link: "link",
251  Body: "body",
252  NoFrames: "noframes",
253  BaseFont: "basefont",
254  Applet: "applet",
255  Menu: "menu",
256  Dir: "dir",
257  IsIndex: "isindex",
258  Script: "script",
259  IFrame: "iframe",
260  Form: "form",
261  Label: "label",
262  Input: "input",
263  Select: "select",
264  Option: "option",
265  OptGroup: "optgroup",
266  TextArea: "textarea",
267  Button: "button",
268  U: "u",
269  S: "s",
270  Strike: "strike",
271  Font: "font",
272  Center: "center",
273  I: "i",
274  B: "b",
275  NoScript: "noscript",
276  Div: "div",
277  P: "p",
278  FieldSet: "fieldset",
279  ObjectElement: "object",
280  Param: "param",
281  Legend: "legend",
282  Span: "span",
283  A: "a",
284  Img: "img",
285  Map: "map",
286  Area: "area",
287  Bdo: "bdo",
288  Hr: "hr",
289  Br: "br",
290  H1: "h1",
291  H2: "h2",
292  H3: "h3",
293  H4: "h4",
294  H5: "h5",
295  H6: "h6",
296  UL: "ul",
297  LI: "li",
298  OL: "ol",
299  DL: "dl",
300  DT: "dt",
301  DD: "dd",
302  Pre: "pre",
303  Address: "address",
304  BlockQuote: "blockquote",
305  Ins: "ins",
306  Del: "del",
307  Q: "q",
308  Em: "em",
309  Strong: "strong",
310  Dfn: "dfn",
311  Code: "code",
312  Samp: "samp",
313  Kbd: "kbd",
314  Var: "var",
315  Cite: "cite",
316  Abbr: "abbr",
317  Acronym: "acronym",
318  Sub: "sub",
319  Sup: "sup",
320  TT: "tt",
321  Big: "big",
322  Small: "small",
323  Table: "table",
324  Caption: "caption",
325  THead: "thead",
326  TFoot: "tfoot",
327  TBody: "tbody",
328  ColGroup: "colgroup",
329  Col: "col",
330  TR: "tr",
331  TH: "th",
332  TD: "td",
333  Article: "article",
334  Aside: "aside",
335  Audio: "audio",
336  Bdi: "bdi",
337  Canvas: "canvas",
338  Command: "command",
339  Datalist: "datalist",
340  Details: "details",
341  Embed: "embed",
342  FigCaption: "figcaption",
343  Figure: "figure",
344  Footer: "footer",
345  Header: "header",
346  Hgroup: "hgroup",
347  Keygen: "keygen",
348  Mark: "mark",
349  Meter: "meter",
350  Nav: "nav",
351  Output: "output",
352  Progress: "progress",
353  Rp: "rp",
354  Rt: "rt",
355  Ruby: "ruby",
356  Section: "section",
357  Source: "source",
358  Summary: "summary",
359  Time: "time",
360  Track: "track",
361  Video: "video",
362  Wbr: "wbr"
363 };
364 var GroupElements = {
365  SpecialExtra: function() { return [E.ObjectElement, E.Applet, E.Img, E.Map, E.IFrame, E.Canvas, E.Command, E.Figure]; },
366  SpecialBasic: function() { return [E.Br, E.Span, E.Bdo]; },
367  Special: function() { 
368   var res = this.SpecialBasic();
369   return res.concat(this.SpecialExtra());
370  },
371  FontStyleExtra: function() { return [E.Big, E.Small, E.Font, E.BaseFont]; },
372  FontStyleBasic: function() { return [E.TT, E.I, E.B, E.U, E.S, E.Strike]; },
373  FontStyle: function() { 
374   var res = this.FontStyleBasic();
375   return res.concat(this.FontStyleExtra());
376  },
377  PhraseExtra: function() { return [E.Sub, E.Sup]; },
378  PhraseBasic: function() { return [E.Em, E.Strong, E.Dfn, E.Code, E.Q, E.Samp, E.Kbd, E.Var, E.Cite, E.Abbr, E.Acronym]; },
379  Phrase: function() {
380   var res = this.PhraseBasic();
381   return res.concat(this.PhraseExtra());
382  },
383  InlineForms: function() { return [E.Input, E.Select, E.TextArea, E.Label, E.Button, E.Datalist, E.Keygen, E.Meter, E.Output]; },
384  MiscInline: function() { return [E.Ins, E.Del, E.Script, E.Progress]; },
385  Misc: function() {
386   var res = [E.NoScript];
387   return res.concat(this.MiscInline());
388  },
389  Inline: function() {
390   var res = [E.A, E.Bdi, E.Mark, E.Wbr, E.Track, E.Time];
391   res = res.concat(this.Special());
392   res = res.concat(this.FontStyle());
393   res = res.concat(this.Phrase());
394   return res.concat(this.InlineForms());
395  },
396  InlineAndTextLevel: function() { 
397   var res = this.Inline();
398   return res.concat(this.MiscInline());
399  },
400  Heading: function() { return [E.H1, E.H2, E.H3, E.H4, E.H5, E.H6]; },
401  Lists: function() { return [E.UL, E.OL, E.DL, E.Menu, E.Dir]; },
402  BlockText: function() { return [E.Pre, E.Hr, E.BlockQuote, E.Address, E.Center, E.NoFrames]; },
403  Block: function() { 
404   var res = [E.P, E.Div, E.Section, E.Article, E.Aside, E.IsIndex, E.FieldSet, E.Table, E.Footer, E.Header, E.Hgroup, E.Nav];
405   res = res.concat(this.Heading());
406   res = res.concat(this.Lists());
407   return res.concat(this.BlockText());
408  },
409  Flow: function() { 
410   var res = [E.Form, E.Video, E.Audio, E.Embed, E.Details];
411   res = res.concat(this.Block());
412   res = res.concat(this.Inline());
413   return res.concat(this.Misc());
414  },
415  AContent: function() { 
416   var res = this.Special();
417   res = res.concat(this.FontStyle());
418   res = res.concat(this.Phrase());
419   res = res.concat(this.InlineForms());
420   return res.concat(this.MiscInline());
421  },
422  PreContent: function() { 
423   var res = [E.A];
424   res = res.concat(this.SpecialBasic());
425   res = res.concat(this.FontStyleBasic());
426   res = res.concat(this.PhraseBasic());
427   res = res.concat(this.InlineForms());
428   return res.concat(this.MiscInline());
429  },
430  FormContent: function() { 
431   var res = this.Block();
432   res = res.concat(this.Inline());
433   return res.concat(this.Misc());
434  },
435  ButtonContent: function() { 
436   var res = [E.P, E.Div, E.Table, E.Br, E.Span, E.Bdo, E.ObjectElement, E.Applet, E.Img, E.Map];
437   res = res.concat(this.Heading());
438   res = res.concat(this.Lists());
439   res = res.concat(this.BlockText());
440   res = res.concat(this.FontStyle());
441   res = res.concat(this.Phrase());
442   return res.concat(this.Misc());
443  },
444  HeadMisc: function() { return [E.Script, E.Style, E.Meta, E.Link, E.ObjectElement, E.IsIndex]; },
445  Media: function() {
446   var res = [E.Track, E.Source];
447   return res.concat(this.InlineAndTextLevel());
448  }
449 };
450 var GroupAttributes = {
451  GlobalAttributes: function() { return [
452   this.createAttr(A.AccessKey, ASPx.HtmlEditorClasses.DocumentType.Both),
453   this.createAttr(A.Class, ASPx.HtmlEditorClasses.DocumentType.Both),
454   this.createAttr(A.ContentEditable, ASPx.HtmlEditorClasses.DocumentType.Both, ["true", "false"]),
455   this.createAttr(A.Dir, ASPx.HtmlEditorClasses.DocumentType.Both, AttributeValueListConst.Direction),
456   this.createAttr(A.Hidden, ASPx.HtmlEditorClasses.DocumentType.Both, ["true", "false"]),
457   this.createAttr(A.ID, ASPx.HtmlEditorClasses.DocumentType.Both),
458   this.createAttr(A.Lang, ASPx.HtmlEditorClasses.DocumentType.Both),
459   this.createAttr(A.Spellcheck, ASPx.HtmlEditorClasses.DocumentType.Both, ["true", "false"]),
460   this.createAttr(A.Style, ASPx.HtmlEditorClasses.DocumentType.Both),
461   this.createAttr(A.TabIndex, ASPx.HtmlEditorClasses.DocumentType.Both),
462   this.createAttr(A.Title, ASPx.HtmlEditorClasses.DocumentType.Both),
463   this.createAttr(A.Translate, ASPx.HtmlEditorClasses.DocumentType.Both)
464  ];},
465  CoreAttrs: function() { return [
466   this.createAttr(A.ID, ASPx.HtmlEditorClasses.DocumentType.Both),
467   this.createAttr(A.Class, ASPx.HtmlEditorClasses.DocumentType.Both),
468   this.createAttr(A.Style, ASPx.HtmlEditorClasses.DocumentType.Both),
469   this.createAttr(A.Title, ASPx.HtmlEditorClasses.DocumentType.Both),
470   this.createAttr(A.AccessKey, ASPx.HtmlEditorClasses.DocumentType.Both),
471   this.createAttr(A.TabIndex, ASPx.HtmlEditorClasses.DocumentType.Both),
472   this.createAttr(A.ContextMenu, ASPx.HtmlEditorClasses.DocumentType.HTML5),
473   this.createAttr(A.Draggable, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["copy", "move", "link"]),
474   this.createAttr(A.Dropzone, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["true", "false", "auto"]),
475   this.createAttr(A.Hidden, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["true", "false"]),
476   this.createAttr(A.Spellcheck, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["true", "false"]),
477   this.createAttr(A.ContentEditable, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["true", "false"])
478  ];},
479  DataCellHAlign: function() { return [
480   this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellHAlign),
481   this.createAttr(A.Char, ASPx.HtmlEditorClasses.DocumentType.XHTML),
482   this.createAttr(A.CharOffset, ASPx.HtmlEditorClasses.DocumentType.XHTML)
483  ];},
484  HeaderCellHAlign: function() { return [
485   this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellHAlign),
486   this.createAttr(A.Char, ASPx.HtmlEditorClasses.DocumentType.XHTML),
487   this.createAttr(A.CharOffset, ASPx.HtmlEditorClasses.DocumentType.XHTML)
488  ];},
489  I18n: function() { return [
490   this.createAttr(A.Lang, ASPx.HtmlEditorClasses.DocumentType.Both),
491   this.createAttr(A.XmlLang, ASPx.HtmlEditorClasses.DocumentType.XHTML),
492   this.createAttr(A.Dir, ASPx.HtmlEditorClasses.DocumentType.Both, AttributeValueListConst.Direction)
493  ];},
494  Events: function() { return [
495   this.createEventAttr(A.OnClick, ASPx.HtmlEditorClasses.DocumentType.Both),
496   this.createEventAttr(A.OnDblClick, ASPx.HtmlEditorClasses.DocumentType.Both),
497   this.createEventAttr(A.OnDrag, ASPx.HtmlEditorClasses.DocumentType.HTML5),
498   this.createEventAttr(A.OnDragEnd, ASPx.HtmlEditorClasses.DocumentType.HTML5),
499   this.createEventAttr(A.OnDragEnter, ASPx.HtmlEditorClasses.DocumentType.HTML5),
500   this.createEventAttr(A.OnDragLeave, ASPx.HtmlEditorClasses.DocumentType.HTML5),
501   this.createEventAttr(A.OnDragOver, ASPx.HtmlEditorClasses.DocumentType.HTML5),
502   this.createEventAttr(A.OnDragStart, ASPx.HtmlEditorClasses.DocumentType.HTML5),
503   this.createEventAttr(A.OnDrop, ASPx.HtmlEditorClasses.DocumentType.HTML5),
504   this.createEventAttr(A.OnMouseDown, ASPx.HtmlEditorClasses.DocumentType.Both),
505   this.createEventAttr(A.OnMouseUp, ASPx.HtmlEditorClasses.DocumentType.Both),
506   this.createEventAttr(A.OnMouseOver, ASPx.HtmlEditorClasses.DocumentType.Both),
507   this.createEventAttr(A.OnMouseMove, ASPx.HtmlEditorClasses.DocumentType.Both),
508   this.createEventAttr(A.OnMouseOut, ASPx.HtmlEditorClasses.DocumentType.Both),
509   this.createEventAttr(A.OnMouseWheel, ASPx.HtmlEditorClasses.DocumentType.HTML5),
510   this.createEventAttr(A.OnScroll, ASPx.HtmlEditorClasses.DocumentType.HTML5),
511   this.createEventAttr(A.OnKeyPress, ASPx.HtmlEditorClasses.DocumentType.Both),
512   this.createEventAttr(A.OnKeyDown, ASPx.HtmlEditorClasses.DocumentType.Both),
513   this.createEventAttr(A.OnKeyUp, ASPx.HtmlEditorClasses.DocumentType.Both)
514  ];},
515  MediaEvents: function() { return [
516   this.createEventAttr(A.OnCanPlay, ASPx.HtmlEditorClasses.DocumentType.HTML5),
517   this.createEventAttr(A.OnCanPlayThrough, ASPx.HtmlEditorClasses.DocumentType.HTML5),
518   this.createEventAttr(A.OnDurationChange, ASPx.HtmlEditorClasses.DocumentType.HTML5),
519   this.createEventAttr(A.OnEmptied, ASPx.HtmlEditorClasses.DocumentType.HTML5),
520   this.createEventAttr(A.OnEnded, ASPx.HtmlEditorClasses.DocumentType.HTML5),
521   this.createEventAttr(A.OnError, ASPx.HtmlEditorClasses.DocumentType.HTML5),
522   this.createEventAttr(A.OnLoadeddata, ASPx.HtmlEditorClasses.DocumentType.HTML5),
523   this.createEventAttr(A.OnLoadedmetadata, ASPx.HtmlEditorClasses.DocumentType.HTML5),
524   this.createEventAttr(A.OnLoadstart, ASPx.HtmlEditorClasses.DocumentType.HTML5),
525   this.createEventAttr(A.OnPause, ASPx.HtmlEditorClasses.DocumentType.HTML5),
526   this.createEventAttr(A.OnPlay, ASPx.HtmlEditorClasses.DocumentType.HTML5),
527   this.createEventAttr(A.OnPlaying, ASPx.HtmlEditorClasses.DocumentType.HTML5),
528   this.createEventAttr(A.OnProgress, ASPx.HtmlEditorClasses.DocumentType.HTML5),
529   this.createEventAttr(A.OnRatechange, ASPx.HtmlEditorClasses.DocumentType.HTML5),
530   this.createEventAttr(A.OnReadystatechange, ASPx.HtmlEditorClasses.DocumentType.HTML5),
531   this.createEventAttr(A.OnSeeked, ASPx.HtmlEditorClasses.DocumentType.HTML5),
532   this.createEventAttr(A.OnSeeking, ASPx.HtmlEditorClasses.DocumentType.HTML5),
533   this.createEventAttr(A.OnStalled, ASPx.HtmlEditorClasses.DocumentType.HTML5),
534   this.createEventAttr(A.OnSuspend, ASPx.HtmlEditorClasses.DocumentType.HTML5),
535   this.createEventAttr(A.OnTimeupdate, ASPx.HtmlEditorClasses.DocumentType.Both),
536   this.createEventAttr(A.OnVolumechange, ASPx.HtmlEditorClasses.DocumentType.Both),
537   this.createEventAttr(A.OnWaiting, ASPx.HtmlEditorClasses.DocumentType.HTML5)
538  ];},
539  InputEvents: function() { return [
540   this.createEventAttr(A.OnBlur, ASPx.HtmlEditorClasses.DocumentType.Both),
541   this.createEventAttr(A.OnChange, ASPx.HtmlEditorClasses.DocumentType.Both),
542   this.createEventAttr(A.OnContextMenu, ASPx.HtmlEditorClasses.DocumentType.HTML5),
543   this.createEventAttr(A.OnFocus, ASPx.HtmlEditorClasses.DocumentType.Both),
544   this.createEventAttr(A.OnFormChange, ASPx.HtmlEditorClasses.DocumentType.HTML5),
545   this.createEventAttr(A.OnFormInput, ASPx.HtmlEditorClasses.DocumentType.HTML5),
546   this.createEventAttr(A.OnInput, ASPx.HtmlEditorClasses.DocumentType.HTML5),
547   this.createEventAttr(A.OnInvalid, ASPx.HtmlEditorClasses.DocumentType.HTML5),
548   this.createEventAttr(A.OnReset, ASPx.HtmlEditorClasses.DocumentType.XHTML),
549   this.createEventAttr(A.OnSelect, ASPx.HtmlEditorClasses.DocumentType.Both),
550   this.createEventAttr(A.OnSubmit, ASPx.HtmlEditorClasses.DocumentType.Both)
551  ];},
552  Focus: function() { return [
553   this.createEventAttr(A.OnFocus, ASPx.HtmlEditorClasses.DocumentType.Both),
554   this.createEventAttr(A.OnBlur, ASPx.HtmlEditorClasses.DocumentType.Both)
555  ];},
556  FormEvents: function() { 
557   var res = this.Focus();
558   return res.concat(this.InputEvents());
559  },
560  Attrs: function() {
561   var res = this.CoreAttrs();
562   res = res.concat(this.I18n());
563   return res.concat(this.Events());
564  },
565  AttrsAndTextAlign: function() {
566   var res = [this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.TableAlign)];
567   return res.concat(this.Attrs());
568  },
569  Cell: function() {
570   var res = [
571      this.createAttr(A.VerticalAlign, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellVAlign),
572      this.createAttr(A.Abbr, ASPx.HtmlEditorClasses.DocumentType.XHTML),
573      this.createAttr(A.Axis, ASPx.HtmlEditorClasses.DocumentType.XHTML),
574      this.createAttr(A.Headers, ASPx.HtmlEditorClasses.DocumentType.Both),
575      this.createAttr(A.Scope, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.Scope),
576      this.createAttr(A.RowSpan, ASPx.HtmlEditorClasses.DocumentType.Both),
577      this.createAttr(A.ColSpan, ASPx.HtmlEditorClasses.DocumentType.Both),
578      this.createAttr(A.NoWrap, ASPx.HtmlEditorClasses.DocumentType.XHTML),
579      this.createAttr(A.BgColor,
579 ASPx.HtmlEditorClasses.DocumentType.XHTML),
580      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.XHTML),
581      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.XHTML)
582   ];
583   res = res.concat(this.Attrs());
584   return res.concat(this.DataCellHAlign());
585  },
586  Col: function() {
587   var res = [
588      this.createAttr(A.VerticalAlign, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellVAlign),
589      this.createAttr(A.Span, ASPx.HtmlEditorClasses.DocumentType.Both),
590      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.XHTML)
591   ];
592   res = res.concat(this.Attrs());
593   return res.concat(this.DataCellHAlign());
594  },
595  createAttr: function(name, documentType, valueList, iconType) {
596   return { 
597    name: name,
598    documentType: documentType,
599    valueList: valueList ? valueList : [],
600    iconType: iconType ? iconType : ASPx.HtmlEditorClasses.IconType.Field
601   };
602  },
603  createEventAttr: function(name, documentType, valueList, iconType) {
604   return this.createAttr(name, documentType, null, ASPx.HtmlEditorClasses.IconType.Event);
605  }
606 };
607 var DtdElementDeclaration = ASPx.CreateClass(null, {
608  constructor: function(documentType) {
609   this.documentType = documentType;
610   this.elements = {};
611   this.initElements();
612   if(this.documentType != ASPx.HtmlEditorClasses.DocumentType.Both)
613    this.filterContentElementsAndAttributes();
614  },
615  initElements: function() {
616   this.addElement(E.Video, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
617    function() {
618     var res = [
619      this.createAttr(A.AutoPlay, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["autoplay"]),
620      this.createAttr(A.Controls, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["controls"]),
621      this.createAttr(A.Loop, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["loop"]),
622      this.createAttr(A.PreLoad, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["auto", "metadata", "none"]),
623      this.createAttr(A.Muted, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["muted"]),
624      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.HTML5),
625      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.HTML5),
626      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.HTML5),
627      this.createAttr(A.Poster, ASPx.HtmlEditorClasses.DocumentType.HTML5)
628     ];
629     res = res.concat(GroupAttributes.Attrs());
630     return res.concat(GroupAttributes.MediaEvents());
631    }.aspxBind(this)(), 
632    [E.Source, E.Track]
633   );
634   this.addElement(E.Audio, ASPx.HtmlEditorClasses.DocumentType.HTML5,
635    function() {
636     var res = [
637      this.createAttr(A.AutoPlay, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["autoplay"]),
638      this.createAttr(A.Controls, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["controls"]),
639      this.createAttr(A.Loop, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["loop"]),
640      this.createAttr(A.PreLoad, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["auto", "metadata", "none"]),
641      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.HTML5)
642     ];
643     res = res.concat(GroupAttributes.Attrs());
644     return res.concat(GroupAttributes.MediaEvents());
645    }.aspxBind(this)(), 
646    [E.Source, E.Track]
647   );
648   this.addElement(E.Source, ASPx.HtmlEditorClasses.DocumentType.HTML5,
649    function() {
650     var res = [
651      this.createAttr(A.Media, ASPx.HtmlEditorClasses.DocumentType.HTML5),
652      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.HTML5),
653      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.HTML5)
654     ];
655     return res.concat(GroupAttributes.Attrs());
656    }.aspxBind(this)()
657   );
658   this.addElement(E.Track, ASPx.HtmlEditorClasses.DocumentType.HTML5,
659    function() {
660     var res = [
661      this.createAttr(A.Default, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["default"]),
662      this.createAttr(A.Kind, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["captions", "chapters", "descriptions", "metadata", "subtitles"]),
663      this.createAttr(A.Label, ASPx.HtmlEditorClasses.DocumentType.HTML5),
664      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.HTML5),
665      this.createAttr(A.SrcLang, ASPx.HtmlEditorClasses.DocumentType.HTML5)
666     ];
667     return res.concat(GroupAttributes.Attrs());
668    }.aspxBind(this)()
669   );
670   this.addElement(E.Html, ASPx.HtmlEditorClasses.DocumentType.HTML5,
671    [this.createAttr(A.Manifest, ASPx.HtmlEditorClasses.DocumentType.HTML5)], 
672    [E.Head, E.Body]
673   );
674   this.addElement(E.Head, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.GlobalAttributes(),
675    (function() {
676     var res = [E.Title, E.BaseElement, E.NoScript];
677     return res.concat(GroupElements.HeadMisc());
678    })()
679   );
680   this.addElement(E.Title, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.GlobalAttributes());
681   this.addElement(E.BaseElement, ASPx.HtmlEditorClasses.DocumentType.Both,
682    function() {
683     var res = [
684       this.createAttr(A.Href, ASPx.HtmlEditorClasses.DocumentType.Both),
685       this.createAttr(A.Target, ASPx.HtmlEditorClasses.DocumentType.Both)
686     ];
687     return res.concat(GroupAttributes.GlobalAttributes());
688    }.aspxBind(this)()
689   );
690   this.addElement(E.Meta, ASPx.HtmlEditorClasses.DocumentType.Both,
691    function() {
692     var res = [
693       this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both, ["application-name", "author", "description", "generator", "keywords"]),
694       this.createAttr(A.HttpEquiv, ASPx.HtmlEditorClasses.DocumentType.Both, ["content-type", "default-style", "refresh"]),
695       this.createAttr(A.Charset, ASPx.HtmlEditorClasses.DocumentType.Both),
696       this.createAttr(A.Content, ASPx.HtmlEditorClasses.DocumentType.HTML5)
697     ];
698     return res.concat(GroupAttributes.GlobalAttributes());
699    }.aspxBind(this)()
700   );
701   this.addElement(E.Style, ASPx.HtmlEditorClasses.DocumentType.Both,
702    function() {
703     var res = [
704      this.createAttr(A.Media, ASPx.HtmlEditorClasses.DocumentType.HTML5),
705      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both, ["text/css"]),
706      this.createAttr(A.Title, ASPx.HtmlEditorClasses.DocumentType.Both)
707     ];
708     return res.concat(GroupAttributes.GlobalAttributes());
709    }.aspxBind(this)()
710   );
711   this.addElement(E.Link, ASPx.HtmlEditorClasses.DocumentType.Both,
712    function() {
713     var res = [
714      this.createAttr(A.Href, ASPx.HtmlEditorClasses.DocumentType.HTML5),
715      this.createAttr(A.CrossOrigin, ASPx.HtmlEditorClasses.DocumentType.Both, ["anonymous", "use-credentials"]),
716      this.createAttr(A.Rel, ASPx.HtmlEditorClasses.DocumentType.Both, ["alternate", "archives", "author", "bookmark", "external", "first", "help", "icon", "last", "license", "next", "nofollow", "noreferrer", "pingback", "prefetch", "prev", "search", "sidebar", "stylesheet", "tag", "up"]),
717      this.createAttr(A.Media, ASPx.HtmlEditorClasses.DocumentType.Both),
718      this.createAttr(A.HrefLang, ASPx.HtmlEditorClasses.DocumentType.Both),
719      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both),
720      this.createAttr(A.Sizes, ASPx.HtmlEditorClasses.DocumentType.Both),
721      this.createAttr(A.Title, ASPx.HtmlEditorClasses.DocumentType.Both)
722     ];
723     return res.concat(GroupAttributes.GlobalAttributes());
724    }.aspxBind(this)()
725   );
726   this.addElement(E.Body, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.GlobalAttributes(), GroupElements.Flow());
727   this.addElement(E.Script, ASPx.HtmlEditorClasses.DocumentType.Both,
728    function() {
729     return [
730      this.createAttr(A.ID, ASPx.HtmlEditorClasses.DocumentType.Both),
731      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both, ["text/javascript"]),
732      this.createAttr(A.Charset, ASPx.HtmlEditorClasses.DocumentType.Both),
733      this.createAttr(A.Language, ASPx.HtmlEditorClasses.DocumentType.Both),
734      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.Both),
735      this.createAttr(A.Defer, ASPx.HtmlEditorClasses.DocumentType.Both, ["defer"]),
736      this.createAttr(A.Async, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["async"])
737     ];
738    }.aspxBind(this)()
739   );
740   this.addElement(E.IFrame, ASPx.HtmlEditorClasses.DocumentType.Both,
741    function() {
742     var res = [
743      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
744      this.createAttr(A.LongDesc, ASPx.HtmlEditorClasses.DocumentType.XHTML),
745      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.Both),
746      this.createAttr(A.FrameBorder, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.FrameBorder),
747      this.createAttr(A.MarginWidth, ASPx.HtmlEditorClasses.DocumentType.XHTML),
748      this.createAttr(A.MarginHeight, ASPx.HtmlEditorClasses.DocumentType.XHTML),
749      this.createAttr(A.Scrolling, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.Scrolling),
750      this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.ImageAlign),
751      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.Both),
752      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.Both)
753     ];
754     return res.concat(GroupAttributes.CoreAttrs());
755    }.aspxBind(this)(), 
756    GroupElements.Flow()
757   );
758   this.addElement(E.Form, ASPx.HtmlEditorClasses.DocumentType.Both, 
759    function() {
760     var res = [
761      this.createAttr(A.Action, ASPx.HtmlEditorClasses.DocumentType.Both),
762      this.createAttr(A.Method, ASPx.HtmlEditorClasses.DocumentType.Both, AttributeValueListConst.Method),
763      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
764      this.createAttr(A.EncType, ASPx.HtmlEditorClasses.DocumentType.Both),
765      this.createAttr(A.Accept, ASPx.HtmlEditorClasses.DocumentType.XHTML),
766      this.createAttr(A.AcceptCharset, ASPx.HtmlEditorClasses.DocumentType.Both),
767      this.createAttr(A.Target, ASPx.HtmlEditorClasses.DocumentType.Both)
768     ];
769     res = res.concat(GroupAttributes.FormEvents());
770     return res.concat(GroupAttributes.Attrs());
771    }.aspxBind(this)(), 
772    GroupElements.FormContent()
773   );
774   this.addElement(E.Label, ASPx.HtmlEditorClasses.DocumentType.Both, 
775    function() {
776     var res = [
777      this.createAttr(A.For, ASPx.HtmlEditorClasses.DocumentType.Both),
778      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5)
779     ];
780     res = res.concat(GroupAttributes.Focus());
781     return res.concat(GroupAttributes.Attrs());
782    }.aspxBind(this)(),
783    GroupElements.InlineAndTextLevel()
784   );
785   this.addElement(E.Input, ASPx.HtmlEditorClasses.DocumentType.Both,
786    function() {
787     var res = [
788      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both, AttributeValueListConst.InputType),
789      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
790      this.createAttr(A.Value, ASPx.HtmlEditorClasses.DocumentType.Both),
791      this.createAttr(A.Checked, ASPx.HtmlEditorClasses.DocumentType.Both),
792      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.Both),
793      this.createAttr(A.ReadOnly, ASPx.HtmlEditorClasses.DocumentType.Both),
794      this.createAttr(A.Size, ASPx.HtmlEditorClasses.DocumentType.Both),
795      this.createAttr(A.MaxLength, ASPx.HtmlEditorClasses.DocumentType.Both),
796      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.Both),
797      this.createAttr(A.Alt, ASPx.HtmlEditorClasses.DocumentType.Both),
798      this.createAttr(A.UseMap, ASPx.HtmlEditorClasses.DocumentType.Both),
799      this.createAttr(A.Accept, ASPx.HtmlEditorClasses.DocumentType.Both),
800      this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.ImageAlign),
801      this.createAttr(A.AutoComplete, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["on", "off"]),
802      this.createAttr(A.AutoFocus, ASPx.HtmlEditorClasses.DocumentType.HTML5),
803      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5),
804      this.createAttr(A.FormAction, ASPx.HtmlEditorClasses.DocumentType.HTML5),
805      this.createAttr(A.FormEncType, ASPx.HtmlEditorClasses.DocumentType.HTML5),
806      this.createAttr(A.FormMethod, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["get", "post"]),
807      this.createAttr(A.FormNoValidate, ASPx.HtmlEditorClasses.DocumentType.HTML5),
808      this.createAttr(A.FormTarget, ASPx.HtmlEditorClasses.DocumentType.HTML5),
809      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.HTML5),
810      this.createAttr(A.List, ASPx.HtmlEditorClasses.DocumentType.HTML5),
811      this.createAttr(A.Max, ASPx.HtmlEditorClasses.DocumentType.HTML5),
812      this.createAttr(A.Min, ASPx.HtmlEditorClasses.DocumentType.HTML5),
813      this.createAttr(A.Multiple, ASPx.HtmlEditorClasses.DocumentType.HTML5),
814      this.createAttr(A.Pattern, ASPx.HtmlEditorClasses.DocumentType.HTML5),
815      this.createAttr(A.Placeholder, ASPx.HtmlEditorClasses.DocumentType.HTML5),
816      this.createAttr(A.Required, ASPx.HtmlEditorClasses.DocumentType.HTML5),
817      this.createAttr(A.Step, ASPx.HtmlEditorClasses.DocumentType.HTML5),
818      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.HTML5)
819     ];
820     res = res.concat(GroupAttributes.FormEvents());
821     return res.concat(GroupAttributes.Attrs());
822    }.aspxBind(this)()
823   );
824   this.addElement(E.Select, ASPx.HtmlEditorClasses.DocumentType.Both, 
825    function() {
826     var res = [
827      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
828      this.createAttr(A.Size, ASPx.HtmlEditorClasses.DocumentType.Both),
829      this.createAttr(A.Multiple, ASPx.HtmlEditorClasses.DocumentType.Both),
830      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.Both)
831     ];
832     res = res.concat(GroupAttributes.FormEvents());
833     return res.concat(GroupAttributes.Attrs());
834    }.aspxBind(this)(), 
835    [E.OptGroup, E.Option]
836   );
837   this.addElement(E.Option, ASPx.HtmlEditorClasses.DocumentType.Both,
838    function() {
839     var res = [
840      this.createAttr(A.Selected, ASPx.HtmlEditorClasses.DocumentType.Both),
841      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.Both),
842      this.createAttr(A.Label, ASPx.HtmlEditorClasses.DocumentType.Both),
843      this.createAttr(A.Value, ASPx.HtmlEditorClasses.DocumentType.Both)
844     ];
845     res = res.concat(GroupAttributes.FormEvents());
846     return res.concat(GroupAttributes.Attrs());
847    }.aspxBind(this)()
848   );
849   this.addElement(E.OptGroup, ASPx.HtmlEditorClasses.DocumentType.Both,
850    function() {
851     var res = [
852      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.Both),
853      this.createAttr(A.Label, ASPx.HtmlEditorClasses.DocumentType.Both)
854     ];
855     return res.concat(GroupAttributes.Attrs());
856    }.aspxBind(this)()
857   );
858   this.addElement(E.TextArea, ASPx.HtmlEditorClasses.DocumentType.Both,
859    function() {
860     var res = [
861      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
862      this.createAttr(A.Rows, ASPx.HtmlEditorClasses.DocumentType.Both),
863      this.createAttr(A.Cols, ASPx.HtmlEditorClasses.DocumentType.Both),
864      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.Both),
865      this.createAttr(A.ReadOnly, ASPx.HtmlEditorClasses.DocumentType.Both),
866      this.createAttr(A.AutoFocus, ASPx.HtmlEditorClasses.DocumentType.HTML5),
867      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5),
868      this.createAttr(A.MaxLength, ASPx.HtmlEditorClasses.DocumentType.HTML5),
869      this.createAttr(A.Placeholder, ASPx.HtmlEditorClasses.DocumentType.HTML5),
870      this.createAttr(A.Required, ASPx.HtmlEditorClasses.DocumentType.HTML5),
871      this.createAttr(A.Wrap, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["hard", "soft"])
872     ];
873     res = res.concat(GroupAttributes.FormEvents());
874     return res.concat(GroupAttributes.Attrs());
875    }.aspxBind(this)()
876   );
877   this.addElement(E.Datalist, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), [E.Option]);
878   this.addElement(E.Button, ASPx.HtmlEditorClasses.DocumentType.Both, 
879    function() {
880      var res = [
881      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
882      this.createAttr(A.Value, ASPx.HtmlEditorClasses.DocumentType.Both),
883      this.creat
883eAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both, AttributeValueListConst.ButtonType),
884      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.Both),
885      this.createAttr(A.AutoFocus, ASPx.HtmlEditorClasses.DocumentType.HTML5),
886      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5),
887      this.createAttr(A.FormAction, ASPx.HtmlEditorClasses.DocumentType.HTML5),
888      this.createAttr(A.FormEncType, ASPx.HtmlEditorClasses.DocumentType.HTML5),
889      this.createAttr(A.FormMethod, ASPx.HtmlEditorClasses.DocumentType.HTML5),
890      this.createAttr(A.FormNoValidate, ASPx.HtmlEditorClasses.DocumentType.HTML5),
891      this.createAttr(A.FormTarget, ASPx.HtmlEditorClasses.DocumentType.HTML5)
892     ];
893     res = res.concat(GroupAttributes.FormEvents());
894     return res.concat(GroupAttributes.Attrs());
895    }.aspxBind(this)(), 
896    GroupElements.ButtonContent()
897   );
898   this.addElement(E.Keygen, ASPx.HtmlEditorClasses.DocumentType.HTML5,
899    function() {
900     var res = [
901      this.createAttr(A.AutoFocus, ASPx.HtmlEditorClasses.DocumentType.HTML5),
902      this.createAttr(A.Challenge, ASPx.HtmlEditorClasses.DocumentType.HTML5),
903      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.HTML5),
904      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5),
905      this.createAttr(A.Keytype, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["rsa", "dsa", "ec"]),
906      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.HTML5)
907     ];
908     res = res.concat(GroupAttributes.FormEvents());
909     return res.concat(GroupAttributes.Attrs());
910    }.aspxBind(this)()
911   );
912   this.addElement(E.Output, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
913    function() {
914     var res = [
915      this.createAttr(A.For, ASPx.HtmlEditorClasses.DocumentType.HTML5),
916      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5),
917      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.HTML5)
918     ];
919     res = res.concat(GroupAttributes.FormEvents());
920     return res.concat(GroupAttributes.Attrs());
921    }.aspxBind(this)(), 
922    GroupElements.Flow()
923   );
924   this.addElement(E.Progress, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
925    function() {
926     var res = [
927      this.createAttr(A.Max, ASPx.HtmlEditorClasses.DocumentType.HTML5),
928      this.createAttr(A.Value, ASPx.HtmlEditorClasses.DocumentType.HTML5)
929     ];
930     return res.concat(GroupAttributes.Attrs());
931    }.aspxBind(this)(), 
932    GroupElements.Flow()
933   );
934   this.addElement(E.Table, ASPx.HtmlEditorClasses.DocumentType.Both, 
935    function() {
936     var res = [
937      this.createAttr(A.Summary, ASPx.HtmlEditorClasses.DocumentType.XHTML),
938      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.XHTML),
939      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.XHTML),
940      this.createAttr(A.Border, ASPx.HtmlEditorClasses.DocumentType.Both),
941      this.createAttr(A.BorderColor, ASPx.HtmlEditorClasses.DocumentType.XHTML),
942      this.createAttr(A.Frame, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.TableFrame),
943      this.createAttr(A.Rules, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.TableRules),
944      this.createAttr(A.CellPadding, ASPx.HtmlEditorClasses.DocumentType.XHTML),
945      this.createAttr(A.CellSpacing, ASPx.HtmlEditorClasses.DocumentType.XHTML),
946      this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.TableAlign),
947      this.createAttr(A.BgColor, ASPx.HtmlEditorClasses.DocumentType.XHTML)
948     ];
949     return res.concat(GroupAttributes.Attrs());
950    }.aspxBind(this)(), 
951    [E.Caption, E.THead, E.TFoot, E.TBody, E.Col, E.ColGroup, E.TR]
952   );
953   this.addElement(E.U, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
954   this.addElement(E.S, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
955   this.addElement(E.Strike, ASPx.HtmlEditorClasses.DocumentType.XHTML, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
956   this.addElement(E.Font, ASPx.HtmlEditorClasses.DocumentType.XHTML, 
957    function() {
958     var res = [
959      this.createAttr(A.Size, ASPx.HtmlEditorClasses.DocumentType.XHTML),
960      this.createAttr(A.Color, ASPx.HtmlEditorClasses.DocumentType.XHTML),
961      this.createAttr(A.Face, ASPx.HtmlEditorClasses.DocumentType.XHTML)
962     ];
963     res = res.concat(GroupAttributes.CoreAttrs());
964     return res.concat(GroupAttributes.I18n());
965    }.aspxBind(this)(), 
966    GroupElements.InlineAndTextLevel()
967   );
968   this.addElement(E.Center, ASPx.HtmlEditorClasses.DocumentType.XHTML, GroupAttributes.Attrs(), GroupElements.Flow());
969   this.addElement(E.I, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
970   this.addElement(E.B, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
971   this.addElement(E.Meter, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
972    function() {
973     var res = [
974      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5),
975      this.createAttr(A.High, ASPx.HtmlEditorClasses.DocumentType.HTML5),
976      this.createAttr(A.Low, ASPx.HtmlEditorClasses.DocumentType.HTML5),
977      this.createAttr(A.Max, ASPx.HtmlEditorClasses.DocumentType.HTML5),
978      this.createAttr(A.Min, ASPx.HtmlEditorClasses.DocumentType.HTML5),
979      this.createAttr(A.Optimum, ASPx.HtmlEditorClasses.DocumentType.HTML5),
980      this.createAttr(A.Value, ASPx.HtmlEditorClasses.DocumentType.HTML5)
981     ];
982     return res.concat(GroupAttributes.Attrs());
983    }.aspxBind(this)(), 
984    GroupElements.Flow()
985   );
986   this.addElement(E.NoScript, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.Flow());
987   this.addElement(E.Div, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.Flow());
988   this.addElement(E.P, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.InlineAndTextLevel());
989   this.addElement(E.FieldSet, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), 
990    function() {
991     var res = [E.Legend, E.Form];
992     res = res.concat(GroupElements.Block());
993     res = res.concat(GroupElements.Inline());
994     return res.concat(GroupElements.Misc());
995    }.aspxBind(this)()
996   );
997   this.addElement(E.ObjectElement, ASPx.HtmlEditorClasses.DocumentType.Both, 
998    function() {
999     var res = [
1000      this.createAttr(A.Declare, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1001      this.createAttr(A.ClassID, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1002      this.createAttr(A.CodeBase, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1003      this.createAttr(A.Data, ASPx.HtmlEditorClasses.DocumentType.Both),
1004      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both),
1005      this.createAttr(A.CodeType, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1006      this.createAttr(A.Archive, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1007      this.createAttr(A.StandBy, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1008      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.Both),
1009      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.Both),
1010      this.createAttr(A.UseMap, ASPx.HtmlEditorClasses.DocumentType.Both),
1011      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
1012      this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.ImageAlign),
1013      this.createAttr(A.Border, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1014      this.createAttr(A.HSpace, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1015      this.createAttr(A.VSpace, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1016      this.createAttr(A.Form, ASPx.HtmlEditorClasses.DocumentType.HTML5)
1017     ];
1018     return res.concat(GroupAttributes.Attrs());
1019    }.aspxBind(this)(),
1020    (function() {
1021     var res = [E.Param, E.Form, E.Embed];
1022     res = res.concat(GroupElements.Block());
1023     res = res.concat(GroupElements.Inline());
1024     return res.concat(GroupElements.Misc());
1025    })()
1026   );
1027   this.addElement(E.Param, ASPx.HtmlEditorClasses.DocumentType.Both,
1028    function() {
1029     var res = [
1030      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both),
1031      this.createAttr(A.Value, ASPx.HtmlEditorClasses.DocumentType.Both),
1032      this.createAttr(A.ValueType, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.ValueType),
1033      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.XHTML)
1034     ];
1035     return res.concat(GroupAttributes.Attrs());
1036    }.aspxBind(this)()
1037   );
1038   this.addElement(E.Legend, ASPx.HtmlEditorClasses.DocumentType.Both, 
1039    function() {
1040     var res = [this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.LegendAlign)];
1041     return res.concat(GroupAttributes.Attrs());
1042    }.aspxBind(this)(),
1043    GroupElements.InlineAndTextLevel()
1044   );
1045   this.addElement(E.Span, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1046   this.addElement(E.A, ASPx.HtmlEditorClasses.DocumentType.Both, 
1047    function() {
1048     var res = [
1049      this.createAttr(A.Charset, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1050      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both),
1051      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1052      this.createAttr(A.Href, ASPx.HtmlEditorClasses.DocumentType.Both),
1053      this.createAttr(A.HrefLang, ASPx.HtmlEditorClasses.DocumentType.Both),
1054      this.createAttr(A.Rel, ASPx.HtmlEditorClasses.DocumentType.Both),
1055      this.createAttr(A.Rev, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1056      this.createAttr(A.Shape, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.Shape),
1057      this.createAttr(A.Coords, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1058      this.createAttr(A.Target, ASPx.HtmlEditorClasses.DocumentType.Both),
1059      this.createAttr(A.Media, ASPx.HtmlEditorClasses.DocumentType.HTML5) 
1060     ];
1061     res = res.concat(GroupAttributes.Focus());
1062     return res.concat(GroupAttributes.Attrs());
1063    }.aspxBind(this)(), 
1064    GroupElements.AContent()
1065   );
1066   this.addElement(E.Img, ASPx.HtmlEditorClasses.DocumentType.Both,
1067    function() {
1068     var res = [
1069      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.Both),
1070      this.createAttr(A.Alt, ASPx.HtmlEditorClasses.DocumentType.Both),
1071      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1072      this.createAttr(A.LongDesc, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1073      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.Both),
1074      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.Both ),
1075      this.createAttr(A.UseMap, ASPx.HtmlEditorClasses.DocumentType.Both),
1076      this.createAttr(A.IsMap, ASPx.HtmlEditorClasses.DocumentType.Both),
1077      this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.ImageAlign),
1078      this.createAttr(A.Border, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1079      this.createAttr(A.HSpace, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1080      this.createAttr(A.VSpace, ASPx.HtmlEditorClasses.DocumentType.XHTML)
1081     ];
1082     return res.concat(GroupAttributes.Attrs());
1083    }.aspxBind(this)()
1084   );
1085   this.addElement(E.Map, ASPx.HtmlEditorClasses.DocumentType.Both, 
1086    function() {
1087     var res = [
1088      this.createAttr(A.ID, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1089      this.createAttr(A.Name, ASPx.HtmlEditorClasses.DocumentType.Both)
1090     ];
1091     return res.concat(GroupAttributes.Attrs());
1092    }.aspxBind(this)(),
1093    (function() {
1094     var res = [E.Form, E.Area];
1095     res = res.concat(GroupElements.Block());
1096     return res.concat(GroupElements.Misc());
1097    })()
1098   );
1099   this.addElement(E.Area, ASPx.HtmlEditorClasses.DocumentType.Both,
1100    function() {
1101     var res = [
1102      this.createAttr(A.Shape, ASPx.HtmlEditorClasses.DocumentType.Both, AttributeValueListConst.Shape),
1103      this.createAttr(A.Coords, ASPx.HtmlEditorClasses.DocumentType.Both),
1104      this.createAttr(A.Href, ASPx.HtmlEditorClasses.DocumentType.Both),
1105      this.createAttr(A.NoHref, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1106      this.createAttr(A.Alt, ASPx.HtmlEditorClasses.DocumentType.Both),
1107      this.createAttr(A.Target, ASPx.HtmlEditorClasses.DocumentType.Both)
1108     ];
1109     res = res.concat(GroupAttributes.Focus());
1110     return res.concat(GroupAttributes.Attrs());
1111    }.aspxBind(this)()
1112   );
1113   this.addElement(E.Bdo, ASPx.HtmlEditorClasses.DocumentType.Both, 
1114    function() {
1115     var res = [
1116      this.createAttr(A.Lang, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1117      this.createAttr(A.XmlLang, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1118      this.createAttr(A.Dir, ASPx.HtmlEditorClasses.DocumentType.Both, AttributeValueListConst.Direction)
1119     ];
1120     res = res.concat(GroupAttributes.CoreAttrs());
1121     return res.concat(GroupAttributes.Events());
1122    }.aspxBind(this)(), 
1123    GroupElements.InlineAndTextLevel()
1124   );
1125   this.addElement(E.Hr, ASPx.HtmlEditorClasses.DocumentType.Both,
1126    function() {
1127     var res = [
1128      this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.Align),
1129      this.createAttr(A.NoShade, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1130      this.createAttr(A.Size, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1131      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.XHTML)
1132     ];
1133     return res.concat(GroupAttributes.Attrs());
1134    }.aspxBind(this)()
1135   );
1136   this.addElement(E.Br, ASPx.HtmlEditorClasses.DocumentType.Both,
1137    function() {
1138     var res = [this.createAttr(A.Clear, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.Clear)];
1139     return res.concat(GroupAttributes.CoreAttrs());
1140    }.aspxBind(this)()
1141   );
1142   this.addElement(E.H1, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.InlineAndTextLevel());
1143   this.addElement(E.H2, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.InlineAndTextLevel());
1144   this.addElement(E.H3, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.InlineAndTextLevel());
1145   this.addElement(E.H4, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.InlineAndTextLevel());
1146   this.addElement(E.H5, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.InlineAndTextLevel());
1147   this.addElement(E.H6, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.AttrsAndTextAlign(), GroupElements.InlineAndTextLevel());
1148   this.addElement(E.UL, ASPx.HtmlEditorClasses.DocumentType.Both, 
1149    function() {
1150     var res = [
1151      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.ULStyle),
1152      this.createAttr(A.Compact, ASPx.HtmlEditorClasses.DocumentType.XHTML)
1153     ];
1154     return res.concat(GroupAttributes.Attrs());
1155    }.aspxBind(this)(), 
1156    [E.LI]
1157   );
1158   this.addElement(E.OL, ASPx.HtmlEditorClasses.DocumentType.Both, 
1159    function() {
1160     var res = [
1161      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.Both),
1162      this.createAttr(A.Compact, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1163      this.createAttr(A.Start, ASPx.HtmlEditorClasses.DocumentType.Both),
1164      this.createAttr(A.Reversed, ASPx.HtmlEditorClasses.DocumentType.HTML5)
1165     ];
1166     return res.concat(GroupAttributes.Attrs());
1167    }.aspxBind(this)(), 
1168    [E.LI]
1169   );
1170   this.addElement(E.LI, ASPx.HtmlEditorClasses.DocumentType.Both, 
1171    function() {
1172     var res = [
1173      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.XHTML),
1174      this.createAttr(A.Value, ASPx.HtmlEditorClasses.DocumentType.Both)
1175     ];
1176     return res.concat(GroupAttributes.Attrs());
1177    }.aspxBind(this)(), 
1178    GroupElements.Flow()
1179   );
1180   this.addElement(E.DL, ASPx.HtmlEditorClasses.DocumentType.Both, 
1181    function() {
1182     var res = [this.createAttr(A.Compact, ASPx.HtmlEditorClasses.DocumentType.XHTML)];
1183     return res.concat(GroupAttributes.Attrs());
1184    }.aspxBind(this)(), 
1185    [E.DT, E.DD]
1186   );
1187   this.addElement(E.DT, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1188   this.addElement(E.DD, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.Flow());
1189   this.addElement(E.Pre, ASPx.HtmlEditorClasses.DocumentType.Both, 
1190    function() {
1191     var res = [this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.XHTML)];
1192     return res.concat(GroupAttributes.Attrs());
1193    }.aspxBind(this)(), 
1194    GroupElements.PreContent()
1195   );
1196   this.addElement(E.Address,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), 
1197    (function() {
1198     var res = [E.P];
1199     res = res.concat(GroupElements.Inline());
1200     return res.concat(GroupElements.MiscInline());
1201    })()
1202   );
1203   this.addElement(E.BlockQuote,ASPx.HtmlEditorClasses.DocumentType.Both, 
1204    function() {   
1205     var res = [this.createAttr(A.Cite, ASPx.HtmlEditorClasses.DocumentType.Both)];
1206     return res.concat(GroupAttributes.Attrs());
1207    }.aspxBind(this)(), 
1208    GroupElements.Flow()
1209   );
1210   this.addElement(E.Q,ASPx.HtmlEditorClasses.DocumentType.Both, 
1211    function() {
1212     var res = [this.createAttr(A.Cite, ASPx.HtmlEditorClasses.DocumentType.Both)];
1213     return res.concat(GroupAttributes.Attrs());
1214    }.aspxBind(this)(), 
1215    GroupElements.InlineAndTextLevel()
1216   );
1217   this.addElement(E.Ins,ASPx.HtmlEditorClasses.DocumentType.Both, 
1218      function() {
1219     var res = [
1220      this.createAttr(A.Cite, ASPx.HtmlEditorClasses.DocumentType.Both),
1221      this.createAttr(A.DateTime, ASPx.HtmlEditorClasses.DocumentType.Both)
1222     ];
1223       return res.concat(GroupAttributes.Attrs());
1224    }.aspxBind(this)(), 
1225    GroupElements.Flow()
1226   );
1227   this.addElement(E.Del,ASPx.HtmlEditorClasses.DocumentType.Both, 
1228    function() {
1229     var res = [
1230      this.createAttr(A.Cite, ASPx.HtmlEditorClasses.DocumentType.Both),
1231      this.createAttr(A.DateTime, ASPx.HtmlEditorClasses.DocumentType.Both)
1232     ];
1233     return res.concat(GroupAttributes.Attrs());
1234      }.aspxBind(this)(), 
1235      GroupElements.Flow()
1236   );
1237   this.addElement(E.Em,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1238   this.addElement(E.Strong,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1239   this.addElement(E.Dfn,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1240   this.addElement(E.Code,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1241   this.addElement(E.Samp,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1242   this.addElement(E.Kbd,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1243   this.addElement(E.Var,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1244   this.addElement(E.Cite,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1245   this.addElement(E.Abbr,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1246   this.addElement(E.Acronym, ASPx.HtmlEditorClasses.DocumentType.XHTML, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1247   this.addElement(E.Sub,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1248   this.addElement(E.Sup,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1249   this.addElement(E.TT, ASPx.HtmlEditorClasses.DocumentType.XHTML, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1250   this.addElement(E.Big, ASPx.HtmlEditorClasses.DocumentType.XHTML, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1251   this.addElement(E.Small,ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1252   this.addElement(E.Caption,ASPx.HtmlEditorClasses.DocumentType.Both, 
1253    function() {
1254     var res = [this.createAttr(A.Align, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CaptionAlign)];
1255     return res.concat(GroupAttributes.Attrs());
1256      }.aspxBind(this)(), 
1257      GroupElements.InlineAndTextLevel()
1258   );
1259   this.addElement(E.THead,ASPx.HtmlEditorClasses.DocumentType.Both, 
1260    function() {
1261     var res = [this.createAttr(A.VerticalAlign, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellVAlign)];
1262     res = res.concat(GroupAttributes.HeaderCellHAlign());
1263     return res.concat(GroupAttributes.Attrs());
1264    }.aspxBind(this)(), 
1265    [E.TR]
1266   );
1267   this.addElement(E.TFoot,ASPx.HtmlEditorClasses.DocumentType.Both, 
1268    function() {
1269     var res = [this.createAttr(A.VerticalAlign, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellVAlign)];
1270     res = res.concat(GroupAttributes.HeaderCellHAlign());
1271     return res.concat(GroupAttributes.Attrs());
1272    }.aspxBind(this)(), 
1273    [E.TR]
1274   );
1275   this.addElement(E.TBody,ASPx.HtmlEditorClasses.DocumentType.Both, 
1276    function() {
1277     var res = [this.createAttr(A.VerticalAlign, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellVAlign)];
1278     res = res.concat(GroupAttributes.DataCellHAlign());
1279     return res.concat(GroupAttributes.Attrs());
1280    }.aspxBind(this)(), 
1281    [E.TR]
1282   );
1283   this.addElement(E.TR,ASPx.HtmlEditorClasses.DocumentType.Both, 
1284    function() {
1285     var res = [
1286      this.createAttr(A.VerticalAlign, ASPx.HtmlEditorClasses.DocumentType.XHTML, AttributeValueListConst.CellVAlign),
1287      this.createAttr(A.BgColor, ASPx.HtmlEditorClasses.DocumentType.XHTML)
1288     ];
1289     res = res.concat(GroupAttributes.DataCellHAlign());
1290     return res.concat(GroupAttributes.Attrs());
1291    }.aspxBind(this)(), 
1292    [E.TD, E.TH]
1293   );
1294   this.addElement(E.TH, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Cell(), GroupElements.Flow());
1295   this.addElement(E.TD, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Cell(), GroupElements.Flow());
1296   this.addElement(E.ColGroup, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Col(), [E.Col]);
1297   this.addElement(E.Col, ASPx.HtmlEditorClasses.DocumentType.Both, GroupAttributes.Col());
1298   this.addElement(E.Article, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1299   this.addElement(E.Aside, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1300   this.addElement(E.Canvas, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
1301    function() {
1302     var res = [
1303      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1304      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.HTML5)
1305     ];
1306     return res.concat(GroupAttributes.Attrs());
1307    }.aspxBind(this)(), 
1308    GroupElements.Flow()
1309   );
1310   this.addElement(E.Command, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
1311    function() {
1312     var res = [
1313      this.createAttr(A.Checked, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1314      this.createAttr(A.Disabled, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1315      this.createAttr(A.Icon, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1316      this.createAttr(A.Label, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1317      this.createAttr(A.RadioGroup, ASPx.HtmlEditorClasse
1317s.DocumentType.HTML5),
1318      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.HTML5, ["checkbox", "command", "radio"])
1319     ];
1320     return res.concat(GroupAttributes.Attrs());
1321    }.aspxBind(this)()
1322   );
1323   this.addElement(E.Details, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
1324    function() {
1325     var res = [this.createAttr(A.Open, ASPx.HtmlEditorClasses.DocumentType.HTML5)];
1326     return res.concat(GroupAttributes.Attrs());
1327    }.aspxBind(this)(), 
1328    (function() {
1329     var res = [E.Summary];
1330     return res.concat(GroupElements.Flow());
1331    })()
1332   );
1333   this.addElement(E.Embed, ASPx.HtmlEditorClasses.DocumentType.HTML5,
1334    function() {
1335     var res = [
1336      this.createAttr(A.Height, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1337      this.createAttr(A.Width, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1338      this.createAttr(A.Type, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1339      this.createAttr(A.Src, ASPx.HtmlEditorClasses.DocumentType.HTML5)
1340     ];
1341     return res.concat(GroupAttributes.Attrs());
1342    }.aspxBind(this)()
1343   );
1344   this.addElement(E.Figure, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), 
1345    (function() {
1346     var res = [E.FigCaption];
1347     return res.concat(GroupElements.Flow());
1348    })()
1349   );
1350   this.addElement(E.Time, ASPx.HtmlEditorClasses.DocumentType.HTML5, 
1351    function() {
1352     var res = [
1353      this.createAttr(A.DateTime, ASPx.HtmlEditorClasses.DocumentType.HTML5),
1354      this.createAttr(A.PubDate, ASPx.HtmlEditorClasses.DocumentType.HTML5)
1355     ];
1356     return res.concat(GroupAttributes.Attrs());
1357    }.aspxBind(this)(), 
1358    GroupElements.InlineAndTextLevel()
1359   );
1360   this.addElement(E.FigCaption, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1361   this.addElement(E.Footer, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1362   this.addElement(E.Header, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1363   this.addElement(E.Hgroup, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), [E.H1, E.H2, E.H3, E.H4, E.H5, E.H6]);
1364   this.addElement(E.Mark, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1365   this.addElement(E.Nav, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1366   this.addElement(E.Rp, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1367   this.addElement(E.Rt, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.InlineAndTextLevel());
1368   this.addElement(E.Ruby, ASPx.HtmlEditorClasses.DocumentType.HTML5, [], GroupElements.Flow());
1369   this.addElement(E.Section, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1370   this.addElement(E.Summary, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs(), GroupElements.Flow());
1371   this.addElement(E.Wbr, ASPx.HtmlEditorClasses.DocumentType.HTML5, GroupAttributes.Attrs());
1372  },
1373  addElement: function(elementName, documentType, attrList, contentElements) {
1374   this.elements[elementName] = { 
1375    elementName: elementName,
1376    documentType: documentType,
1377    attributes: attrList,
1378    contentElements: contentElements ? contentElements : []
1379   };
1380  },
1381  filterContentElementsAndAttributes: function() {
1382   for(var elementName in this.elements) { 
1383    if (this.elements.hasOwnProperty(elementName)) {
1384     var element = this.elements[elementName];
1385     element.attributes = this.filterAttributes(element.attributes);
1386     element.contentElements = this.filterContentElements(element.contentElements);
1387    }
1388   }
1389  },
1390  filterContentElements: function(elementList) {
1391   var result = [];
1392   for(var i = 0, elementName; elementName = elementList[i]; i++) {
1393    if(this.elements.hasOwnProperty(elementName)) {
1394     var element = this.elements[elementName];
1395     if(this.documentType == element.documentType || element.documentType == ASPx.HtmlEditorClasses.DocumentType.Both)
1396      result.push(elementName);
1397    }
1398   }
1399   return result;
1400  },
1401  filterAttributes: function(attrList) {
1402   var result = [];
1403   for(var i = 0, attr; attr = attrList[i]; i++) {
1404    if(this.documentType == attr.documentType || attr.documentType == ASPx.HtmlEditorClasses.DocumentType.Both)
1405     result.push(attr);
1406   }
1407   return result;
1408  },
1409  createAttr: function(name, documentType, valueList, iconType) {
1410   return { 
1411    name: name,
1412    documentType: documentType,
1413    valueList: valueList ? valueList : [],
1414    iconType: iconType ? iconType : ASPx.HtmlEditorClasses.IconType.Field
1415   };
1416  },
1417  createEventAttr: function(name, documentType, valueList, iconType) {
1418   return this.createAttr(name, documentType, null, ASPx.HtmlEditorClasses.IconType.Event);
1419  },
1420  getContentElements: function(elementName) {
1421   var element = this.elements[elementName];
1422   return element ? element.contentElements : [];
1423  },
1424  getAttrListByElementName: function(elementName) {
1425   var element = this.elements[elementName];
1426   return element ? element.attributes : [];
1427  },
1428  getAttr: function(elementName, attrName) {
1429   var attrList = this.getAttrListByElementName(elementName);
1430   for(var i = 0, attr; attr = attrList[i]; i++) {
1431    if(attr.name == attrName)
1432     return attr;
1433   }
1434   return null;
1435  }
1436 });
1437 ASPx.HtmlEditorClasses.Utils.DtdElementDeclaration = DtdElementDeclaration;
1438})();
1439

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.