967 lines
56 KiB
Python
967 lines
56 KiB
Python
|
#!/usr/bin/env python
|
||
|
#coding:utf-8
|
||
|
# Author: mozman --<mozman@gmx.at>
|
||
|
# Purpose: tiny12 data
|
||
|
# Created: 15.10.2010
|
||
|
# Copyright (C) 2010, Manfred Moitzi
|
||
|
# License: MIT License
|
||
|
|
||
|
from svgwrite.data.types import SVGAttribute, SVGMultiAttribute
|
||
|
from svgwrite.data.types import SVGElement
|
||
|
from svgwrite.data.typechecker import Tiny12TypeChecker as TypeChecker
|
||
|
|
||
|
empty_list = []
|
||
|
|
||
|
attributes = {
|
||
|
'about': SVGAttribute('about', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'accent-height': SVGAttribute('accent-height', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'accumulate': SVGAttribute('accumulate', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['none', 'sum'])),
|
||
|
'additive': SVGAttribute('additive', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['replace', 'sum'])),
|
||
|
'alphabetic': SVGAttribute('alphabetic', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'arabic-form': SVGAttribute('arabic-form', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['terminal', 'initial', 'isolated', 'medial'])),
|
||
|
'ascent': SVGAttribute('ascent', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'attributeName': SVGAttribute('attributeName', anim=False,
|
||
|
types=frozenset(['name']),
|
||
|
const=empty_list),
|
||
|
'attributeType': SVGAttribute('attributeType', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['XML', 'CSS', 'auto'])),
|
||
|
'audio-level': SVGAttribute('audio-level', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'bandwidth': SVGAttribute('bandwidth', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['auto'])),
|
||
|
'baseProfile': SVGAttribute('baseProfile', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['none', 'tiny', 'basic', 'full'])),
|
||
|
'bbox': SVGAttribute('bbox', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'begin': SVGAttribute('begin', anim=False,
|
||
|
types=frozenset(['timing-value-list']),
|
||
|
const=frozenset(['indefinite'])),
|
||
|
'buffered-rendering': SVGAttribute('buffered-rendering', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['auto', 'dynamic', 'static', 'inherit'])),
|
||
|
'by': SVGAttribute('by', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'calcMode': SVGAttribute('calcMode', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['discrete', 'linear', 'paced', 'spline'])),
|
||
|
'cap-height': SVGAttribute('cap-height', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'class': SVGAttribute('class', anim=True,
|
||
|
types=frozenset(['list-of-name']),
|
||
|
const=empty_list),
|
||
|
'color': SVGAttribute('color', anim=True,
|
||
|
types=frozenset(['color']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'color-rendering': SVGAttribute('color-rendering', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['auto', 'optimizeSpeed', 'optimizeQuality', 'inherit'])),
|
||
|
'content': SVGAttribute('content', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'contentScriptType': SVGAttribute('contentScriptType', anim=False,
|
||
|
types=frozenset(['content-type']),
|
||
|
const=empty_list),
|
||
|
'cx': SVGAttribute('cx', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'cy': SVGAttribute('cy', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'd': SVGAttribute('d', anim=True,
|
||
|
types=frozenset(['path-data']),
|
||
|
const=empty_list),
|
||
|
'datatype': SVGAttribute('datatype', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'defaultAction': SVGAttribute('defaultAction', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['perform', 'cancel'])),
|
||
|
'descent': SVGAttribute('descent', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'direction': SVGAttribute('direction', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['ltr', 'rtl', 'inherit'])),
|
||
|
'display': SVGAttribute('display', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['inline', 'block', 'list-item', 'run-in', 'compact',
|
||
|
'marker', 'table', 'inline-table', 'table-row-group',
|
||
|
'table-header-group', 'table-footer-group', 'table-row',
|
||
|
'table-column-group', 'table-column', 'table-cell',
|
||
|
'table-caption', 'none', 'inherit'])),
|
||
|
'display-align': SVGAttribute('display-align', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['auto', 'before', 'center', 'after', 'inherit'])),
|
||
|
'dur': SVGAttribute('dur', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=frozenset(['media', 'indefinite'])),
|
||
|
'editable': SVGAttribute('editable', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['none', 'simple'])),
|
||
|
'end': SVGAttribute('end', anim=False,
|
||
|
types=frozenset(['timing-value-list']),
|
||
|
const=frozenset(['indefinite'])),
|
||
|
'ev:event': SVGAttribute('ev:event', anim=False,
|
||
|
types=frozenset(['XML-Name']),
|
||
|
const=empty_list),
|
||
|
'event': SVGAttribute('event', anim=False,
|
||
|
types=frozenset(['XML-Name']),
|
||
|
const=empty_list),
|
||
|
'externalResourcesRequired': SVGAttribute('externalResourcesRequired', anim=False,
|
||
|
types=frozenset(['boolean']),
|
||
|
const=empty_list),
|
||
|
'fill': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'fill', anim=True,
|
||
|
types=frozenset(['paint']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'set animateMotion animate animateColor animateTransform': SVGAttribute(
|
||
|
'fill', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['freeze', 'remove']))
|
||
|
}),
|
||
|
'fill-opacity': SVGAttribute('fill-opacity', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'fill-rule': SVGAttribute('fill-rule', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['nonzero', 'evenodd', 'inherit'])),
|
||
|
'focusHighlight': SVGAttribute('focusHighlight', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['auto', 'none'])),
|
||
|
'focusable': SVGAttribute('focusable', anim=True,
|
||
|
types=frozenset(['boolean']),
|
||
|
const=frozenset(['auto'])),
|
||
|
'font-family': SVGAttribute('font-family', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'font-size': SVGAttribute('font-size', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'font-stretch': SVGAttribute('font-stretch', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['condensed', 'normal', 'ultra-condensed', 'expanded',
|
||
|
'narrower', 'inherit', 'semi-condensed', 'extra-condensed',
|
||
|
'ultra-expanded', 'wider', 'semi-expanded', 'extra-expanded'])),
|
||
|
'font-style': SVGAttribute('font-style', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['normal', 'italic', 'oblique', 'inherit'])),
|
||
|
'font-variant': SVGAttribute('font-variant', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['normal', 'small-caps', 'inherit'])),
|
||
|
'font-weight': SVGAttribute('font-weight', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['normal', 'bold', 'bolder', 'lighter', '100', '200',
|
||
|
'300', '400', '500', '600', '700', '800', '900',
|
||
|
'inherit'])),
|
||
|
'from': SVGAttribute('from', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'g1': SVGAttribute('g1', anim=False,
|
||
|
types=frozenset(['list-of-name']),
|
||
|
const=empty_list),
|
||
|
'g2': SVGAttribute('g2', anim=False,
|
||
|
types=frozenset(['list-of-name']),
|
||
|
const=empty_list),
|
||
|
'glyph-name': SVGAttribute('glyph-name', anim=False,
|
||
|
types=frozenset(['list-of-name']),
|
||
|
const=empty_list),
|
||
|
'gradientUnits': SVGAttribute('gradientUnits', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['userSpaceOnUse', 'objectBoundingBox'])),
|
||
|
'handler': SVGAttribute('handler', anim=False,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'hanging': SVGAttribute('hanging', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'height': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'height', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=empty_list),
|
||
|
'textArea': SVGAttribute(
|
||
|
'height', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=frozenset(['auto'])),
|
||
|
}),
|
||
|
'horiz-adv-x': SVGAttribute('horiz-adv-x', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'horiz-origin-x': SVGAttribute('horiz-origin-x', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'id': SVGAttribute('id', anim=False,
|
||
|
types=frozenset(['name']),
|
||
|
const=empty_list),
|
||
|
'ideographic': SVGAttribute('ideographic', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'image-rendering': SVGAttribute('image-rendering', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['auto', 'optimizeSpeed', 'optimizeQuality', 'inherit'])),
|
||
|
'initialVisibility': SVGAttribute('initialVisibility', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['whenStarted', 'always'])),
|
||
|
'k': SVGAttribute('k', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'keyPoints': SVGAttribute('keyPoints', anim=False,
|
||
|
types=frozenset(['semicolon-list']),
|
||
|
const=empty_list),
|
||
|
'keySplines': SVGAttribute('keySplines', anim=False,
|
||
|
types=frozenset(['semicolon-list']),
|
||
|
const=empty_list),
|
||
|
'keyTimes': SVGAttribute('keyTimes', anim=False,
|
||
|
types=frozenset(['semicolon-list']),
|
||
|
const=empty_list),
|
||
|
'lang': SVGAttribute('lang', anim=False,
|
||
|
types=frozenset(['list-of-name']),
|
||
|
const=empty_list),
|
||
|
'line-increment': SVGAttribute('line-increment', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['auto', 'inherit'])),
|
||
|
'mathematical': SVGAttribute('mathematical', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'max': SVGAttribute('max', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=frozenset(['media'])),
|
||
|
'mediaCharacterEncoding': SVGAttribute('mediaCharacterEncoding', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'mediaContentEncodings': SVGAttribute('mediaContentEncodings', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'mediaSize': SVGAttribute('mediaSize', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'mediaTime': SVGAttribute('mediaTime', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=empty_list),
|
||
|
'min': SVGAttribute('min', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=frozenset(['media'])),
|
||
|
'nav-down': SVGAttribute('nav-down', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-down-left': SVGAttribute('nav-down-left', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-down-right': SVGAttribute('nav-down-right', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-left': SVGAttribute('nav-left', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-next': SVGAttribute('nav-next', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-prev': SVGAttribute('nav-prev', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-right': SVGAttribute('nav-right', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-up': SVGAttribute('nav-up', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-up-left': SVGAttribute('nav-up-left', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'nav-up-right': SVGAttribute('nav-up-right', anim=True,
|
||
|
types=frozenset(['focus']),
|
||
|
const=empty_list),
|
||
|
'observer': SVGAttribute('observer', anim=False,
|
||
|
types=frozenset(['IDREF']),
|
||
|
const=empty_list),
|
||
|
'offset': SVGAttribute('offset', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'opacity': SVGAttribute('opacity', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'origin': SVGAttribute('origin', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['default'])),
|
||
|
'overlay': SVGAttribute('overlay', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['none', 'top'])),
|
||
|
'overline-position': SVGAttribute('overline-position', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'overline-thickness': SVGAttribute('overline-thickness', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'panose-1': SVGAttribute('panose-1', anim=False,
|
||
|
types=frozenset(['list-of-integer']),
|
||
|
const=empty_list),
|
||
|
'path': SVGAttribute('path', anim=False,
|
||
|
types=frozenset(['path-data']),
|
||
|
const=empty_list),
|
||
|
'pathLength': SVGAttribute('pathLength', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'phase': SVGAttribute('phase', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['default', 'capture'])),
|
||
|
'playbackOrder': SVGAttribute('playbackOrder', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['all', 'forwardOnly'])),
|
||
|
'pointer-events': SVGAttribute('pointer-events', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['visiblePainted', 'visibleFill', 'visibleStroke', 'visible',
|
||
|
'painted', 'fill', 'stroke', 'all', 'none', 'inherit'])),
|
||
|
'points': SVGAttribute('points', anim=True,
|
||
|
types=frozenset(['list-of-number']),
|
||
|
const=empty_list),
|
||
|
'preserveAspectRatio': SVGAttribute('preserveAspectRatio', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'propagate': SVGAttribute('propagate', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['continue', 'stop'])),
|
||
|
'property': SVGAttribute('property', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'r': SVGAttribute('r', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=empty_list),
|
||
|
'rel': SVGAttribute('rel', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'repeatCount': SVGAttribute('repeatCount', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['indefinite'])),
|
||
|
'repeatDur': SVGAttribute('repeatDur', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=frozenset(['indefinite'])),
|
||
|
'requiredExtensions': SVGAttribute('requiredExtensions', anim=False,
|
||
|
types=frozenset(['list-of-IRI']),
|
||
|
const=empty_list),
|
||
|
'requiredFeatures': SVGAttribute('requiredFeatures', anim=False,
|
||
|
types=frozenset(['list-of-IRI']),
|
||
|
const=empty_list),
|
||
|
'requiredFonts': SVGAttribute('requiredFonts', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'requiredFormats': SVGAttribute('requiredFormats', anim=False,
|
||
|
types=frozenset(['anything']),
|
||
|
const=empty_list),
|
||
|
'resource': SVGAttribute('resource', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'restart': SVGAttribute('restart', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['always', 'never', 'whenNotActive'])),
|
||
|
'rev': SVGAttribute('rev', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'role': SVGAttribute('role', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'rotate': SVGAttribute('rotate', anim=True,
|
||
|
types=frozenset(['list-of-number']),
|
||
|
const=empty_list),
|
||
|
'rx': SVGAttribute('rx', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=empty_list),
|
||
|
'ry': SVGAttribute('ry', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=empty_list),
|
||
|
'shape-rendering': SVGAttribute('shape-rendering', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['auto', 'optimizeSpeed', 'crispEdges', 'geometricPrecision', 'inherit'])),
|
||
|
'slope': SVGAttribute('slope', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'snapshotTime': SVGAttribute('snapshotTime', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=frozenset(['none'])),
|
||
|
'solid-color': SVGAttribute('solid-color', anim=True,
|
||
|
types=frozenset(['color']),
|
||
|
const=frozenset(['currentColor', 'inherit'])),
|
||
|
'solid-opacity': SVGAttribute('solid-opacity', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'stemh': SVGAttribute('stemh', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'stemv': SVGAttribute('stemv', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'stop-color': SVGAttribute('stop-color', anim=True,
|
||
|
types=frozenset(['color']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'stop-opacity': SVGAttribute('stop-opacity', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'strikethrough-position': SVGAttribute('strikethrough-position', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'strikethrough-thickness': SVGAttribute('strikethrough-thickness', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'stroke': SVGAttribute('stroke', anim=True,
|
||
|
types=frozenset(['paint']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'stroke-dasharray': SVGAttribute('stroke-dasharray', anim=True,
|
||
|
types=frozenset(['list-of-length']),
|
||
|
const=frozenset(['none', 'inherit'])),
|
||
|
'stroke-dashoffset': SVGAttribute('stroke-dashoffset', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'stroke-linecap': SVGAttribute('stroke-linecap', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['butt', 'round', 'square', 'inherit'])),
|
||
|
'stroke-linejoin': SVGAttribute('stroke-linejoin', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['miter', 'round', 'bevel', 'inherit'])),
|
||
|
'stroke-miterlimit': SVGAttribute('stroke-miterlimit', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'stroke-opacity': SVGAttribute('stroke-opacity', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'stroke-width': SVGAttribute('stroke-width', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'syncBehavior': SVGAttribute('syncBehavior', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['canSlip', 'locked', 'independent', 'default'])),
|
||
|
'syncBehaviorDefault': SVGAttribute('syncBehaviorDefault', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['canSlip', 'locked', 'independent', 'inherit'])),
|
||
|
'syncMaster': SVGAttribute('syncMaster', anim=False,
|
||
|
types=frozenset(['boolean']),
|
||
|
const=empty_list),
|
||
|
'syncTolerance': SVGAttribute('syncTolerance', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=frozenset(['default'])),
|
||
|
'syncToleranceDefault': SVGAttribute('syncToleranceDefault', anim=False,
|
||
|
types=frozenset(['time']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'systemLanguage': SVGAttribute('systemLanguage', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'target': SVGMultiAttribute({
|
||
|
'* a': SVGAttribute(
|
||
|
'target', anim=True,
|
||
|
types=frozenset(['XML-Name']),
|
||
|
const=frozenset(['_replace', '_self', '_parent', '_top', '_blank'])),
|
||
|
'listener': SVGAttribute(
|
||
|
'target', anim=False,
|
||
|
types=frozenset(['XML-Name']),
|
||
|
const=empty_list),
|
||
|
}),
|
||
|
'text-align': SVGAttribute('text-align', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['start', 'center', 'end', 'inherit'])),
|
||
|
'text-anchor': SVGAttribute('text-anchor', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['start', 'middle', 'end', 'inherit'])),
|
||
|
'text-rendering': SVGAttribute('text-rendering', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['auto', 'optimizeSpeed', 'optimizeLegibility', 'geometricPrecision', 'inherit'])),
|
||
|
'timelineBegin': SVGAttribute('timelineBegin', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['onLoad', 'onStart'])),
|
||
|
'to': SVGAttribute('to', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'transform': SVGAttribute('transform', anim=True,
|
||
|
types=frozenset(['transform-list']),
|
||
|
const=frozenset(['none'])),
|
||
|
'transformBehavior': SVGAttribute('transformBehavior', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['geometric', 'pinned', 'pinned90', 'pinned180', 'pinned270'])),
|
||
|
'type': SVGMultiAttribute({
|
||
|
'* audio image video': SVGAttribute(
|
||
|
'type', anim=True,
|
||
|
types=frozenset(['content-type']),
|
||
|
const=empty_list),
|
||
|
'handler script': SVGAttribute(
|
||
|
'type', anim=False,
|
||
|
types=frozenset(['content-type']),
|
||
|
const=empty_list),
|
||
|
'animateTransform': SVGAttribute(
|
||
|
'type', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['translate', 'scale', 'rotate', 'skewX', 'skewY'])),
|
||
|
}),
|
||
|
'typeof': SVGAttribute('typeof', anim=True,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'u1': SVGAttribute('u1', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'u2': SVGAttribute('u2', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'underline-position': SVGAttribute('underline-position', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'underline-thickness': SVGAttribute('underline-thickness', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'unicode': SVGAttribute('unicode', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'unicode-bidi': SVGAttribute('unicode-bidi', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['normal', 'embed', 'bidi-override', 'inherit'])),
|
||
|
'unicode-range': SVGAttribute('unicode-range', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'units-per-em': SVGAttribute('units-per-em', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'values': SVGAttribute('values', anim=False,
|
||
|
types=frozenset(['list-of-number']),
|
||
|
const=empty_list),
|
||
|
'vector-effect': SVGAttribute('vector-effect', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['none', 'non-scaling-stroke', 'inherit'])),
|
||
|
'version': SVGAttribute('version', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['1.1', '1.2'])),
|
||
|
'viewBox': SVGAttribute('viewBox', anim=True,
|
||
|
types=frozenset(['four-numbers']),
|
||
|
const=empty_list),
|
||
|
'viewport-fill': SVGAttribute('viewport-fill', anim=True,
|
||
|
types=frozenset(['color']),
|
||
|
const=frozenset(['none', 'inherit'])),
|
||
|
'viewport-fill-opacity': SVGAttribute('viewport-fill-opacity', anim=True,
|
||
|
types=frozenset(['number']),
|
||
|
const=frozenset(['inherit'])),
|
||
|
'visibility': SVGAttribute('visibility', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['visible', 'hidden', 'inherit'])),
|
||
|
'width': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'width', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=empty_list),
|
||
|
'textArea': SVGAttribute(
|
||
|
'width', anim=True,
|
||
|
types=frozenset(['length']),
|
||
|
const=frozenset(['auto'])),
|
||
|
}),
|
||
|
'widths': SVGAttribute('widths', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'x': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'x', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'text': SVGAttribute(
|
||
|
'x', anim=True,
|
||
|
types=frozenset(['list-of-coordinate']),
|
||
|
const=empty_list),
|
||
|
}),
|
||
|
'x-height': SVGAttribute('x-height', anim=False,
|
||
|
types=frozenset(['number']),
|
||
|
const=empty_list),
|
||
|
'x1': SVGAttribute('x1', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'x2': SVGAttribute('x2', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'xlink:actuate': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'xlink:actuate', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['onLoad'])),
|
||
|
'a': SVGAttribute(
|
||
|
'xlink:actuate', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['onRequest'])),
|
||
|
}),
|
||
|
'xlink:arcrole': SVGAttribute('xlink:arcrole', anim=False,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'xlink:href': SVGAttribute('xlink:href', anim=True,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'xlink:role': SVGAttribute('xlink:role', anim=False,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'xlink:show': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'xlink:show', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['other'])),
|
||
|
'animation audio foreignObject image use video': SVGAttribute(
|
||
|
'xlink:show', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['embed'])),
|
||
|
'a': SVGAttribute(
|
||
|
'xlink:show', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['new', 'replace'])),
|
||
|
}),
|
||
|
'xlink:title': SVGAttribute('xlink:title', anim=False,
|
||
|
types=frozenset(['string']),
|
||
|
const=empty_list),
|
||
|
'xlink:type': SVGAttribute('xlink:type', anim=True,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['simple'])),
|
||
|
'xmlns': SVGAttribute('xmlns', anim=False,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'xmlns:xlink': SVGAttribute('xmlns:xlink', anim=False,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'xmlns:ev': SVGAttribute('xmlns:ev', anim=False,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'xml:base': SVGAttribute('xml:base', anim=False,
|
||
|
types=frozenset(['IRI']),
|
||
|
const=empty_list),
|
||
|
'xml:id': SVGAttribute('xml:id', anim=False,
|
||
|
types=frozenset(['name']),
|
||
|
const=empty_list),
|
||
|
'xml:lang': SVGAttribute('xml:lang', anim=False,
|
||
|
types=frozenset(['name']),
|
||
|
const=empty_list),
|
||
|
'xml:space': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'xml:space', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['preserve', 'default'])),
|
||
|
'handler script': SVGAttribute(
|
||
|
'xml:space', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['preserve'])),
|
||
|
}),
|
||
|
'y': SVGMultiAttribute({
|
||
|
'*': SVGAttribute(
|
||
|
'y', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'text': SVGAttribute(
|
||
|
'y', anim=True,
|
||
|
types=frozenset(['list-of-coordinate']),
|
||
|
const=empty_list),
|
||
|
}),
|
||
|
'y1': SVGAttribute('y1', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'y2': SVGAttribute('y2', anim=True,
|
||
|
types=frozenset(['coordinate']),
|
||
|
const=empty_list),
|
||
|
'zoomAndPan': SVGAttribute('zoomAndPan', anim=False,
|
||
|
types=empty_list,
|
||
|
const=frozenset(['disable', 'magnify'])),
|
||
|
}
|
||
|
|
||
|
attribute_names = ['slope', 'keySplines', 'rx', 'accumulate', 'bandwidth',
|
||
|
'attributeType', 'unicode', 'nav-right', 'arabic-form',
|
||
|
'y2', 'horiz-origin-x', 'underline-position', 'zoomAndPan',
|
||
|
'cap-height', 'defaultAction', 'to', 'syncBehavior',
|
||
|
'alphabetic', 'g2', 'g1', 'panose-1', 'strikethrough-thickness',
|
||
|
'attributeName', 'bbox', 'nav-up-left', 'nav-left',
|
||
|
'restart', 'target', 'xlink:actuate', 'rotate', 'resource',
|
||
|
'd', 'syncToleranceDefault', 'initialVisibility',
|
||
|
'transformBehavior', 'nav-up-right', 'keyTimes',
|
||
|
'x', 'requiredFormats', 'nav-next', 'glyph-name',
|
||
|
'xml:lang', 'mathematical', 'observer', 'repeatDur',
|
||
|
'hanging', 'y1', 'xml:base', 'ascent', 'event',
|
||
|
'strikethrough-position', 'overlay', 'rev', 'ry',
|
||
|
'overline-thickness', 'content', 'version', 'rel',
|
||
|
'focusable', 'requiredFonts', 'nav-down-right', 'xml:id',
|
||
|
'offset', 'additive', 'underline-thickness', 'font-family',
|
||
|
'by', 'mediaTime', 'timelineBegin', 'about', 'horiz-adv-x',
|
||
|
'widths', 'k', 'requiredFeatures', 'preserveAspectRatio',
|
||
|
'contentScriptType', 'origin', 'xml:space', 'xlink:href',
|
||
|
'height', 'baseProfile', 'cy', 'cx', 'path', 'xlink:role',
|
||
|
'from', 'u1', 'transform', 'units-per-em', 'u2', 'width',
|
||
|
'handler', 'font-variant', 'x-height', 'dur', 'xlink:arcrole',
|
||
|
'type', 'focusHighlight', 'mediaCharacterEncoding',
|
||
|
'xlink:title', 'editable', 'stemv', 'systemLanguage',
|
||
|
'x2', 'x1', 'ideographic', 'xlink:show', 'overline-position',
|
||
|
'syncTolerance', 'gradientUnits', 'r', 'values', 'typeof',
|
||
|
'mediaContentEncodings', 'property', 'requiredExtensions',
|
||
|
'repeatCount', 'ev:event', 'nav-down', 'mediaSize', 'pathLength',
|
||
|
'syncMaster', 'font-style', 'fill', 'end', 'descent',
|
||
|
'calcMode', 'min', 'stemh', 'id', 'unicode-range',
|
||
|
'nav-up', 'font-stretch', 'role', 'font-weight', 'begin',
|
||
|
'xlink:type', 'syncBehaviorDefault', 'max', 'snapshotTime',
|
||
|
'playbackOrder', 'keyPoints', 'nav-prev', 'propagate',
|
||
|
'phase', 'externalResourcesRequired', 'nav-down-left',
|
||
|
'class', 'lang', 'datatype', 'viewBox', 'points',
|
||
|
'accent-height', 'y']
|
||
|
property_names = ['stroke-linejoin', 'font-size', 'text-rendering', 'color-rendering',
|
||
|
'fill-opacity', 'color', 'shape-rendering', 'solid-color', 'stroke',
|
||
|
'stroke-linecap', 'vector-effect', 'stroke-width', 'font-style',
|
||
|
'fill', 'solid-opacity', 'fill-rule', 'viewport-fill-opacity',
|
||
|
'display-align', 'buffered-rendering', 'stroke-miterlimit',
|
||
|
'font-variant', 'stop-opacity', 'font-weight', 'opacity', 'direction',
|
||
|
'audio-level', 'visibility', 'unicode-bidi', 'line-increment',
|
||
|
'image-rendering', 'font-family', 'viewport-fill', 'text-align',
|
||
|
'stroke-opacity', 'stroke-dashoffset', 'text-anchor', 'stop-color',
|
||
|
'pointer-events', 'stroke-dasharray', 'display']
|
||
|
media_group_names = ['audio-level', 'buffered-rendering', 'display', 'image-rendering',
|
||
|
'pointer-events', 'shape-rendering', 'text-rendering',
|
||
|
'viewport-fill', 'viewport-fill-opacity', 'visibility']
|
||
|
|
||
|
elements = {
|
||
|
'a': SVGElement('a',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'target', 'transform', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['likeparent', 'defs', 'text', 'g', 'textArea', 'svg']),
|
||
|
|
||
|
'animate': SVGElement('animate',
|
||
|
attributes=['about', 'accumulate', 'additive', 'attributeName', 'attributeType', 'begin', 'by', 'calcMode', 'class', 'content', 'datatype', 'dur', 'end', 'fill', 'from', 'id', 'keySplines', 'keyTimes', 'max', 'min', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'systemLanguage', 'to', 'typeof', 'values', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'handler', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'animateColor': SVGElement('animateColor',
|
||
|
attributes=['about', 'accumulate', 'additive', 'attributeName', 'attributeType', 'begin', 'by', 'calcMode', 'class', 'content', 'datatype', 'dur', 'end', 'fill', 'from', 'id', 'keySplines', 'keyTimes', 'max', 'min', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'systemLanguage', 'to', 'typeof', 'values', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'handler', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'animateMotion': SVGElement('animateMotion',
|
||
|
attributes=['about', 'accumulate', 'additive', 'begin', 'by', 'calcMode', 'class', 'content', 'datatype', 'dur', 'end', 'fill', 'from', 'id', 'keyPoints', 'keySplines', 'keyTimes', 'max', 'min', 'origin', 'path', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'rotate', 'systemLanguage', 'to', 'typeof', 'values', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'handler', 'metadata', 'mpath', 'switch', 'title']),
|
||
|
|
||
|
'animateTransform': SVGElement('animateTransform',
|
||
|
attributes=['about', 'accumulate', 'additive', 'attributeName', 'attributeType', 'begin', 'by', 'calcMode', 'class', 'content', 'datatype', 'dur', 'end', 'fill', 'from', 'id', 'keySplines', 'keyTimes', 'max', 'min', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'systemLanguage', 'to', 'type', 'typeof', 'values', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'handler', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'animation': SVGElement('animation',
|
||
|
attributes=['about', 'begin', 'class', 'content', 'datatype', 'dur', 'end', 'externalResourcesRequired', 'fill', 'focusHighlight', 'focusable', 'height', 'id', 'initialVisibility', 'max', 'min', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'preserveAspectRatio', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'syncBehavior', 'syncMaster', 'syncTolerance', 'systemLanguage', 'transform', 'typeof', 'width', 'x', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=media_group_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'audio': SVGElement('audio',
|
||
|
attributes=['about', 'begin', 'class', 'content', 'datatype', 'dur', 'end', 'externalResourcesRequired', 'fill', 'id', 'max', 'min', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'syncBehavior', 'syncMaster', 'syncTolerance', 'systemLanguage', 'type', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=media_group_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'circle': SVGElement('circle',
|
||
|
attributes=['about', 'class', 'content', 'cx', 'cy', 'datatype', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'r', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'defs': SVGElement('defs',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['a', 'animate', 'animateColor', 'animateMotion', 'animateTransform', 'animation', 'audio', 'circle', 'defs', 'desc', 'discard', 'ellipse', 'font', 'font-face', 'foreignObject', 'g', 'handler', 'image', 'line', 'linearGradient', 'listener', 'metadata', 'path', 'polygon', 'polyline', 'prefetch', 'radialGradient', 'rect', 'script', 'set', 'solidColor', 'switch', 'text', 'textArea', 'title', 'use', 'video']),
|
||
|
|
||
|
'desc': SVGElement('desc',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=media_group_names,
|
||
|
children=empty_list),
|
||
|
|
||
|
'discard': SVGElement('discard',
|
||
|
attributes=['about', 'begin', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'handler', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'ellipse': SVGElement('ellipse',
|
||
|
attributes=['about', 'class', 'content', 'cx', 'cy', 'datatype', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'rx', 'ry', 'systemLanguage', 'transform', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'font': SVGElement('font',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'horiz-adv-x', 'horiz-origin-x', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'font-face', 'glyph', 'hkern', 'metadata', 'missing-glyph', 'switch', 'title']),
|
||
|
|
||
|
'font-face': SVGElement('font-face',
|
||
|
attributes=['about', 'accent-height', 'alphabetic', 'ascent', 'bbox', 'cap-height', 'class', 'content', 'datatype', 'descent', 'externalResourcesRequired', 'font-family', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'hanging', 'id', 'ideographic', 'mathematical', 'overline-position', 'overline-thickness', 'panose-1', 'property', 'rel', 'resource', 'rev', 'role', 'slope', 'stemh', 'stemv', 'strikethrough-position', 'strikethrough-thickness', 'typeof', 'underline-position', 'underline-thickness', 'unicode-range', 'units-per-em', 'widths', 'x-height', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'font-face-src', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'font-face-src': SVGElement('font-face-src',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'font-face-uri', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'font-face-uri': SVGElement('font-face-uri',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'foreignObject': SVGElement('foreignObject',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'focusHighlight', 'focusable', 'height', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'width', 'x', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=property_names,
|
||
|
children=['desc', 'metadata', 'svg', 'switch', 'title']),
|
||
|
|
||
|
'g': SVGElement('g',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['a', 'animate', 'animateColor', 'animateMotion', 'animateTransform', 'animation', 'audio', 'circle', 'defs', 'desc', 'discard', 'ellipse', 'font', 'font-face', 'foreignObject', 'g', 'handler', 'image', 'line', 'linearGradient', 'listener', 'metadata', 'path', 'polygon', 'polyline', 'prefetch', 'radialGradient', 'rect', 'script', 'set', 'solidColor', 'switch', 'text', 'textArea', 'title', 'use', 'video']),
|
||
|
|
||
|
'glyph': SVGElement('glyph',
|
||
|
attributes=['about', 'arabic-form', 'class', 'content', 'd', 'datatype', 'glyph-name', 'horiz-adv-x', 'id', 'lang', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'unicode', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'handler': SVGElement('handler',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'ev:event', 'externalResourcesRequired', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'type', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'hkern': SVGElement('hkern',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'g1', 'g2', 'id', 'k', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'u1', 'u2', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'image': SVGElement('image',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'focusHighlight', 'focusable', 'height', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'opacity', 'preserveAspectRatio', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'type', 'typeof', 'width', 'x', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=media_group_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'line': SVGElement('line',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'x1', 'x2', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y1', 'y2'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'linearGradient': SVGElement('linearGradient',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'gradientUnits', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'x1', 'x2', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y1', 'y2'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'metadata', 'set', 'stop', 'switch', 'title']),
|
||
|
|
||
|
'listener': SVGElement('listener',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'defaultAction', 'event', 'handler', 'id', 'observer', 'phase', 'propagate', 'property', 'rel', 'resource', 'rev', 'role', 'target', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=empty_list),
|
||
|
|
||
|
'metadata': SVGElement('metadata',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=media_group_names,
|
||
|
children=empty_list),
|
||
|
|
||
|
'missing-glyph': SVGElement('missing-glyph',
|
||
|
attributes=['about', 'class', 'content', 'd', 'datatype', 'horiz-adv-x', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'mpath': SVGElement('mpath',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'path': SVGElement('path',
|
||
|
attributes=['about', 'class', 'content', 'd', 'datatype', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'pathLength', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'polygon': SVGElement('polygon',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'points', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'polyline': SVGElement('polyline',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'points', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'prefetch': SVGElement('prefetch',
|
||
|
attributes=['about', 'bandwidth', 'class', 'content', 'datatype', 'id', 'mediaCharacterEncoding', 'mediaContentEncodings', 'mediaSize', 'mediaTime', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'radialGradient': SVGElement('radialGradient',
|
||
|
attributes=['about', 'class', 'content', 'cx', 'cy', 'datatype', 'gradientUnits', 'id', 'property', 'r', 'rel', 'resource', 'rev', 'role', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'metadata', 'set', 'stop', 'switch', 'title']),
|
||
|
|
||
|
'rect': SVGElement('rect',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'focusHighlight', 'focusable', 'height', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'rx', 'ry', 'systemLanguage', 'transform', 'typeof', 'width', 'x', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'script': SVGElement('script',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'type', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'set': SVGElement('set',
|
||
|
attributes=['about', 'attributeName', 'attributeType', 'begin', 'class', 'content', 'datatype', 'dur', 'end', 'fill', 'id', 'max', 'min', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'systemLanguage', 'to', 'typeof', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=['desc', 'handler', 'metadata', 'switch', 'title']),
|
||
|
|
||
|
'solidColor': SVGElement('solidColor',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'stop': SVGElement('stop',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'offset', 'property', 'rel', 'resource', 'rev', 'role', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'svg': SVGElement('svg',
|
||
|
attributes=['about', 'baseProfile', 'class', 'content', 'contentScriptType', 'datatype', 'externalResourcesRequired', 'focusHighlight', 'focusable', 'height', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'playbackOrder', 'preserveAspectRatio', 'property', 'rel', 'resource', 'rev', 'role', 'snapshotTime', 'syncBehaviorDefault', 'syncToleranceDefault', 'timelineBegin', 'typeof', 'version', 'viewBox', 'width', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'xmlns', 'xmlns:xlink', 'xmlns:ev', 'zoomAndPan'],
|
||
|
properties=property_names,
|
||
|
children=['a', 'animate', 'animateColor', 'animateMotion', 'animateTransform', 'animation', 'audio', 'circle', 'defs', 'desc', 'discard', 'ellipse', 'font', 'font-face', 'foreignObject', 'g', 'handler', 'image', 'line', 'linearGradient', 'listener', 'metadata', 'path', 'polygon', 'polyline', 'prefetch', 'radialGradient', 'rect', 'script', 'set', 'solidColor', 'switch', 'text', 'textArea', 'title', 'use', 'video']),
|
||
|
|
||
|
'switch': SVGElement('switch',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['likeparent', 'set', 'textArea', 'text', 'image', 'missing-glyph', 'font-face', 'video', 'path', 'animate', 'font', 'ellipse', 'glyph', 'use', 'font-face-src', 'polygon', 'script', 'handler', 'circle', 'radialGradient', 'prefetch', 'defs', 'mpath', 'stop', 'animateMotion', 'animateColor', 'discard', 'solidColor', 'hkern', 'line', 'animation', 'rect', 'g', 'svg', 'animateTransform', 'linearGradient', 'font-face-uri', 'foreignObject', 'polyline', 'audio']),
|
||
|
|
||
|
'tbreak': SVGElement('tbreak',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=empty_list,
|
||
|
children=empty_list),
|
||
|
|
||
|
'text': SVGElement('text',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'editable', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'rotate', 'systemLanguage', 'transform', 'typeof', 'x', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=property_names,
|
||
|
children=['a', 'animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title', 'tspan']),
|
||
|
|
||
|
'textArea': SVGElement('textArea',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'editable', 'focusHighlight', 'focusable', 'height', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'width', 'x', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=property_names,
|
||
|
children=['a', 'animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'tbreak', 'title', 'tspan']),
|
||
|
|
||
|
'title': SVGElement('title',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'id', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=media_group_names,
|
||
|
children=empty_list),
|
||
|
|
||
|
'tspan': SVGElement('tspan',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'typeof', 'xml:base', 'xml:id', 'xml:lang', 'xml:space'],
|
||
|
properties=property_names,
|
||
|
children=['likeparent', 'text', 'textArea']),
|
||
|
|
||
|
'use': SVGElement('use',
|
||
|
attributes=['about', 'class', 'content', 'datatype', 'externalResourcesRequired', 'focusHighlight', 'focusable', 'id', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'property', 'rel', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'rev', 'role', 'systemLanguage', 'transform', 'typeof', 'x', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=property_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
|
||
|
'video': SVGElement('video',
|
||
|
attributes=['about', 'begin', 'class', 'content', 'datatype', 'dur', 'end', 'externalResourcesRequired', 'fill', 'focusHighlight', 'focusable', 'height', 'id', 'initialVisibility', 'max', 'min', 'nav-down', 'nav-down-left', 'nav-down-right', 'nav-left', 'nav-next', 'nav-prev', 'nav-right', 'nav-up', 'nav-up-left', 'nav-up-right', 'overlay', 'preserveAspectRatio', 'property', 'rel', 'repeatCount', 'repeatDur', 'requiredExtensions', 'requiredFeatures', 'requiredFonts', 'requiredFormats', 'resource', 'restart', 'rev', 'role', 'syncBehavior', 'syncMaster', 'syncTolerance', 'systemLanguage', 'transform', 'transformBehavior', 'type', 'typeof', 'width', 'x', 'xlink:actuate', 'xlink:arcrole', 'xlink:href', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type', 'xml:base', 'xml:id', 'xml:lang', 'xml:space', 'y'],
|
||
|
properties=media_group_names,
|
||
|
children=['animate', 'animateColor', 'animateMotion', 'animateTransform', 'desc', 'discard', 'handler', 'metadata', 'set', 'switch', 'title']),
|
||
|
}
|