+
7 The SVG transform Attribute 
skewtest1 
= 
SVG 
Testing 1  skew()
 The lime square in this test has a skew method applied : 30deg on x and 20deg on y. The red polygon should be totally hidden by the lime skewed square. Both start at 0,0

svgdocumentstyles001 
= 
SVG 
Document transform style on SVG element with presentation attribute style on the same element
 Document transform styles on SVG elements should override presentation attribute styles on the same element. The rect in the test should be rotated by 90 degrees clockwise and not scaled.

svgdocumentstyles002 
= 
SVG 
Document transform style on SVG child element with presentation attribute styles on the parent and child elements
 Document transform styles on SVG elements should override presentation attribute styles on the same element. Presentation attribute styles on its parent should also be applied. The rect in the test should be rotated by 90 degrees clockwise, moved up 100 pixels, and not scaled.

svgdocumentstyles003 
= 
SVG 
Document transform style on SVG group element and presentation attribute style on child element
 Document transform styles on SVG group elements should be premultipled on the child elements. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels.

svgdocumentstyles004 
= 
SVG 
Document transform style on SVG group element and presentation attribute style on group and child elements
 Document transform styles on SVG group elements override presentation attribute styles on the same element. Presentation attribute styles on child elements should be postmultiplied. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels and not scaled.

svgdocumentstyles005 
= 
SVG 
Fall back to presentation attribute style of SVG element with invalid document transform style
 Invalid document transform styles on SVG elements should fall back to presentation attributes styles on the same element. The rect in the test should be rotated by 90 degrees clockwise.

svgdocumentstyles006 
= 
SVG 
Fall back to presentation attribute styles of SVG element with invalid document transform style and presentation attribute style on group
 Invalid document transform styles on SVG elements should fall back to presentation attributes styles on the same element. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels.

svgdocumentstyles007 
= 
SVG 
Invalid document transform style on SVG child element with valid presentation attribute style on group and invalid presentation attribute style on child
 When both the document and presentation attribute styles on an element are invalid, no transform should be applied. However, valid presentation attribute styles on the group should still be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled down or flipped.

svgdocumentstyles008 
= 
SVG 
Invalid document and presentation attribute styles on an SVG element
 When both the document and presentation attribute styles are invalid, no transform should be applied. The rect in the test should not be scaled down or flipped.

svgdocumentstyles009 
= 
SVG 
Invalid document transform style on SVG group with valid presentation attribute style on child element
 Invalid document transform styles on group elements should not be applied, but valid presentation attribute styles on the child should be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled.

svgdocumentstyles010 
= 
SVG 
Invalid document transform style on SVG group with valid presentation attribute styles on group and child elements
 Invalid document transform styles on group elements should fall back to presentation attribute styles on the same element. Presentation attribute styles on the child should also be applied. The rect in the test should be rotated by 90 degrees clockwise, moved up 100 pixels and not scaled.

svgdocumentstyles011 
= 
SVG 
Invalid document transform style and invalid presentation attribute style on SVG group and valid presentation attribute style on child
 When both the document and presentation attribute styles on a group are invalid, no transform should be applied. However, the valid presentation attribute style on the child should be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled down or flipped.

svgdocumentstyles012 
= 
SVG 
Document style of rotate with three arguments on SVG element with presentation attribute style on the same element
 Document style of rotate with three arguments on SVG elements should override presentation attribute styles on the same element. The rect in the test should be rotated by 90 degrees clockwise after the transform origin is translated by 20 pixels in both the vertical and horizontal directions and not scaled.

svgdocumentstyles013 
= 
SVG 
Fall back to presentation attribute style of rotate with three arguments of SVG element with invalid document style
 Invalid document styles on SVG elements should fall back to presentation attributes styles of rotate with three arguments on the same element. The rect in the test should be rotated by 90 degrees clockwise after the transform origin is translated by 20 pixels in both the vertical and horizontal directions.

svgdocumentstyles014 
= 
SVG 
Invalid document and presentation attribute styles on an SVG element using rotate with three arguments
 When both the document and presentation attribute styles are invalid, no transform should be applied. The rect in the test should not be scaled down or rotated.

svgexternalstyles001 
= 
SVG 
External transform style on SVG element with presentation attribute style on the same element
 External styles on SVG elements should override presentation attribute styles on the same element. The rect in the test should be rotated by 90 degrees clockwise and not scaled.

svgexternalstyles002 
= 
SVG 
External transform style on SVG child element with presentation attribute styles on the parent and child elements
 External styles on SVG elements should override presentation attribute styles on the same element. Presentation attribute styles on its parent should also be applied. The rect in the test should be rotated by 90 degrees clockwise, moved up 100 pixels, and not scaled.

svgexternalstyles003 
= 
SVG 
External transform style on SVG group element and presentation attribute style on child element
 External styles on SVG group elements should be premultipled on the child elements. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels.

svgexternalstyles004 
= 
SVG 
External transform style on SVG group element and presentation attribute style on group and child elements
 External styles on SVG group elements override presentation attribute styles on the same element. Presentation attribute styles on child elements should be postmultiplied. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels and not scaled.

svgexternalstyles005 
= 
SVG 
Fall back to presentation attribute style of SVG element with invalid external transform style
 Invalid external transform styles on SVG elements should fall back to presentation attributes styles on the same element. The rect in the test should be rotated by 90 degrees clockwise.

svgexternalstyles006 
= 
SVG 
Fall back to presentation attribute styles of SVG element with invalid external transform style and presentation attribute style on group
 Invalid external transform styles on SVG elements should fall back to presentation attributes styles on the same element. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels.

svgexternalstyles007 
= 
SVG 
Invalid external transform style on SVG child element with valid presentation attribute style on group and invalid presentation attribute style on child
 When both the external and presentation attribute styles on an element are invalid, no transform should be applied. However, valid presentation attribute styles on the group should still be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled down or flipped.

svgexternalstyles008 
= 
SVG 
Invalid external and presentation attribute styles on an SVG element
 When both the external and presentation attribute styles are invalid, no transform should be applied. The rect in the test should not be scaled down or flipped.

svgexternalstyles009 
= 
SVG 
Invalid external transform style on SVG group with valid presentation attribute style on child element
 Invalid external transform styles on group elements should not be applied, but valid presentation attribute styles on the child should be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled.

svgexternalstyles010 
= 
SVG 
Invalid external transform style on SVG group with valid presentation attribute styles on group and child elements
 Invalid external transform styles on group elements should fall back to presentation attribute styles on the same element. Presentation attribute styles on the child should also be applied. The rect in the test should be rotated by 90 degrees clockwise, moved up 100 pixels and not scaled.

svgexternalstyles011 
= 
SVG 
Invalid external transform style and invalid presentation attribute style on SVG group and valid presentation attribute style on child
 When both the external and presentation attribute styles on a group are invalid, no transform should be applied. However, the valid presentation attribute style on the child should be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled down or flipped.

svgexternalstyles013 
= 
SVG 
Fall back to presentation attribute style of rotate with three arguments of SVG element with invalid external style
 Invalid external styles on SVG elements should fall back to presentation attributes styles of rotate with three arguments on the same element. The rect in the test should be rotated by 90 degrees clockwise after the transform origin is translated by 20 pixels in both the vertical and horizontal directions.

svgexternalstyles014 
= 
SVG 
Invalid external and presentation attribute styles on an SVG element
 When both the external and presentation attribute styles are invalid, no transform should be applied. The rect in the test should not be scaled down or rotated.

svggradienttransform001 
= 
SVG 
SVG gradientTransform presentation attribute and translateX with translationvalue argument without unit
 The gradientTransform attribute must support functions with unit less arguments for translationvalue. The gradient in the test should be moved 25 pixels in the X direction resulting in a solid green rect.

svggradienttransformcombination001 
= 
SVG 
SVG gradientTransform presentation attribute with translateX applied twice
 The gradientTransform attribute must support multiple transform functions the same element. The gradient in the test should be moved 100 pixels in the X direction resulting in a solid green rect.

svggradienttransformcombination003 
= 
SVG 
SVG gradientTransform presentation attribute and translationvalue argument with translateX applied in both directions
 The gradientTransform attribute must support multiple transform functions in both directions. The gradient in the test should be moved 100 pixels in the X direction resulting in a solid green rect.

svginlinestyles001 
= 
SVG 
Inline transform style on SVG element with presentation attribute style on the same element
 Inline styles on SVG elements should override presentation attribute styles on the same element. The rect in the test should be rotated by 90 degrees clockwise and not scaled.

svginlinestyles002 
= 
SVG 
Inline transform style on SVG child element with presentation attribute styles on the parent and child elements
 Inline styles on SVG elements should override presentation attribute styles on the same element. Presentation attribute styles on its parent should also be applied. The rect in the test should be rotated by 90 degrees clockwise, moved up 100 pixels, and not scaled.

svginlinestyles003 
= 
SVG 
Inline transform style on SVG group element and presentation attribute style on child element
 Inline styles on SVG group elements should be premultipled on the child elements. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels.

svginlinestyles004 
= 
SVG 
Inline transform style on SVG group element and presentation attribute style on group and child elements
 Inline styles on SVG group elements override presentation attribute styles on the same element. Presentation attribute styles on child elements should be postmultiplied. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels and not scaled.

svginlinestyles005 
= 
SVG 
Fall back to presentation attribute style of SVG element with invalid inline transform style
 Invalid inline transform styles on SVG elements should fall back to presentation attributes styles on the same element. The rect in the test should be rotated by 90 degrees clockwise.

svginlinestyles006 
= 
SVG 
Fall back to presentation attribute styles of SVG element with invalid inline transform style and presentation attribute style on group
 Invalid inline transform styles on SVG elements should fall back to presentation attributes styles on the same element. The rect in the test should be rotated by 90 degrees clockwise and moved up 100 pixels.

svginlinestyles007 
= 
SVG 
Invalid inline transform style on SVG child element with valid presentation attribute style on group and invalid presentation attribute style on child
 When both the inline and presentation attribute styles on an element are invalid, no transform should be applied. However, valid presentation attribute styles on the group should still be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled down or flipped.

svginlinestyles008 
= 
SVG 
Invalid inline and presentation attribute styles on an SVG element
 When both the inline and presentation attribute styles are invalid, no transform should be applied. The rect in the test should not be scaled down or flipped

svginlinestyles009 
= 
SVG 
Invalid inline transform style on SVG group with valid presentation attribute style on child element
 Invalid inline styles on group elements should not be applied, but valid presentation attribute styles on the child should be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled.

svginlinestyles010 
= 
SVG 
Invalid inline transform style on SVG group with valid presentation attribute styles on group and child elements
 Invalid inline transform styles on group elements should fall back to presentation attribute styles on the same element. Presentation attribute styles on the child should also be applied. The rect in the test should be rotated by 90 degrees clockwise, moved up 100 pixels and not scaled.

svginlinestyles011 
= 
SVG 
Invalid inline transform style and invalid presentation attribute style on SVG group and valid presentation attribute style on child
 When both the inline and presentation attribute styles on a group are invalid, no transform should be applied. However, the valid presentation attribute style on the child should be applied. The rect in the test should be rotated by 90 degrees clockwise and not scaled down or flipped.

svginlinestyles012 
= 
SVG 
Inline style of rotate with 3 arguments on SVG element with presentation attribute style on the same element
 Rotate with three arguments inline style on SVG elements should override presentation attribute styles on the same element. The rect in the test should be rotated by 90 degrees clockwise after the transform origin is translated by 20 pixels in both the vertical and horizontal directions and not scaled.

svginlinestyles013 
= 
SVG 
Fall back to presentation attribute style of rotate with three arguments of SVG element with invalid inline style
 Invalid inline styles on SVG elements should fall back to presentation attributes style of rotate with three arguments on the same element. The rect in the test should be rotated by 90 degrees clockwise after the transform origin is translated by 20 pixels in both the vertical and horizontal directions.

svginlinestyles014 
= 
SVG 
Invalid inline and presentation attribute styles on an SVG element using rotate with three arguments
 When both the inline and presentation attribute styles are invalid, no transform should be applied. The rect in the test should not be scaled down or rotated

svgmatrix001 
= 
SVG 
SVG presentation attribute and matrix scaling up horizontally only: 2 0 0 1 0 0
 The rect in the test should be scaled up horizontally.

svgmatrix002 
= 
SVG 
SVG presentation attribute and matrix scaling down horizontally only: 0.5 0 0 1 0 0
 The rect in the test should be scaled down horizontally.

svgmatrix003 
= 
SVG 
SVG presentation attribute and matrix scaling up vertically only: 1 0 0 2 0 0
 The rect in the test should be scaled up vertically.

svgmatrix004 
= 
SVG 
SVG presentation attribute and matrix scaling down vertically only: 1 0 0 0.5 0 0
 The rect in the test should be scaled down vertically.

svgmatrix005 
= 
SVG 
SVG presentation attribute and matrix flipping left and scaling up horizontally: 2 0 0 1 100 0
 The rect in the test should be flipped left and scaled up horizontally.

svgmatrix006 
= 
SVG 
SVG presentation attribute and matrix flipping left and scaling down horizontally: 0.5 0 0 1 100 0
 The rect in the test should be flipped left and scaled up horizontally.

svgmatrix007 
= 
SVG 
SVG presentation attribute and matrix flipping up and scaling up vertically: 1 0 0 2 0 100
 The rect in the test should be flipped up and scaled up vertically.

svgmatrix008 
= 
SVG 
SVG presentation attribute and matrix flipping up and scaling down vertically: 1 0 0 0.5 0 100
 The rect in the test should be flipped up and scaled down vertically.

svgmatrix009 
= 
SVG 
SVG presentation attribute and matrix scaling up horizontally and vertically with scientific numbers: 0.2e1 0 0 0.2e1 0 0
 The matrix function must support scientific numbers. The rect in the test should be scaled up horizontally and vertically.

svgmatrix010 
= 
SVG 
SVG presentation attribute and matrix flipping up and left and scaling up horizontally and vertically with scientific numbers: 0.2e1 0 0 0.2e1 100 100
 The matrix function must support scientific numbers. The rect in the test should be flipped up and left and scaled up horizontally and vertically.

svgmatrix011 
= 
SVG 
SVG presentation attribute and matrix scaling down horizontally and vertically in scientific numbers with negative exponents: 5e1 0 0 5e1 0 0
 The matrix function must support scientific numbers with negative exponents. The rect in the test should be scaled down horizontally and vertically.

svgmatrix012 
= 
SVG 
SVG presentation attribute and matrix flipping up and left and scaling down horizontally and vertically with scientific numbers with negative exponents: 5e1 0 0 5e1 100 100
 The matrix function must support scientific numbers with negative exponents. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix013 
= 
SVG 
SVG presentation attribute and matrix scaling up horizontally and down vertically: 2 0 0 0.5 0 0
 The rect in the test should be scaled up horizontally and down vertically.

svgmatrix014 
= 
SVG 
SVG presentation attribute and matrix scaling down horizontally and up vertically: 0.5 0 0 2 0 0
 The rect in the test should be scaled down horizontally and up vertically.

svgmatrix015 
= 
SVG 
SVG presentation attribute and matrix flipping up and left and scaling up horizontally and down vertically: 2 0 0 0.5 100 100
 The rect in the test should be flipped up and left and scaled up horizontally and down vertically.

svgmatrix016 
= 
SVG 
SVG presentation attribute and matrix flipping up and left and scaling down horizontally and up vertically: 0.5 0 0 2 100 100
 The rect in the test should be flipped up and left and scaled down horizontally and up vertically.

svgmatrix017 
= 
SVG 
SVG presentation attribute and matrix flipping up and scaling up horizontally and vertically: 2 0 0 2 0 100
 The rect in the test should be flipped up scaled up horizontally and vertically.

svgmatrix018 
= 
SVG 
SVG presentation attribute and matrix flipping up and scaling down horizontally and vertically: 0.5 0 0 0.5 0 100
 The rect in the test should be flipped up scaled down horizontally and vertically.

svgmatrix019 
= 
SVG 
SVG presentation attribute and matrix flipping left and scaling down horizontally and vertically: 0.5 0 0 0.5 100 0
 The rect in the test should be flipped left and scaled down horizontally and vertically.

svgmatrix020 
= 
SVG 
SVG presentation attribute and matrix and flipping up and scaling up horizontally and down vertically: 2 0 0 0.5 0 100
 The rect in the test should be flipped up and scaled up horizontally and down vertically.

svgmatrix021 
= 
SVG 
SVG presentation attribute and matrix and flipping left and scaling up horizontally and down vertically: 2 0 0 0.5 100 0
 The rect in the test should be flipped left and scaled up horizontally and down vertically.

svgmatrix022 
= 
SVG 
SVG presentation attribute and matrix and flipping up and scaling down horizontally and up vertically: 0.5 0 0 2 0 100
 The rect in the test should be flipped up and scaled down horizontally and up vertically.

svgmatrix023 
= 
SVG 
SVG presentation attribute and matrix and flipping left and scaling down horizontally and up vertically: 0.5 0 0 2 100 0
 The rect in the test should be flipped left and scaled down horizontally and up vertically.

svgmatrix024 
= 
SVG 
SVG presentation attribute and matrix and flipping left and scaling up horizontally and vertically: 2 0 0 2 100 0
 The rect in the test should be flipped left and scaled up horizontally and vertically.

svgmatrix025 
= 
SVG 
SVG presentation attribute and matrix and flipping left: 1 0 0 1 100 0
 The rect in the test should be flipped left.

svgmatrix026 
= 
SVG 
SVG presentation attribute and matrix and flipping up: 1 0 0 0 1 0 100
 The rect in the test should be flipped up.

svgmatrix027 
= 
SVG 
SVG presentation attribute and matrix and flipping left and up: 1 0 0 0 1 100 100
 The rect in the test should be flipped left and up.

svgmatrix028 
= 
SVG 
SVG presentation attribute and matrix and flipping up and scaling up horizontally: 2 0 0 1 0 100
 The rect in the test should be flipped up and scaled up horizontally.

svgmatrix029 
= 
SVG 
SVG presentation attribute and matrix and flipping up and left and scaling up horizontally with scientific numbers: 2 0 0 1 10e1 10e1
 The matrix function must support scientific numbers. The rect in the test should be flipped up and left and scaled up horizontally.

svgmatrix030 
= 
SVG 
SVG presentation attribute and matrix and flipping up and scaling down horizontally: 0.5 0 0 1 0 100
 The rect in the test should be flipped up and scaled down horizontally.

svgmatrix031 
= 
SVG 
SVG presentation attribute and matrix and flipping up and left and scaling down horizontally: 0.5 0 0 1 100 100
 The rect in the test should be flipped up and left and scaled down horizontally.

svgmatrix032 
= 
SVG 
SVG presentation attribute and matrix and flipping left and scaling up vertically: 1 0 0 2 100 0
 The rect in the test should be flipped left scaled up vertically.

svgmatrix033 
= 
SVG 
SVG presentation attribute and matrix and flipping up and left and scaling up vertically with scientific numbers with negative exponents: 1 0 0 2 1000e1 1000e1
 The matrix function must support scientific numbers with negative exponents. The rect in the test should be flipped up and left scaled up vertically.

svgmatrix034 
= 
SVG 
SVG presentation attribute and matrix and flipping left and scaling down vertically: 1 0 0 0.5 100 0
 The rect in the test should be flipped left scaled down vertically.

svgmatrix035 
= 
SVG 
SVG presentation attribute and matrix and flipping left and up and scaling down vertically: 1 0 0 0.5 100 100
 The rect in the test should be flipped left and up scaled down vertically.

svgmatrix036 
= 
SVG 
SVG presentation attribute and matrix and skewing right: 1 0 1 1 0 0
 The rect in the test should skewed right horizontally.

svgmatrix037 
= 
SVG 
SVG presentation attribute and matrix and skewing down: 1 1 0 1 100 0
 The rect in the test should skewed down horizontally.

svgmatrix038 
= 
SVG 
SVG presentation attribute and matrix and skewing left: 1 0 1 100 50
 The rect in the test should be skewed left horinzontally.

svgmatrix039 
= 
SVG 
SVG presentation attribute and matrix and skewing up: 1 1 0 1 50 100
 The rect in the test should be skewed up vertically.

svgmatrix040 
= 
SVG 
SVG presentation attribute and matrix and skewing up and left with scientific numbers: 1 0.05e1 0.05e1 1 100 50
 The matrix function must support scientific numbers. The rect in the test should be skewed up vertically and left horizontally.

svgmatrix041 
= 
SVG 
SVG presentation attribute and matrix and skewing down and right with scientific numbers: 1 0.05e1 0.05e1 1 50 0
 The matrix function must support scientific numbers. The rect in the test should be skewed down vertically and right horizontally.

svgmatrix042 
= 
SVG 
SVG presentation attribute and matrix and skewing down and left: 1 0.5 0.5 1 50 50
 The rect in the test should be skewed down vertically and left horizontally.

svgmatrix043 
= 
SVG 
SVG presentation attribute and matrix and skewing up and right: 1 0.5 0.5 1 100 0
 The rect in the test should be skewed up vertically and right horizontally.

svgmatrix044 
= 
SVG 
SVG presentation attribute and matrix and scaling up and skewing down and right: 2 0.5 0.5 2 50 0
 The rect in the test should be scaled up vertically and horizontally and skewed down vertically and right horizontally.

svgmatrix045 
= 
SVG 
SVG presentation attribute and matrix and scaling down and skewing up and left: 0.75 0.5 0.5 0.75 190 150
 The rect in the test should be scaled down vertically and horizontally and skewed up vertically and left horizontally.

svgmatrix046 
= 
SVG 
SVG presentation attribute and matrix and flipping left, scaling up, and skewing down and right with scientific numbers with negative exponents: 2 5e1 5e1 2 250 0
 The matrix function must support scientific numbers with negative exponents. The rect in the test should be flipped left, scaled up, and skewed down vertically and right horizontally.

svgmatrix047 
= 
SVG 
SVG presentation attribute and matrix and flipping up, scaling down, and skewing up and left with scientific numbers with negative exponents: 0.5 5e1 0 5e1 250 100
 The matrix function must support scientific numbers with negative exponents. The rect in the test should be flipped down, scaled down, and skewed up vertically and left horizontally.

svgmatrix048 
= 
SVG 
SVG presentation attribute and matrix and flipping up and left, scaling up horizontally and down vertically, and skewing right and down: 2 0.25 0.25 0.5 200 200
 The rect in the test should be flipped up and left, scaled up horizontally and down vertically, and skewed right and down.

svgmatrix049 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by commas and no spaces
 The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix050 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by commas with spaces before the comma
 The matrix function must support arguments separated by commas with spaces before the commas. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix051 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by commas with spaces after the comma
 The matrix function must support arguments separated by commas with spaces after the commas. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix052 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by commas with spaces before and after the comma
 The matrix function must support arguments separated by commas with spaces before and after the commas. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix053 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by commas with multiple spaces before the comma
 The matrix function must support arguments separated by commas with multiple spaces before the commas. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix054 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by commas with multiple spaces after the comma
 The matrix function must support arguments separated by commas with multiple spaces after the commas. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix055 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by commas with multiple spaces before and after the comma
 The matrix function must support arguments separated by commas with multiple spaces before and after the commas. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix056 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by multiple spaces
 The matrix function must support arguments separated by multiple spaces. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix057 
= 
SVG 
SVG presentation attribute and matrix function arguments separated by a mix of spaces and commas
 The matrix function must support arguments separated by a mix of spaces and commas. The rect in the test should be flipped up and left and scaled down horizontally and vertically.

svgmatrix058 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'a' value
 The matrix function does not support percentage values. If one argument is invalid, no transform should take place so the rect in this test should remain the same.

svgmatrix059 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'b' value
 The matrix function does not support degree units. If one argument is invalid, no transform should take place so the rect in this test should remain the same.

svgmatrix060 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'c' value
 The matrix function does not support gradian units. If one argument is invalid, no transform should take place so the rect in this test should remain the same.

svgmatrix061 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'd' value
 The matrix function does not support percentage units. If one argument is invalid, no transform should take place so the rect in this test should remain the same.

svgmatrix062 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'e' value
 The matrix function does not support px units. If one argument is invalid, no transform should take place so the rect in this test should remain the same.

svgmatrix063 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'f' value
 The matrix function does not support pt units. If one argument is invalid, no transform should take place so the rect in this test should remain the same.

svgmatrix064 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'a' value with another transform function
 The matrix function does not support percentage values. If one argument is invalid in one function, none of the transforms in the function list should happen. The rect in this test should remain the same.

svgmatrix065 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'b' value with another transform function
 The matrix function does not support radian units. If one argument is invalid in one function, none of the transforms in the function list should happen. The rect in this test should remain the same.

svgmatrix066 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'c' value with another transform function
 The matrix function does not support turn units. If one argument is invalid in one function, none of the transforms in the function list should happen. The rect in this test should remain the same.

svgmatrix067 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'd' value with another transform function
 The matrix function does not support percentage units. If one argument is invalid in one function, none of the transforms in the function list should happen. The rect in this test should remain the same.

svgmatrix068 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'e' value with another transform function
 The matrix function does not support pc units. If one argument is invalid in one function, none of the transforms in the function list should happen. The rect in this test should remain the same.

svgmatrix069 
= 
SVG 
SVG presentation attribute and matrix function with invalid 'f' value with another transform function
 The matrix function does not support mm units. If one argument is invalid in one function, none of the transforms in the function list should happen. The rect in this test should remain the same.

svgoriginrelativelength001 
= 
SVG 
SVG presentation attribute transformorigin, first value absolute value and missing second argument
 If only one value is specified, the second value is assumed to be 'center'. The rect should be rotated around its center point at 75,75

svgoriginrelativelength002 
= 
SVG 
SVG presentation attribute transformorigin, first value 'center' value and missing second argument
 If only one value is specified, the second value is assumed to be 'center'. The rect should be rotated around its center point at 75,75

svgoriginrelativelength003 
= 
SVG 
SVG presentation attribute transformorigin, first value '50%' value and missing second argument
 If only one value is specified, the second value is assumed to be 'center'. The rect should be rotated around its center point at 75,75

svgoriginrelativelength004 
= 
SVG 
SVG presentation attribute transformorigin, '50% 50%'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength005 
= 
SVG 
SVG presentation attribute transformorigin, '50% center'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength006 
= 
SVG 
SVG presentation attribute transformorigin, 'center 50%'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength007 
= 
SVG 
SVG presentation attribute transformorigin, 'center center'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength008 
= 
SVG 
SVG presentation attribute transformorigin, '75 center'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength009 
= 
SVG 
SVG presentation attribute transformorigin, '75 50%'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength010 
= 
SVG 
SVG presentation attribute transformorigin, 'center 75'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength011 
= 
SVG 
SVG presentation attribute transformorigin, '50% 75'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength012 
= 
SVG 
SVG presentation attribute transformorigin, '0'
 The initial point of origin gets translated to 0,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength013 
= 
SVG 
SVG presentation attribute transformorigin, '150'
 The initial point of origin gets translated to 150,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength014 
= 
SVG 
SVG presentation attribute transformorigin, '100%'
 The initial point of origin gets translated to 150,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength015 
= 
SVG 
SVG presentation attribute transformorigin, 'right'
 The initial point of origin gets translated to 150,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength016 
= 
SVG 
SVG presentation attribute transformorigin, 'left'
 The initial point of origin gets translated to 75,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength017 
= 
SVG 
SVG presentation attribute transformorigin, '25%'
 If the second argument is missing, it is assumed to be center. The initial point of origin gets translated to 37.5,75.

svgoriginrelativelength018 
= 
SVG 
SVG presentation attribute transformorigin, 'top'
 The initial point of origin gets translated to 75,0. A single argument 'top' gets interpreted as 'center top'.

svgoriginrelativelength019 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom'
 The initial point of origin gets translated to 75,150. A single argument 'bottom' gets interpreted as 'center bottom'.

svgoriginrelativelength020 
= 
SVG 
SVG presentation attribute transformorigin, '0% 0%'
 The initial point of origin gets translated to 75,75 since '0% 0%' is relative to the bounding box of the object.

svgoriginrelativelength021 
= 
SVG 
SVG presentation attribute transformorigin, 'top right'
 The initial point of origin gets translated to 225,75 since 'top right' is relative to the bounding box of the object.

svgoriginrelativelength022 
= 
SVG 
SVG presentation attribute transformorigin, 'top left'
 The initial point of origin gets translated to 75,75 since 'top left' is relative to the bounding box of the object.

svgoriginrelativelength023 
= 
SVG 
SVG presentation attribute transformorigin, 'top center'
 The initial point of origin gets translated to 150,75 since 'top center' is relative to the bounding box of the object.

svgoriginrelativelength024 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom left'
 The initial point of origin gets translated to 75,225 since 'bottom left' is relative to the bounding box of the object.

svgoriginrelativelength025 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom center'
 The initial point of origin gets translated to 150,225 since 'bottom center' is relative to the bounding box of the object.

svgoriginrelativelength026 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom right'
 The initial point of origin gets translated to 225,225 since 'bottom right' is relative to the bounding box of the object.

svgoriginrelativelength027 
= 
SVG 
SVG presentation attribute transformorigin, 'right top'
 The initial point of origin gets translated to 225,75 since 'right top' is relative to the bounding box of the object.

svgoriginrelativelength028 
= 
SVG 
SVG presentation attribute transformorigin, 'right center'
 The initial point of origin gets translated to 225,150 since 'right center' is relative to the bounding box of the object.

svgoriginrelativelength029 
= 
SVG 
SVG presentation attribute transformorigin, 'right bottom'
 The initial point of origin gets translated to 225,225 since 'right bottom' is relative to the bounding box of the object.

svgoriginrelativelength030 
= 
SVG 
SVG presentation attribute transformorigin, 'right 75'
 The initial point of origin gets translated to 225,75 since 'right 75' is relative to the bounding box of the object.

svgoriginrelativelength031 
= 
SVG 
SVG presentation attribute transformorigin, 'right 0%'
 The initial point of origin gets translated to 225,75 since 'right 0%' is relative to the bounding box of the object.

svgoriginrelativelength032 
= 
SVG 
SVG presentation attribute transformorigin, 'right 100%'
 The initial point of origin gets translated to 225,225 since 'right 100%' is relative to the bounding box of the object.

svgoriginrelativelength033 
= 
SVG 
SVG presentation attribute transformorigin, 'left top'
 The initial point of origin gets translated to 75,75 since 'left top' is relative to the bounding box of the object.

svgoriginrelativelength034 
= 
SVG 
SVG presentation attribute transformorigin, 'left center'
 The initial point of origin gets translated to 75,150 since 'left center' is relative to the bounding box of the object.

svgoriginrelativelength035 
= 
SVG 
SVG presentation attribute transformorigin, 'left bottom'
 The initial point of origin gets translated to 75,225 since 'left bottom' is relative to the bounding box of the object.

svgoriginrelativelength036 
= 
SVG 
SVG presentation attribute transformorigin, 'left 75'
 The initial point of origin gets translated to 75,75 since 'left 75' is relative to the bounding box of the object.

svgoriginrelativelength037 
= 
SVG 
SVG presentation attribute transformorigin, 'left 0%'
 The initial point of origin gets translated to 75,75 since 'left 0%' is relative to the bounding box of the object.

svgoriginrelativelength038 
= 
SVG 
SVG presentation attribute transformorigin, 'left 100%'
 The initial point of origin gets translated to 75,225 since 'left 100%' is relative to the bounding box of the object.

svgoriginrelativelength039 
= 
SVG 
SVG presentation attribute transformorigin, 'center top'
 The initial point of origin gets translated to 150,75 since 'center top' is relative to the bounding box of the object.

svgoriginrelativelength040 
= 
SVG 
SVG presentation attribute transformorigin, 'center bottom'
 The initial point of origin gets translated to 150,225 since 'center bottom' is relative to the bounding box of the object.

svgoriginrelativelength041 
= 
SVG 
SVG presentation attribute transformorigin, 'center left'
 The initial point of origin gets translated to 75,150 since 'center left' is relative to the bounding box of the object.

svgoriginrelativelength042 
= 
SVG 
SVG presentation attribute transformorigin, 'center right'
 The initial point of origin gets translated to 225,150 since 'center right' is relative to the bounding box of the object.

svgoriginrelativelength043 
= 
SVG 
SVG presentation attribute transformorigin, 'center 100%'
 The initial point of origin gets translated to 150,225 since 'center 100%' is relative to the bounding box of the object.

svgoriginrelativelength044 
= 
SVG 
SVG presentation attribute transformorigin, '0 center'
 The initial point of origin gets translated to 0,150 since '0 center' is relative to the bounding box of the object.

svgoriginrelativelength045 
= 
SVG 
SVG presentation attribute transformorigin, 'center 0%'
 The initial point of origin gets translated to 150,75 since 'center 0%' is relative to the bounding box of the object.

svgoriginrelativelength046 
= 
SVG 
SVG presentation attribute transformorigin, 'center 0'
 The initial point of origin gets translated to 150,0 since 'center 0' is relative to the bounding box of the object.

svgoriginrelativelengthinvalid001 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top 100%'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid002 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom 100%'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid003 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top 150'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid004 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom 150'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid005 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top top'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid006 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom bottom'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid007 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top bottom'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid008 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom top'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid009 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'left left'
 Spec does not allow two horizontal values. Fallback to 0,0

svgoriginrelativelengthinvalid010 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'left right'
 Spec does not allow two horizontal values. Fallback to 0,0

svgoriginrelativelengthinvalid011 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'right right'
 Spec does not allow two horizontal values. Fallback to 0,0

svgoriginrelativelengthinvalid012 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'right left'
 Spec does not allow two horizontal values. Fallback to 0,0

svgpatterntransform001 
= 
SVG 
SVG patternTransform presentation attribute and translateX with translationvalue argument without unit
 The patternTransform attribute must support functions with unit less arguments for translationvalue. The pattern in the test should be moved 25 pixels in the X direction resulting in a solid green rect.

svgpatterntransformcombination001 
= 
SVG 
SVG patternTransform presentation attribute and translationvalue argument with translateX applied twice
 The patternTransform attribute must support multiple transform functions the same element. The pattern in the test should be moved 50 pixels in the X direction resulting in a solid green rect.

svgrotate3args002 
= 
SVG 
SVG rotate with three arguments without units on rotate or translate values
 The rotate transform function must support three arguments without units on angle arguments or translationvalue arguments. The green rect in this test should be rotated 90 degrees clockwise after the transform origin is translated by 20 pixels in the vertical and horizontal direction to completely cover the red rect.

svgrotate3argsinvalid001 
= 
SVG 
SVG rotate with three arguments with one absolute translationvalue argument
 The rotate transform function takes two optional translation values. If one of the translation values is not provided, then both translationvalue parameters fall back to zero. The green rect in this test should be rotated by 90 degrees clockwise but the transform origin should not be translated. The green rect should completely cover the red rect.

svgrotate3argsinvalid002 
= 
SVG 
SVG rotate with three arguments with no translationvalue arguments and a comma
 The rotate transform function takes two optional translation values. If no translation values are provided, and there is a comma after the rotate argument, then the entire argument list is invalid and therefore no transform is applied. The green rect in this test should not be rotated and the transform origin should not be translated. The green rect should completely cover the red rect.

svgrotate3argsinvalid003 
= 
SVG 
SVG rotate with three arguments, with a third absolute translationvalue argument
 The rotate transform function takes two optional translation values. If a third absolute translationvalue argument is provided, then all translationvalue parameters fall back to zero. The green rect in this test should be rotated by 90 degrees clockwise, but the transform origin should not be translated. The green rect should completely cover the red rect.

svgrotate3argsinvalid004 
= 
SVG 
SVG rotate with three arguments with one relative translationvalue argument
 The rotate transform function takes two optional translation values. If one of the translation values is not provided, then both translationvalue parameters fall back to zero. The green rect in this test should be rotated by 90 degrees clockwise but the transform origin should not be translated. The green rect should completely cover the red rect.

svgrotate3argsinvalid005 
= 
SVG 
SVG rotate with three arguments, with a third relative translationvalue argument
 The rotate transform function takes two optional translation values. If a third relative translationvalue argument is provided, then all translationvalue parameters fall back to zero. The green rect in this test should be rotated by 90 degrees clockwise, but the transform origin should not be translated. The green rect should completely cover the red rect.

svgrotateangle45001 
= 
SVG 
SVG presentation attribute and angle argument without unit on rotate
 The rotate transform function must support unit less arguments for angle. The green rect in the test should be rotated by 45 degrees clockwise to completely cover the red path.

svgrotateangle45011 
= 
SVG 
SVG presentation attribute and more than full circle rotate with unit less angle
 The rotate transform function must support 'modulo whole circle' for unit less angle arguments. The green rect in this test should be rotated by 45 degrees clockwise to completely cover the red path.

svgrotateangle45022 
= 
SVG 
SVG presentation attribute and rotate with scientific numbers with negative exponents for arguments in degree
 The rotate transform function must support scientific numbers with negative exponents for angle arguments in degree. The green rect in this test should be rotated by 45 degrees clockwise to completely cover the red path.

svgrotateangle90001 
= 
SVG 
SVG presentation attribute and angle argument without unit on rotate
 The rotate transform function must support unit less arguments for angle. The rect in this test should be rotated by 90 degrees clockwise to completely cover the red rect.

svgrotateangle90006 
= 
SVG 
SVG presentation attribute and rotate with negative, unit less turn
 The rotate transform function must support negative unit less angle arguments. The rect in this test should be rotated by 90 degrees clockwise to completely cover the red rect.

svgrotateangle90011 
= 
SVG 
SVG presentation attribute and more than full circle rotate with unit less angle
 The rotate transform function must support 'modulo whole circle' for unit less angle arguments. The rect in this test should be rotated by 90 degrees clockwise to completely cover the red rect.

svgrotateangle90016 
= 
SVG 
SVG presentation attribute and rotate with scientific numbers on unit less angles
 The rotate transform function must support scientific numbers for unit less angle arguments. The rect in this test should be rotated by 90 degrees clockwise to completely cover the red rect.

svgrotateangle90021 
= 
SVG 
SVG presentation attribute and rotate with scientific numbers with negative exponents for unit less arguments
 The rotate transform function must support scientific numbers with negative exponents for unit less angle arguments. The rect in this test should be rotated by 90 degrees clockwise to completely cover the red rect.

svgscale001 
= 
SVG 
SVG presentation attribute and scale 0.5 with only one parameter specified
 If the second parameter of the scale function is not provided, it is takes a value equal to the first. The red rect in this test should be scaled down 0.5 vertically and horizontally to be completely hidden by the green rect.

svgscale002 
= 
SVG 
SVG presentation attribute and scale 1.5 with only one parameter specified
 If the second parameter is not provided, it is takes a value equal to the first. The green rect in this test should be scaled up 1.5 vertically and horizontally to completely cover the red rect.

svgscale003 
= 
SVG 
SVG presentation attribute and scale 2 with only one parameter specified
 If the second parameter is not provided, it is takes a value equal to the first. The green rect in this test should be scaled up 2 vertically and horizontally to completely cover the red rect.

svgscale004 
= 
SVG 
SVG presentation attribute and scale 0.5 with parameters separated by commas + no whitespace
 Parameters in the scale function can be separated by commas and no whitespace. The red rect in this test should be scaled down 0.5 to completely cover the green rect.

svgscale006 
= 
SVG 
SVG presentation attribute and scale horizontally 0.5 and vertically 1.5
 The green rect in the test should be scaled down horizontally and up vertically to form a square and completely cover the red rect.

svgscale007 
= 
SVG 
SVG presentation attribute and scale horizontally 1.5 and vertically 0.5
 The green rect in the test should be scaled up horizontally and down vertically to form a square completely cover the red rect.

svgscale008 
= 
SVG 
SVG presentation attribute and scale 0.5 on the g element
 The group containing the red rect in this test should be scaled down 0.5 to be completely hidden behind the green rect.

svgscale009 
= 
SVG 
SVG presentation attribute and scale 0.5 on the g element and scale 0.5 on the rect element
 The group containing the red rect in this test should be scaled down 0.5 and the red rect should be scaled down again 0.5 to be completely hidden behind the green rect.

svgscale010 
= 
SVG 
SVG presentation attribute and scale 0.5 with only one parameter specified
 Scaling by a negative value should flip the element and if the second parameter of the scale function is not provided, it is takes a value equal to the first. The green rect in this test should be flipped downward and rightward into view and scaled down 0.5 horizontally and vertically to completely cover the red background.

svgscale011 
= 
SVG 
SVG presentation attribute and scale 2 with only one parameter specified
 Scaling by a negative value should flip the element and if the second parameter of the scale function is not provided, it is takes a value equal to the first. The green rect in this test flipped rightward and downard into view and scaled up 2 to completely cover the red background.

svgscale012 
= 
SVG 
SVG presentation attribute and scale 0.5 with parameters separated by commas + no whitespace
 Scaling by a negative value should flip the element and parameters to the scale function can be separated by commas with no whitespace. The green rect in this test should be flipped downward and rightward into view right scaled down 0.5 to to completely cover the red background.

svgscale013 
= 
SVG 
SVG presentation attribute and scale horizontally 0.5 and vertically 1.5
 Scaling by a negative value should flip the element. The green rect in this test should be flipped downward and rightward into view and scaled down horizontally and up vertically to completely cover the red background.

svgscale014 
= 
SVG 
SVG presentation attribute and scale horizontally 1.5 and vertically 0.5
 Scaling by a negative value should flip the element. The green rect in this test should be flipped downward and rightward into view and scaled up horizontally and down vertically to completely cover the red background.

svgscale015 
= 
SVG 
SVG presentation attribute and scale horizontally 0.5 and vertically 1.5
 Scaling by a negative value should flip the element. The green rect in this test should be flipped rightward into view and scaled down horizontally and up vertically to completely cover the red background.

svgscale016 
= 
SVG 
SVG presentation attribute and scale horizontally 1.5 and vertically 0.5
 Scaling by a negative value should flip the element. The green rect in this test should be flipped downward into view and scaled up horizontally and down vertically to completely cover the red background.

svgscale017 
= 
SVG 
SVG presentation attribute and scale 0.5 on the g element
 Scaling by a negative value should flip the element. The group containing the green rect in this test should be flipped downard and rightward into view and scaled down horizontally and vertically to completely cover the red background.

svgskewx001 
= 
SVG 
SVG presentation attribute and angle argument without unit on skewX
 The skewX transform function must support unit less arguments for angle. The green rect in this test should be skewed horizontally 45 degrees to completely cover the red path.

svgskewx006 
= 
SVG 
SVG presentation attribute and skewX with negative, unit less turn
 The skewX transform function must support negative, unit less angle arguments. The green rect in this test should be skewed horizontally 45 degrees to completely cover the red path.

svgskewx011 
= 
SVG 
SVG presentation attribute and more than full circle skewX with unit less angle
 The skewX transform function must support 'modulo whole circle' for unit less angle arguments. The green rect in this test should be skewed horizontally 45 degrees to completely cover the red path.

svgskewx016 
= 
SVG 
SVG presentation attribute and skewX with scientific numbers on unit less angles
 The skewX transform function must support scientific numbers for unit less angle arguments. The green rect in this test should be skewed horizontally 45 degrees to completely cover the red path.

svgskewx021 
= 
SVG 
SVG presentation attribute and skewX with scientific numbers with negative exponents for unit less arguments
 The skewX transform function must support scientific numbers with negative exponents for unit less angle arguments. The green rect in this test should be skewed horizontally 45 degrees to completely cover the red path.

svgskewxy001 
= 
SVG 
SVG presentation attribute with skewX and skewY
 The green rect in this test should be skewed horizontally 45 degrees and vertically 45 degrees to completely cover the red path.

svgskewy001 
= 
SVG 
SVG presentation attribute and angle argument without unit on skewY
 The skewY transform function must support unit less arguments for angle. The green rect in this test should be skewed vertically 45 degrees to completely cover the red path.

svgskewy006 
= 
SVG 
SVG presentation attribute and skewY with negative, unit less turn
 The skewY transform function must support negative, unit less angle arguments. The green rect in this test should be skewed vertically 45 degrees to completely cover the red path.

svgskewy011 
= 
SVG 
SVG presentation attribute and more than full circle skewY with unit less angle
 The skewY transform function must support 'modulo whole circle' for unit less angle arguments. The green rect in this test should be skewed vertically 45 degrees to completely cover the red path.

svgskewy016 
= 
SVG 
SVG presentation attribute and skewY with scientific numbers on unit less angles
 The skewY transform function must support scientific numbers for unit less angle arguments. The green rect in this test should be skewed vertically 45 degrees to completely cover the red path.

svgskewy021 
= 
SVG 
SVG presentation attribute and skewY with scientific numbers with negative exponents for unit less arguments
 The skewY transform function must support scientific numbers with negative exponents for unit less angle arguments. The green rect in this test should be skewed vertically 45 degrees to completely cover the red path.

svgtransformgroup001 
= 
SVG 
SVG presentation attribute and translate on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be translated, therefore the child element should be translated to completely cover the red rect.

svgtransformgroup002 
= 
SVG 
SVG presentation attribute and translateX on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be translated horizontally, therefore the child element should be translated horizontally to completely cover the red rect.

svgtransformgroup003 
= 
SVG 
SVG presentation attribute and translateY on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be translated vertically, therefore the child element should be translated vertically to completely cover the red rect.

svgtransformgroup004 
= 
SVG 
SVG presentation attribute and scale on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be scaled, therefore the child element should be scaled to completely cover the red rect.

svgtransformgroup005 
= 
SVG 
SVG presentation attribute and scaleX on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be scaled horizontally, therefore the child element should be scaled horizontally to completely cover the red rect.

svgtransformgroup006 
= 
SVG 
SVG presentation attribute and scaleY on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be scaled vertically, therefore the child element should be scaled vertically to completely cover the red rect.

svgtransformgroup007 
= 
SVG 
SVG presentation attribute and rotate on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be rotated, therefore the child element should be rotated. The green rect in this test should be rotated by 90 degrees clockwise to completely cover the red rect.

svgtransformgroup008 
= 
SVG 
SVG presentation attribute and skewX on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be skewed horizontally, therefore the child element should be skewed horizontally to completely cover the red rect.

svgtransformgroup009 
= 
SVG 
SVG presentation attribute and skewY on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be skewed vertically, therefore the child element should be skewed vertically to completely cover the red rect.

svgtransformgroup010 
= 
SVG 
SVG presentation attribute and matrix on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should have the transform matrix applied, therefore the child element should be scaled and translated to completely cover the red rect.

svgtransformgroup011 
= 
SVG 
SVG presentation attribute and rotate with three arguments on group
 Transforms on a parent element should be premultiplied to a child element. The group of elements should be rotated and translated, therefore the child element should be rotated and translated. The green rect in this test should be rotated by 90 degrees clockwise after the transform origin is translated by 20 pixels in both the vertical and horizontal directions to completely cover the red rect.

svgtransformlistseparations001 
= 
SVG 
No separations between transform functions on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with no separation between the 3 transform functions in the list

svgtransformlistseparations002 
= 
SVG 
Comma + no whitespace separations between transform functions on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 3 transform functions in the list delimited by commas with no whitespace.

svgtransformlistseparations003 
= 
SVG 
Comma + whitespace separations between transform functions on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 3 transform functions in the list delimited by commas with whitespace.

svgtransformlistseparations004 
= 
SVG 
Whitespace separations between transform functions on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 3 transform functions in the list delimited by whitespace.

svgtransformlistseparations005 
= 
SVG 
Comma, whitespace, and no separations between transform functions on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 4 transform functions in the list delimited by a comma, whitespace, and nothing.

svgtransformlistseparations006 
= 
SVG 
Multiple spaces between transform functions on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 4 transform functions in the list with multiple spaces between them

svgtransformlistseparations007 
= 
SVG 
Multiple spaces before and after transform functions on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with multiple spaces before and after the transform function list

svgtransformlistseparations008 
= 
SVG 
Transform functions separated by commas separations with multiple spaces before the commas on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 3 transform functions in the list delimited by commas with whitespace before the commas.

svgtransformlistseparations009 
= 
SVG 
Transform functions separated by commas separations with spaces before and after the commas on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 3 transform functions in the list delimited by commas with whitespace before the commas.

svgtransformlistseparations010 
= 
SVG 
Transform functions separated by newlines on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 3 transform functions in the list delimited by newlines

svgtransformlistseparations011 
= 
SVG 
Transform functions separated by commas and newlines on SVG presentation attribute
 The rect in the test should have an x offset of 100, a y offset of 100, and should be rotated 90 degrees clockwise with 3 transform functions in the list delimited by commas and newlines

svgtransformnested001 
= 
SVG 
SVG presentation attribute and translate on group, translate on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be translated. Additionally, the child rect should be translated.

svgtransformnested002 
= 
SVG 
SVG presentation attribute, translateX on group, translateX on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be translated horizontally. Additionally, the child rect should be translated horizontally.

svgtransformnested003 
= 
SVG 
SVG presentation attribute, translateY on group, translateY on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be translated vertically. Additionally, the child rect should be translated vertically.

svgtransformnested004 
= 
SVG 
SVG presentation attribute, scale on group, scale on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled. Additionally, the child rect should be scaled.

svgtransformnested005 
= 
SVG 
SVG presentation attribute, scaleX on group, scaleX on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled horizontally. Additionally, the child rect should be scaled horizontally.

svgtransformnested006 
= 
SVG 
SVG presentation attribute, scaleY on group, scaleY on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled vertically. Additionally, the child rect should be scaled vertically.

svgtransformnested007 
= 
SVG 
SVG presentation attribute, rotate on group, rotate on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be rotated. Additionally, the child rect should be rotated.

svgtransformnested008 
= 
SVG 
SVG presentation attribute, skewX on group, skewX on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be skewed horizontally. Additionally, the child rect should be skewed horizontally.

svgtransformnested009 
= 
SVG 
SVG presentation attribute, skewY on group, skewY on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be skewed vertically. Additionally, the child rect should be skewed vertically.

svgtransformnested010 
= 
SVG 
SVG presentation attribute, matrix on group, matrix on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled and translated. Additionally, the child rect should be scaled and translated.

svgtransformnested011 
= 
SVG 
SVG presentation attribute, translate on group, scale on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be translated. Additionally, the child rect should be scaled.

svgtransformnested012 
= 
SVG 
SVG presentation attribute, translateX on group, scaleY on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be translated horizontally. Additionally, the child rect should be scaled vertically.

svgtransformnested013 
= 
SVG 
SVG presentation attribute, translateY on group, skewX on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be translated vertically. Additionally, the child rect should be skewed horizontally.

svgtransformnested014 
= 
SVG 
SVG presentation attribute, scale on group, skewY on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled. Additionally, the child rect should be skewed vertically.

svgtransformnested015 
= 
SVG 
SVG presentation attribute, scaleX on group, rotate on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled horizontally. Additionally, the child rect should be rotated.

svgtransformnested016 
= 
SVG 
SVG presentation attribute, scaleY on group, translateX on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled vertically. Additionally, the child rect should be translated horizontally.

svgtransformnested017 
= 
SVG 
SVG presentation attribute, rotate on group, translateY on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be rotated. Additionally, the child rect should be translated vertically.

svgtransformnested018 
= 
SVG 
SVG presentation attribute, skewX on group, scaleX on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be skewed horizontally. Additionally, the child rect should be scaled horizontally.

svgtransformnested019 
= 
SVG 
SVG presentation attribute, skewY on group, translate on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be skewed vertically. Additionally, the child rect should be translated.

svgtransformnested020 
= 
SVG 
SVG presentation attribute, matrix on group, scaleX on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled and translated. Additionally, the child rect should be scaled horizontally.

svgtransformnested021 
= 
SVG 
SVG presentation attribute, translate on group, scaleY on child1, rotate on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should be translated. Additionally, the first rect should be scaled vertically and the second rect should be rotated.

svgtransformnested022 
= 
SVG 
SVG presentation attribute, translateX on group, scaleX on child1, matrix on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should be translated horizontally. Additionally, the first rect should be scaled horizontally and the second rect should have the transform matrix applied.

svgtransformnested023 
= 
SVG 
SVG presentation attribute, translateY on group, translate on child1, scale on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should be translated vertically. Additionally, the first rect should be translated and the second rect should be scaled.

svgtransformnested024 
= 
SVG 
SVG presentation attribute, scale on group, translateX on child1, scaleX on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should be scaled. Additionally, the first rect should be translated horizontally and the second rect should be scaled horizontally.

svgtransformnested025 
= 
SVG 
SVG presentation attribute, scaleX on group, translateY on child1, scale on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should be scaled horizontally. Additionally, the first rect should be translated vertically and the second rect should be scaled.

svgtransformnested026 
= 
SVG 
SVG presentation attribute, scaleY on group, translate on child1, rotate on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should be scaled vertically. Additionally, the first rect should be translated and the second rect should be rotated.

svgtransformnested027 
= 
SVG 
SVG presentation attribute, rotate on group, translateX on child1, scaleY on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should be rotated. Additionally, the first rect should be translated horizontally and the second rect should be scaled vertically.

svgtransformnested028 
= 
SVG 
SVG presentation attribute, matrix on group, scaleY on child1, translateY on child2
 Transforms on parent elements should be premultiplied to transforms on child elements. The group of elements should have the transform matrix applied. Additionally, the first rect should be translated vertically and the second rect should be scaled vertically.

svgtransformnested029 
= 
SVG 
SVG presentation attribute, scaleX on group, rotate with three arguments on child
 Transforms on a parent element should be premultiplied to transforms on a child element. The group of elements should be scaled horizontally. Additionally, the child rect should be rotated after the transform origin is translated.

svgtranslate001 
= 
SVG 
SVG presentation attribute and translate with translationvalue arguments without unit
 The translate transform function must support unit less arguments for translationvalue. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate009 
= 
SVG 
SVG presentation attribute and translate with translationvalue and unit less arguments in scientific notation
 The translate transform function must support unit less arguments in scientific numbers for translationvalue. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate017 
= 
SVG 
SVG presentation attribute and translate with translationvalue unit less arguments in scientific notation with negative exponents
 The translate transform function must support unit less arguments in scientific numbers with negative exponents for translationvalue. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate025 
= 
SVG 
SVG presentation attribute and translate with negative translationvalue arguments without unit
 The translate transform function must support negative unit less arguments for translationvalue. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate033 
= 
SVG 
SVG presentation attribute and translate with translationvalue and negative unit less arguments in scientific notation
 The translate transform function must support negative unit less arguments in scientific numbers for translationvalue. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate041 
= 
SVG 
SVG presentation attribute and translate with translationvalue unit less negative arguments in scientific notation with negative exponents
 The translate transform function must support unit less arguments in negative scientific numbers with negative exponents for translationvalue. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate049 
= 
SVG 
SVG presentation attribute and translate with one translationvalue argument
 The translate transform function takes tx as the first translationvalue parameter and ty is the optional second translationvalue parameter. If ty is not provided, ty has zero as a value. The rect in the test should be moved 50 pixels in the X direction

svgtranslate050 
= 
SVG 
SVG presentation attribute and translate with one negative translationvalue argument
 The translate transform function takes tx as the first translationvalue parameter and ty is the optional second translationvalue parameter. If ty is not provided, ty has zero as a value. The rect in the test should be moved 50 pixels in the X direction

svgtranslate051 
= 
SVG 
SVG presentation attribute and translate with comma delimited arguments with no spaces
 The translate transform function arguments can be separated by an optional comma with no spaces. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate052 
= 
SVG 
SVG presentation attribute and translate with comma delimited arguments with a space in between
 The translate transform function arguments can be separated by an optional comma with a space in between. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate053 
= 
SVG 
SVG presentation attribute and translate with arguments separated by multiple spaces
 The translate transform function arguments can multiple spaces. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate054 
= 
SVG 
SVG presentation attribute and translate with comma delimited arguments with multiple spaces before the comma
 The translate transform function arguments can be separated by an optional comma with multiple spaces before the comma. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslate055 
= 
SVG 
SVG presentation attribute and translate with comma delimited arguments with multiple spaces before and after the comma
 The translate transform function arguments can be separated by an optional comma with multiple spaces before and after the comma. The rect in the test should be moved 50 pixels in the X direction and 50 pixels in the Y direction

svgtranslatemultiple001 
= 
SVG 
SVG presentation attribute and translationvalue arguments with translate applied twice
 The translate transform function can be called multiple times on the same element. The rect in the test should be moved 50 pixels in the X direction and 75 pixels in the Y direction

svgtranslatemultiple002 
= 
SVG 
SVG presentation attribute and translationvalue arguments with translate applied twice in both directions
 The translate transform function can be applied multiple times and in both directions. The rect in the test should be moved 50 pixels in the X direction and 75 pixels in the Y direction

+
7.4 User coordinate space 
svgoriginrelativelength001 
= 
SVG 
SVG presentation attribute transformorigin, first value absolute value and missing second argument
 If only one value is specified, the second value is assumed to be 'center'. The rect should be rotated around its center point at 75,75

svgoriginrelativelength002 
= 
SVG 
SVG presentation attribute transformorigin, first value 'center' value and missing second argument
 If only one value is specified, the second value is assumed to be 'center'. The rect should be rotated around its center point at 75,75

svgoriginrelativelength003 
= 
SVG 
SVG presentation attribute transformorigin, first value '50%' value and missing second argument
 If only one value is specified, the second value is assumed to be 'center'. The rect should be rotated around its center point at 75,75

svgoriginrelativelength004 
= 
SVG 
SVG presentation attribute transformorigin, '50% 50%'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength005 
= 
SVG 
SVG presentation attribute transformorigin, '50% center'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength006 
= 
SVG 
SVG presentation attribute transformorigin, 'center 50%'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength007 
= 
SVG 
SVG presentation attribute transformorigin, 'center center'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength008 
= 
SVG 
SVG presentation attribute transformorigin, '75 center'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength009 
= 
SVG 
SVG presentation attribute transformorigin, '75 50%'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength010 
= 
SVG 
SVG presentation attribute transformorigin, 'center 75'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength011 
= 
SVG 
SVG presentation attribute transformorigin, '50% 75'
 The rect should be rotated around its center point at 75,75

svgoriginrelativelength012 
= 
SVG 
SVG presentation attribute transformorigin, '0'
 The initial point of origin gets translated to 0,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength013 
= 
SVG 
SVG presentation attribute transformorigin, '150'
 The initial point of origin gets translated to 150,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength014 
= 
SVG 
SVG presentation attribute transformorigin, '100%'
 The initial point of origin gets translated to 150,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength015 
= 
SVG 
SVG presentation attribute transformorigin, 'right'
 The initial point of origin gets translated to 150,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength016 
= 
SVG 
SVG presentation attribute transformorigin, 'left'
 The initial point of origin gets translated to 75,75. Since the second argument is missing, it is set to 'center'.

svgoriginrelativelength017 
= 
SVG 
SVG presentation attribute transformorigin, '25%'
 If the second argument is missing, it is assumed to be center. The initial point of origin gets translated to 37.5,75.

svgoriginrelativelength018 
= 
SVG 
SVG presentation attribute transformorigin, 'top'
 The initial point of origin gets translated to 75,0. A single argument 'top' gets interpreted as 'center top'.

svgoriginrelativelength019 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom'
 The initial point of origin gets translated to 75,150. A single argument 'bottom' gets interpreted as 'center bottom'.

svgoriginrelativelength020 
= 
SVG 
SVG presentation attribute transformorigin, '0% 0%'
 The initial point of origin gets translated to 75,75 since '0% 0%' is relative to the bounding box of the object.

svgoriginrelativelength021 
= 
SVG 
SVG presentation attribute transformorigin, 'top right'
 The initial point of origin gets translated to 225,75 since 'top right' is relative to the bounding box of the object.

svgoriginrelativelength022 
= 
SVG 
SVG presentation attribute transformorigin, 'top left'
 The initial point of origin gets translated to 75,75 since 'top left' is relative to the bounding box of the object.

svgoriginrelativelength023 
= 
SVG 
SVG presentation attribute transformorigin, 'top center'
 The initial point of origin gets translated to 150,75 since 'top center' is relative to the bounding box of the object.

svgoriginrelativelength024 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom left'
 The initial point of origin gets translated to 75,225 since 'bottom left' is relative to the bounding box of the object.

svgoriginrelativelength025 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom center'
 The initial point of origin gets translated to 150,225 since 'bottom center' is relative to the bounding box of the object.

svgoriginrelativelength026 
= 
SVG 
SVG presentation attribute transformorigin, 'bottom right'
 The initial point of origin gets translated to 225,225 since 'bottom right' is relative to the bounding box of the object.

svgoriginrelativelength027 
= 
SVG 
SVG presentation attribute transformorigin, 'right top'
 The initial point of origin gets translated to 225,75 since 'right top' is relative to the bounding box of the object.

svgoriginrelativelength028 
= 
SVG 
SVG presentation attribute transformorigin, 'right center'
 The initial point of origin gets translated to 225,150 since 'right center' is relative to the bounding box of the object.

svgoriginrelativelength029 
= 
SVG 
SVG presentation attribute transformorigin, 'right bottom'
 The initial point of origin gets translated to 225,225 since 'right bottom' is relative to the bounding box of the object.

svgoriginrelativelength030 
= 
SVG 
SVG presentation attribute transformorigin, 'right 75'
 The initial point of origin gets translated to 225,75 since 'right 75' is relative to the bounding box of the object.

svgoriginrelativelength031 
= 
SVG 
SVG presentation attribute transformorigin, 'right 0%'
 The initial point of origin gets translated to 225,75 since 'right 0%' is relative to the bounding box of the object.

svgoriginrelativelength032 
= 
SVG 
SVG presentation attribute transformorigin, 'right 100%'
 The initial point of origin gets translated to 225,225 since 'right 100%' is relative to the bounding box of the object.

svgoriginrelativelength033 
= 
SVG 
SVG presentation attribute transformorigin, 'left top'
 The initial point of origin gets translated to 75,75 since 'left top' is relative to the bounding box of the object.

svgoriginrelativelength034 
= 
SVG 
SVG presentation attribute transformorigin, 'left center'
 The initial point of origin gets translated to 75,150 since 'left center' is relative to the bounding box of the object.

svgoriginrelativelength035 
= 
SVG 
SVG presentation attribute transformorigin, 'left bottom'
 The initial point of origin gets translated to 75,225 since 'left bottom' is relative to the bounding box of the object.

svgoriginrelativelength036 
= 
SVG 
SVG presentation attribute transformorigin, 'left 75'
 The initial point of origin gets translated to 75,75 since 'left 75' is relative to the bounding box of the object.

svgoriginrelativelength037 
= 
SVG 
SVG presentation attribute transformorigin, 'left 0%'
 The initial point of origin gets translated to 75,75 since 'left 0%' is relative to the bounding box of the object.

svgoriginrelativelength038 
= 
SVG 
SVG presentation attribute transformorigin, 'left 100%'
 The initial point of origin gets translated to 75,225 since 'left 100%' is relative to the bounding box of the object.

svgoriginrelativelength039 
= 
SVG 
SVG presentation attribute transformorigin, 'center top'
 The initial point of origin gets translated to 150,75 since 'center top' is relative to the bounding box of the object.

svgoriginrelativelength040 
= 
SVG 
SVG presentation attribute transformorigin, 'center bottom'
 The initial point of origin gets translated to 150,225 since 'center bottom' is relative to the bounding box of the object.

svgoriginrelativelength041 
= 
SVG 
SVG presentation attribute transformorigin, 'center left'
 The initial point of origin gets translated to 75,150 since 'center left' is relative to the bounding box of the object.

svgoriginrelativelength042 
= 
SVG 
SVG presentation attribute transformorigin, 'center right'
 The initial point of origin gets translated to 225,150 since 'center right' is relative to the bounding box of the object.

svgoriginrelativelength043 
= 
SVG 
SVG presentation attribute transformorigin, 'center 100%'
 The initial point of origin gets translated to 150,225 since 'center 100%' is relative to the bounding box of the object.

svgoriginrelativelength044 
= 
SVG 
SVG presentation attribute transformorigin, '0 center'
 The initial point of origin gets translated to 0,150 since '0 center' is relative to the bounding box of the object.

svgoriginrelativelength045 
= 
SVG 
SVG presentation attribute transformorigin, 'center 0%'
 The initial point of origin gets translated to 150,75 since 'center 0%' is relative to the bounding box of the object.

svgoriginrelativelength046 
= 
SVG 
SVG presentation attribute transformorigin, 'center 0'
 The initial point of origin gets translated to 150,0 since 'center 0' is relative to the bounding box of the object.

svgoriginrelativelengthinvalid001 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top 100%'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid002 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom 100%'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid003 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top 150'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid004 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom 150'
 Spec does not allow first value to be vertical if at least one of the first two passed values are not keywords. Fallback to 0,0

svgoriginrelativelengthinvalid005 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top top'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid006 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom bottom'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid007 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'top bottom'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid008 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'bottom top'
 Spec does not allow two vertical values. Fallback to 0,0

svgoriginrelativelengthinvalid009 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'left left'
 Spec does not allow two horizontal values. Fallback to 0,0

svgoriginrelativelengthinvalid010 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'left right'
 Spec does not allow two horizontal values. Fallback to 0,0

svgoriginrelativelengthinvalid011 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'right right'
 Spec does not allow two horizontal values. Fallback to 0,0

svgoriginrelativelengthinvalid012 
= 
SVG 
SVG presentation attribute transformorigin, invalid arguments 'right left'
 Spec does not allow two horizontal values. Fallback to 0,0
