richEditBodyPartial.xsd 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: ASV
  5. (C) Copyright IBM Corp. 2005, 2010
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  9. <!-- define some attribute groups -->
  10. <xs:attributeGroup name="core">
  11. <xs:attribute name="id" type="xs:string"/>
  12. <xs:attribute name="style" type="xs:string"/>
  13. <xs:attribute name="class" type="xs:string"/>
  14. <xs:attribute name="title" type="xs:string"/>
  15. </xs:attributeGroup>
  16. <xs:attributeGroup name="lang">
  17. <xs:attribute name="dir" type="xs:string"/>
  18. <xs:attribute name="lang" type="xs:string"/>
  19. </xs:attributeGroup>
  20. <xs:attributeGroup name="edit">
  21. <xs:attribute name="contenteditable" type="xs:string"/>
  22. <xs:attribute name="hidefocus" type="xs:string"/>
  23. <xs:attribute name="unselectable" type="xs:string"/>
  24. </xs:attributeGroup>
  25. <xs:attributeGroup name="dimension">
  26. <xs:attribute name="width">
  27. <xs:simpleType>
  28. <xs:restriction base="xs:string">
  29. <xs:pattern value="[0-9]{1,32}(%|:px)?"/>
  30. </xs:restriction>
  31. </xs:simpleType>
  32. </xs:attribute>
  33. <xs:attribute name="height">
  34. <xs:simpleType>
  35. <xs:restriction base="xs:string">
  36. <xs:pattern value="[0-9]{1,32}(%|:px)?"/>
  37. </xs:restriction>
  38. </xs:simpleType>
  39. </xs:attribute>
  40. </xs:attributeGroup>
  41. <!-- Define an element group.
  42. This will essentially allow every element to contain ever other element. This schema is not meant to validate good HTML. It is
  43. only meant to ensure that undesired elements are not validated. -->
  44. <xs:group name="insertableElements">
  45. <xs:choice>
  46. <xs:element name="A">
  47. <xs:complexType mixed="true">
  48. <xs:choice minOccurs="0" maxOccurs="unbounded">
  49. <xs:group ref="insertableElements"/>
  50. </xs:choice>
  51. <xs:attributeGroup ref="core"/>
  52. <xs:attributeGroup ref="lang"/>
  53. <xs:attributeGroup ref="edit"/>
  54. <xs:attribute name="charset" type="xs:string"/>
  55. <xs:attribute name="coords" type="xs:string"/>
  56. <xs:attribute name="href" type="xs:string"/>
  57. <xs:attribute name="hreflang" type="xs:string"/>
  58. <xs:attribute name="methods" type="xs:string"/>
  59. <xs:attribute name="name" type="xs:string"/>
  60. <xs:attribute name="rel" type="xs:string"/>
  61. <xs:attribute name="rev" type="xs:string"/>
  62. <xs:attribute name="shape" type="xs:string"/>
  63. <xs:attribute name="suppress" type="xs:string"/>
  64. <xs:attribute name="target" type="xs:string"/>
  65. <xs:attribute name="type" type="xs:string"/>
  66. </xs:complexType>
  67. </xs:element>
  68. <xs:element name="B">
  69. <xs:complexType mixed="true">
  70. <xs:choice minOccurs="0" maxOccurs="unbounded">
  71. <xs:group ref="insertableElements"/>
  72. </xs:choice>
  73. <xs:attributeGroup ref="core"/>
  74. <xs:attributeGroup ref="lang"/>
  75. <xs:attributeGroup ref="edit"/>
  76. </xs:complexType>
  77. </xs:element>
  78. <xs:element name="BLOCKQUOTE">
  79. <xs:complexType mixed="true">
  80. <xs:choice minOccurs="0" maxOccurs="unbounded">
  81. <xs:group ref="insertableElements"/>
  82. </xs:choice>
  83. <xs:attributeGroup ref="core"/>
  84. <xs:attributeGroup ref="lang"/>
  85. <xs:attributeGroup ref="edit"/>
  86. <xs:attributeGroup ref="dimension"/>
  87. <xs:attribute name="align" type="xs:string"/>
  88. <xs:attribute name="cite" type="xs:string"/>
  89. <xs:attribute name="clear" type="xs:string"/>
  90. <xs:attribute name="type" type="xs:string"/>
  91. </xs:complexType>
  92. </xs:element>
  93. <xs:element name="BR">
  94. <xs:complexType>
  95. <xs:attributeGroup ref="core"/>
  96. <xs:attributeGroup ref="lang"/>
  97. <xs:attribute name="clear" type="xs:string"/>
  98. </xs:complexType>
  99. </xs:element>
  100. <xs:element name="CODE">
  101. <xs:complexType mixed="true">
  102. <xs:choice minOccurs="0" maxOccurs="unbounded">
  103. <xs:group ref="insertableElements"/>
  104. </xs:choice>
  105. <xs:attributeGroup ref="core"/>
  106. <xs:attributeGroup ref="lang"/>
  107. <xs:attributeGroup ref="edit"/>
  108. </xs:complexType>
  109. </xs:element>
  110. <xs:element name="DIR">
  111. <xs:complexType mixed="true">
  112. <xs:choice minOccurs="0" maxOccurs="unbounded">
  113. <xs:group ref="insertableElements"/>
  114. </xs:choice>
  115. <xs:attributeGroup ref="core"/>
  116. <xs:attributeGroup ref="lang"/>
  117. <xs:attributeGroup ref="edit"/>
  118. <xs:attributeGroup ref="dimension"/>
  119. <xs:attribute name="align" type="xs:string"/>
  120. <xs:attribute name="clear" type="xs:string"/>
  121. <xs:attribute name="compact" type="xs:string"/>
  122. <xs:attribute name="start" type="xs:integer"/>
  123. <xs:attribute name="type" type="xs:string"/>
  124. </xs:complexType>
  125. </xs:element>
  126. <xs:element name="DIV">
  127. <xs:complexType mixed="true">
  128. <xs:choice minOccurs="0" maxOccurs="unbounded">
  129. <xs:group ref="insertableElements"/>
  130. </xs:choice>
  131. <xs:attributeGroup ref="core"/>
  132. <xs:attributeGroup ref="lang"/>
  133. <xs:attributeGroup ref="edit"/>
  134. <xs:attributeGroup ref="dimension"/>
  135. <xs:attribute name="align" type="xs:string"/>
  136. <xs:attribute name="clear" type="xs:string"/>
  137. <xs:attribute name="cols" type="xs:integer"/>
  138. <xs:attribute name="gutter" type="xs:integer"/>
  139. <xs:attribute name="nowrap" type="xs:string"/>
  140. </xs:complexType>
  141. </xs:element>
  142. <xs:element name="EM">
  143. <xs:complexType mixed="true">
  144. <xs:choice minOccurs="0" maxOccurs="unbounded">
  145. <xs:group ref="insertableElements"/>
  146. </xs:choice>
  147. <xs:attributeGroup ref="core"/>
  148. <xs:attributeGroup ref="lang"/>
  149. <xs:attributeGroup ref="edit"/>
  150. </xs:complexType>
  151. </xs:element>
  152. <xs:element name="FONT">
  153. <xs:complexType mixed="true">
  154. <xs:choice minOccurs="0" maxOccurs="unbounded">
  155. <xs:group ref="insertableElements"/>
  156. </xs:choice>
  157. <xs:attributeGroup ref="core"/>
  158. <xs:attributeGroup ref="lang"/>
  159. <xs:attributeGroup ref="edit"/>
  160. <xs:attribute name="color" type="xs:string"/>
  161. <xs:attribute name="face" type="xs:string"/>
  162. <xs:attribute name="font-weight" type="xs:integer"/>
  163. <xs:attribute name="point-size" type="xs:integer"/>
  164. <xs:attribute name="size" type="xs:integer"/>
  165. </xs:complexType>
  166. </xs:element>
  167. <xs:element name="H1">
  168. <xs:complexType mixed="true">
  169. <xs:choice minOccurs="0" maxOccurs="unbounded">
  170. <xs:group ref="insertableElements"/>
  171. </xs:choice>
  172. <xs:attributeGroup ref="core"/>
  173. <xs:attributeGroup ref="lang"/>
  174. <xs:attributeGroup ref="edit"/>
  175. <xs:attributeGroup ref="dimension"/>
  176. <xs:attribute name="align" type="xs:string"/>
  177. <xs:attribute name="clear" type="xs:string"/>
  178. </xs:complexType>
  179. </xs:element>
  180. <xs:element name="H2">
  181. <xs:complexType mixed="true">
  182. <xs:choice minOccurs="0" maxOccurs="unbounded">
  183. <xs:group ref="insertableElements"/>
  184. </xs:choice>
  185. <xs:attributeGroup ref="core"/>
  186. <xs:attributeGroup ref="lang"/>
  187. <xs:attributeGroup ref="edit"/>
  188. <xs:attributeGroup ref="dimension"/>
  189. <xs:attribute name="align" type="xs:string"/>
  190. <xs:attribute name="clear" type="xs:string"/>
  191. </xs:complexType>
  192. </xs:element>
  193. <xs:element name="H3">
  194. <xs:complexType mixed="true">
  195. <xs:choice minOccurs="0" maxOccurs="unbounded">
  196. <xs:group ref="insertableElements"/>
  197. </xs:choice>
  198. <xs:attributeGroup ref="core"/>
  199. <xs:attributeGroup ref="lang"/>
  200. <xs:attributeGroup ref="edit"/>
  201. <xs:attributeGroup ref="dimension"/>
  202. <xs:attribute name="align" type="xs:string"/>
  203. <xs:attribute name="clear" type="xs:string"/>
  204. </xs:complexType>
  205. </xs:element>
  206. <xs:element name="H4">
  207. <xs:complexType mixed="true">
  208. <xs:choice minOccurs="0" maxOccurs="unbounded">
  209. <xs:group ref="insertableElements"/>
  210. </xs:choice>
  211. <xs:attributeGroup ref="core"/>
  212. <xs:attributeGroup ref="lang"/>
  213. <xs:attributeGroup ref="edit"/>
  214. <xs:attributeGroup ref="dimension"/>
  215. <xs:attribute name="align" type="xs:string"/>
  216. <xs:attribute name="clear" type="xs:string"/>
  217. </xs:complexType>
  218. </xs:element>
  219. <xs:element name="H5">
  220. <xs:complexType mixed="true">
  221. <xs:choice minOccurs="0" maxOccurs="unbounded">
  222. <xs:group ref="insertableElements"/>
  223. </xs:choice>
  224. <xs:attributeGroup ref="core"/>
  225. <xs:attributeGroup ref="lang"/>
  226. <xs:attributeGroup ref="edit"/>
  227. <xs:attributeGroup ref="dimension"/>
  228. <xs:attribute name="align" type="xs:string"/>
  229. <xs:attribute name="clear" type="xs:string"/>
  230. </xs:complexType>
  231. </xs:element>
  232. <xs:element name="H6">
  233. <xs:complexType mixed="true">
  234. <xs:choice minOccurs="0" maxOccurs="unbounded">
  235. <xs:group ref="insertableElements"/>
  236. </xs:choice>
  237. <xs:attributeGroup ref="core"/>
  238. <xs:attributeGroup ref="lang"/>
  239. <xs:attributeGroup ref="edit"/>
  240. <xs:attributeGroup ref="dimension"/>
  241. <xs:attribute name="align" type="xs:string"/>
  242. <xs:attribute name="clear" type="xs:string"/>
  243. </xs:complexType>
  244. </xs:element>
  245. <xs:element name="HR">
  246. <xs:complexType>
  247. <xs:attributeGroup ref="core"/>
  248. <xs:attributeGroup ref="lang"/>
  249. <xs:attributeGroup ref="edit"/>
  250. <xs:attributeGroup ref="dimension"/>
  251. <xs:attribute name="align" type="xs:string"/>
  252. <xs:attribute name="clear" type="xs:string"/>
  253. <xs:attribute name="color" type="xs:string"/>
  254. <xs:attribute name="noshade" type="xs:integer"/>
  255. <xs:attribute name="size" type="xs:string"/>
  256. </xs:complexType>
  257. </xs:element>
  258. <xs:element name="I">
  259. <xs:complexType mixed="true">
  260. <xs:choice minOccurs="0" maxOccurs="unbounded">
  261. <xs:group ref="insertableElements"/>
  262. </xs:choice>
  263. <xs:attributeGroup ref="core"/>
  264. <xs:attributeGroup ref="lang"/>
  265. <xs:attributeGroup ref="edit"/>
  266. </xs:complexType>
  267. </xs:element>
  268. <xs:element name="LI">
  269. <xs:complexType mixed="true">
  270. <xs:choice minOccurs="0" maxOccurs="unbounded">
  271. <xs:group ref="insertableElements"/>
  272. </xs:choice>
  273. <xs:attributeGroup ref="lang"/>
  274. <xs:attributeGroup ref="edit"/>
  275. <xs:attributeGroup ref="dimension"/>
  276. <xs:attribute name="align" type="xs:string"/>
  277. <xs:attribute name="clear" type="xs:string"/>
  278. <xs:attribute name="type" type="xs:string"/>
  279. <xs:attribute name="value" type="xs:string"/>
  280. </xs:complexType>
  281. </xs:element>
  282. <xs:element name="OL">
  283. <xs:complexType>
  284. <xs:choice minOccurs="0" maxOccurs="unbounded">
  285. <xs:group ref="insertableElements"/>
  286. </xs:choice>
  287. <xs:attributeGroup ref="core"/>
  288. <xs:attributeGroup ref="lang"/>
  289. <xs:attributeGroup ref="edit"/>
  290. <xs:attributeGroup ref="dimension"/>
  291. <xs:attribute name="align" type="xs:string"/>
  292. <xs:attribute name="clear" type="xs:string"/>
  293. <xs:attribute name="start" type="xs:integer"/>
  294. <xs:attribute name="type" type="xs:string"/>
  295. </xs:complexType>
  296. </xs:element>
  297. <xs:element name="P">
  298. <xs:complexType mixed="true">
  299. <xs:choice minOccurs="0" maxOccurs="unbounded">
  300. <xs:group ref="insertableElements"/>
  301. </xs:choice>
  302. <xs:attributeGroup ref="core"/>
  303. <xs:attributeGroup ref="lang"/>
  304. <xs:attributeGroup ref="edit"/>
  305. <xs:attributeGroup ref="dimension"/>
  306. <xs:attribute name="align" type="xs:string"/>
  307. <xs:attribute name="clear" type="xs:string"/>
  308. </xs:complexType>
  309. </xs:element>
  310. <xs:element name="PRE">
  311. <xs:complexType mixed="true">
  312. <xs:choice minOccurs="0" maxOccurs="unbounded">
  313. <xs:group ref="insertableElements"/>
  314. </xs:choice>
  315. <xs:attributeGroup ref="core"/>
  316. <xs:attributeGroup ref="lang"/>
  317. <xs:attributeGroup ref="edit"/>
  318. <xs:attributeGroup ref="dimension"/>
  319. <xs:attribute name="clear" type="xs:string"/>
  320. <xs:attribute name="cols" type="xs:integer"/>
  321. </xs:complexType>
  322. </xs:element>
  323. <xs:element name="SPAN">
  324. <xs:complexType mixed="true">
  325. <xs:choice minOccurs="0" maxOccurs="unbounded">
  326. <xs:group ref="insertableElements"/>
  327. </xs:choice>
  328. <xs:attributeGroup ref="core"/>
  329. <xs:attributeGroup ref="lang"/>
  330. <xs:attributeGroup ref="edit"/>
  331. </xs:complexType>
  332. </xs:element>
  333. <xs:element name="STRIKE">
  334. <xs:complexType mixed="true">
  335. <xs:choice minOccurs="0" maxOccurs="unbounded">
  336. <xs:group ref="insertableElements"/>
  337. </xs:choice>
  338. <xs:attributeGroup ref="core"/>
  339. <xs:attributeGroup ref="lang"/>
  340. <xs:attributeGroup ref="edit"/>
  341. </xs:complexType>
  342. </xs:element>
  343. <xs:element name="STRONG">
  344. <xs:complexType mixed="true">
  345. <xs:choice minOccurs="0" maxOccurs="unbounded">
  346. <xs:group ref="insertableElements"/>
  347. </xs:choice>
  348. <xs:attributeGroup ref="core"/>
  349. <xs:attributeGroup ref="lang"/>
  350. <xs:attributeGroup ref="edit"/>
  351. </xs:complexType>
  352. </xs:element>
  353. <xs:element name="STYLE">
  354. <xs:complexType mixed="true">
  355. <xs:choice minOccurs="0" maxOccurs="unbounded">
  356. <xs:group ref="insertableElements"/>
  357. </xs:choice>
  358. <xs:attributeGroup ref="core"/>
  359. <xs:attributeGroup ref="lang"/>
  360. <xs:attribute name="language" type="xs:string"/>
  361. <xs:attribute name="type" type="xs:string"/>
  362. </xs:complexType>
  363. </xs:element>
  364. <xs:element name="TABLE">
  365. <xs:complexType>
  366. <xs:choice minOccurs="0" maxOccurs="unbounded">
  367. <xs:group ref="insertableElements"/>
  368. </xs:choice>
  369. <xs:attributeGroup ref="core"/>
  370. <xs:attributeGroup ref="lang"/>
  371. <xs:attributeGroup ref="edit"/>
  372. <xs:attributeGroup ref="dimension"/>
  373. <xs:attribute name="align" type="xs:string"/>
  374. <xs:attribute name="background" type="xs:string"/>
  375. <xs:attribute name="bgcolor" type="xs:string"/>
  376. <xs:attribute name="border" type="xs:integer"/>
  377. <xs:attribute name="bordercolor" type="xs:string"/>
  378. <xs:attribute name="bordercolordark" type="xs:string"/>
  379. <xs:attribute name="bordercolorlight" type="xs:string"/>
  380. <xs:attribute name="bottompadding" type="xs:integer"/>
  381. <xs:attribute name="cellpadding" type="xs:integer"/>
  382. <xs:attribute name="cellspacing" type="xs:integer"/>
  383. <xs:attribute name="clear" type="xs:string"/>
  384. <xs:attribute name="cols" type="xs:integer"/>
  385. <xs:attribute name="frame" type="xs:string"/>
  386. <xs:attribute name="hspace" type="xs:integer"/>
  387. <xs:attribute name="leftpadding" type="xs:integer"/>
  388. <xs:attribute name="rightpadding" type="xs:integer"/>
  389. <xs:attribute name="rules" type="xs:string"/>
  390. <xs:attribute name="summary" type="xs:string"/>
  391. <xs:attribute name="toppadding" type="xs:integer"/>
  392. <xs:attribute name="vspace" type="xs:integer"/>
  393. </xs:complexType>
  394. </xs:element>
  395. <xs:element name="TBODY">
  396. <xs:complexType>
  397. <xs:choice minOccurs="0" maxOccurs="unbounded">
  398. <xs:group ref="insertableElements"/>
  399. </xs:choice>
  400. <xs:attributeGroup ref="core"/>
  401. <xs:attributeGroup ref="lang"/>
  402. <xs:attributeGroup ref="edit"/>
  403. <xs:attribute name="align" type="xs:string"/>
  404. <xs:attribute name="bgcolor" type="xs:string"/>
  405. <xs:attribute name="char" type="xs:string"/>
  406. <xs:attribute name="charoff" type="xs:integer"/>
  407. <xs:attribute name="valign" type="xs:string"/>
  408. </xs:complexType>
  409. </xs:element>
  410. <xs:element name="TD">
  411. <xs:complexType mixed="true">
  412. <xs:choice minOccurs="0" maxOccurs="unbounded">
  413. <xs:group ref="insertableElements"/>
  414. </xs:choice>
  415. <xs:attributeGroup ref="core"/>
  416. <xs:attributeGroup ref="lang"/>
  417. <xs:attributeGroup ref="edit"/>
  418. <xs:attributeGroup ref="dimension"/>
  419. <xs:attribute name="abbr" type="xs:string"/>
  420. <xs:attribute name="align" type="xs:string"/>
  421. <xs:attribute name="axis" type="xs:string"/>
  422. <xs:attribute name="background" type="xs:string"/>
  423. <xs:attribute name="bgcolor" type="xs:string"/>
  424. <xs:attribute name="bordercolor" type="xs:string"/>
  425. <xs:attribute name="bordercolordark" type="xs:string"/>
  426. <xs:attribute name="bordercolorlight" type="xs:string"/>
  427. <xs:attribute name="char" type="xs:string"/>
  428. <xs:attribute name="charoff" type="xs:integer"/>
  429. <xs:attribute name="colspan" type="xs:integer"/>
  430. <xs:attribute name="headers" type="xs:string"/>
  431. <xs:attribute name="rowspan" type="xs:integer"/>
  432. <xs:attribute name="scope" type="xs:string"/>
  433. <xs:attribute name="valign" type="xs:string"/>
  434. </xs:complexType>
  435. </xs:element>
  436. <xs:element name="TEXTAREA">
  437. <xs:complexType mixed="true">
  438. <xs:choice minOccurs="0" maxOccurs="unbounded">
  439. <xs:group ref="insertableElements"/>
  440. </xs:choice>
  441. <xs:attributeGroup ref="core"/>
  442. <xs:attributeGroup ref="lang"/>
  443. <xs:attributeGroup ref="edit"/>
  444. <xs:attributeGroup ref="dimension"/>
  445. <xs:attribute name="cols" type="xs:integer"/>
  446. <xs:attribute name="name" type="xs:string"/>
  447. <xs:attribute name="rows" type="xs:integer"/>
  448. <xs:attribute name="wrap" type="xs:string"/>
  449. </xs:complexType>
  450. </xs:element>
  451. <xs:element name="TH">
  452. <xs:complexType>
  453. <xs:choice minOccurs="0" maxOccurs="unbounded">
  454. <xs:group ref="insertableElements"/>
  455. </xs:choice>
  456. <xs:attributeGroup ref="core"/>
  457. <xs:attributeGroup ref="lang"/>
  458. <xs:attributeGroup ref="edit"/>
  459. <xs:attributeGroup ref="dimension"/>
  460. <xs:attribute name="abbr" type="xs:string"/>
  461. <xs:attribute name="align" type="xs:string"/>
  462. <xs:attribute name="axis" type="xs:string"/>
  463. <xs:attribute name="background" type="xs:string"/>
  464. <xs:attribute name="bgcolor" type="xs:string"/>
  465. <xs:attribute name="bordercolor" type="xs:string"/>
  466. <xs:attribute name="bordercolordark" type="xs:string"/>
  467. <xs:attribute name="bordercolorlight" type="xs:string"/>
  468. <xs:attribute name="char" type="xs:string"/>
  469. <xs:attribute name="charoff" type="xs:integer"/>
  470. <xs:attribute name="colspan" type="xs:integer"/>
  471. <xs:attribute name="headers" type="xs:string"/>
  472. <xs:attribute name="rowspan" type="xs:integer"/>
  473. <xs:attribute name="scope" type="xs:string"/>
  474. <xs:attribute name="valign" type="xs:string"/>
  475. </xs:complexType>
  476. </xs:element>
  477. <xs:element name="THEAD">
  478. <xs:complexType mixed="true">
  479. <xs:choice minOccurs="0" maxOccurs="unbounded">
  480. <xs:group ref="insertableElements"/>
  481. </xs:choice>
  482. <xs:attributeGroup ref="core"/>
  483. <xs:attributeGroup ref="lang"/>
  484. <xs:attributeGroup ref="edit"/>
  485. <xs:attribute name="align" type="xs:string"/>
  486. <xs:attribute name="bgcolor" type="xs:string"/>
  487. <xs:attribute name="char" type="xs:string"/>
  488. <xs:attribute name="charoff" type="xs:integer"/>
  489. <xs:attribute name="valign" type="xs:string"/>
  490. </xs:complexType>
  491. </xs:element>
  492. <xs:element name="TR">
  493. <xs:complexType>
  494. <xs:choice minOccurs="0" maxOccurs="unbounded">
  495. <xs:group ref="insertableElements"/>
  496. </xs:choice>
  497. <xs:attributeGroup ref="core"/>
  498. <xs:attributeGroup ref="lang"/>
  499. <xs:attributeGroup ref="edit"/>
  500. <xs:attributeGroup ref="dimension"/>
  501. <xs:attribute name="align" type="xs:string"/>
  502. <xs:attribute name="background" type="xs:string"/>
  503. <xs:attribute name="bgcolor" type="xs:string"/>
  504. <xs:attribute name="bordercolor" type="xs:string"/>
  505. <xs:attribute name="bordercolordark" type="xs:string"/>
  506. <xs:attribute name="bordercolorlight" type="xs:string"/>
  507. <xs:attribute name="char" type="xs:string"/>
  508. <xs:attribute name="charoff" type="xs:integer"/>
  509. <xs:attribute name="valign" type="xs:string"/>
  510. </xs:complexType>
  511. </xs:element>
  512. <xs:element name="U">
  513. <xs:complexType mixed="true">
  514. <xs:choice minOccurs="0" maxOccurs="unbounded">
  515. <xs:group ref="insertableElements"/>
  516. </xs:choice>
  517. <xs:attributeGroup ref="core"/>
  518. <xs:attributeGroup ref="lang"/>
  519. <xs:attributeGroup ref="edit"/>
  520. </xs:complexType>
  521. </xs:element>
  522. <xs:element name="UL">
  523. <xs:complexType>
  524. <xs:choice minOccurs="0" maxOccurs="unbounded">
  525. <xs:group ref="insertableElements"/>
  526. </xs:choice>
  527. <xs:attributeGroup ref="core"/>
  528. <xs:attributeGroup ref="lang"/>
  529. <xs:attributeGroup ref="edit"/>
  530. <xs:attributeGroup ref="dimension"/>
  531. <xs:attribute name="align" type="xs:string"/>
  532. <xs:attribute name="clear" type="xs:string"/>
  533. <xs:attribute name="start" type="xs:integer"/>
  534. <xs:attribute name="type" type="xs:string"/>
  535. </xs:complexType>
  536. </xs:element>
  537. </xs:choice>
  538. </xs:group>
  539. <xs:element name="BODY">
  540. <xs:complexType mixed="true">
  541. <xs:choice minOccurs="0" maxOccurs="unbounded">
  542. <xs:group ref="insertableElements"/>
  543. </xs:choice>
  544. <xs:attributeGroup ref="core"/>
  545. <xs:attributeGroup ref="lang"/>
  546. <xs:attribute name="align" type="xs:string"/>
  547. <xs:attribute name="alink" type="xs:string"/>
  548. <xs:attribute name="background" type="xs:string"/>
  549. <xs:attribute name="bgcolor" type="xs:string"/>
  550. <xs:attribute name="bgproperties" type="xs:string"/>
  551. <xs:attribute name="bottommargin" type="xs:integer"/>
  552. <xs:attribute name="leftmargin" type="xs:integer"/>
  553. <xs:attribute name="marginheight" type="xs:integer"/>
  554. <xs:attribute name="marginwidth" type="xs:integer"/>
  555. <xs:attribute name="nowrap" type="xs:string"/>
  556. <xs:attribute name="rightmargin" type="xs:integer"/>
  557. <xs:attribute name="scroll" type="xs:string"/>
  558. <xs:attribute name="text" type="xs:string"/>
  559. <xs:attribute name="topmargin" type="xs:integer"/>
  560. </xs:complexType>
  561. </xs:element>
  562. <xs:element name="HEAD">
  563. <xs:complexType mixed="true">
  564. <xs:choice minOccurs="0" maxOccurs="unbounded">
  565. <xs:group ref="insertableElements"/>
  566. </xs:choice>
  567. <xs:attributeGroup ref="core"/>
  568. <xs:attributeGroup ref="lang"/>
  569. <xs:attribute name="profile" type="xs:string"/>
  570. </xs:complexType>
  571. </xs:element>
  572. </xs:schema>