testeranto 0.200.1 → 0.202.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (373) hide show
  1. package/README.md +26 -1
  2. package/design-editor/DesignEditor.tsx +40 -241
  3. package/dist/common/design-editor/DesignEditor.js +33 -198
  4. package/dist/common/src/App.js +158 -16
  5. package/dist/common/src/PM/PM_WithBuild.js +135 -0
  6. package/dist/common/src/PM/PM_WithEslintAndTsc.js +79 -67
  7. package/dist/common/src/PM/PM_WithGit.js +517 -0
  8. package/dist/common/src/PM/PM_WithProcesses.js +519 -0
  9. package/dist/common/src/PM/PM_WithWebSocket.js +535 -0
  10. package/dist/common/src/PM/base.js +62 -0
  11. package/dist/common/src/PM/main.js +533 -1676
  12. package/dist/common/src/PM/metafileOutputs.js +78 -0
  13. package/dist/common/src/PM/node.js +0 -6
  14. package/dist/common/src/PM/pure.js +0 -8
  15. package/dist/common/src/PM/types.js +1 -0
  16. package/dist/common/src/PM/utils.js +210 -0
  17. package/dist/common/src/PM/web.js +0 -6
  18. package/dist/common/src/ReportServer.js +0 -10
  19. package/dist/common/src/ReportServerLib.js +0 -140
  20. package/dist/common/src/components/pure/AppFrame.js +68 -56
  21. package/dist/common/src/components/pure/ArtifactTree.js +80 -0
  22. package/dist/common/src/components/pure/BuildLogViewer.js +106 -0
  23. package/dist/common/src/components/pure/DebugEnv.js +30 -0
  24. package/dist/common/src/components/pure/FileTree.js +34 -0
  25. package/dist/common/src/components/pure/FileTreeItem.js +29 -0
  26. package/dist/common/src/components/pure/GitHubLoginButton.js +18 -0
  27. package/dist/common/src/components/pure/GitIntegrationView.js +342 -0
  28. package/dist/common/src/components/pure/ProcessManager.js +1 -0
  29. package/dist/common/src/components/pure/ProcessManagerView.js +73 -74
  30. package/dist/common/src/components/pure/ProjectPageView.js +4 -117
  31. package/dist/common/src/components/pure/Settings.js +121 -0
  32. package/dist/common/src/components/pure/Settings.test.js +34 -0
  33. package/dist/common/src/components/pure/SignIn.js +22 -0
  34. package/dist/common/src/components/pure/SingleProcessView.js +166 -213
  35. package/dist/common/src/components/pure/TestPageView.js +113 -368
  36. package/dist/common/src/components/pure/TestPageView_utils.js +117 -0
  37. package/dist/common/src/components/pure/TestTable.js +33 -0
  38. package/dist/common/src/components/pure/ToastNotification.js +14 -0
  39. package/dist/common/src/components/pure/UserProfile.js +27 -0
  40. package/dist/common/src/components/stateful/AuthCallbackPage.js +51 -0
  41. package/dist/common/src/components/stateful/FeaturesReporter.js +2 -1
  42. package/dist/common/src/components/stateful/FileTree.js +58 -39
  43. package/dist/common/src/components/stateful/GitIntegrationPage.js +12 -0
  44. package/dist/common/src/components/stateful/ProcessManagerPage.js +13 -15
  45. package/dist/common/src/components/stateful/ProjectPage.js +6 -5
  46. package/dist/common/src/components/stateful/ProjectsPage.js +17 -19
  47. package/dist/common/src/components/stateful/SingleProcessPage.js +16 -26
  48. package/dist/common/src/components/stateful/TestPage.js +7 -5
  49. package/dist/common/src/hooks/useGitMode.js +21 -0
  50. package/dist/common/src/lib/BaseSuite.test/mock.js +15 -8
  51. package/dist/common/src/lib/BaseSuite.test/test.js +56 -80
  52. package/dist/common/src/lib/Tiposkripto.js +24 -0
  53. package/dist/common/src/lib/Tiposkripto.test/MockTiposkripto.js +154 -10
  54. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +6 -12
  55. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +63 -23
  56. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.specification.js +14 -6
  57. package/dist/common/src/lib/pmProxy.test/specification.js +167 -52
  58. package/dist/common/src/services/FileService.js +505 -0
  59. package/dist/common/src/services/GitHubAuthService.js +184 -0
  60. package/dist/common/src/testeranto.js +38 -97
  61. package/dist/common/src/utils/api.js +12 -8
  62. package/dist/common/src/utils/gitTest.js +27 -0
  63. package/dist/common/src/utils.js +23 -13
  64. package/dist/common/testeranto.config.js +21 -17
  65. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  66. package/dist/module/design-editor/DesignEditor.js +33 -199
  67. package/dist/module/src/App.js +121 -15
  68. package/dist/module/src/PM/PM_WithBuild.js +128 -0
  69. package/dist/module/src/PM/PM_WithEslintAndTsc.js +79 -67
  70. package/dist/module/src/PM/PM_WithGit.js +477 -0
  71. package/dist/module/src/PM/PM_WithProcesses.js +479 -0
  72. package/dist/module/src/PM/PM_WithWebSocket.js +528 -0
  73. package/dist/module/src/PM/base.js +62 -0
  74. package/dist/module/src/PM/main.js +533 -1676
  75. package/dist/module/src/PM/metafileOutputs.js +78 -0
  76. package/dist/module/src/PM/node.js +0 -6
  77. package/dist/module/src/PM/pure.js +0 -8
  78. package/dist/module/src/PM/types.js +1 -1
  79. package/dist/module/src/PM/utils.js +196 -0
  80. package/dist/module/src/PM/web.js +0 -6
  81. package/dist/module/src/ReportServer.js +1 -9
  82. package/dist/module/src/ReportServerLib.js +1 -134
  83. package/dist/module/src/components/pure/AppFrame.js +66 -24
  84. package/dist/module/src/components/pure/ArtifactTree.js +80 -0
  85. package/dist/module/src/components/pure/BuildLogViewer.js +99 -0
  86. package/dist/module/src/components/pure/DebugEnv.js +23 -0
  87. package/dist/module/src/components/pure/FileTree.js +27 -0
  88. package/dist/module/src/components/pure/FileTreeItem.js +22 -0
  89. package/dist/module/src/components/pure/GitHubLoginButton.js +11 -0
  90. package/dist/module/src/components/pure/GitIntegrationView.js +305 -0
  91. package/dist/module/src/components/pure/ProcessManager.js +1 -0
  92. package/dist/module/src/components/pure/ProcessManagerView.js +74 -75
  93. package/dist/module/src/components/pure/ProjectPageView.js +5 -118
  94. package/dist/module/src/components/pure/Settings.js +84 -0
  95. package/dist/module/src/components/pure/Settings.test.js +29 -0
  96. package/dist/module/src/components/pure/SignIn.js +15 -0
  97. package/dist/module/src/components/pure/SingleProcessView.js +130 -214
  98. package/dist/module/src/components/pure/TestPageView.js +97 -352
  99. package/dist/module/src/components/pure/TestPageView_utils.js +109 -0
  100. package/dist/module/src/components/pure/TestTable.js +26 -0
  101. package/dist/module/src/components/pure/ToastNotification.js +7 -0
  102. package/dist/module/src/components/pure/UserProfile.js +20 -0
  103. package/dist/module/src/components/stateful/AuthCallbackPage.js +14 -0
  104. package/dist/module/src/components/stateful/FeaturesReporter.js +2 -1
  105. package/dist/module/src/components/stateful/FileTree.js +59 -33
  106. package/dist/module/src/components/stateful/GitIntegrationPage.js +5 -0
  107. package/dist/module/src/components/stateful/ProcessManagerPage.js +13 -15
  108. package/dist/module/src/components/stateful/ProjectPage.js +6 -5
  109. package/dist/module/src/components/stateful/ProjectsPage.js +16 -18
  110. package/dist/module/src/components/stateful/SingleProcessPage.js +16 -26
  111. package/dist/module/src/components/stateful/TestPage.js +8 -6
  112. package/dist/module/src/hooks/useGitMode.js +17 -0
  113. package/dist/module/src/lib/BaseSuite.test/mock.js +15 -8
  114. package/dist/module/src/lib/BaseSuite.test/test.js +56 -80
  115. package/dist/module/src/lib/Tiposkripto.js +24 -0
  116. package/dist/module/src/lib/Tiposkripto.test/MockTiposkripto.js +154 -10
  117. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +6 -12
  118. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +63 -23
  119. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.specification.js +14 -6
  120. package/dist/module/src/lib/pmProxy.test/specification.js +167 -52
  121. package/dist/module/src/services/FileService.js +468 -0
  122. package/dist/module/src/services/GitHubAuthService.js +180 -0
  123. package/dist/module/src/testeranto.js +38 -97
  124. package/dist/module/src/utils/api.js +10 -7
  125. package/dist/module/src/utils/gitTest.js +23 -0
  126. package/dist/module/src/utils.js +21 -12
  127. package/dist/module/testeranto.config.js +21 -17
  128. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  129. package/dist/prebuild/App.css +94 -121
  130. package/dist/prebuild/App.js +44601 -11225
  131. package/dist/prebuild/testeranto.mjs +3113 -2256
  132. package/dist/types/design-editor/DesignEditor.d.ts +1 -18
  133. package/dist/types/src/App.d.ts +18 -0
  134. package/dist/types/src/PM/PM_WithBuild.d.ts +13 -0
  135. package/dist/types/src/PM/PM_WithEslintAndTsc.d.ts +2 -4
  136. package/dist/types/src/PM/PM_WithGit.d.ts +27 -0
  137. package/dist/types/src/PM/PM_WithProcesses.d.ts +29 -0
  138. package/dist/types/src/PM/PM_WithWebSocket.d.ts +108 -0
  139. package/dist/types/src/PM/base.d.ts +1 -1
  140. package/dist/types/src/PM/index.d.ts +0 -2
  141. package/dist/types/src/PM/main.d.ts +6 -77
  142. package/dist/types/src/PM/metafileOutputs.d.ts +0 -0
  143. package/dist/types/src/PM/node.d.ts +0 -2
  144. package/dist/types/src/PM/pure.d.ts +0 -2
  145. package/dist/types/src/PM/types.d.ts +118 -0
  146. package/dist/types/src/PM/utils.d.ts +35 -0
  147. package/dist/types/src/PM/web.d.ts +0 -2
  148. package/dist/types/src/Pure.d.ts +6 -1
  149. package/dist/types/src/ReportServer.d.ts +0 -1
  150. package/dist/types/src/ReportServerLib.d.ts +0 -1
  151. package/dist/types/src/Types.d.ts +1 -0
  152. package/dist/types/src/components/pure/ArtifactTree.d.ts +0 -0
  153. package/dist/types/src/components/pure/BuildLogViewer.d.ts +7 -0
  154. package/dist/types/src/components/pure/DebugEnv.d.ts +2 -0
  155. package/dist/types/src/components/pure/FileTree.d.ts +6 -0
  156. package/dist/types/src/components/pure/FileTreeItem.d.ts +8 -0
  157. package/dist/types/src/components/pure/GitHubLoginButton.d.ts +8 -0
  158. package/dist/types/src/components/pure/GitIntegrationView.d.ts +1 -0
  159. package/dist/types/src/components/pure/Settings.d.ts +1 -0
  160. package/dist/types/src/components/pure/Settings.test.d.ts +1 -0
  161. package/dist/types/src/components/pure/SignIn.d.ts +1 -0
  162. package/dist/types/src/components/pure/SingleProcessView.d.ts +10 -0
  163. package/dist/types/src/components/pure/TestPageView.d.ts +2 -1
  164. package/dist/types/src/components/pure/TestPageView_utils.d.ts +23 -0
  165. package/dist/types/src/components/pure/TestTable.d.ts +16 -0
  166. package/dist/types/src/components/pure/ToastNotification.d.ts +6 -0
  167. package/dist/types/src/components/pure/UserProfile.d.ts +2 -0
  168. package/dist/types/src/components/stateful/AuthCallbackPage.d.ts +2 -0
  169. package/dist/types/src/components/stateful/FileTree.d.ts +0 -8
  170. package/dist/types/src/components/stateful/GitIntegrationPage.d.ts +1 -0
  171. package/dist/types/src/hooks/useGitMode.d.ts +7 -0
  172. package/dist/types/src/lib/BaseSuite.test/mock.d.ts +2 -2
  173. package/dist/types/src/lib/BaseSuite.test/test.d.ts +4 -3
  174. package/dist/types/src/lib/Tiposkripto.d.ts +2 -0
  175. package/dist/types/src/lib/Tiposkripto.test/MockTiposkripto.d.ts +3 -0
  176. package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.types.d.ts +5 -0
  177. package/dist/types/src/lib/index.d.ts +6 -0
  178. package/dist/types/src/services/FileService.d.ts +34 -0
  179. package/dist/types/src/services/GitHubAuthService.d.ts +32 -0
  180. package/dist/types/src/utils/api.d.ts +1 -0
  181. package/dist/types/src/utils/gitTest.d.ts +11 -0
  182. package/dist/types/src/utils.d.ts +3 -3
  183. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  184. package/example/__pycache__/Calculator.cpython-313.pyc +0 -0
  185. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/README.md +187 -0
  186. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_given.go +163 -0
  187. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_suite.go +85 -0
  188. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_then.go +21 -0
  189. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_when.go +21 -0
  190. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/golingvu.go +554 -0
  191. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/test_adapter.go +33 -0
  192. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/types.go +72 -0
  193. package/example/vendor/modules.txt +5 -0
  194. package/git-integration-plan.md +395 -0
  195. package/package.json +26 -14
  196. package/src/App.tsx +169 -18
  197. package/src/PM/PM_WithBuild.ts +171 -0
  198. package/src/PM/PM_WithEslintAndTsc.ts +109 -86
  199. package/src/PM/PM_WithGit.ts +585 -0
  200. package/src/PM/PM_WithProcesses.ts +639 -0
  201. package/src/PM/PM_WithWebSocket.ts +631 -0
  202. package/src/PM/base.ts +63 -1
  203. package/src/PM/index.ts +8 -5
  204. package/src/PM/main.ts +672 -2050
  205. package/src/PM/metafileOutputs.ts +90 -0
  206. package/src/PM/node.ts +18 -18
  207. package/src/PM/pure.ts +5 -13
  208. package/src/PM/types.ts +145 -0
  209. package/src/PM/utils.ts +256 -0
  210. package/src/PM/web.ts +8 -8
  211. package/src/README.md +122 -0
  212. package/src/ReportServer.ts +0 -12
  213. package/src/ReportServerLib.ts +0 -147
  214. package/src/Types.ts +1 -0
  215. package/src/app.scss +14 -164
  216. package/src/components/pure/AppFrame.tsx +237 -71
  217. package/src/components/pure/ArtifactTree.tsx +82 -0
  218. package/src/components/pure/BuildLogViewer.tsx +168 -0
  219. package/src/components/pure/DebugEnv.tsx +30 -0
  220. package/src/components/pure/FileTree.tsx +58 -0
  221. package/src/components/pure/FileTreeItem.tsx +49 -0
  222. package/src/components/pure/GitHubLoginButton.tsx +31 -0
  223. package/src/components/pure/GitIntegrationView.tsx +443 -0
  224. package/src/components/pure/ProcessManager.tsx +6 -5
  225. package/src/components/pure/ProcessManagerView.tsx +162 -166
  226. package/src/components/pure/ProjectPageView.tsx +6 -224
  227. package/src/components/pure/Settings.test.tsx +34 -0
  228. package/src/components/pure/Settings.tsx +163 -0
  229. package/src/components/pure/SignIn.tsx +33 -0
  230. package/src/components/pure/SingleProcessView.tsx +231 -235
  231. package/src/components/pure/TestPageView.test/specification.ts +1 -0
  232. package/src/components/pure/TestPageView.tsx +317 -826
  233. package/src/components/pure/TestPageView_utils.tsx +285 -0
  234. package/src/components/pure/TestTable.tsx +88 -0
  235. package/src/components/pure/ToastNotification.tsx +19 -0
  236. package/src/components/pure/UserProfile.tsx +44 -0
  237. package/src/components/stateful/AuthCallbackPage.tsx +21 -0
  238. package/src/components/stateful/FeaturesReporter.tsx +3 -1
  239. package/src/components/stateful/FileTree.tsx +58 -58
  240. package/src/components/stateful/GitIntegrationPage.tsx +8 -0
  241. package/src/components/stateful/ProcessManagerPage.tsx +13 -17
  242. package/src/components/stateful/ProjectPage.tsx +6 -5
  243. package/src/components/stateful/ProjectsPage.tsx +17 -19
  244. package/src/components/stateful/SVGEditor/CircleForm.tsx +68 -0
  245. package/src/components/stateful/SVGEditor/GroupForm.tsx +56 -0
  246. package/src/components/stateful/SVGEditor/RectForm.tsx +74 -0
  247. package/src/components/stateful/SVGEditor/SVGAttributeField.tsx +29 -0
  248. package/src/components/stateful/SVGEditor/SVGAttributesEditor.tsx +73 -0
  249. package/src/components/stateful/SVGEditor/SVGEditorControls.tsx +45 -0
  250. package/src/components/stateful/SVGEditor/SVGElementForm.tsx +45 -0
  251. package/src/components/stateful/SVGEditor/SVGPreview.tsx +225 -0
  252. package/src/components/stateful/SVGEditor/SVGTextEditor.tsx +166 -0
  253. package/src/components/stateful/SVGEditor/SVGTree.tsx +159 -0
  254. package/src/components/stateful/SVGEditor/SVGTypes.ts +36 -0
  255. package/src/components/stateful/SVGEditor/svg.xsd.xml +3038 -0
  256. package/src/components/stateful/SVGEditorPage.tsx +503 -0
  257. package/src/components/stateful/SingleProcessPage.tsx +18 -31
  258. package/src/components/stateful/TestPage.tsx +25 -22
  259. package/src/golingvu/golingvu.go +38 -2
  260. package/src/hooks/useGitMode.ts +20 -0
  261. package/src/lib/BaseSuite.test/mock.ts +16 -10
  262. package/src/lib/BaseSuite.test/test.ts +144 -103
  263. package/src/lib/Tiposkripto.test/MockTiposkripto.ts +178 -14
  264. package/src/lib/Tiposkripto.test/Tiposkripto.adapter.ts +9 -14
  265. package/src/lib/Tiposkripto.test/Tiposkripto.implementation.ts +78 -38
  266. package/src/lib/Tiposkripto.test/Tiposkripto.specification.ts +51 -9
  267. package/src/lib/Tiposkripto.test/Tiposkripto.types.ts +5 -0
  268. package/src/lib/Tiposkripto.ts +27 -0
  269. package/src/lib/index.ts +7 -0
  270. package/src/lib/pmProxy.test/specification.ts +168 -166
  271. package/src/pitono/PM/__pycache__/python.cpython-313.pyc +0 -0
  272. package/src/pitono/__pycache__/Pitono.cpython-313.pyc +0 -0
  273. package/src/pitono/__pycache__/__init__.cpython-313.pyc +0 -0
  274. package/src/pitono/__pycache__/base_given.cpython-313.pyc +0 -0
  275. package/src/pitono/__pycache__/base_suite.cpython-313.pyc +0 -0
  276. package/src/pitono/__pycache__/base_then.cpython-313.pyc +0 -0
  277. package/src/pitono/__pycache__/base_when.cpython-313.pyc +0 -0
  278. package/src/pitono/__pycache__/core_generator.cpython-313.pyc +0 -0
  279. package/src/pitono/__pycache__/simple_adapter.cpython-313.pyc +0 -0
  280. package/src/pitono/__pycache__/types.cpython-313.pyc +0 -0
  281. package/src/services/FileService.ts +542 -0
  282. package/src/services/GitHubAuthService.ts +240 -0
  283. package/src/testeranto.ts +62 -140
  284. package/src/utils/api.ts +15 -13
  285. package/src/utils/gitTest.ts +29 -0
  286. package/src/utils.ts +21 -12
  287. package/testeranto/App.css +94 -121
  288. package/testeranto/App.js +44601 -11225
  289. package/testeranto/bundles/golang/core/Calculator.golingvu.go +53 -0
  290. package/testeranto/bundles/golang/core/Calculator.golingvu.golingvu.go +53 -0
  291. package/testeranto/bundles/node/core/chunk-RIM6RECA.mjs +1170 -0
  292. package/testeranto/bundles/node/core/chunk-VXVF7WFO.mjs +4321 -0
  293. package/testeranto/bundles/node/core/example/Calculator.test.mjs +503 -0
  294. package/testeranto/bundles/node/core/src/lib/BaseSuite.test/node.test.mjs +94 -1231
  295. package/testeranto/bundles/node/core/src/lib/TipoSkripto.test/TipoSkripto.mjs +574 -0
  296. package/testeranto/bundles/node/core/src/lib/pmProxy.test/index.mjs +482 -0
  297. package/testeranto/bundles/pure/core/chunk-XYOCRDEQ.mjs +1080 -0
  298. package/testeranto/bundles/pure/core/src/Pure.test.mjs +410 -0
  299. package/testeranto/bundles/pure/core/src/lib/BaseSuite.test/pure.test.mjs +93 -1146
  300. package/testeranto/bundles/python/core/Calculator.pitono.test.py +24 -0
  301. package/testeranto/bundles/python/core/test_example.py +24 -0
  302. package/testeranto/bundles/web/core/MPLUSRounded1c-Black-O75GP5JI.ttf +0 -0
  303. package/testeranto/bundles/web/core/MPLUSRounded1c-Bold-R524Q5BH.ttf +0 -0
  304. package/testeranto/bundles/web/core/MPLUSRounded1c-ExtraBold-C6GRMYVT.ttf +0 -0
  305. package/testeranto/bundles/web/core/MPLUSRounded1c-Light-WKN65Y2C.ttf +0 -0
  306. package/testeranto/bundles/web/core/MPLUSRounded1c-Medium-ZC4DWL7C.ttf +0 -0
  307. package/testeranto/bundles/web/core/MPLUSRounded1c-Regular-DT6EKZ3S.ttf +0 -0
  308. package/testeranto/bundles/web/core/MPLUSRounded1c-Thin-YWDNVG6M.ttf +0 -0
  309. package/testeranto/bundles/web/core/chunk-DFRN4SYZ.mjs +2297 -0
  310. package/testeranto/bundles/web/core/chunk-JMDLMADH.mjs +27996 -0
  311. package/testeranto/bundles/web/core/chunk-LQMU5NCG.mjs +3082 -0
  312. package/testeranto/bundles/web/core/chunk-Q5TONB2Z.mjs +6874 -0
  313. package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.mjs +164 -0
  314. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.css +11697 -0
  315. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.mjs +336 -0
  316. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.css +11697 -0
  317. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.mjs +517 -0
  318. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.mjs +107 -1134
  319. package/testeranto/metafiles/golang/core.json +3 -3
  320. package/testeranto/metafiles/node/core.json +474 -31
  321. package/testeranto/metafiles/pure/core.json +144 -28
  322. package/testeranto/metafiles/python/core.json +11 -0
  323. package/testeranto/metafiles/web/core.json +15829 -45
  324. package/testeranto/reports/core/config.json +40 -0
  325. package/testeranto/reports/core/src/Pure.test/pure/exit.log +0 -0
  326. package/testeranto/reports/core/src/Pure.test/pure/lint_errors.txt +0 -0
  327. package/testeranto/reports/core/src/Pure.test/pure/prompt.txt +14 -0
  328. package/testeranto/reports/core/src/Pure.test/pure/type_errors.txt +73 -0
  329. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/debug.log +0 -0
  330. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/error.log +91 -0
  331. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/exit.log +1 -0
  332. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/info.log +2 -0
  333. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/tests.json +68 -0
  334. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/warn.log +0 -0
  335. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/debug.log +0 -0
  336. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/error.log +30 -0
  337. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/exit.log +1 -0
  338. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/info.log +2 -0
  339. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/tests.json +88 -0
  340. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/warn.log +0 -0
  341. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/lint_errors.txt +0 -6
  342. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/prompt.txt +0 -11
  343. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stdout.log +1 -0
  344. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/tests.json +1 -1
  345. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/type_errors.txt +35 -38
  346. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/lint_errors.txt +0 -2
  347. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +0 -10
  348. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +40 -38
  349. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/tests.json +1 -1
  350. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/exit.log +1 -0
  351. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/lint_errors.txt +0 -0
  352. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/message.txt +17 -0
  353. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/prompt.txt +17 -0
  354. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stderr.log +55 -0
  355. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stdout.log +191 -0
  356. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/type_errors.txt +71 -0
  357. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/exit.log +1 -0
  358. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/lint_errors.txt +15 -0
  359. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/message.txt +17 -0
  360. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/prompt.txt +17 -0
  361. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stderr.log +20 -0
  362. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stdout.log +4 -0
  363. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/type_errors.txt +49 -0
  364. package/testeranto/reports/core/summary.json +34 -6
  365. package/testeranto.config.ts +26 -20
  366. package/tsc.log +141 -91
  367. package/tsconfig.json +6 -2
  368. package/dist/types/design-editor/server.d.ts +0 -1
  369. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.html +0 -15
  370. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/lint_errors.txt +0 -2
  371. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/prompt.txt +0 -25
  372. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/type_errors.txt +0 -56
  373. /package/testeranto/reports/core/src/{lib/BaseSuite.test/web.test/web → Pure.test/pure}/message.txt +0 -0
@@ -0,0 +1,3038 @@
1
+
2
+ <!-- edited with XML Spy v4.0.1 U (http://www.xmlspy.com) by Chris Lilley (W3C Staff) -->
3
+ <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:svg="http://www.w3.org/2000/svg"
4
+ xmlns:xlink="http://www.w3.org/1999/xlink" targetNamespace="http://www.w3.org/2000/svg"
5
+ elementFormDefault="unqualified" attributeFormDefault="unqualified" xml:lang="en">
6
+ <!-- don't declare the XML namespace; it is predeclared and redeclaring it upsets some software -->
7
+ <import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd" />
8
+ <import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd" />
9
+ <!-- simpleTypes -->
10
+ <simpleType name="BaselineShiftValueType">
11
+ <annotation>
12
+ <documentation>The actual definition is baseline | sub | super | <percentage> | <length> |
13
+ inherit not sure that union can do this </documentation>
14
+ </annotation>
15
+ <restriction base="string" />
16
+ </simpleType>
17
+ <!-- SVG BooleanType not needed, already defined by XML Schema -->
18
+ <simpleType name="ClassListType">
19
+ <annotation>
20
+ <documentation>Space-separated list of classes</documentation>
21
+ </annotation>
22
+ <list itemType="string" />
23
+ </simpleType>
24
+ <simpleType name="ClipValueType">
25
+ <annotation>
26
+ <documentation>
27
+ <shape> | auto | inherit </documentation>
28
+ </annotation>
29
+ <restriction base="string" />
30
+ </simpleType>
31
+ <simpleType name="ClipPathValueType">
32
+ <annotation>
33
+ <documentation><uri> | none | inherit</documentation>
34
+ </annotation>
35
+ <restriction base="string" />
36
+ </simpleType>
37
+ <simpleType name="ClipFillRuleType">
38
+ <annotation>
39
+ <documentation>'clip-rule' or fill-rule property/attribute value </documentation>
40
+ </annotation>
41
+ <restriction base="string">
42
+ <enumeration value="evenodd" />
43
+ <enumeration value="nonzero" />
44
+ <enumeration value="inherit" />
45
+ </restriction>
46
+ </simpleType>
47
+ <simpleType name="ContentTypeType">
48
+ <annotation>
49
+ <documentation source="http://www.ietf.org/rfc/rfc2045.txt">media type, as per [RFC2045]</documentation>
50
+ <documentation>media type, as per [RFC2045] </documentation>
51
+ </annotation>
52
+ <restriction base="string" />
53
+ </simpleType>
54
+ <simpleType name="CoordinateType">
55
+ <annotation>
56
+ <documentation source="http://www.w3.org/TR/SVG/types.html#DataTypeCoordinate">a <co-ordinate></documentation>
57
+ <documentation>a coordinate, which is a number optionally followed immediately by a unit
58
+ identifier. Perhaps it is possible to represent this as a union by declaring unit idenifiers
59
+ as a type?</documentation>
60
+ </annotation>
61
+ <restriction base="string">
62
+ <pattern
63
+ value="((((\+|\-)?((\d+)))|((\+|\-)?(((((\d+)?\.(\d+))|((\d+)\.))([eE](\+|\-)?(\d+))?)|((\d+)([eE](\+|\-)?(\d+))))))(em|ex|px|pt|pc|cm|mm|in|%)?)" />
64
+ </restriction>
65
+ </simpleType>
66
+ <simpleType name="CoordinatesType">
67
+ <annotation>
68
+ <documentation>a space separated list of CoordinateType. Punt to 'string' for now</documentation>
69
+ </annotation>
70
+ <restriction base="string" />
71
+ </simpleType>
72
+ <simpleType name="ColorType">
73
+ <annotation>
74
+ <documentation source="http://www.w3.org/TR/SVG/types.html#DataTypeColor">a CSS2 Color </documentation>
75
+ <documentation>Color as defined in CSS2 and XSL 1.0 plus additional recognised color keyword
76
+ names (the 'X11 colors')</documentation>
77
+ </annotation>
78
+ <restriction base="string" />
79
+ </simpleType>
80
+ <simpleType name="CursorValueType">
81
+ <annotation>
82
+ <documentation>Value is an optional comma-separated list orf uri references followed by one
83
+ token from an enumerated list. </documentation>
84
+ <documentation> [ [<uri> ,]* [ auto | crosshair | default | pointer | move | e-resize |
85
+ ne-resize | nw-resize | n-resize | se-resize | sw-resize | s-resize | w-resize| text | wait
86
+ | help ] ] | inherit </documentation>
87
+ </annotation>
88
+ <restriction base="string" />
89
+ </simpleType>
90
+ <simpleType name="EnableBackgroundValueType">
91
+ <annotation>
92
+ <documentation>accumulate | new [ <x>
93
+ <y>
94
+ <width>
95
+ <height> ] | inherit</documentation>
96
+ </annotation>
97
+ <restriction base="string" />
98
+ </simpleType>
99
+ <simpleType name="ExtensionListType">
100
+ <annotation>
101
+ <documentation>extension list specification </documentation>
102
+ </annotation>
103
+ <restriction base="string" />
104
+ </simpleType>
105
+ <simpleType name="FeatureListType">
106
+ <annotation>
107
+ <documentation>feature list specification </documentation>
108
+ </annotation>
109
+ <restriction base="string" />
110
+ </simpleType>
111
+ <simpleType name="FilterValueType">
112
+ <annotation>
113
+ <documentation><uri> | none | inherit </documentation>
114
+ </annotation>
115
+ <restriction base="string" />
116
+ </simpleType>
117
+ <simpleType name="FontFamilyValueType">
118
+ <annotation>
119
+ <documentation>[[ <family-name> | <generic-family> ],]* [<family-name> | <generic-family>] |
120
+ inherit</documentation>
121
+ <documentation>'font-family' property/attribute value (i.e., list of fonts) </documentation>
122
+ </annotation>
123
+ <restriction base="string" />
124
+ </simpleType>
125
+ <simpleType name="FontSizeValueType">
126
+ <annotation>
127
+ <documentation>'font-size' property/attribute value </documentation>
128
+ <documentation><absolute-size> | <relative-size> | <length> | <percentage> | inherit</documentation>
129
+ </annotation>
130
+ <restriction base="string" />
131
+ </simpleType>
132
+ <simpleType name="FontSizeAdjustValueType">
133
+ <annotation>
134
+ <documentation>'font-size-adjust' property/attribute value </documentation>
135
+ <documentation><number> | none | inherit </documentation>
136
+ </annotation>
137
+ <restriction base="string" />
138
+ </simpleType>
139
+ <simpleType name="GlyphOrientationHorizontalValueType">
140
+ <annotation>
141
+ <documentation>'glyph-orientation-horizontal' property/attribute value (e.g., <angle>)</documentation>
142
+ <documentation><angle> | inherit</documentation>
143
+ </annotation>
144
+ <restriction base="string" />
145
+ </simpleType>
146
+ <simpleType name="GlyphOrientationVerticalValueType">
147
+ <annotation>
148
+ <documentation>'glyph-orientation-vertical' property/attribute value (e.g., 'auto', <angle>)</documentation>
149
+ <documentation>auto | <angle> | inherit</documentation>
150
+ </annotation>
151
+ <restriction base="string" />
152
+ </simpleType>
153
+ <!-- no need to declare IntegerType as XML Schema defines integers -->
154
+ <simpleType name="KerningValue">
155
+ <annotation>
156
+ <documentation>'kerning' property/attribute value (e.g., auto | <length>)</documentation>
157
+ <documentation>auto | <length> | inherit </documentation>
158
+ </annotation>
159
+ <restriction base="string" />
160
+ </simpleType>
161
+ <simpleType name="LanguageCodeType">
162
+ <annotation>
163
+ <documentation>a language code, as per [RFC3066]</documentation>
164
+ <documentation source="http://www.ietf.org/rfc/rfc3066.txt" />
165
+ </annotation>
166
+ <restriction base="string" />
167
+ </simpleType>
168
+ <simpleType name="LanguageCodesType">
169
+ <annotation>
170
+ <documentation>a comma-separated list of language codes, as per [RFC3066]</documentation>
171
+ <documentation source="http://www.ietf.org/rfc/rfc3066.txt" />
172
+ </annotation>
173
+ <restriction base="string" />
174
+ </simpleType>
175
+ <simpleType name="LengthType">
176
+ <annotation>
177
+ <documentation>a <length></documentation>
178
+ </annotation>
179
+ <restriction base="string">
180
+ <pattern
181
+ value="((((\+|\-)?((\d+)))|((\+|\-)?(((((\d+)?\.(\d+))|((\d+)\.))([eE](\+|\-)?(\d+))?)|((\d+)([eE](\+|\-)?(\d+))))))(em|ex|px|pt|pc|cm|mm|in|%)?)" />
182
+ </restriction>
183
+ </simpleType>
184
+ <simpleType name="LengthsType">
185
+ <annotation>
186
+ <documentation>a list of <length>s</documentation>
187
+ </annotation>
188
+ <restriction base="string" />
189
+ <!-- make a regexp for this one -->
190
+ </simpleType>
191
+ <simpleType name="LinkTargetType">
192
+ <annotation>
193
+ <documentation>link to this target</documentation>
194
+ </annotation>
195
+ <restriction base="string" />
196
+ </simpleType>
197
+ <simpleType name="MarkerValueType">
198
+ <annotation>
199
+ <documentation>'marker' property/attribute value (e.g., 'none', %URI;)</documentation>
200
+ </annotation>
201
+ <restriction base="string" />
202
+ <!-- need to check this one, its a shorthand value -->
203
+ </simpleType>
204
+ <simpleType name="MaskValueType">
205
+ <annotation>
206
+ <documentation>'mask' property/attribute value (e.g., 'none', %URI;)</documentation>
207
+ <documentation><uri> | none | inherit</documentation>
208
+ </annotation>
209
+ <restriction base="string" />
210
+ </simpleType>
211
+ <simpleType name="MediaDescType">
212
+ <annotation>
213
+ <documentation>comma-separated list of media descriptors.</documentation>
214
+ </annotation>
215
+ <restriction base="string" />
216
+ </simpleType>
217
+ <!-- no need to define NumberType as XML Schema has double -->
218
+ <simpleType name="NumberOptionalNumberType">
219
+ <annotation>
220
+ <documentation>list of <number>s, but at least one and at most two</documentation>
221
+ </annotation>
222
+ <restriction base="string" />
223
+ </simpleType>
224
+ <simpleType name="NumberOrPercentageType">
225
+ <annotation>
226
+ <documentation>a <number> or a <percentage> </documentation>
227
+ </annotation>
228
+ <restriction base="string" />
229
+ </simpleType>
230
+ <simpleType name="NumbersType">
231
+ <annotation>
232
+ <documentation>list of <number>s</documentation>
233
+ </annotation>
234
+ <restriction base="string" />
235
+ </simpleType>
236
+ <simpleType name="OpacityValueType">
237
+ <annotation>
238
+ <documentation>opacity value (e.g., <number>) </documentation>
239
+ <documentation><alphavalue> | inherit</documentation>
240
+ </annotation>
241
+ <restriction base="string" />
242
+ </simpleType>
243
+ <simpleType name="PaintType">
244
+ <annotation>
245
+ <documentation>a 'fill' or 'stroke' property/attribute value</documentation>
246
+ </annotation>
247
+ <restriction base="string" />
248
+ </simpleType>
249
+ <simpleType name="PathDataType">
250
+ <annotation>
251
+ <documentation>a path data specification</documentation>
252
+ <documentation source="http://www.w3.org/TR/SVG/paths.html" />
253
+ <documentation>Yes, of course this was generated by a program!</documentation>
254
+ </annotation>
255
+ <restriction base="string" />
256
+ </simpleType>
257
+ <simpleType name="PointsType">
258
+ <annotation>
259
+ <documentation>a list of points</documentation>
260
+ </annotation>
261
+ <restriction base="string" />
262
+ </simpleType>
263
+ <simpleType name="PreserveAspectRatioSpecType">
264
+ <annotation>
265
+ <documentation>'preserveAspectRatio' attribute specification</documentation>
266
+ </annotation>
267
+ <restriction base="string">
268
+ <pattern value="(\s*(" none"|x(" Min"|" Mid"|" Max")y(" Min"|" Mid"|" Max"))\s+(" meet"|" slice")?\s*)" />
269
+ </restriction>
270
+ </simpleType>
271
+ <simpleType name="ScriptType">
272
+ <annotation>
273
+ <documentation>script expression</documentation>
274
+ </annotation>
275
+ <restriction base="string" />
276
+ </simpleType>
277
+ <simpleType name="SpacingValueType">
278
+ <annotation>
279
+ <documentation>'letter-spacing' or 'word-spacing' property/attribute value (e.g., normal | <length>
280
+ )</documentation>
281
+ </annotation>
282
+ <restriction base="string" />
283
+ </simpleType>
284
+ <simpleType name="StrokeDashArrayValueType">
285
+ <annotation>
286
+ <documentation>'stroke-dasharray' property/attribute value (e.g., 'none', list of <number>s)</documentation>
287
+ </annotation>
288
+ <restriction base="string" />
289
+ </simpleType>
290
+ <simpleType name="StrokeDashOffsetValueType">
291
+ <annotation>
292
+ <documentation>'stroke-dashoffset' property/attribute value (e.g., 'none', >length>)</documentation>
293
+ </annotation>
294
+ <restriction base="string" />
295
+ </simpleType>
296
+ <simpleType name="StrokeMiterLimitValueType">
297
+ <annotation>
298
+ <documentation>'stroke-miterlimit' property/attribute value (e.g., <number>)</documentation>
299
+ </annotation>
300
+ <restriction base="string" />
301
+ </simpleType>
302
+ <simpleType name="StrokeWidthValueType">
303
+ <annotation>
304
+ <documentation>'stroke-width' property/attribute value (e.g., <length>)</documentation>
305
+ </annotation>
306
+ <restriction base="string" />
307
+ </simpleType>
308
+ <!-- <simpleType name="StructuredTextType" base="string"/> expanded -->
309
+ <simpleType name="StyleSheetType">
310
+ <annotation>
311
+ <documentation>style sheet data</documentation>
312
+ </annotation>
313
+ <restriction base="string" />
314
+ </simpleType>
315
+ <simpleType name="SVGColorType">
316
+ <annotation>
317
+ <documentation>An SVG color value (sRGB plus optional ICC)</documentation>
318
+ </annotation>
319
+ <restriction base="string" />
320
+ </simpleType>
321
+ <!-- <simpleType name="TextType" base="string"/> not necessary (string) -->
322
+ <simpleType name="TextDecorationValueType">
323
+ <annotation>
324
+ <documentation>'text-decoration' property/attribute value (e.g., 'none', 'underline')</documentation>
325
+ </annotation>
326
+ <restriction base="string" />
327
+ </simpleType>
328
+ <simpleType name="TransformListType">
329
+ <annotation>
330
+ <documentation>Yes, of course this was generated by a program!</documentation>
331
+ <documentation>list of transforms</documentation>
332
+ </annotation>
333
+ <restriction base="string" />
334
+ </simpleType>
335
+ <!-- <simpleType name="URIType" base="string"/> not necessary (use AnyURI) -->
336
+ <simpleType name="ViewBoxSpecType">
337
+ <annotation>
338
+ <documentation>'viewBox' attribute specification</documentation>
339
+ </annotation>
340
+ <restriction base="string" />
341
+ </simpleType>
342
+ <attributeGroup name="stdAttrs">
343
+ <annotation>
344
+ <documentation>All elements have an ID</documentation>
345
+ </annotation>
346
+ <attribute name="id" type="ID" use="optional" />
347
+ <attribute ref="xml:base" type="anyURI" use="optional" />
348
+ </attributeGroup>
349
+ <attributeGroup name="langSpaceAttrs">
350
+ <annotation>
351
+ <documentation>Common attributes for elements that might contain character data content</documentation>
352
+ </annotation>
353
+ <attribute ref="xml:lang" use="optional" />
354
+ <attribute ref="xml:space" use="optional" />
355
+ </attributeGroup>
356
+ <attributeGroup name="testAttrs">
357
+ <annotation>
358
+ <documentation>Common attributes to check for system capabilities</documentation>
359
+ </annotation>
360
+ <attribute name="requiredFeatures" type="svg:FeatureListType" use="optional" />
361
+ <attribute name="requiredExtensions" type="svg:ExtensionListType" use="optional" />
362
+ <attribute name="systemLanguage" type="svg:LanguageCodesType" use="optional" />
363
+ </attributeGroup>
364
+ <attributeGroup name="xlinkRefAttrs">
365
+ <annotation>
366
+ <documentation>For most uses of URI referencing: standard XLink attributes other than
367
+ xlink:href</documentation>
368
+ </annotation>
369
+ <attribute ref="xlink:type" fixed="simple" />
370
+ <attribute ref="xlink:role" />
371
+ <attribute ref="xlink:arcrole" />
372
+ <attribute ref="xlink:title" />
373
+ <attribute ref="xlink:show" default="other" />
374
+ <attribute ref="xlink:actuate" />
375
+ </attributeGroup>
376
+ <attributeGroup name="xlinkRefAttrsEmbed">
377
+ <annotation>
378
+ <documentation>Standard XLink attributes for uses of URI referencing where xlink:show is
379
+ 'embed'</documentation>
380
+ </annotation>
381
+ <attribute ref="xlink:type" fixed="simple" />
382
+ <attribute ref="xlink:role" />
383
+ <attribute ref="xlink:arcrole" />
384
+ <attribute ref="xlink:title" />
385
+ <attribute ref="xlink:show" />
386
+ <attribute ref="xlink:actuate" />
387
+ </attributeGroup>
388
+ <attributeGroup name="graphicsElementEvents">
389
+ <attribute name="onfocusin" type="svg:ScriptType" use="optional" />
390
+ <attribute name="onfocusout" type="svg:ScriptType" use="optional" />
391
+ <attribute name="onactivate" type="svg:ScriptType" use="optional" />
392
+ <attribute name="onclick" type="svg:ScriptType" use="optional" />
393
+ <attribute name="onmousedown" type="svg:ScriptType" use="optional" />
394
+ <attribute name="onmouseup" type="svg:ScriptType" use="optional" />
395
+ <attribute name="onmouseover" type="svg:ScriptType" use="optional" />
396
+ <attribute name="onmousemove" type="svg:ScriptType" use="optional" />
397
+ <attribute name="onmouseout" type="svg:ScriptType" use="optional" />
398
+ <attribute name="onload" type="svg:ScriptType" use="optional" />
399
+ </attributeGroup>
400
+ <attributeGroup name="documentEvents">
401
+ <attribute name="onunload" type="svg:ScriptType" use="optional" />
402
+ <attribute name="onabort" type="svg:ScriptType" use="optional" />
403
+ <attribute name="onerror" type="svg:ScriptType" use="optional" />
404
+ <attribute name="onresize" type="svg:ScriptType" use="optional" />
405
+ <attribute name="onscroll" type="svg:ScriptType" use="optional" />
406
+ <attribute name="onzoom" type="svg:ScriptType" use="optional" />
407
+ </attributeGroup>
408
+ <attributeGroup name="animationEvents">
409
+ <attribute name="onbegin" type="svg:ScriptType" use="optional" />
410
+ <attribute name="onend" type="svg:ScriptType" use="optional" />
411
+ <attribute name="onrepeat" type="svg:ScriptType" use="optional" />
412
+ </attributeGroup>
413
+ <attributeGroup name="PresentationAttributes-Color">
414
+ <annotation>
415
+ <documentation>The following presentation attributes have to do with specifying color.</documentation>
416
+ </annotation>
417
+ <attribute name="color" type="svg:ColorType" use="optional" />
418
+ <attribute name="color-interpolation" use="optional">
419
+ <simpleType>
420
+ <restriction base="string">
421
+ <enumeration value="auto" />
422
+ <enumeration value="sRGB" />
423
+ <enumeration value="linearRGB" />
424
+ <enumeration value="inherit" />
425
+ </restriction>
426
+ </simpleType>
427
+ </attribute>
428
+ <attribute name="color-rendering" use="optional">
429
+ <simpleType>
430
+ <restriction base="string">
431
+ <enumeration value="auto" />
432
+ <enumeration value="optimizeSpeed" />
433
+ <enumeration value="optimizeQuality" />
434
+ <enumeration value="inherit" />
435
+ </restriction>
436
+ </simpleType>
437
+ </attribute>
438
+ </attributeGroup>
439
+ <attributeGroup name="PresentationAttributes-Containers">
440
+ <annotation>
441
+ <documentation>The following presentation attributes apply to container elements</documentation>
442
+ </annotation>
443
+ <attribute name="enable-background" type="svg:EnableBackgroundValueType" use="optional" />
444
+ </attributeGroup>
445
+ <attributeGroup name="PresentationAttributes-feFlood">
446
+ <annotation>
447
+ <documentation>The following presentation attributes apply to 'feFlood' elements</documentation>
448
+ </annotation>
449
+ <attribute name="flood-color" type="svg:SVGColorType" use="optional" />
450
+ <attribute name="flood-opacity" type="svg:OpacityValueType" use="optional" />
451
+ </attributeGroup>
452
+ <attributeGroup name="PresentationAttributes-FilterPrimitives">
453
+ <annotation>
454
+ <documentation>The following presentation attributes apply to filter primitives</documentation>
455
+ </annotation>
456
+ <attribute name="color-interpolation-filters" use="optional">
457
+ <simpleType>
458
+ <restriction base="string">
459
+ <enumeration value="auto" />
460
+ <enumeration value="sRGB" />
461
+ <enumeration value="linearRGB" />
462
+ <enumeration value="inherit" />
463
+ </restriction>
464
+ </simpleType>
465
+ </attribute>
466
+ </attributeGroup>
467
+ <attributeGroup name="PresentationAttributes-FillStroke">
468
+ <annotation>
469
+ <documentation>The following presentation attributes apply to filling and stroking operations</documentation>
470
+ </annotation>
471
+ <attribute name="fill" type="svg:PaintType" use="optional" />
472
+ <attribute name="fill-opacity" type="svg:OpacityValueType" use="optional" />
473
+ <attribute name="fill-rule" type="svg:ClipFillRuleType" use="optional" />
474
+ <attribute name="stroke" type="svg:PaintType" use="optional" />
475
+ <attribute name="stroke-dasharray" type="svg:StrokeDashArrayValueType" use="optional" />
476
+ <attribute name="stroke-dashoffset" type="svg:StrokeDashOffsetValueType" use="optional" />
477
+ <attribute name="stroke-linecap" use="optional">
478
+ <simpleType>
479
+ <restriction base="string">
480
+ <enumeration value="butt" />
481
+ <enumeration value="round" />
482
+ <enumeration value="square" />
483
+ <enumeration value="inherit" />
484
+ </restriction>
485
+ </simpleType>
486
+ </attribute>
487
+ <attribute name="stroke-linejoin" use="optional">
488
+ <simpleType>
489
+ <restriction base="string">
490
+ <enumeration value="miter" />
491
+ <enumeration value="round" />
492
+ <enumeration value="bevel" />
493
+ <enumeration value="inherit" />
494
+ </restriction>
495
+ </simpleType>
496
+ </attribute>
497
+ <attribute name="stroke-miterlimit" type="svg:StrokeMiterLimitValueType" use="optional" />
498
+ <attribute name="stroke-opacity" type="svg:OpacityValueType" use="optional" />
499
+ <attribute name="stroke-width" type="svg:StrokeWidthValueType" use="optional" />
500
+ </attributeGroup>
501
+ <attributeGroup name="PresentationAttributes-FontSpecification">
502
+ <annotation>
503
+ <documentation>The following presentation attributes have to do with selecting a font to use</documentation>
504
+ </annotation>
505
+ <attribute name="font-family" type="svg:FontFamilyValueType" use="optional" />
506
+ <attribute name="font-size" type="svg:FontSizeValueType" use="optional" />
507
+ <attribute name="font-size-adjust" type="svg:FontSizeAdjustValueType" use="optional" />
508
+ <attribute name="font-stretch" use="optional">
509
+ <simpleType>
510
+ <restriction base="string">
511
+ <enumeration value="normal" />
512
+ <enumeration value="wider" />
513
+ <enumeration value="narrower" />
514
+ <enumeration value="ultra-condensed" />
515
+ <enumeration value="extra-condensed" />
516
+ <enumeration value="condensed" />
517
+ <enumeration value="semi-condensed" />
518
+ <enumeration value="semi-expanded" />
519
+ <enumeration value="expanded" />
520
+ <enumeration value="extra-expanded" />
521
+ <enumeration value="ultra-expanded" />
522
+ <enumeration value="inherit" />
523
+ </restriction>
524
+ </simpleType>
525
+ </attribute>
526
+ <attribute name="font-style" use="optional">
527
+ <simpleType>
528
+ <restriction base="string">
529
+ <enumeration value="normal" />
530
+ <enumeration value="italic" />
531
+ <enumeration value="oblique" />
532
+ <enumeration value="inherit" />
533
+ </restriction>
534
+ </simpleType>
535
+ </attribute>
536
+ <attribute name="font-variant" use="optional">
537
+ <simpleType>
538
+ <restriction base="string">
539
+ <enumeration value="normal" />
540
+ <enumeration value="small-caps" />
541
+ <enumeration value="inherit" />
542
+ </restriction>
543
+ </simpleType>
544
+ </attribute>
545
+ <attribute name="font-weight" use="optional">
546
+ <simpleType>
547
+ <restriction base="string">
548
+ <enumeration value="normal" />
549
+ <enumeration value="bold" />
550
+ <enumeration value="bolder" />
551
+ <enumeration value="lighter" />
552
+ <enumeration value="100" />
553
+ <enumeration value="200" />
554
+ <enumeration value="300" />
555
+ <enumeration value="400" />
556
+ <enumeration value="500" />
557
+ <enumeration value="600" />
558
+ <enumeration value="700" />
559
+ <enumeration value="800" />
560
+ <enumeration value="900" />
561
+ <enumeration value="inherit" />
562
+ </restriction>
563
+ </simpleType>
564
+ </attribute>
565
+ </attributeGroup>
566
+ <attributeGroup name="PresentationAttributes-Gradients">
567
+ <annotation>
568
+ <documentation>The following presentation attributes apply to gradient 'stop' elements</documentation>
569
+ </annotation>
570
+ <attribute name="stop-color" type="svg:SVGColorType" use="optional" />
571
+ <attribute name="stop-opacity" type="svg:OpacityValueType" use="optional" />
572
+ </attributeGroup>
573
+ <attributeGroup name="PresentationAttributes-Graphics">
574
+ <annotation>
575
+ <documentation>The following presentation attributes apply to graphics elements</documentation>
576
+ </annotation>
577
+ <attribute name="clip-path" type="svg:ClipPathValueType" use="optional" />
578
+ <attribute name="clip-rule" type="svg:ClipFillRuleType" use="optional" />
579
+ <attribute name="cursor" type="svg:CursorValueType" use="optional" />
580
+ <attribute name="display" use="optional">
581
+ <simpleType>
582
+ <restriction base="string">
583
+ <enumeration value="inline" />
584
+ <enumeration value="block" />
585
+ <enumeration value="list-item" />
586
+ <enumeration value="run-in" />
587
+ <enumeration value="compact" />
588
+ <enumeration value="marker" />
589
+ <enumeration value="table" />
590
+ <enumeration value="inline-table" />
591
+ <enumeration value="table-row-group" />
592
+ <enumeration value="table-header-group" />
593
+ <enumeration value="table-footer-group" />
594
+ <enumeration value="table-row" />
595
+ <enumeration value="table-column-group" />
596
+ <enumeration value="table-column" />
597
+ <enumeration value="table-cell" />
598
+ <enumeration value="table-caption" />
599
+ <enumeration value="none" />
600
+ <enumeration value="inherit" />
601
+ </restriction>
602
+ </simpleType>
603
+ </attribute>
604
+ <attribute name="filter" type="svg:FilterValueType" use="optional" />
605
+ <attribute name="image-rendering" use="optional">
606
+ <simpleType>
607
+ <restriction base="string">
608
+ <enumeration value="auto" />
609
+ <enumeration value="optimizeSpeed" />
610
+ <enumeration value="optimizeQuality" />
611
+ <enumeration value="inherit" />
612
+ </restriction>
613
+ </simpleType>
614
+ </attribute>
615
+ <attribute name="mask" type="svg:MaskValueType" use="optional" />
616
+ <attribute name="opacity" type="svg:OpacityValueType" use="optional" />
617
+ <attribute name="pointer-events" use="optional">
618
+ <simpleType>
619
+ <restriction base="string">
620
+ <enumeration value="visiblePainted" />
621
+ <enumeration value="visibleFill" />
622
+ <enumeration value="visibleStroke" />
623
+ <enumeration value="visibleFillStroke" />
624
+ <enumeration value="visible" />
625
+ <enumeration value="painted" />
626
+ <enumeration value="fill" />
627
+ <enumeration value="stroke" />
628
+ <enumeration value="fillstroke" />
629
+ <enumeration value="all" />
630
+ <enumeration value="none" />
631
+ <enumeration value="inherit" />
632
+ </restriction>
633
+ </simpleType>
634
+ </attribute>
635
+ <attribute name="shape-rendering" use="optional">
636
+ <simpleType>
637
+ <restriction base="string">
638
+ <enumeration value="auto" />
639
+ <enumeration value="optimizeSpeed" />
640
+ <enumeration value="crispEdges" />
641
+ <enumeration value="geometricPrecision" />
642
+ <enumeration value="inherit" />
643
+ </restriction>
644
+ </simpleType>
645
+ </attribute>
646
+ <attribute name="text-rendering" use="optional">
647
+ <simpleType>
648
+ <restriction base="string">
649
+ <enumeration value="auto" />
650
+ <enumeration value="optimizeSpeed" />
651
+ <enumeration value="optimizeLegibility" />
652
+ <enumeration value="geometricPrecision" />
653
+ <enumeration value="inherit" />
654
+ </restriction>
655
+ </simpleType>
656
+ </attribute>
657
+ <attribute name="visibility" use="optional">
658
+ <simpleType>
659
+ <restriction base="string">
660
+ <enumeration value="visible" />
661
+ <enumeration value="hidden" />
662
+ <enumeration value="inherit" />
663
+ </restriction>
664
+ </simpleType>
665
+ </attribute>
666
+ </attributeGroup>
667
+ <attributeGroup name="PresentationAttributes-Images">
668
+ <annotation>
669
+ <documentation>The following presentation attributes apply to 'image' elements</documentation>
670
+ </annotation>
671
+ <attribute name="color-profile" use="optional" />
672
+ </attributeGroup>
673
+ <attributeGroup name="PresentationAttributes-LightingEffects">
674
+ <annotation>
675
+ <documentation>The following presentation attributes apply to 'feDiffuseLighting' and
676
+ 'feSpecularLighting' elements</documentation>
677
+ </annotation>
678
+ <attribute name="lighting-color" type="svg:SVGColorType" use="optional" />
679
+ </attributeGroup>
680
+ <attributeGroup name="PresentationAttributes-Markers">
681
+ <annotation>
682
+ <documentation>The following presentation attributes apply to marker operations</documentation>
683
+ </annotation>
684
+ <attribute name="marker-start" type="svg:MarkerValueType" use="optional" />
685
+ <attribute name="marker-mid" type="svg:MarkerValueType" use="optional" />
686
+ <attribute name="marker-end" type="svg:MarkerValueType" use="optional" />
687
+ </attributeGroup>
688
+ <attributeGroup name="PresentationAttributes-TextContentElements">
689
+ <annotation>
690
+ <documentation>The following presentation attributes apply to text content elements</documentation>
691
+ </annotation>
692
+ <attribute name="alignment-baseline" use="optional">
693
+ <simpleType>
694
+ <restriction base="string">
695
+ <enumeration value="baseline" />
696
+ <enumeration value="top" />
697
+ <enumeration value="before-edge" />
698
+ <enumeration value="text-top" />
699
+ <enumeration value="text-before-edge" />
700
+ <enumeration value="middle" />
701
+ <enumeration value="bottom" />
702
+ <enumeration value="after-edge" />
703
+ <enumeration value="text-bottom" />
704
+ <enumeration value="text-after-edge" />
705
+ <enumeration value="ideographic" />
706
+ <enumeration value="lower" />
707
+ <enumeration value="hanging" />
708
+ <enumeration value="mathematical" />
709
+ <enumeration value="inherit" />
710
+ </restriction>
711
+ </simpleType>
712
+ </attribute>
713
+ <attribute name="baseline-shift" type="svg:BaselineShiftValueType" use="optional" />
714
+ <attribute name="direction" use="optional">
715
+ <simpleType>
716
+ <restriction base="string">
717
+ <enumeration value="ltr" />
718
+ <enumeration value="rtl" />
719
+ <enumeration value="inherit" />
720
+ </restriction>
721
+ </simpleType>
722
+ </attribute>
723
+ <attribute name="dominant-baseline" use="optional">
724
+ <simpleType>
725
+ <restriction base="string">
726
+ <enumeration value="auto" />
727
+ <enumeration value="autosense-script" />
728
+ <enumeration value="no-change" />
729
+ <enumeration value="reset" />
730
+ <enumeration value="ideographic" />
731
+ <enumeration value="lower" />
732
+ <enumeration value="hanging" />
733
+ <enumeration value="mathematical" />
734
+ <enumeration value="inherit" />
735
+ </restriction>
736
+ </simpleType>
737
+ </attribute>
738
+ <attribute name="glyph-orientation-horizontal" type="svg:GlyphOrientationHorizontalValueType"
739
+ use="optional" />
740
+ <attribute name="glyph-orientation-vertical" type="svg:GlyphOrientationVerticalValueType"
741
+ use="optional" />
742
+ <attribute name="letter-spacing" type="svg:SpacingValueType" use="optional" />
743
+ <attribute name="text-anchor" use="optional">
744
+ <simpleType>
745
+ <restriction base="string">
746
+ <enumeration value="start" />
747
+ <enumeration value="middle" />
748
+ <enumeration value="end" />
749
+ <enumeration value="inherit" />
750
+ </restriction>
751
+ </simpleType>
752
+ </attribute>
753
+ <attribute name="text-decoration" type="svg:TextDecorationValueType" use="optional" />
754
+ <attribute name="unicode-bidi" use="optional">
755
+ <simpleType>
756
+ <restriction base="string">
757
+ <enumeration value="normal" />
758
+ <enumeration value="embed" />
759
+ <enumeration value="bidi-override" />
760
+ <enumeration value="inherit" />
761
+ </restriction>
762
+ </simpleType>
763
+ </attribute>
764
+ <attribute name="word-spacing" type="svg:SpacingValueType" use="optional" />
765
+ </attributeGroup>
766
+ <attributeGroup name="PresentationAttributes-TextElements">
767
+ <annotation>
768
+ <documentation>The following presentation attributes apply to 'text' elements</documentation>
769
+ </annotation>
770
+ <attribute name="writing-mode" use="optional">
771
+ <simpleType>
772
+ <restriction base="string">
773
+ <enumeration value="lr-tb" />
774
+ <enumeration value="rl-tb" />
775
+ <enumeration value="tb-rl" />
776
+ <enumeration value="lr" />
777
+ <enumeration value="rl" />
778
+ <enumeration value="tb" />
779
+ <enumeration value="inherit" />
780
+ </restriction>
781
+ </simpleType>
782
+ </attribute>
783
+ </attributeGroup>
784
+ <attributeGroup name="PresentationAttributes-Viewports">
785
+ <annotation>
786
+ <documentation>The following presentation attributes apply to elements that establish
787
+ viewports</documentation>
788
+ </annotation>
789
+ <attribute name="clip" type="svg:ClipValueType" use="optional" />
790
+ <attribute name="overflow" use="optional">
791
+ <simpleType>
792
+ <restriction base="string">
793
+ <enumeration value="visible" />
794
+ <enumeration value="hidden" />
795
+ <enumeration value="scroll" />
796
+ <enumeration value="auto" />
797
+ <enumeration value="inherit" />
798
+ </restriction>
799
+ </simpleType>
800
+ </attribute>
801
+ </attributeGroup>
802
+ <attributeGroup name="PresentationAttributes-All">
803
+ <annotation>
804
+ <documentation>The following represents the complete list of presentation attributes</documentation>
805
+ </annotation>
806
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
807
+ <attributeGroup ref="svg:PresentationAttributes-Containers" />
808
+ <attributeGroup ref="svg:PresentationAttributes-feFlood" />
809
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
810
+ <attributeGroup ref="svg:PresentationAttributes-FilterPrimitives" />
811
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
812
+ <attributeGroup ref="svg:PresentationAttributes-Gradients" />
813
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
814
+ <attributeGroup ref="svg:PresentationAttributes-Images" />
815
+ <attributeGroup ref="svg:PresentationAttributes-LightingEffects" />
816
+ <attributeGroup ref="svg:PresentationAttributes-Markers" />
817
+ <attributeGroup ref="svg:PresentationAttributes-TextContentElements" />
818
+ <attributeGroup ref="svg:PresentationAttributes-TextElements" />
819
+ <attributeGroup ref="svg:PresentationAttributes-Viewports" />
820
+ </attributeGroup>
821
+ <attributeGroup name="filter_primitive_attributes">
822
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
823
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
824
+ <attribute name="width" type="svg:LengthType" use="optional" />
825
+ <attribute name="height" type="svg:LengthType" use="optional" />
826
+ <attribute name="result" type="string" use="optional" />
827
+ </attributeGroup>
828
+ <attributeGroup name="filter_primitive_attributes_with_in">
829
+ <attributeGroup ref="svg:filter_primitive_attributes" />
830
+ <attribute name="in" type="string" use="optional" />
831
+ </attributeGroup>
832
+ <attributeGroup name="component_transfer_function_attributes">
833
+ <attribute name="type" use="required">
834
+ <simpleType>
835
+ <restriction base="string">
836
+ <enumeration value="identity" />
837
+ <enumeration value="table" />
838
+ <enumeration value="discrete" />
839
+ <enumeration value="linear" />
840
+ <enumeration value="gamma" />
841
+ </restriction>
842
+ </simpleType>
843
+ </attribute>
844
+ <attribute name="tableValues" type="string" use="optional" />
845
+ <attribute name="slope" type="double" use="optional" />
846
+ <attribute name="intercept" type="double" use="optional" />
847
+ <attribute name="amplitude" type="double" use="optional" />
848
+ <attribute name="exponent" type="double" use="optional" />
849
+ <attribute name="offset" type="double" use="optional" />
850
+ <!-- here -->
851
+ </attributeGroup>
852
+ <attributeGroup name="animElementAttrs">
853
+ <attributeGroup ref="svg:xlinkRefAttrs" />
854
+ <attribute ref="xlink:href" type="anyURI" use="optional" />
855
+ </attributeGroup>
856
+ <attributeGroup name="animAttributeAttrs">
857
+ <attribute name="attributeName" type="string" use="required" />
858
+ <attribute name="attributeType" type="string" use="optional" />
859
+ </attributeGroup>
860
+ <attributeGroup name="animTargetAttrs">
861
+ <attributeGroup ref="svg:animElementAttrs" />
862
+ <attributeGroup ref="svg:animAttributeAttrs" />
863
+ </attributeGroup>
864
+ <attributeGroup name="animTimingAttrs">
865
+ <attribute name="begin" type="string" use="optional" />
866
+ <attribute name="dur" type="string" use="optional" />
867
+ <attribute name="end" type="string" use="optional" />
868
+ <attribute name="min" type="string" use="optional" />
869
+ <attribute name="max" type="string" use="optional" />
870
+ <attribute name="restart" default="always">
871
+ <simpleType>
872
+ <restriction base="string">
873
+ <enumeration value="always" />
874
+ <enumeration value="never" />
875
+ <enumeration value="whenNotActive" />
876
+ </restriction>
877
+ </simpleType>
878
+ </attribute>
879
+ <attribute name="repeatCount" type="string" use="optional" />
880
+ <attribute name="repeatDur" type="string" use="optional" />
881
+ <attribute name="fill" default="remove">
882
+ <simpleType>
883
+ <restriction base="string">
884
+ <enumeration value="remove" />
885
+ <enumeration value="freeze" />
886
+ </restriction>
887
+ </simpleType>
888
+ </attribute>
889
+ </attributeGroup>
890
+ <attributeGroup name="animValueAttrs">
891
+ <attribute name="calcMode" default="linear">
892
+ <simpleType>
893
+ <restriction base="string">
894
+ <enumeration value="discrete" />
895
+ <enumeration value="linear" />
896
+ <enumeration value="paced" />
897
+ <enumeration value="spline" />
898
+ </restriction>
899
+ </simpleType>
900
+ </attribute>
901
+ <attribute name="values" type="string" use="optional" />
902
+ <attribute name="keyTimes" type="string" use="optional" />
903
+ <attribute name="keySplines" type="string" use="optional" />
904
+ <attribute name="from" type="string" use="optional" />
905
+ <attribute name="to" type="string" use="optional" />
906
+ <attribute name="by" type="string" use="optional" />
907
+ <!-- could add a pattern facet here -->
908
+ </attributeGroup>
909
+ <attributeGroup name="animAdditionAttrs">
910
+ <attribute name="additive" default="replace">
911
+ <simpleType>
912
+ <restriction base="string">
913
+ <enumeration value="replace" />
914
+ <enumeration value="sum" />
915
+ </restriction>
916
+ </simpleType>
917
+ </attribute>
918
+ <attribute name="accumulate" default="none">
919
+ <simpleType>
920
+ <restriction base="string">
921
+ <enumeration value="none" />
922
+ <enumeration value="sum" />
923
+ </restriction>
924
+ </simpleType>
925
+ </attribute>
926
+ </attributeGroup>
927
+ <group name="descTitleMetadata">
928
+ <annotation>
929
+ <documentation>A bit simpler than the DTD, but see commented-out alternative</documentation>
930
+ </annotation>
931
+ <all>
932
+ <element name="desc" type="svg:descType" minOccurs="0" />
933
+ <element name="title" type="svg:titleType" minOccurs="0" />
934
+ <element name="metadata" type="svg:metadataType" minOccurs="0" />
935
+ </all>
936
+ </group>
937
+ <!--
938
+ <group name="descTitleMetadata">
939
+ <annotation>
940
+ <documentation>Captures the ordering restrictions of the DTD, but suffers from over complexity. No
941
+ easy way to express this without a wrapper element.</documentation>
942
+ </annotation>
943
+ <choice minOccurs="0" maxOccurs="1">
944
+ <sequence>
945
+ <element name="desc" type="svg:descType"/>
946
+ <choice minOccurs="0" maxOccurs="1">
947
+ <sequence>
948
+ <element name="title" type="svg:titleType"/>
949
+ <element name="metadata" type="svg:metadataType" minOccurs="0" maxOccurs="1"/>
950
+ </sequence>
951
+ <sequence>
952
+ <element name="metadata" type="svg:metadataType"/>
953
+ <element name="title" type="svg:titleType" minOccurs="0" maxOccurs="1"/>
954
+ </sequence>
955
+ </choice>
956
+ </sequence>
957
+ <sequence>
958
+ <element name="title" type="svg:titleType"/>
959
+ <choice minOccurs="0" maxOccurs="1">
960
+ <sequence>
961
+ <element name="desc" type="svg:descType"/>
962
+ <element name="metadata" type="svg:metadataType" minOccurs="0" maxOccurs="1"/>
963
+ </sequence>
964
+ <sequence>
965
+ <element name="metadata" type="svg:metadataType"/>
966
+ <element name="desc" type="svg:descType" minOccurs="0" maxOccurs="1"/>
967
+ </sequence>
968
+ </choice>
969
+ </sequence>
970
+ <sequence>
971
+ <element name="metadata" type="svg:metadataType"/>
972
+ <choice minOccurs="0" maxOccurs="1">
973
+ <sequence>
974
+ <element name="desc" type="svg:descType"/>
975
+ <element name="title" type="svg:titleType" minOccurs="0" maxOccurs="1"/>
976
+ </sequence>
977
+ <sequence>
978
+ <element name="title" type="svg:titleType"/>
979
+ <element name="desc" type="svg:descType" minOccurs="0" maxOccurs="1"/>
980
+ </sequence>
981
+ </choice>
982
+ </sequence>
983
+ </choice>
984
+ </group>
985
+ -->
986
+ <element name="svg" type="svg:svgType" />
987
+ <element name="g" type="svg:gType" />
988
+ <element name="defs" type="svg:defsType" />
989
+ <element name="desc" type="svg:descType" />
990
+ <element name="title" type="svg:titleType" />
991
+ <element name="symbol" type="svg:symbolType" />
992
+ <element name="use" type="svg:useType" />
993
+ <element name="image" type="svg:imageType" />
994
+ <element name="switch" type="svg:switchType" />
995
+ <element name="style" type="svg:styleType" />
996
+ <element name="path" type="svg:pathType" />
997
+ <element name="rect" type="svg:rectType" />
998
+ <element name="circle" type="svg:circleType" />
999
+ <element name="ellipse" type="svg:ellipseType" />
1000
+ <element name="line" type="svg:lineType" />
1001
+ <element name="polyline" type="svg:polylineType" />
1002
+ <element name="polygon" type="svg:polygonType" />
1003
+ <element name="text" type="svg:textType" />
1004
+ <element name="tspan" type="svg:tspanType" />
1005
+ <element name="tref" type="svg:trefType" />
1006
+ <element name="textPath" type="svg:textPathType" />
1007
+ <element name="altGlyph" type="svg:altGlyphType" />
1008
+ <element name="altGlyphDef" type="svg:altGlyphDefType" />
1009
+ <element name="altGlyphItem" type="svg:altGlyphItemType" />
1010
+ <element name="glyphRef" type="svg:glyphRefType" />
1011
+ <element name="marker" type="svg:markerType" />
1012
+ <element name="color-profile" type="svg:color-profileType" />
1013
+ <element name="linearGradient" type="svg:linearGradientType" />
1014
+ <element name="radialGradient" type="svg:radialGradientType" />
1015
+ <element name="stop" type="svg:stopType" />
1016
+ <element name="pattern" type="svg:patternType" />
1017
+ <element name="clipPath" type="svg:clipPathType" />
1018
+ <element name="mask" type="svg:maskType" />
1019
+ <element name="filter" type="svg:filterType" />
1020
+ <element name="feDistantLight" type="svg:feDistantLightType" />
1021
+ <element name="fePointLight" type="svg:fePointLightType" />
1022
+ <element name="feSpotLight" type="svg:feSpotLightType" />
1023
+ <element name="feBlend" type="svg:feBlendType" />
1024
+ <element name="feColorMatrix" type="svg:feColorMatrixType" />
1025
+ <element name="feComponentTransfer" type="svg:feComponentTransferType" />
1026
+ <element name="feFuncR" type="svg:feFuncRType" />
1027
+ <element name="feFuncG" type="svg:feFuncGType" />
1028
+ <element name="feFuncB" type="svg:feFuncBType" />
1029
+ <element name="feFuncA" type="svg:feFuncAType" />
1030
+ <element name="feComposite" type="svg:feCompositeType" />
1031
+ <element name="feConvolveMatrix" type="svg:feConvolveMatrixType" />
1032
+ <element name="feDiffuseLighting" type="svg:feDiffuseLightingType" />
1033
+ <element name="feDisplacementMap" type="svg:feDisplacementMapType" />
1034
+ <element name="feFlood" type="svg:feFloodType" />
1035
+ <element name="feGaussianBlur" type="svg:feGaussianBlurType" />
1036
+ <element name="feImage" type="svg:feImageType" />
1037
+ <element name="feMerge" type="svg:feMergeType" />
1038
+ <element name="feMergeNode" type="svg:feMergeNodeType" />
1039
+ <element name="feMorphology" type="svg:feMorphologyType" />
1040
+ <element name="feOffset" type="svg:feOffsetType" />
1041
+ <element name="feSpecularLighting" type="svg:feSpecularLightingType" />
1042
+ <element name="feTile" type="svg:feTileType" />
1043
+ <element name="feTurbulence" type="svg:feTurbulenceType" />
1044
+ <element name="cursor" type="svg:cursorType" />
1045
+ <element name="a" type="svg:aType" />
1046
+ <element name="view" type="svg:viewType" />
1047
+ <element name="script" type="svg:scriptType" />
1048
+ <element name="animate" type="svg:animateType" />
1049
+ <element name="set" type="svg:setType" />
1050
+ <element name="animateMotion" type="svg:animateMotionType" />
1051
+ <element name="mpath" type="svg:mpathType" />
1052
+ <element name="animateColor" type="svg:animateColorType" />
1053
+ <element name="animateTransform" type="svg:animateTransformType" />
1054
+ <element name="font" type="svg:fontType" />
1055
+ <element name="glyph" type="svg:glyphType" />
1056
+ <element name="missing-glyph" type="svg:missing-glyphType" />
1057
+ <element name="hkern" type="svg:hkernType" />
1058
+ <element name="vkern" type="svg:vkernType" />
1059
+ <element name="font-face" type="svg:font-faceType" />
1060
+ <element name="font-face-src" type="svg:font-face-srcType" />
1061
+ <element name="font-face-uri" type="svg:font-face-uriType" />
1062
+ <element name="font-face-format" type="svg:font-face-formatType" />
1063
+ <element name="font-face-name" type="svg:font-face-nameType" />
1064
+ <element name="definition-src" type="svg:definition-srcType" />
1065
+ <element name="metadata" type="svg:metadataType" />
1066
+ <element name="foreignObject" type="svg:foreignObjectType" />
1067
+ <complexType name="svgType">
1068
+ <choice minOccurs="0" maxOccurs="unbounded">
1069
+ <element ref="svg:desc" />
1070
+ <element ref="svg:title" />
1071
+ <element ref="svg:metadata" />
1072
+ <element ref="svg:defs" />
1073
+ <element ref="svg:path" />
1074
+ <element ref="svg:text" />
1075
+ <element ref="svg:rect" />
1076
+ <element ref="svg:circle" />
1077
+ <element ref="svg:ellipse" />
1078
+ <element ref="svg:line" />
1079
+ <element ref="svg:polyline" />
1080
+ <element ref="svg:polygon" />
1081
+ <element ref="svg:use" />
1082
+ <element ref="svg:image" />
1083
+ <element ref="svg:svg" />
1084
+ <element ref="svg:g" />
1085
+ <element ref="svg:view" />
1086
+ <element ref="svg:switch" />
1087
+ <element ref="svg:a" />
1088
+ <element ref="svg:altGlyphDef" />
1089
+ <element ref="svg:script" />
1090
+ <element ref="svg:style" />
1091
+ <element ref="svg:symbol" />
1092
+ <element ref="svg:marker" />
1093
+ <element ref="svg:clipPath" />
1094
+ <element ref="svg:mask" />
1095
+ <element ref="svg:linearGradient" />
1096
+ <element ref="svg:radialGradient" />
1097
+ <element ref="svg:pattern" />
1098
+ <element ref="svg:filter" />
1099
+ <element ref="svg:cursor" />
1100
+ <element ref="svg:font" />
1101
+ <element ref="svg:animate" />
1102
+ <element ref="svg:set" />
1103
+ <element ref="svg:animateMotion" />
1104
+ <element ref="svg:animateColor" />
1105
+ <element ref="svg:animateTransform" />
1106
+ <element ref="svg:color-profile" />
1107
+ <element ref="svg:font-face" />
1108
+ <!-- should this be done with named child element collections? Especially for modularisation. -->
1109
+ </choice>
1110
+ <attributeGroup ref="svg:stdAttrs" />
1111
+ <attributeGroup ref="svg:testAttrs" />
1112
+ <attributeGroup ref="svg:langSpaceAttrs" />
1113
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1114
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1115
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1116
+ <attributeGroup ref="svg:PresentationAttributes-All" />
1117
+ <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional" />
1118
+ <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType"
1119
+ default="xMidYMid meet" />
1120
+ <attribute name="zoomAndPan" default="magnify">
1121
+ <simpleType>
1122
+ <restriction base="string">
1123
+ <enumeration value="disable" />
1124
+ <enumeration value="magnify" />
1125
+ <enumeration value="zoom" />
1126
+ </restriction>
1127
+ </simpleType>
1128
+ </attribute>
1129
+ <attributeGroup ref="svg:graphicsElementEvents" />
1130
+ <attributeGroup ref="svg:documentEvents" />
1131
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
1132
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
1133
+ <attribute name="width" type="svg:LengthType" use="required" />
1134
+ <attribute name="height" type="svg:LengthType" use="required" />
1135
+ <attribute name="contentScriptType" type="svg:ContentTypeType" default="text/ecmascript" />
1136
+ <attribute name="contentStyleType" type="svg:ContentTypeType" default="text/css" />
1137
+ </complexType>
1138
+ <complexType name="gType">
1139
+ <choice minOccurs="0" maxOccurs="unbounded">
1140
+ <element ref="svg:desc" />
1141
+ <element ref="svg:title" />
1142
+ <element ref="svg:metadata" />
1143
+ <element ref="svg:defs" />
1144
+ <element ref="svg:path" />
1145
+ <element ref="svg:text" />
1146
+ <element ref="svg:rect" />
1147
+ <element ref="svg:circle" />
1148
+ <element ref="svg:ellipse" />
1149
+ <element ref="svg:line" />
1150
+ <element ref="svg:polyline" />
1151
+ <element ref="svg:polygon" />
1152
+ <element ref="svg:use" />
1153
+ <element ref="svg:image" />
1154
+ <element ref="svg:svg" />
1155
+ <element ref="svg:g" />
1156
+ <element ref="svg:view" />
1157
+ <element ref="svg:switch" />
1158
+ <element ref="svg:a" />
1159
+ <element ref="svg:altGlyphDef" />
1160
+ <element ref="svg:script" />
1161
+ <element ref="svg:style" />
1162
+ <element ref="svg:symbol" />
1163
+ <element ref="svg:marker" />
1164
+ <element ref="svg:clipPath" />
1165
+ <element ref="svg:mask" />
1166
+ <element ref="svg:linearGradient" />
1167
+ <element ref="svg:radialGradient" />
1168
+ <element ref="svg:pattern" />
1169
+ <element ref="svg:filter" />
1170
+ <element ref="svg:cursor" />
1171
+ <element ref="svg:font" />
1172
+ <element ref="svg:animate" />
1173
+ <element ref="svg:set" />
1174
+ <element ref="svg:animateMotion" />
1175
+ <element ref="svg:animateColor" />
1176
+ <element ref="svg:animateTransform" />
1177
+ <element ref="svg:color-profile" />
1178
+ <element ref="svg:font-face" />
1179
+ </choice>
1180
+ <attributeGroup ref="svg:stdAttrs" />
1181
+ <attributeGroup ref="svg:testAttrs" />
1182
+ <attributeGroup ref="svg:langSpaceAttrs" />
1183
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1184
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1185
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1186
+ <attributeGroup ref="svg:PresentationAttributes-All" />
1187
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1188
+ <attributeGroup ref="svg:graphicsElementEvents" />
1189
+ </complexType>
1190
+ <complexType name="defsType">
1191
+ <choice minOccurs="0" maxOccurs="unbounded">
1192
+ <element ref="svg:desc" />
1193
+ <element ref="svg:title" />
1194
+ <element ref="svg:metadata" />
1195
+ <element ref="svg:defs" />
1196
+ <element ref="svg:path" />
1197
+ <element ref="svg:text" />
1198
+ <element ref="svg:rect" />
1199
+ <element ref="svg:circle" />
1200
+ <element ref="svg:ellipse" />
1201
+ <element ref="svg:line" />
1202
+ <element ref="svg:polyline" />
1203
+ <element ref="svg:polygon" />
1204
+ <element ref="svg:use" />
1205
+ <element ref="svg:image" />
1206
+ <element ref="svg:svg" />
1207
+ <element ref="svg:g" />
1208
+ <element ref="svg:view" />
1209
+ <element ref="svg:switch" />
1210
+ <element ref="svg:a" />
1211
+ <element ref="svg:altGlyphDef" />
1212
+ <element ref="svg:script" />
1213
+ <element ref="svg:style" />
1214
+ <element ref="svg:symbol" />
1215
+ <element ref="svg:marker" />
1216
+ <element ref="svg:clipPath" />
1217
+ <element ref="svg:mask" />
1218
+ <element ref="svg:linearGradient" />
1219
+ <element ref="svg:radialGradient" />
1220
+ <element ref="svg:pattern" />
1221
+ <element ref="svg:filter" />
1222
+ <element ref="svg:cursor" />
1223
+ <element ref="svg:font" />
1224
+ <element ref="svg:animate" />
1225
+ <element ref="svg:set" />
1226
+ <element ref="svg:animateMotion" />
1227
+ <element ref="svg:animateColor" />
1228
+ <element ref="svg:animateTransform" />
1229
+ <element ref="svg:color-profile" />
1230
+ <element ref="svg:font-face" />
1231
+ </choice>
1232
+ <attributeGroup ref="svg:stdAttrs" />
1233
+ <attributeGroup ref="svg:testAttrs" />
1234
+ <attributeGroup ref="svg:langSpaceAttrs" />
1235
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1236
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1237
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1238
+ <attributeGroup ref="svg:PresentationAttributes-All" />
1239
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1240
+ <attributeGroup ref="svg:graphicsElementEvents" />
1241
+ </complexType>
1242
+ <complexType name="descType" mixed="true">
1243
+ <attributeGroup ref="svg:stdAttrs" />
1244
+ <attributeGroup ref="svg:langSpaceAttrs" />
1245
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1246
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1247
+ <attribute name="content" type="string" fixed="structured text" />
1248
+ </complexType>
1249
+ <complexType name="titleType" mixed="true">
1250
+ <attributeGroup ref="svg:stdAttrs" />
1251
+ <attributeGroup ref="svg:langSpaceAttrs" />
1252
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1253
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1254
+ <attribute name="content" type="string" fixed="structured text" />
1255
+ </complexType>
1256
+ <complexType name="symbolType">
1257
+ <choice minOccurs="0" maxOccurs="unbounded">
1258
+ <element ref="svg:desc" />
1259
+ <element ref="svg:title" />
1260
+ <element ref="svg:metadata" />
1261
+ <element ref="svg:defs" />
1262
+ <element ref="svg:path" />
1263
+ <element ref="svg:text" />
1264
+ <element ref="svg:rect" />
1265
+ <element ref="svg:circle" />
1266
+ <element ref="svg:ellipse" />
1267
+ <element ref="svg:line" />
1268
+ <element ref="svg:polyline" />
1269
+ <element ref="svg:polygon" />
1270
+ <element ref="svg:use" />
1271
+ <element ref="svg:image" />
1272
+ <element ref="svg:svg" />
1273
+ <element ref="svg:g" />
1274
+ <element ref="svg:view" />
1275
+ <element ref="svg:switch" />
1276
+ <element ref="svg:a" />
1277
+ <element ref="svg:altGlyphDef" />
1278
+ <element ref="svg:script" />
1279
+ <element ref="svg:style" />
1280
+ <element ref="svg:symbol" />
1281
+ <element ref="svg:marker" />
1282
+ <element ref="svg:clipPath" />
1283
+ <element ref="svg:mask" />
1284
+ <element ref="svg:linearGradient" />
1285
+ <element ref="svg:radialGradient" />
1286
+ <element ref="svg:pattern" />
1287
+ <element ref="svg:filter" />
1288
+ <element ref="svg:cursor" />
1289
+ <element ref="svg:font" />
1290
+ <element ref="svg:animate" />
1291
+ <element ref="svg:set" />
1292
+ <element ref="svg:animateMotion" />
1293
+ <element ref="svg:animateColor" />
1294
+ <element ref="svg:animateTransform" />
1295
+ <element ref="svg:color-profile" />
1296
+ <element ref="svg:font-face" />
1297
+ </choice>
1298
+ <attributeGroup ref="svg:stdAttrs" />
1299
+ <attributeGroup ref="svg:langSpaceAttrs" />
1300
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1301
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1302
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1303
+ <attributeGroup ref="svg:PresentationAttributes-All" />
1304
+ <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional" />
1305
+ <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType"
1306
+ default="xMidYMid meet" />
1307
+ <attributeGroup ref="svg:graphicsElementEvents" />
1308
+ </complexType>
1309
+ <complexType name="useType">
1310
+ <sequence>
1311
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1312
+ <choice minOccurs="0" maxOccurs="unbounded">
1313
+ <element ref="svg:animate" />
1314
+ <element ref="svg:set" />
1315
+ <element ref="svg:animateMotion" />
1316
+ <element ref="svg:animateColor" />
1317
+ <element ref="svg:animateTransform" />
1318
+ </choice>
1319
+ </sequence>
1320
+ <attributeGroup ref="svg:stdAttrs" />
1321
+ <attributeGroup ref="svg:xlinkRefAttrsEmbed" />
1322
+ <attribute ref="xlink:href" use="required" />
1323
+ <attributeGroup ref="svg:testAttrs" />
1324
+ <attributeGroup ref="svg:langSpaceAttrs" />
1325
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1326
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1327
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1328
+ <attributeGroup ref="svg:PresentationAttributes-All" />
1329
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1330
+ <attributeGroup ref="svg:graphicsElementEvents" />
1331
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
1332
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
1333
+ <attribute name="width" type="svg:LengthType" use="optional" />
1334
+ <attribute name="height" type="svg:LengthType" use="optional" />
1335
+ </complexType>
1336
+ <complexType name="imageType">
1337
+ <sequence>
1338
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1339
+ <choice minOccurs="0" maxOccurs="unbounded">
1340
+ <element ref="svg:animate" />
1341
+ <element ref="svg:set" />
1342
+ <element ref="svg:animateMotion" />
1343
+ <element ref="svg:animateColor" />
1344
+ <element ref="svg:animateTransform" />
1345
+ <!-- this should probably be a named element group -->
1346
+ </choice>
1347
+ </sequence>
1348
+ <attributeGroup ref="svg:stdAttrs" />
1349
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1350
+ <attribute ref="xlink:href" use="optional" />
1351
+ <attributeGroup ref="svg:testAttrs" />
1352
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1353
+ <attributeGroup ref="svg:langSpaceAttrs" />
1354
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1355
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1356
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1357
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1358
+ <attributeGroup ref="svg:PresentationAttributes-Viewports" />
1359
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1360
+ <attributeGroup ref="svg:graphicsElementEvents" />
1361
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
1362
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
1363
+ <attribute name="width" type="svg:LengthType" use="required" />
1364
+ <attribute name="height" type="svg:LengthType" use="required" />
1365
+ </complexType>
1366
+ <complexType name="switchType">
1367
+ <sequence>
1368
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1369
+ <choice minOccurs="0" maxOccurs="unbounded">
1370
+ <element ref="svg:path" />
1371
+ <element ref="svg:text" />
1372
+ <element ref="svg:rect" />
1373
+ <element ref="svg:circle" />
1374
+ <element ref="svg:ellipse" />
1375
+ <element ref="svg:line" />
1376
+ <element ref="svg:polyline" />
1377
+ <element ref="svg:polygon" />
1378
+ <element ref="svg:use" />
1379
+ <element ref="svg:image" />
1380
+ <element ref="svg:svg" />
1381
+ <element ref="svg:g" />
1382
+ <element ref="svg:switch" />
1383
+ <element ref="svg:a" />
1384
+ <element ref="svg:foreignObject" />
1385
+ <element ref="svg:animate" />
1386
+ <element ref="svg:set" />
1387
+ <element ref="svg:animateMotion" />
1388
+ <element ref="svg:animateColor" />
1389
+ <element ref="svg:animateTransform" />
1390
+ </choice>
1391
+ </sequence>
1392
+ <attributeGroup ref="svg:stdAttrs" />
1393
+ <attributeGroup ref="svg:testAttrs" />
1394
+ <attributeGroup ref="svg:langSpaceAttrs" />
1395
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1396
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1397
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1398
+ <attributeGroup ref="svg:PresentationAttributes-All" />
1399
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1400
+ <attributeGroup ref="svg:graphicsElementEvents" />
1401
+ </complexType>
1402
+ <complexType name="styleType" mixed="true">
1403
+ <attributeGroup ref="svg:stdAttrs" />
1404
+ <attribute ref="xml:space" fixed="preserve" />
1405
+ <attribute name="type" type="svg:ContentTypeType" use="required" />
1406
+ <attribute name="media" type="svg:MediaDescType" use="optional" />
1407
+ <attribute name="title" type="string" use="optional" />
1408
+ </complexType>
1409
+ <complexType name="pathType">
1410
+ <sequence>
1411
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1412
+ <choice minOccurs="0" maxOccurs="unbounded">
1413
+ <element ref="svg:animate" />
1414
+ <element ref="svg:set" />
1415
+ <element ref="svg:animateMotion" />
1416
+ <element ref="svg:animateColor" />
1417
+ <element ref="svg:animateTransform" />
1418
+ </choice>
1419
+ </sequence>
1420
+ <attributeGroup ref="svg:stdAttrs" />
1421
+ <attributeGroup ref="svg:testAttrs" />
1422
+ <attributeGroup ref="svg:langSpaceAttrs" />
1423
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1424
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1425
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1426
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1427
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1428
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1429
+ <attributeGroup ref="svg:PresentationAttributes-Markers" />
1430
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1431
+ <attributeGroup ref="svg:graphicsElementEvents" />
1432
+ <attribute name="d" type="svg:PathDataType" use="required" />
1433
+ <attribute name="pathLength" type="double" use="optional" />
1434
+ </complexType>
1435
+ <complexType name="rectType">
1436
+ <sequence>
1437
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1438
+ <choice minOccurs="0" maxOccurs="unbounded">
1439
+ <element ref="svg:animate" />
1440
+ <element ref="svg:set" />
1441
+ <element ref="svg:animateMotion" />
1442
+ <element ref="svg:animateColor" />
1443
+ <element ref="svg:animateTransform" />
1444
+ </choice>
1445
+ </sequence>
1446
+ <attributeGroup ref="svg:stdAttrs" />
1447
+ <attributeGroup ref="svg:testAttrs" />
1448
+ <attributeGroup ref="svg:langSpaceAttrs" />
1449
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1450
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1451
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1452
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1453
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1454
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1455
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1456
+ <attributeGroup ref="svg:graphicsElementEvents" />
1457
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
1458
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
1459
+ <attribute name="width" type="svg:LengthType" use="required" />
1460
+ <attribute name="height" type="svg:LengthType" use="required" />
1461
+ <attribute name="rx" type="svg:LengthType" use="optional" />
1462
+ <attribute name="ry" type="svg:LengthType" use="optional" />
1463
+ </complexType>
1464
+ <complexType name="circleType">
1465
+ <sequence>
1466
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1467
+ <choice minOccurs="0" maxOccurs="unbounded">
1468
+ <element ref="svg:animate" />
1469
+ <element ref="svg:set" />
1470
+ <element ref="svg:animateMotion" />
1471
+ <element ref="svg:animateColor" />
1472
+ <element ref="svg:animateTransform" />
1473
+ </choice>
1474
+ </sequence>
1475
+ <attributeGroup ref="svg:stdAttrs" />
1476
+ <attributeGroup ref="svg:testAttrs" />
1477
+ <attributeGroup ref="svg:langSpaceAttrs" />
1478
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1479
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1480
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1481
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1482
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1483
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1484
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1485
+ <attributeGroup ref="svg:graphicsElementEvents" />
1486
+ <attribute name="cx" type="svg:CoordinateType" use="optional" />
1487
+ <attribute name="cy" type="svg:CoordinateType" use="optional" />
1488
+ <attribute name="r" type="svg:LengthType" use="required" />
1489
+ </complexType>
1490
+ <complexType name="ellipseType">
1491
+ <sequence>
1492
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1493
+ <choice minOccurs="0" maxOccurs="unbounded">
1494
+ <element ref="svg:animate" />
1495
+ <element ref="svg:set" />
1496
+ <element ref="svg:animateMotion" />
1497
+ <element ref="svg:animateColor" />
1498
+ <element ref="svg:animateTransform" />
1499
+ </choice>
1500
+ </sequence>
1501
+ <attributeGroup ref="svg:stdAttrs" />
1502
+ <attributeGroup ref="svg:testAttrs" />
1503
+ <attributeGroup ref="svg:langSpaceAttrs" />
1504
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1505
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1506
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1507
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1508
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1509
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1510
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1511
+ <attributeGroup ref="svg:graphicsElementEvents" />
1512
+ <attribute name="cx" type="svg:CoordinateType" use="optional" />
1513
+ <attribute name="cy" type="svg:CoordinateType" use="optional" />
1514
+ <attribute name="rx" type="svg:LengthType" use="required" />
1515
+ <attribute name="ry" type="svg:LengthType" use="required" />
1516
+ </complexType>
1517
+ <complexType name="lineType">
1518
+ <sequence>
1519
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1520
+ <choice minOccurs="0" maxOccurs="unbounded">
1521
+ <element ref="svg:animate" />
1522
+ <element ref="svg:set" />
1523
+ <element ref="svg:animateMotion" />
1524
+ <element ref="svg:animateColor" />
1525
+ <element ref="svg:animateTransform" />
1526
+ </choice>
1527
+ </sequence>
1528
+ <attributeGroup ref="svg:stdAttrs" />
1529
+ <attributeGroup ref="svg:testAttrs" />
1530
+ <attributeGroup ref="svg:langSpaceAttrs" />
1531
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1532
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1533
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1534
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1535
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1536
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1537
+ <attributeGroup ref="svg:PresentationAttributes-Markers" />
1538
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1539
+ <attributeGroup ref="svg:graphicsElementEvents" />
1540
+ <attribute name="x1" type="svg:CoordinateType" use="optional" />
1541
+ <attribute name="y1" type="svg:CoordinateType" use="optional" />
1542
+ <attribute name="x2" type="svg:CoordinateType" use="optional" />
1543
+ <attribute name="y2" type="svg:CoordinateType" use="optional" />
1544
+ </complexType>
1545
+ <complexType name="polylineType">
1546
+ <sequence>
1547
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1548
+ <choice minOccurs="0" maxOccurs="unbounded">
1549
+ <element ref="svg:animate" />
1550
+ <element ref="svg:set" />
1551
+ <element ref="svg:animateMotion" />
1552
+ <element ref="svg:animateColor" />
1553
+ <element ref="svg:animateTransform" />
1554
+ </choice>
1555
+ </sequence>
1556
+ <attributeGroup ref="svg:stdAttrs" />
1557
+ <attributeGroup ref="svg:testAttrs" />
1558
+ <attributeGroup ref="svg:langSpaceAttrs" />
1559
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1560
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1561
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1562
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1563
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1564
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1565
+ <attributeGroup ref="svg:PresentationAttributes-Markers" />
1566
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1567
+ <attributeGroup ref="svg:graphicsElementEvents" />
1568
+ <attribute name="points" type="svg:PointsType" use="required" />
1569
+ </complexType>
1570
+ <complexType name="polygonType">
1571
+ <sequence>
1572
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1573
+ <choice minOccurs="0" maxOccurs="unbounded">
1574
+ <element ref="svg:animate" />
1575
+ <element ref="svg:set" />
1576
+ <element ref="svg:animateMotion" />
1577
+ <element ref="svg:animateColor" />
1578
+ <element ref="svg:animateTransform" />
1579
+ </choice>
1580
+ </sequence>
1581
+ <attributeGroup ref="svg:stdAttrs" />
1582
+ <attributeGroup ref="svg:testAttrs" />
1583
+ <attributeGroup ref="svg:langSpaceAttrs" />
1584
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1585
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1586
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1587
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1588
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1589
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1590
+ <attributeGroup ref="svg:PresentationAttributes-Markers" />
1591
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1592
+ <attributeGroup ref="svg:graphicsElementEvents" />
1593
+ <attribute name="points" type="svg:PointsType" use="required" />
1594
+ </complexType>
1595
+ <complexType name="textType" mixed="true">
1596
+ <choice minOccurs="0" maxOccurs="unbounded">
1597
+ <element ref="svg:desc" />
1598
+ <element ref="svg:title" />
1599
+ <element ref="svg:metadata" />
1600
+ <element ref="svg:tspan" />
1601
+ <element ref="svg:tref" />
1602
+ <element ref="svg:textPath" />
1603
+ <element ref="svg:altGlyph" />
1604
+ <element ref="svg:a" />
1605
+ <element ref="svg:animate" />
1606
+ <element ref="svg:set" />
1607
+ <element ref="svg:animateMotion" />
1608
+ <element ref="svg:animateColor" />
1609
+ <element ref="svg:animateTransform" />
1610
+ </choice>
1611
+ <attributeGroup ref="svg:stdAttrs" />
1612
+ <attributeGroup ref="svg:testAttrs" />
1613
+ <attributeGroup ref="svg:langSpaceAttrs" />
1614
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1615
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1616
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1617
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1618
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1619
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
1620
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1621
+ <attributeGroup ref="svg:PresentationAttributes-TextContentElements" />
1622
+ <attributeGroup ref="svg:PresentationAttributes-TextElements" />
1623
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
1624
+ <attributeGroup ref="svg:graphicsElementEvents" />
1625
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
1626
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
1627
+ <attribute name="textLength" type="svg:LengthType" use="optional" />
1628
+ <attribute name="lengthAdjust" use="optional">
1629
+ <simpleType>
1630
+ <restriction base="string">
1631
+ <enumeration value="spacing" />
1632
+ <enumeration value="spacingAndGlyphs" />
1633
+ </restriction>
1634
+ </simpleType>
1635
+ </attribute>
1636
+ </complexType>
1637
+ <complexType name="tspanType" mixed="true">
1638
+ <choice minOccurs="0" maxOccurs="unbounded">
1639
+ <element ref="svg:desc" />
1640
+ <element ref="svg:title" />
1641
+ <element ref="svg:metadata" />
1642
+ <element ref="svg:tspan" />
1643
+ <element ref="svg:tref" />
1644
+ <element ref="svg:altGlyph" />
1645
+ <element ref="svg:a" />
1646
+ <element ref="svg:animate" />
1647
+ <element ref="svg:set" />
1648
+ <element ref="svg:animateColor" />
1649
+ </choice>
1650
+ <attributeGroup ref="svg:stdAttrs" />
1651
+ <attributeGroup ref="svg:testAttrs" />
1652
+ <attributeGroup ref="svg:langSpaceAttrs" />
1653
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1654
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1655
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1656
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1657
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1658
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
1659
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1660
+ <attributeGroup ref="svg:PresentationAttributes-TextContentElements" />
1661
+ <attributeGroup ref="svg:graphicsElementEvents" />
1662
+ <attribute name="x" type="svg:CoordinatesType" use="optional" />
1663
+ <attribute name="y" type="svg:CoordinatesType" use="optional" />
1664
+ <attribute name="dx" type="svg:LengthsType" use="optional" />
1665
+ <attribute name="dy" type="svg:LengthsType" use="optional" />
1666
+ <attribute name="rotate" type="string" use="optional" />
1667
+ <attribute name="textLength" type="svg:LengthType" use="optional" />
1668
+ <attribute name="lengthAdjust" use="optional">
1669
+ <simpleType>
1670
+ <restriction base="string">
1671
+ <enumeration value="spacing" />
1672
+ <enumeration value="spacingAndGlyphs" />
1673
+ </restriction>
1674
+ </simpleType>
1675
+ </attribute>
1676
+ </complexType>
1677
+ <complexType name="trefType">
1678
+ <choice minOccurs="0" maxOccurs="unbounded">
1679
+ <element ref="svg:desc" />
1680
+ <element ref="svg:title" />
1681
+ <element ref="svg:metadata" />
1682
+ <element ref="svg:animate" />
1683
+ <element ref="svg:set" />
1684
+ <element ref="svg:animateColor" />
1685
+ </choice>
1686
+ <attributeGroup ref="svg:stdAttrs" />
1687
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1688
+ <attribute ref="xlink:href" use="optional" />
1689
+ <attributeGroup ref="svg:testAttrs" />
1690
+ <attributeGroup ref="svg:langSpaceAttrs" />
1691
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1692
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1693
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1694
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1695
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1696
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
1697
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1698
+ <attributeGroup ref="svg:PresentationAttributes-TextContentElements" />
1699
+ <attributeGroup ref="svg:graphicsElementEvents" />
1700
+ <attribute name="x" type="svg:CoordinatesType" use="optional" />
1701
+ <attribute name="y" type="svg:CoordinatesType" use="optional" />
1702
+ <attribute name="dx" type="svg:LengthsType" use="optional" />
1703
+ <attribute name="dy" type="svg:LengthsType" use="optional" />
1704
+ <attribute name="rotate" type="string" use="optional" />
1705
+ <attribute name="textLength" type="svg:LengthType" use="optional" />
1706
+ <attribute name="lengthAdjust" use="optional">
1707
+ <simpleType>
1708
+ <restriction base="string">
1709
+ <enumeration value="spacing" />
1710
+ <enumeration value="spacingAndGlyphs" />
1711
+ </restriction>
1712
+ </simpleType>
1713
+ </attribute>
1714
+ </complexType>
1715
+ <complexType name="textPathType" mixed="true">
1716
+ <choice minOccurs="0" maxOccurs="unbounded">
1717
+ <element ref="svg:desc" />
1718
+ <element ref="svg:title" />
1719
+ <element ref="svg:metadata" />
1720
+ <element ref="svg:tspan" />
1721
+ <element ref="svg:tref" />
1722
+ <element ref="svg:altGlyph" />
1723
+ <element ref="svg:a" />
1724
+ <element ref="svg:animate" />
1725
+ <element ref="svg:set" />
1726
+ <element ref="svg:animateColor" />
1727
+ </choice>
1728
+ <attributeGroup ref="svg:stdAttrs" />
1729
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1730
+ <attribute ref="xlink:href" use="optional" />
1731
+ <attributeGroup ref="svg:langSpaceAttrs" />
1732
+ <attributeGroup ref="svg:testAttrs" />
1733
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1734
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1735
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1736
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1737
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
1738
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1739
+ <attributeGroup ref="svg:PresentationAttributes-TextContentElements" />
1740
+ <attributeGroup ref="svg:graphicsElementEvents" />
1741
+ <attribute name="startOffset" type="string" use="optional" />
1742
+ <attribute name="textLength" type="svg:LengthType" use="optional" />
1743
+ <attribute name="lengthAdjust" use="optional">
1744
+ <simpleType>
1745
+ <restriction base="string">
1746
+ <enumeration value="spacing" />
1747
+ <enumeration value="spacingAndGlyphs" />
1748
+ </restriction>
1749
+ </simpleType>
1750
+ </attribute>
1751
+ <attribute name="method" use="optional">
1752
+ <simpleType>
1753
+ <restriction base="string">
1754
+ <enumeration value="align" />
1755
+ <enumeration value="stretch" />
1756
+ </restriction>
1757
+ </simpleType>
1758
+ </attribute>
1759
+ <attribute name="spacing" use="optional">
1760
+ <simpleType>
1761
+ <restriction base="string">
1762
+ <enumeration value="auto" />
1763
+ <enumeration value="exact" />
1764
+ </restriction>
1765
+ </simpleType>
1766
+ </attribute>
1767
+ </complexType>
1768
+ <complexType name="altGlyphType" mixed="true">
1769
+ <sequence minOccurs="0" maxOccurs="unbounded" />
1770
+ <attributeGroup ref="svg:stdAttrs" />
1771
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1772
+ <attribute ref="xlink:href" use="optional" />
1773
+ <attribute name="glyphRef" type="string" use="optional" />
1774
+ <attribute name="format" type="string" use="optional" />
1775
+ <attributeGroup ref="svg:testAttrs" />
1776
+ <attributeGroup ref="svg:langSpaceAttrs" />
1777
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1778
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1779
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1780
+ <attributeGroup ref="svg:PresentationAttributes-Color" />
1781
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
1782
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
1783
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
1784
+ <attributeGroup ref="svg:PresentationAttributes-TextContentElements" />
1785
+ <attributeGroup ref="svg:graphicsElementEvents" />
1786
+ <attribute name="x" type="svg:CoordinatesType" use="optional" />
1787
+ <attribute name="y" type="svg:CoordinatesType" use="optional" />
1788
+ <attribute name="dx" type="svg:LengthsType" use="optional" />
1789
+ <attribute name="dy" type="svg:LengthsType" use="optional" />
1790
+ <attribute name="rotate" type="string" use="optional" />
1791
+ </complexType>
1792
+ <complexType name="altGlyphDefType">
1793
+ <choice maxOccurs="unbounded">
1794
+ <element ref="svg:altGlyphItem" />
1795
+ <element ref="svg:glyphRef" />
1796
+ </choice>
1797
+ <attributeGroup ref="svg:stdAttrs" />
1798
+ </complexType>
1799
+ <complexType name="altGlyphItemType">
1800
+ <sequence maxOccurs="unbounded">
1801
+ <element ref="svg:glyphRef" />
1802
+ </sequence>
1803
+ <attributeGroup ref="svg:stdAttrs" />
1804
+ </complexType>
1805
+ <complexType name="glyphRefType">
1806
+ <attributeGroup ref="svg:stdAttrs" />
1807
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1808
+ <attribute ref="xlink:href" use="optional" />
1809
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1810
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1811
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
1812
+ <attribute name="glyphRef" type="string" use="required" />
1813
+ <attribute name="format" type="string" use="required" />
1814
+ <attribute name="x" type="svg:CoordinatesType" use="optional" />
1815
+ <attribute name="y" type="svg:CoordinatesType" use="optional" />
1816
+ <attribute name="dx" type="svg:LengthsType" use="optional" />
1817
+ <attribute name="dy" type="svg:LengthsType" use="optional" />
1818
+ </complexType>
1819
+ <complexType name="markerType">
1820
+ <choice minOccurs="0" maxOccurs="unbounded">
1821
+ <element ref="svg:desc" />
1822
+ <element ref="svg:title" />
1823
+ <element ref="svg:metadata" />
1824
+ <element ref="svg:defs" />
1825
+ <element ref="svg:path" />
1826
+ <element ref="svg:text" />
1827
+ <element ref="svg:rect" />
1828
+ <element ref="svg:circle" />
1829
+ <element ref="svg:ellipse" />
1830
+ <element ref="svg:line" />
1831
+ <element ref="svg:polyline" />
1832
+ <element ref="svg:polygon" />
1833
+ <element ref="svg:use" />
1834
+ <element ref="svg:image" />
1835
+ <element ref="svg:svg" />
1836
+ <element ref="svg:g" />
1837
+ <element ref="svg:view" />
1838
+ <element ref="svg:switch" />
1839
+ <element ref="svg:a" />
1840
+ <element ref="svg:altGlyphDef" />
1841
+ <element ref="svg:script" />
1842
+ <element ref="svg:style" />
1843
+ <element ref="svg:symbol" />
1844
+ <element ref="svg:marker" />
1845
+ <element ref="svg:clipPath" />
1846
+ <element ref="svg:mask" />
1847
+ <element ref="svg:linearGradient" />
1848
+ <element ref="svg:radialGradient" />
1849
+ <element ref="svg:pattern" />
1850
+ <element ref="svg:filter" />
1851
+ <element ref="svg:cursor" />
1852
+ <element ref="svg:font" />
1853
+ <element ref="svg:animate" />
1854
+ <element ref="svg:set" />
1855
+ <element ref="svg:animateMotion" />
1856
+ <element ref="svg:animateColor" />
1857
+ <element ref="svg:animateTransform" />
1858
+ <element ref="svg:color-profile" />
1859
+ <element ref="svg:font-face" />
1860
+ </choice>
1861
+ <attributeGroup ref="svg:stdAttrs" />
1862
+ <attributeGroup ref="svg:langSpaceAttrs" />
1863
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1864
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1865
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1866
+ <attributeGroup ref="svg:PresentationAttributes-All" />
1867
+ <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional" />
1868
+ <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType"
1869
+ default="xMidYMid meet" />
1870
+ <attribute name="refX" type="svg:CoordinateType" use="optional" />
1871
+ <attribute name="refY" type="svg:CoordinateType" use="optional" />
1872
+ <attribute name="markerUnits" use="optional">
1873
+ <simpleType>
1874
+ <restriction base="string">
1875
+ <enumeration value="strokeWidth" />
1876
+ <enumeration value="userSpaceOnUse" />
1877
+ <enumeration value="userSpace" />
1878
+ </restriction>
1879
+ </simpleType>
1880
+ </attribute>
1881
+ <attribute name="markerWidth" type="svg:LengthType" use="optional" />
1882
+ <attribute name="markerHeight" type="svg:LengthType" use="optional" />
1883
+ <attribute name="orient" type="string" use="optional" />
1884
+ </complexType>
1885
+ <complexType name="color-profileType">
1886
+ <sequence>
1887
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1888
+ </sequence>
1889
+ <attributeGroup ref="svg:stdAttrs" />
1890
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1891
+ <attribute ref="xlink:href" type="anyURI" use="optional" />
1892
+ <attribute name="local" type="string" use="optional" />
1893
+ <attribute name="name" type="string" use="required" />
1894
+ <attribute name="rendering-intent" default="auto">
1895
+ <simpleType>
1896
+ <restriction base="string">
1897
+ <enumeration value="auto" />
1898
+ <enumeration value="perceptual" />
1899
+ <enumeration value="relative-colorimetric" />
1900
+ <enumeration value="saturation" />
1901
+ <enumeration value="absolute-colorimetric" />
1902
+ </restriction>
1903
+ </simpleType>
1904
+ </attribute>
1905
+ </complexType>
1906
+ <complexType name="linearGradientType">
1907
+ <sequence>
1908
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1909
+ <choice minOccurs="0" maxOccurs="unbounded">
1910
+ <element ref="svg:stop" />
1911
+ <element ref="svg:animate" />
1912
+ <element ref="svg:set" />
1913
+ <element ref="svg:animateTransform" />
1914
+ </choice>
1915
+ </sequence>
1916
+ <attributeGroup ref="svg:stdAttrs" />
1917
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1918
+ <attribute ref="xlink:href" use="optional" />
1919
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1920
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1921
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1922
+ <attribute name="gradientUnits" use="optional">
1923
+ <!-- @@ need to add more attributes here @@ -->
1924
+ <simpleType>
1925
+ <restriction base="string">
1926
+ <enumeration value="userSpaceOnUse" />
1927
+ <enumeration value="userSpace" />
1928
+ <enumeration value="objectBoundingBox" />
1929
+ </restriction>
1930
+ </simpleType>
1931
+ </attribute>
1932
+ <attribute name="gradientTransform" type="svg:TransformListType" use="optional" />
1933
+ <attribute name="x1" type="svg:CoordinateType" use="optional" />
1934
+ <attribute name="y1" type="svg:CoordinateType" use="optional" />
1935
+ <attribute name="x2" type="svg:CoordinateType" use="optional" />
1936
+ <attribute name="y2" type="svg:CoordinateType" use="optional" />
1937
+ <attribute name="spreadMethod" default="pad">
1938
+ <simpleType>
1939
+ <restriction base="string">
1940
+ <enumeration value="pad" />
1941
+ <enumeration value="reflect" />
1942
+ <enumeration value="repeat" />
1943
+ </restriction>
1944
+ </simpleType>
1945
+ </attribute>
1946
+ </complexType>
1947
+ <complexType name="radialGradientType">
1948
+ <sequence>
1949
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
1950
+ <choice minOccurs="0" maxOccurs="unbounded">
1951
+ <element ref="svg:stop" />
1952
+ <element ref="svg:animate" />
1953
+ <element ref="svg:set" />
1954
+ <element ref="svg:animateTransform" />
1955
+ </choice>
1956
+ </sequence>
1957
+ <attributeGroup ref="svg:stdAttrs" />
1958
+ <attributeGroup ref="svg:xlinkRefAttrs" />
1959
+ <attribute ref="xlink:href" use="optional" />
1960
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
1961
+ <attribute name="gradientUnits" use="optional">
1962
+ <simpleType>
1963
+ <restriction base="string">
1964
+ <enumeration value="userSpaceOnUse" />
1965
+ <enumeration value="userSpace" />
1966
+ <enumeration value="objectBoundingBox" />
1967
+ </restriction>
1968
+ </simpleType>
1969
+ </attribute>
1970
+ <attribute name="gradientTransform" type="svg:TransformListType" use="optional" />
1971
+ <attribute name="cx" type="svg:CoordinateType" use="optional" />
1972
+ <attribute name="cy" type="svg:CoordinateType" use="optional" />
1973
+ <attribute name="r" type="svg:LengthType" use="optional" />
1974
+ <attribute name="fx" type="svg:CoordinateType" use="optional" />
1975
+ <attribute name="fy" type="svg:CoordinateType" use="optional" />
1976
+ <attribute name="spreadMethod" default="pad">
1977
+ <simpleType>
1978
+ <restriction base="string">
1979
+ <enumeration value="pad" />
1980
+ <enumeration value="reflect" />
1981
+ <enumeration value="repeat" />
1982
+ </restriction>
1983
+ </simpleType>
1984
+ </attribute>
1985
+ </complexType>
1986
+ <complexType name="stopType">
1987
+ <choice minOccurs="0" maxOccurs="unbounded">
1988
+ <element ref="svg:animate" />
1989
+ <element ref="svg:set" />
1990
+ <element ref="svg:animateColor" />
1991
+ </choice>
1992
+ <attributeGroup ref="svg:stdAttrs" />
1993
+ <attribute name="class" type="svg:ClassListType" use="optional" />
1994
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
1995
+ <attributeGroup ref="svg:PresentationAttributes-Gradients" />
1996
+ <attribute name="offset" type="svg:LengthType" use="required" />
1997
+ </complexType>
1998
+ <complexType name="patternType">
1999
+ <choice minOccurs="0" maxOccurs="unbounded">
2000
+ <element ref="svg:desc" />
2001
+ <element ref="svg:title" />
2002
+ <element ref="svg:metadata" />
2003
+ <element ref="svg:defs" />
2004
+ <element ref="svg:path" />
2005
+ <element ref="svg:text" />
2006
+ <element ref="svg:rect" />
2007
+ <element ref="svg:circle" />
2008
+ <element ref="svg:ellipse" />
2009
+ <element ref="svg:line" />
2010
+ <element ref="svg:polyline" />
2011
+ <element ref="svg:polygon" />
2012
+ <element ref="svg:use" />
2013
+ <element ref="svg:image" />
2014
+ <element ref="svg:svg" />
2015
+ <element ref="svg:g" />
2016
+ <element ref="svg:view" />
2017
+ <element ref="svg:switch" />
2018
+ <element ref="svg:a" />
2019
+ <element ref="svg:altGlyphDef" />
2020
+ <element ref="svg:script" />
2021
+ <element ref="svg:style" />
2022
+ <element ref="svg:symbol" />
2023
+ <element ref="svg:marker" />
2024
+ <element ref="svg:clipPath" />
2025
+ <element ref="svg:mask" />
2026
+ <element ref="svg:linearGradient" />
2027
+ <element ref="svg:radialGradient" />
2028
+ <element ref="svg:pattern" />
2029
+ <element ref="svg:filter" />
2030
+ <element ref="svg:cursor" />
2031
+ <element ref="svg:font" />
2032
+ <element ref="svg:animate" />
2033
+ <element ref="svg:set" />
2034
+ <element ref="svg:animateMotion" />
2035
+ <element ref="svg:animateColor" />
2036
+ <element ref="svg:animateTransform" />
2037
+ <element ref="svg:color-profile" />
2038
+ <element ref="svg:font-face" />
2039
+ </choice>
2040
+ <attributeGroup ref="svg:stdAttrs" />
2041
+ <attributeGroup ref="svg:xlinkRefAttrs" />
2042
+ <attribute ref="xlink:href" use="optional" />
2043
+ <attributeGroup ref="svg:testAttrs" />
2044
+ <attributeGroup ref="svg:langSpaceAttrs" />
2045
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2046
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2047
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2048
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2049
+ <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional" />
2050
+ <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType"
2051
+ default="xMidYMid meet" />
2052
+ <attribute name="patternUnits" use="optional">
2053
+ <simpleType>
2054
+ <restriction base="string">
2055
+ <enumeration value="userSpaceOnUse" />
2056
+ <enumeration value="userSpace" />
2057
+ <enumeration value="objectBoundingBox" />
2058
+ </restriction>
2059
+ </simpleType>
2060
+ </attribute>
2061
+ <attribute name="patternTransform" type="svg:TransformListType" use="optional" />
2062
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
2063
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
2064
+ <attribute name="width" type="svg:LengthType" use="required" />
2065
+ <attribute name="height" type="svg:LengthType" use="required" />
2066
+ </complexType>
2067
+ <complexType name="clipPathType">
2068
+ <sequence>
2069
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2070
+ <choice minOccurs="0" maxOccurs="unbounded">
2071
+ <element ref="svg:path" />
2072
+ <element ref="svg:text" />
2073
+ <element ref="svg:rect" />
2074
+ <element ref="svg:circle" />
2075
+ <element ref="svg:ellipse" />
2076
+ <element ref="svg:line" />
2077
+ <element ref="svg:polyline" />
2078
+ <element ref="svg:polygon" />
2079
+ <element ref="svg:use" />
2080
+ <element ref="svg:animate" />
2081
+ <element ref="svg:set" />
2082
+ <element ref="svg:animateMotion" />
2083
+ <element ref="svg:animateColor" />
2084
+ <element ref="svg:animateTransform" />
2085
+ </choice>
2086
+ </sequence>
2087
+ <attributeGroup ref="svg:stdAttrs" />
2088
+ <attributeGroup ref="svg:testAttrs" />
2089
+ <attributeGroup ref="svg:langSpaceAttrs" />
2090
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2091
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2092
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2093
+ <attributeGroup ref="svg:PresentationAttributes-FillStroke" />
2094
+ <attributeGroup ref="svg:PresentationAttributes-FontSpecification" />
2095
+ <attributeGroup ref="svg:PresentationAttributes-Graphics" />
2096
+ <attributeGroup ref="svg:PresentationAttributes-TextContentElements" />
2097
+ <attributeGroup ref="svg:PresentationAttributes-TextElements" />
2098
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
2099
+ <attribute name="clipPathUnits" use="optional">
2100
+ <simpleType>
2101
+ <restriction base="string">
2102
+ <enumeration value="userSpaceOnUse" />
2103
+ <enumeration value="userSpace" />
2104
+ <enumeration value="objectBoundingBox" />
2105
+ </restriction>
2106
+ </simpleType>
2107
+ </attribute>
2108
+ </complexType>
2109
+ <complexType name="maskType">
2110
+ <sequence>
2111
+ <choice minOccurs="0" maxOccurs="unbounded">
2112
+ <element ref="svg:desc" />
2113
+ <element ref="svg:title" />
2114
+ <element ref="svg:metadata" />
2115
+ <element ref="svg:defs" />
2116
+ <element ref="svg:path" />
2117
+ <element ref="svg:text" />
2118
+ <element ref="svg:rect" />
2119
+ <element ref="svg:circle" />
2120
+ <element ref="svg:ellipse" />
2121
+ <element ref="svg:line" />
2122
+ <element ref="svg:polyline" />
2123
+ <element ref="svg:polygon" />
2124
+ <element ref="svg:use" />
2125
+ <element ref="svg:image" />
2126
+ <element ref="svg:svg" />
2127
+ <element ref="svg:g" />
2128
+ <element ref="svg:view" />
2129
+ <element ref="svg:switch" />
2130
+ <element ref="svg:a" />
2131
+ <element ref="svg:altGlyphDef" />
2132
+ <element ref="svg:script" />
2133
+ <element ref="svg:style" />
2134
+ <element ref="svg:symbol" />
2135
+ <element ref="svg:marker" />
2136
+ <element ref="svg:clipPath" />
2137
+ <element ref="svg:mask" />
2138
+ <element ref="svg:linearGradient" />
2139
+ <element ref="svg:radialGradient" />
2140
+ <element ref="svg:pattern" />
2141
+ <element ref="svg:filter" />
2142
+ <element ref="svg:cursor" />
2143
+ <element ref="svg:font" />
2144
+ <element ref="svg:animate" />
2145
+ <element ref="svg:set" />
2146
+ <element ref="svg:animateMotion" />
2147
+ <element ref="svg:animateColor" />
2148
+ <element ref="svg:animateTransform" />
2149
+ <element ref="svg:color-profile" />
2150
+ <element ref="svg:font-face" />
2151
+ </choice>
2152
+ </sequence>
2153
+ <attributeGroup ref="svg:stdAttrs" />
2154
+ <attributeGroup ref="svg:testAttrs" />
2155
+ <attributeGroup ref="svg:langSpaceAttrs" />
2156
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2157
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2158
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2159
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2160
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
2161
+ <attribute name="maskUnits" use="optional">
2162
+ <simpleType>
2163
+ <restriction base="string">
2164
+ <enumeration value="userSpaceOnUse" />
2165
+ <enumeration value="userSpace" />
2166
+ <enumeration value="objectBoundingBox" />
2167
+ </restriction>
2168
+ </simpleType>
2169
+ </attribute>
2170
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
2171
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
2172
+ <attribute name="width" type="svg:LengthType" use="optional" />
2173
+ <attribute name="height" type="svg:LengthType" use="optional" />
2174
+ </complexType>
2175
+ <complexType name="filterType">
2176
+ <sequence>
2177
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2178
+ <choice minOccurs="0" maxOccurs="unbounded">
2179
+ <element ref="svg:feBlend" />
2180
+ <element ref="svg:feFlood" />
2181
+ <element ref="svg:feColorMatrix" />
2182
+ <element ref="svg:feComponentTransfer" />
2183
+ <element ref="svg:feComposite" />
2184
+ <element ref="svg:feConvolveMatrix" />
2185
+ <element ref="svg:feDiffuseLighting" />
2186
+ <element ref="svg:feDisplacementMap" />
2187
+ <element ref="svg:feGaussianBlur" />
2188
+ <element ref="svg:feImage" />
2189
+ <element ref="svg:feMerge" />
2190
+ <element ref="svg:feMorphology" />
2191
+ <element ref="svg:feOffset" />
2192
+ <element ref="svg:feSpecularLighting" />
2193
+ <element ref="svg:feTile" />
2194
+ <element ref="svg:feTurbulence" />
2195
+ <element ref="svg:animate" />
2196
+ <element ref="svg:set" />
2197
+ </choice>
2198
+ </sequence>
2199
+ <attributeGroup ref="svg:stdAttrs" />
2200
+ <attributeGroup ref="svg:xlinkRefAttrs" />
2201
+ <attribute ref="xlink:href" use="optional" />
2202
+ <attributeGroup ref="svg:langSpaceAttrs" />
2203
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2204
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2205
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2206
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2207
+ <attribute name="filterUnits" use="optional">
2208
+ <simpleType>
2209
+ <restriction base="string">
2210
+ <enumeration value="userSpaceOnUse" />
2211
+ <enumeration value="userSpace" />
2212
+ <enumeration value="objectBoundingBox" />
2213
+ </restriction>
2214
+ </simpleType>
2215
+ </attribute>
2216
+ <attribute name="primitiveUnits" use="optional">
2217
+ <simpleType>
2218
+ <restriction base="string">
2219
+ <enumeration value="userSpaceOnUse" />
2220
+ <enumeration value="userSpace" />
2221
+ <enumeration value="objectBoundingBox" />
2222
+ </restriction>
2223
+ </simpleType>
2224
+ </attribute>
2225
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
2226
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
2227
+ <attribute name="width" type="svg:LengthType" use="optional" />
2228
+ <attribute name="height" type="svg:LengthType" use="optional" />
2229
+ <attribute name="filterRes" type="string" use="optional" />
2230
+ </complexType>
2231
+ <complexType name="feDistantLightType">
2232
+ <choice minOccurs="0" maxOccurs="unbounded">
2233
+ <element ref="svg:animate" />
2234
+ <element ref="svg:set" />
2235
+ </choice>
2236
+ <attributeGroup ref="svg:stdAttrs" />
2237
+ <attribute name="azimuth" type="double" use="optional" />
2238
+ <attribute name="elevation" type="double" use="optional" />
2239
+ </complexType>
2240
+ <complexType name="fePointLightType">
2241
+ <choice minOccurs="0" maxOccurs="unbounded">
2242
+ <element ref="svg:animate" />
2243
+ <element ref="svg:set" />
2244
+ </choice>
2245
+ <attributeGroup ref="svg:stdAttrs" />
2246
+ <attribute name="x" type="double" use="optional" />
2247
+ <attribute name="y" type="double" use="optional" />
2248
+ <attribute name="z" type="double" use="optional" />
2249
+ </complexType>
2250
+ <complexType name="feSpotLightType">
2251
+ <choice minOccurs="0" maxOccurs="unbounded">
2252
+ <element ref="svg:animate" />
2253
+ <element ref="svg:set" />
2254
+ </choice>
2255
+ <attributeGroup ref="svg:stdAttrs" />
2256
+ <attribute name="x" type="double" use="optional" />
2257
+ <attribute name="y" type="double" use="optional" />
2258
+ <attribute name="z" type="double" use="optional" />
2259
+ <attribute name="pointsAtX" type="double" use="optional" />
2260
+ <attribute name="pointsAtY" type="double" use="optional" />
2261
+ <attribute name="pointsAtZ" type="double" use="optional" />
2262
+ <attribute name="specularExponent" type="double" use="optional" />
2263
+ <attribute name="limitingConeAngle" type="double" use="optional" />
2264
+ </complexType>
2265
+ <complexType name="feBlendType">
2266
+ <choice minOccurs="0" maxOccurs="unbounded">
2267
+ <element ref="svg:animate" />
2268
+ <element ref="svg:set" />
2269
+ </choice>
2270
+ <attributeGroup ref="svg:stdAttrs" />
2271
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2272
+ <attribute name="in2" type="string" use="required" />
2273
+ <attribute name="mode" default="normal">
2274
+ <simpleType>
2275
+ <restriction base="string">
2276
+ <enumeration value="normal" />
2277
+ <enumeration value="multiply" />
2278
+ <enumeration value="screen" />
2279
+ <enumeration value="darken" />
2280
+ <enumeration value="lighten" />
2281
+ </restriction>
2282
+ </simpleType>
2283
+ </attribute>
2284
+ </complexType>
2285
+ <complexType name="feColorMatrixType">
2286
+ <choice minOccurs="0" maxOccurs="unbounded">
2287
+ <element ref="svg:animate" />
2288
+ <element ref="svg:set" />
2289
+ </choice>
2290
+ <attributeGroup ref="svg:stdAttrs" />
2291
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2292
+ <attribute name="type" default="matrix">
2293
+ <simpleType>
2294
+ <restriction base="string">
2295
+ <enumeration value="matrix" />
2296
+ <enumeration value="saturate" />
2297
+ <enumeration value="hueRotate" />
2298
+ <enumeration value="luminanceToAlpha" />
2299
+ </restriction>
2300
+ </simpleType>
2301
+ </attribute>
2302
+ <attribute name="values" type="string" use="optional" />
2303
+ </complexType>
2304
+ <complexType name="feComponentTransferType">
2305
+ <sequence>
2306
+ <element ref="svg:feFuncR" minOccurs="0" />
2307
+ <element ref="svg:feFuncG" minOccurs="0" />
2308
+ <element ref="svg:feFuncB" minOccurs="0" />
2309
+ <element ref="svg:feFuncA" minOccurs="0" />
2310
+ </sequence>
2311
+ <attributeGroup ref="svg:stdAttrs" />
2312
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2313
+ </complexType>
2314
+ <complexType name="feFuncRType">
2315
+ <choice minOccurs="0" maxOccurs="unbounded">
2316
+ <element ref="svg:animate" />
2317
+ <element ref="svg:set" />
2318
+ </choice>
2319
+ <attributeGroup ref="svg:stdAttrs" />
2320
+ <attribute name="type" use="required">
2321
+ <simpleType>
2322
+ <restriction base="string">
2323
+ <enumeration value="identity" />
2324
+ <enumeration value="table" />
2325
+ <enumeration value="discrete" />
2326
+ <enumeration value="linear" />
2327
+ <enumeration value="gamma" />
2328
+ </restriction>
2329
+ </simpleType>
2330
+ </attribute>
2331
+ <attributeGroup ref="svg:component_transfer_function_attributes" />
2332
+ </complexType>
2333
+ <complexType name="feFuncGType">
2334
+ <choice minOccurs="0" maxOccurs="unbounded">
2335
+ <element ref="svg:animate" />
2336
+ <element ref="svg:set" />
2337
+ </choice>
2338
+ <attributeGroup ref="svg:stdAttrs" />
2339
+ <attribute name="type" use="required">
2340
+ <simpleType>
2341
+ <restriction base="string">
2342
+ <enumeration value="identity" />
2343
+ <enumeration value="table" />
2344
+ <enumeration value="discrete" />
2345
+ <enumeration value="linear" />
2346
+ <enumeration value="gamma" />
2347
+ </restriction>
2348
+ </simpleType>
2349
+ </attribute>
2350
+ <attributeGroup ref="svg:component_transfer_function_attributes" />
2351
+ </complexType>
2352
+ <complexType name="feFuncBType">
2353
+ <choice minOccurs="0" maxOccurs="unbounded">
2354
+ <element ref="svg:animate" />
2355
+ <element ref="svg:set" />
2356
+ </choice>
2357
+ <attributeGroup ref="svg:stdAttrs" />
2358
+ <attribute name="type" use="required">
2359
+ <simpleType>
2360
+ <restriction base="string">
2361
+ <enumeration value="identity" />
2362
+ <enumeration value="table" />
2363
+ <enumeration value="discrete" />
2364
+ <enumeration value="linear" />
2365
+ <enumeration value="gamma" />
2366
+ </restriction>
2367
+ </simpleType>
2368
+ </attribute>
2369
+ <attributeGroup ref="svg:component_transfer_function_attributes" />
2370
+ </complexType>
2371
+ <complexType name="feFuncAType">
2372
+ <choice minOccurs="0" maxOccurs="unbounded">
2373
+ <element ref="svg:animate" />
2374
+ <element ref="svg:set" />
2375
+ </choice>
2376
+ <attributeGroup ref="svg:stdAttrs" />
2377
+ <attribute name="type" use="required">
2378
+ <simpleType>
2379
+ <restriction base="string">
2380
+ <enumeration value="identity" />
2381
+ <enumeration value="table" />
2382
+ <enumeration value="discrete" />
2383
+ <enumeration value="linear" />
2384
+ <enumeration value="gamma" />
2385
+ </restriction>
2386
+ </simpleType>
2387
+ <!-- these all need to be stripped out and checked -->
2388
+ </attribute>
2389
+ <attributeGroup ref="svg:component_transfer_function_attributes" />
2390
+ </complexType>
2391
+ <complexType name="feCompositeType">
2392
+ <choice minOccurs="0" maxOccurs="unbounded">
2393
+ <element ref="svg:animate" />
2394
+ <element ref="svg:set" />
2395
+ </choice>
2396
+ <attributeGroup ref="svg:stdAttrs" />
2397
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2398
+ <attribute name="in2" type="string" use="required" />
2399
+ <attribute name="operator" default="over">
2400
+ <simpleType>
2401
+ <restriction base="string">
2402
+ <enumeration value="over" />
2403
+ <enumeration value="in" />
2404
+ <enumeration value="out" />
2405
+ <enumeration value="atop" />
2406
+ <enumeration value="xor" />
2407
+ <enumeration value="arithmetic" />
2408
+ </restriction>
2409
+ </simpleType>
2410
+ </attribute>
2411
+ <attribute name="k1" type="double" use="optional" />
2412
+ <attribute name="k2" type="double" use="optional" />
2413
+ <attribute name="k3" type="double" use="optional" />
2414
+ <attribute name="k4" type="double" use="optional" />
2415
+ </complexType>
2416
+ <complexType name="feConvolveMatrixType">
2417
+ <choice minOccurs="0" maxOccurs="unbounded">
2418
+ <element ref="svg:animate" />
2419
+ <element ref="svg:set" />
2420
+ </choice>
2421
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2422
+ <attribute name="order" type="string" use="required" />
2423
+ <attribute name="kernelMatrix" type="string" use="required" />
2424
+ <attribute name="divisor" type="double" use="optional" />
2425
+ <attribute name="bias" type="double" use="optional" />
2426
+ <attribute name="targetX" type="integer" use="optional" />
2427
+ <attribute name="targetY" type="integer" use="optional" />
2428
+ <attribute name="edgeMode" default="duplicate">
2429
+ <simpleType>
2430
+ <restriction base="string">
2431
+ <enumeration value="duplicate" />
2432
+ <enumeration value="wrap" />
2433
+ <enumeration value="none" />
2434
+ </restriction>
2435
+ </simpleType>
2436
+ </attribute>
2437
+ <attribute name="kernelUnitLength" type="string" use="optional" />
2438
+ <attribute name="preserveAlpha" type="boolean" use="optional" />
2439
+ </complexType>
2440
+ <complexType name="feDiffuseLightingType">
2441
+ <sequence>
2442
+ <choice>
2443
+ <element ref="svg:feDistantLight" />
2444
+ <element ref="svg:fePointLight" />
2445
+ <element ref="svg:feSpotLight" />
2446
+ </choice>
2447
+ <choice minOccurs="0" maxOccurs="unbounded">
2448
+ <element ref="svg:animate" />
2449
+ <element ref="svg:set" />
2450
+ <element ref="svg:animateColor" />
2451
+ </choice>
2452
+ </sequence>
2453
+ <attributeGroup ref="svg:stdAttrs" />
2454
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2455
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2456
+ <attributeGroup ref="svg:PresentationAttributes-LightingEffects" />
2457
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2458
+ <attribute name="surfaceScale" type="double" use="optional" />
2459
+ <attribute name="diffuseConstant" type="double" use="optional" />
2460
+ </complexType>
2461
+ <complexType name="feDisplacementMapType">
2462
+ <choice minOccurs="0" maxOccurs="unbounded">
2463
+ <element ref="svg:animate" />
2464
+ <element ref="svg:set" />
2465
+ </choice>
2466
+ <attributeGroup ref="svg:stdAttrs" />
2467
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2468
+ <attribute name="in2" type="string" use="required" />
2469
+ <attribute name="scale" type="double" use="optional" />
2470
+ <attribute name="xChannelSelector" default="A">
2471
+ <simpleType>
2472
+ <restriction base="string">
2473
+ <enumeration value="R" />
2474
+ <enumeration value="G" />
2475
+ <enumeration value="B" />
2476
+ <enumeration value="A" />
2477
+ </restriction>
2478
+ </simpleType>
2479
+ </attribute>
2480
+ <attribute name="yChannelSelector" default="A">
2481
+ <simpleType>
2482
+ <restriction base="string">
2483
+ <enumeration value="R" />
2484
+ <enumeration value="G" />
2485
+ <enumeration value="B" />
2486
+ <enumeration value="A" />
2487
+ </restriction>
2488
+ </simpleType>
2489
+ </attribute>
2490
+ </complexType>
2491
+ <complexType name="feFloodType">
2492
+ <choice minOccurs="0" maxOccurs="unbounded">
2493
+ <element ref="svg:animate" />
2494
+ <element ref="svg:set" />
2495
+ <element ref="svg:animateColor" />
2496
+ </choice>
2497
+ <attributeGroup ref="svg:stdAttrs" />
2498
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2499
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2500
+ <attributeGroup ref="svg:PresentationAttributes-feFlood" />
2501
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2502
+ </complexType>
2503
+ <complexType name="feGaussianBlurType">
2504
+ <choice minOccurs="0" maxOccurs="unbounded">
2505
+ <element ref="svg:animate" />
2506
+ <element ref="svg:set" />
2507
+ </choice>
2508
+ <attributeGroup ref="svg:stdAttrs" />
2509
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2510
+ <attribute name="stdDeviation" type="string" use="optional" />
2511
+ </complexType>
2512
+ <complexType name="feImageType">
2513
+ <choice minOccurs="0" maxOccurs="unbounded">
2514
+ <element ref="svg:animate" />
2515
+ <element ref="svg:set" />
2516
+ <element ref="svg:animateTransform" />
2517
+ </choice>
2518
+ <attributeGroup ref="svg:stdAttrs" />
2519
+ <attributeGroup ref="svg:xlinkRefAttrs" />
2520
+ <attribute ref="xlink:href" use="optional" />
2521
+ <attributeGroup ref="svg:langSpaceAttrs" />
2522
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2523
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2524
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2525
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2526
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
2527
+ <attributeGroup ref="svg:filter_primitive_attributes" />
2528
+ </complexType>
2529
+ <complexType name="feMergeType">
2530
+ <sequence minOccurs="0" maxOccurs="unbounded">
2531
+ <element ref="svg:feMergeNode" />
2532
+ </sequence>
2533
+ <attributeGroup ref="svg:stdAttrs" />
2534
+ <attributeGroup ref="svg:filter_primitive_attributes" />
2535
+ </complexType>
2536
+ <complexType name="feMergeNodeType">
2537
+ <choice minOccurs="0" maxOccurs="unbounded">
2538
+ <element ref="svg:animate" />
2539
+ <element ref="svg:set" />
2540
+ </choice>
2541
+ <attributeGroup ref="svg:stdAttrs" />
2542
+ <attribute name="in" type="string" use="optional" />
2543
+ </complexType>
2544
+ <complexType name="feMorphologyType">
2545
+ <choice minOccurs="0" maxOccurs="unbounded">
2546
+ <element ref="svg:animate" />
2547
+ <element ref="svg:set" />
2548
+ </choice>
2549
+ <attributeGroup ref="svg:stdAttrs" />
2550
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2551
+ <attribute name="operator" default="erode">
2552
+ <simpleType>
2553
+ <restriction base="string">
2554
+ <enumeration value="erode" />
2555
+ <enumeration value="dilate" />
2556
+ </restriction>
2557
+ </simpleType>
2558
+ </attribute>
2559
+ <attribute name="radius" type="svg:LengthType" use="optional" />
2560
+ </complexType>
2561
+ <complexType name="feOffsetType">
2562
+ <choice minOccurs="0" maxOccurs="unbounded">
2563
+ <element ref="svg:animate" />
2564
+ <element ref="svg:set" />
2565
+ </choice>
2566
+ <attributeGroup ref="svg:stdAttrs" />
2567
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2568
+ <attribute name="dx" type="svg:LengthType" use="optional" />
2569
+ <attribute name="dy" type="svg:LengthType" use="optional" />
2570
+ </complexType>
2571
+ <complexType name="feSpecularLightingType">
2572
+ <sequence>
2573
+ <choice>
2574
+ <element ref="svg:feDistantLight" />
2575
+ <element ref="svg:fePointLight" />
2576
+ <element ref="svg:feSpotLight" />
2577
+ </choice>
2578
+ <choice minOccurs="0" maxOccurs="unbounded">
2579
+ <element ref="svg:animate" />
2580
+ <element ref="svg:set" />
2581
+ <element ref="svg:animateColor" />
2582
+ </choice>
2583
+ </sequence>
2584
+ <attributeGroup ref="svg:stdAttrs" />
2585
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2586
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2587
+ <attributeGroup ref="svg:PresentationAttributes-LightingEffects" />
2588
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2589
+ <attribute name="surfaceScale" type="double" use="optional" />
2590
+ <attribute name="specularConstant" type="double" use="optional" />
2591
+ <attribute name="specularExponent" type="double" use="optional" />
2592
+ </complexType>
2593
+ <complexType name="feTileType">
2594
+ <choice minOccurs="0" maxOccurs="unbounded">
2595
+ <element ref="svg:animate" />
2596
+ <element ref="svg:set" />
2597
+ </choice>
2598
+ <attributeGroup ref="svg:stdAttrs" />
2599
+ <attributeGroup ref="svg:filter_primitive_attributes_with_in" />
2600
+ </complexType>
2601
+ <complexType name="feTurbulenceType">
2602
+ <choice minOccurs="0" maxOccurs="unbounded">
2603
+ <element ref="svg:animate" />
2604
+ <element ref="svg:set" />
2605
+ </choice>
2606
+ <attributeGroup ref="svg:stdAttrs" />
2607
+ <attributeGroup ref="svg:filter_primitive_attributes" />
2608
+ <attribute name="baseFrequency" type="string" use="optional" />
2609
+ <attribute name="numOctaves" type="integer" use="optional" />
2610
+ <attribute name="seed" type="double" use="optional" />
2611
+ <attribute name="stitchTiles" default="noStitch">
2612
+ <simpleType>
2613
+ <restriction base="string">
2614
+ <enumeration value="stitch" />
2615
+ <enumeration value="noStitch" />
2616
+ </restriction>
2617
+ </simpleType>
2618
+ </attribute>
2619
+ <attribute name="type" default="turbulence">
2620
+ <simpleType>
2621
+ <restriction base="string">
2622
+ <enumeration value="fractalNoise" />
2623
+ <enumeration value="turbulence" />
2624
+ </restriction>
2625
+ </simpleType>
2626
+ </attribute>
2627
+ </complexType>
2628
+ <complexType name="cursorType">
2629
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2630
+ <attributeGroup ref="svg:stdAttrs" />
2631
+ <attributeGroup ref="svg:xlinkRefAttrs" />
2632
+ <attribute ref="xlink:href" use="optional" />
2633
+ <attributeGroup ref="svg:testAttrs" />
2634
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2635
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
2636
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
2637
+ </complexType>
2638
+ <complexType name="aType" mixed="true">
2639
+ <choice minOccurs="0" maxOccurs="unbounded">
2640
+ <element ref="svg:desc" />
2641
+ <element ref="svg:title" />
2642
+ <element ref="svg:metadata" />
2643
+ <element ref="svg:defs" />
2644
+ <element ref="svg:path" />
2645
+ <element ref="svg:text" />
2646
+ <element ref="svg:rect" />
2647
+ <element ref="svg:circle" />
2648
+ <element ref="svg:ellipse" />
2649
+ <element ref="svg:line" />
2650
+ <element ref="svg:polyline" />
2651
+ <element ref="svg:polygon" />
2652
+ <element ref="svg:use" />
2653
+ <element ref="svg:image" />
2654
+ <element ref="svg:svg" />
2655
+ <element ref="svg:g" />
2656
+ <element ref="svg:view" />
2657
+ <element ref="svg:switch" />
2658
+ <element ref="svg:a" />
2659
+ <element ref="svg:altGlyphDef" />
2660
+ <element ref="svg:script" />
2661
+ <element ref="svg:style" />
2662
+ <element ref="svg:symbol" />
2663
+ <element ref="svg:marker" />
2664
+ <element ref="svg:clipPath" />
2665
+ <element ref="svg:mask" />
2666
+ <element ref="svg:linearGradient" />
2667
+ <element ref="svg:radialGradient" />
2668
+ <element ref="svg:pattern" />
2669
+ <element ref="svg:filter" />
2670
+ <element ref="svg:cursor" />
2671
+ <element ref="svg:font" />
2672
+ <element ref="svg:animate" />
2673
+ <element ref="svg:set" />
2674
+ <element ref="svg:animateMotion" />
2675
+ <element ref="svg:animateColor" />
2676
+ <element ref="svg:animateTransform" />
2677
+ <element ref="svg:color-profile" />
2678
+ <element ref="svg:font-face" />
2679
+ </choice>
2680
+ <attributeGroup ref="svg:stdAttrs" />
2681
+ <attribute ref="xlink:type" fixed="simple" />
2682
+ <attribute ref="xlink:role" />
2683
+ <attribute ref="xlink:arcrole" />
2684
+ <attribute ref="xlink:title" />
2685
+ <attribute ref="xlink:show" />
2686
+ <attribute ref="xlink:actuate" fixed="onRequest" />
2687
+ <attribute ref="xlink:href" use="optional" />
2688
+ <attributeGroup ref="svg:testAttrs" />
2689
+ <attributeGroup ref="svg:langSpaceAttrs" />
2690
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2691
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2692
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2693
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2694
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
2695
+ <attributeGroup ref="svg:graphicsElementEvents" />
2696
+ <attribute name="target" type="NMTOKEN" use="optional" />
2697
+ <!-- don't use attribute declarations to declare namespaces
2698
+ attribute ref="xmlns:xlink" type="string" fixed="http://www.w3.org/1999/xlink"/>
2699
+ -->
2700
+ <!-- change from string to URI -->
2701
+ </complexType>
2702
+ <complexType name="viewType">
2703
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2704
+ <attributeGroup ref="svg:stdAttrs" />
2705
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2706
+ <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional" />
2707
+ <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType"
2708
+ default="xMidYMid meet" />
2709
+ <attribute name="zoomAndPan" default="magnify">
2710
+ <simpleType>
2711
+ <restriction base="string">
2712
+ <enumeration value="disable" />
2713
+ <enumeration value="magnify" />
2714
+ <enumeration value="zoom" />
2715
+ </restriction>
2716
+ </simpleType>
2717
+ </attribute>
2718
+ <attribute name="viewTarget" type="string" use="optional" />
2719
+ </complexType>
2720
+ <complexType name="scriptType" mixed="true">
2721
+ <attributeGroup ref="svg:stdAttrs" />
2722
+ <attributeGroup ref="svg:xlinkRefAttrs" />
2723
+ <attribute ref="xlink:href" use="optional" />
2724
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2725
+ <attribute name="type" type="svg:ContentTypeType" use="required" />
2726
+ </complexType>
2727
+ <complexType name="animateType">
2728
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2729
+ <attributeGroup ref="svg:stdAttrs" />
2730
+ <attributeGroup ref="svg:testAttrs" />
2731
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2732
+ <attributeGroup ref="svg:animationEvents" />
2733
+ <attributeGroup ref="svg:animTargetAttrs" />
2734
+ <attributeGroup ref="svg:animTimingAttrs" />
2735
+ <attributeGroup ref="svg:animValueAttrs" />
2736
+ <attributeGroup ref="svg:animAdditionAttrs" />
2737
+ </complexType>
2738
+ <complexType name="setType">
2739
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2740
+ <attributeGroup ref="svg:stdAttrs" />
2741
+ <attributeGroup ref="svg:testAttrs" />
2742
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2743
+ <attributeGroup ref="svg:animationEvents" />
2744
+ <attributeGroup ref="svg:animTargetAttrs" />
2745
+ <attributeGroup ref="svg:animTimingAttrs" />
2746
+ <attribute name="to" type="string" use="optional" />
2747
+ </complexType>
2748
+ <complexType name="animateMotionType">
2749
+ <sequence>
2750
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2751
+ <element ref="svg:mpath" minOccurs="0" />
2752
+ </sequence>
2753
+ <attributeGroup ref="svg:stdAttrs" />
2754
+ <attributeGroup ref="svg:testAttrs" />
2755
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2756
+ <attributeGroup ref="svg:animationEvents" />
2757
+ <attributeGroup ref="svg:animElementAttrs" />
2758
+ <attributeGroup ref="svg:animTimingAttrs" />
2759
+ <attributeGroup ref="svg:animValueAttrs" />
2760
+ <attributeGroup ref="svg:animAdditionAttrs" />
2761
+ <attribute name="path" type="string" use="optional" />
2762
+ <attribute name="keyPoints" type="string" use="optional" />
2763
+ <attribute name="rotate" type="string" use="optional" />
2764
+ <attribute name="origin" type="string" use="optional" />
2765
+ </complexType>
2766
+ <complexType name="mpathType">
2767
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2768
+ <attributeGroup ref="svg:stdAttrs" />
2769
+ <attributeGroup ref="svg:xlinkRefAttrs" />
2770
+ <attribute ref="xlink:href" use="optional" />
2771
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2772
+ </complexType>
2773
+ <complexType name="animateColorType">
2774
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2775
+ <attributeGroup ref="svg:stdAttrs" />
2776
+ <attributeGroup ref="svg:testAttrs" />
2777
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2778
+ <attributeGroup ref="svg:animationEvents" />
2779
+ <attributeGroup ref="svg:animTargetAttrs" />
2780
+ <attributeGroup ref="svg:animTimingAttrs" />
2781
+ <attributeGroup ref="svg:animValueAttrs" />
2782
+ <attributeGroup ref="svg:animAdditionAttrs" />
2783
+ </complexType>
2784
+ <complexType name="animateTransformType">
2785
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2786
+ <attributeGroup ref="svg:stdAttrs" />
2787
+ <attributeGroup ref="svg:testAttrs" />
2788
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2789
+ <attributeGroup ref="svg:animationEvents" />
2790
+ <attributeGroup ref="svg:animTargetAttrs" />
2791
+ <attributeGroup ref="svg:animTimingAttrs" />
2792
+ <attributeGroup ref="svg:animValueAttrs" />
2793
+ <attributeGroup ref="svg:animAdditionAttrs" />
2794
+ <attribute name="type" default="translate">
2795
+ <simpleType>
2796
+ <restriction base="string">
2797
+ <enumeration value="translate" />
2798
+ <enumeration value="scale" />
2799
+ <enumeration value="rotate" />
2800
+ <enumeration value="skewX" />
2801
+ <enumeration value="skewY" />
2802
+ </restriction>
2803
+ </simpleType>
2804
+ </attribute>
2805
+ </complexType>
2806
+ <complexType name="fontType">
2807
+ <sequence>
2808
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2809
+ <element ref="svg:font-face" />
2810
+ <element ref="svg:missing-glyph" />
2811
+ <choice minOccurs="0" maxOccurs="unbounded">
2812
+ <element ref="svg:glyph" />
2813
+ <element ref="svg:hkern" />
2814
+ <element ref="svg:vkern" />
2815
+ </choice>
2816
+ </sequence>
2817
+ <attributeGroup ref="svg:stdAttrs" />
2818
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
2819
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2820
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2821
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2822
+ <attribute name="horiz-origin-x" type="double" use="optional" />
2823
+ <attribute name="horiz-origin-y" type="double" use="optional" />
2824
+ <attribute name="horiz-adv-x" type="double" use="required" />
2825
+ <attribute name="vert-origin-x" type="double" use="optional" />
2826
+ <attribute name="vert-origin-y" type="double" use="optional" />
2827
+ <attribute name="vert-adv-y" type="double" use="optional" />
2828
+ </complexType>
2829
+ <complexType name="glyphType">
2830
+ <choice minOccurs="0" maxOccurs="unbounded">
2831
+ <element ref="svg:desc" />
2832
+ <element ref="svg:title" />
2833
+ <element ref="svg:metadata" />
2834
+ <element ref="svg:defs" />
2835
+ <element ref="svg:path" />
2836
+ <element ref="svg:text" />
2837
+ <element ref="svg:rect" />
2838
+ <element ref="svg:circle" />
2839
+ <element ref="svg:ellipse" />
2840
+ <element ref="svg:line" />
2841
+ <element ref="svg:polyline" />
2842
+ <element ref="svg:polygon" />
2843
+ <element ref="svg:use" />
2844
+ <element ref="svg:image" />
2845
+ <element ref="svg:svg" />
2846
+ <element ref="svg:g" />
2847
+ <element ref="svg:view" />
2848
+ <element ref="svg:switch" />
2849
+ <element ref="svg:a" />
2850
+ <element ref="svg:altGlyphDef" />
2851
+ <element ref="svg:script" />
2852
+ <element ref="svg:style" />
2853
+ <element ref="svg:symbol" />
2854
+ <element ref="svg:marker" />
2855
+ <element ref="svg:clipPath" />
2856
+ <element ref="svg:mask" />
2857
+ <element ref="svg:linearGradient" />
2858
+ <element ref="svg:radialGradient" />
2859
+ <element ref="svg:pattern" />
2860
+ <element ref="svg:filter" />
2861
+ <element ref="svg:cursor" />
2862
+ <element ref="svg:font" />
2863
+ <element ref="svg:animate" />
2864
+ <element ref="svg:set" />
2865
+ <element ref="svg:animateMotion" />
2866
+ <element ref="svg:animateColor" />
2867
+ <element ref="svg:animateTransform" />
2868
+ <element ref="svg:color-profile" />
2869
+ <element ref="svg:font-face" />
2870
+ </choice>
2871
+ <attributeGroup ref="svg:stdAttrs" />
2872
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2873
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2874
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2875
+ <attribute name="unicode" type="string" use="optional" />
2876
+ <attribute name="glyph-name" type="string" use="optional" />
2877
+ <attribute name="d" type="svg:PathDataType" use="optional" />
2878
+ <attribute name="vert-text-orient" type="string" use="optional" />
2879
+ <attribute name="arabic" type="string" use="optional" />
2880
+ <attribute name="han" type="string" use="optional" />
2881
+ <attribute name="horiz-adv-x" type="double" use="optional" />
2882
+ <attribute name="vert-adv-y" type="double" use="optional" />
2883
+ </complexType>
2884
+ <complexType name="missing-glyphType">
2885
+ <choice minOccurs="0" maxOccurs="unbounded">
2886
+ <element ref="svg:desc" />
2887
+ <element ref="svg:title" />
2888
+ <element ref="svg:metadata" />
2889
+ <element ref="svg:defs" />
2890
+ <element ref="svg:path" />
2891
+ <element ref="svg:text" />
2892
+ <element ref="svg:rect" />
2893
+ <element ref="svg:circle" />
2894
+ <element ref="svg:ellipse" />
2895
+ <element ref="svg:line" />
2896
+ <element ref="svg:polyline" />
2897
+ <element ref="svg:polygon" />
2898
+ <element ref="svg:use" />
2899
+ <element ref="svg:image" />
2900
+ <element ref="svg:svg" />
2901
+ <element ref="svg:g" />
2902
+ <element ref="svg:view" />
2903
+ <element ref="svg:switch" />
2904
+ <element ref="svg:a" />
2905
+ <element ref="svg:altGlyphDef" />
2906
+ <element ref="svg:script" />
2907
+ <element ref="svg:style" />
2908
+ <element ref="svg:symbol" />
2909
+ <element ref="svg:marker" />
2910
+ <element ref="svg:clipPath" />
2911
+ <element ref="svg:mask" />
2912
+ <element ref="svg:linearGradient" />
2913
+ <element ref="svg:radialGradient" />
2914
+ <element ref="svg:pattern" />
2915
+ <element ref="svg:filter" />
2916
+ <element ref="svg:cursor" />
2917
+ <element ref="svg:font" />
2918
+ <element ref="svg:animate" />
2919
+ <element ref="svg:set" />
2920
+ <element ref="svg:animateMotion" />
2921
+ <element ref="svg:animateColor" />
2922
+ <element ref="svg:animateTransform" />
2923
+ <element ref="svg:color-profile" />
2924
+ <element ref="svg:font-face" />
2925
+ </choice>
2926
+ <attributeGroup ref="svg:stdAttrs" />
2927
+ <attribute name="class" type="svg:ClassListType" use="optional" />
2928
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
2929
+ <attributeGroup ref="svg:PresentationAttributes-All" />
2930
+ <attribute name="d" type="svg:PathDataType" use="optional" />
2931
+ <attribute name="horiz-adv-x" type="double" use="optional" />
2932
+ <attribute name="vert-adv-y" type="double" use="optional" />
2933
+ </complexType>
2934
+ <complexType name="hkernType">
2935
+ <attributeGroup ref="svg:stdAttrs" />
2936
+ <attribute name="u1" type="string" use="optional" />
2937
+ <attribute name="g1" type="string" use="optional" />
2938
+ <attribute name="u2" type="string" use="optional" />
2939
+ <attribute name="g2" type="string" use="optional" />
2940
+ <attribute name="k" type="double" use="required" />
2941
+ </complexType>
2942
+ <complexType name="vkernType">
2943
+ <attributeGroup ref="svg:stdAttrs" />
2944
+ <attribute name="u1" type="string" use="optional" />
2945
+ <attribute name="g1" type="string" use="optional" />
2946
+ <attribute name="u2" type="string" use="optional" />
2947
+ <attribute name="g2" type="string" use="optional" />
2948
+ <attribute name="k" type="double" use="required" />
2949
+ </complexType>
2950
+ <complexType name="font-faceType">
2951
+ <sequence>
2952
+ <group ref="svg:descTitleMetadata" minOccurs="0" />
2953
+ <element ref="svg:font-face-src" />
2954
+ <element ref="svg:definition-src" />
2955
+ </sequence>
2956
+ <attributeGroup ref="svg:stdAttrs" />
2957
+ <attribute name="font-family" type="svg:FontFamilyValueType" use="optional" />
2958
+ <attribute name="font-style" type="string" use="optional" />
2959
+ <attribute name="font-variant" type="string" use="optional" />
2960
+ <attribute name="font-weight" type="string" use="optional" />
2961
+ <attribute name="font-stretch" type="string" use="optional" />
2962
+ <attribute name="font-size" type="svg:FontSizeValueType" use="optional" />
2963
+ <attribute name="unicode-range" type="string" use="optional" />
2964
+ <attribute name="units-per-em" type="double" use="optional" />
2965
+ <attribute name="panose-1" type="string" use="optional" />
2966
+ <attribute name="stemv" type="double" use="optional" />
2967
+ <attribute name="stemh" type="double" use="optional" />
2968
+ <attribute name="slope" type="double" use="optional" />
2969
+ <attribute name="cap-height" type="double" use="optional" />
2970
+ <attribute name="x-height" type="double" use="optional" />
2971
+ <attribute name="accent-height" type="double" use="optional" />
2972
+ <attribute name="ascent" type="double" use="optional" />
2973
+ <attribute name="descent" type="double" use="optional" />
2974
+ <attribute name="widths" type="string" use="optional" />
2975
+ <attribute name="bbox" type="string" use="optional" />
2976
+ <attribute name="ideographic" type="double" use="optional" />
2977
+ <attribute name="baseline" type="double" use="optional" />
2978
+ <attribute name="centerline" type="double" use="optional" />
2979
+ <attribute name="mathline" type="double" use="optional" />
2980
+ <attribute name="hanging" type="double" use="optional" />
2981
+ <attribute name="topline" type="double" use="optional" />
2982
+ <attribute name="underline-position" type="double" use="optional" />
2983
+ <attribute name="underline-thickness" type="double" use="optional" />
2984
+ <attribute name="strikethrough-position" type="double" use="optional" />
2985
+ <attribute name="strikethrough-thickness" type="double" use="optional" />
2986
+ <attribute name="overline-position" type="double" use="optional" />
2987
+ <attribute name="overline-thickness" type="double" use="optional" />
2988
+ </complexType>
2989
+ <complexType name="font-face-srcType">
2990
+ <choice maxOccurs="unbounded">
2991
+ <element ref="svg:font-face-uri" />
2992
+ <element ref="svg:font-face-name" />
2993
+ </choice>
2994
+ <attributeGroup ref="svg:stdAttrs" />
2995
+ </complexType>
2996
+ <complexType name="font-face-uriType">
2997
+ <sequence>
2998
+ <element ref="svg:font-face-format" />
2999
+ </sequence>
3000
+ <attributeGroup ref="svg:stdAttrs" />
3001
+ <attributeGroup ref="svg:xlinkRefAttrs" />
3002
+ <attribute ref="xlink:href" use="optional" />
3003
+ </complexType>
3004
+ <complexType name="font-face-formatType">
3005
+ <attributeGroup ref="svg:stdAttrs" />
3006
+ <attribute name="string" type="string" use="optional" />
3007
+ </complexType>
3008
+ <complexType name="font-face-nameType">
3009
+ <attributeGroup ref="svg:stdAttrs" />
3010
+ <attribute name="name" type="string" use="optional" />
3011
+ </complexType>
3012
+ <complexType name="definition-srcType">
3013
+ <attributeGroup ref="svg:stdAttrs" />
3014
+ <attributeGroup ref="svg:xlinkRefAttrs" />
3015
+ <attribute ref="xlink:href" use="optional" />
3016
+ </complexType>
3017
+ <complexType name="metadataType" mixed="true">
3018
+ <sequence minOccurs="0" maxOccurs="unbounded" />
3019
+ <attributeGroup ref="svg:stdAttrs" />
3020
+ </complexType>
3021
+ <complexType name="foreignObjectType" mixed="true">
3022
+ <sequence minOccurs="0" maxOccurs="unbounded" />
3023
+ <attributeGroup ref="svg:stdAttrs" />
3024
+ <attributeGroup ref="svg:testAttrs" />
3025
+ <attributeGroup ref="svg:langSpaceAttrs" />
3026
+ <attribute name="externalResourcesRequired" type="boolean" use="optional" />
3027
+ <attribute name="class" type="svg:ClassListType" use="optional" />
3028
+ <attribute name="style" type="svg:StyleSheetType" use="optional" />
3029
+ <attributeGroup ref="svg:PresentationAttributes-All" />
3030
+ <attribute name="transform" type="svg:TransformListType" use="optional" />
3031
+ <attributeGroup ref="svg:graphicsElementEvents" />
3032
+ <attribute name="x" type="svg:CoordinateType" use="optional" />
3033
+ <attribute name="y" type="svg:CoordinateType" use="optional" />
3034
+ <attribute name="width" type="svg:LengthType" use="required" />
3035
+ <attribute name="height" type="svg:LengthType" use="required" />
3036
+ <attribute name="content" type="string" fixed="structured text" />
3037
+ </complexType>
3038
+ </schema>