default namespace = "http://www.w3.org/2000/svg"
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"


## 
##     SVG 1.1 Image Module
##     file: svg-image.rng
## 
##     This is SVG, a language for describing two-dimensional graphics in XML.
##     Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
##
##     Modifications Copyright 2007 Mozilla Foundation
## 
##     $Id$
##   

## 
##     Image
## 
##         image
## 
##     This module declares markup to provide support for image.
##   

## 
##     SVG.Image.class
##   
[ xml:lang = "en" ]
grammar {
    SVG.Image.extra.class = notAllowed
    SVG.Image.class |= image | SVG.Image.extra.class
    a:documentation [ "\x{a}" ~ "    image: Image Element\x{a}" ~ "  " ]
    SVG.image.content = SVG.Description.class*, SVG.Animation.class*
    image = element image { attlist.image, SVG.image.content }
    attlist.image &=
        SVG.Core.attrib,
        SVG.Conditional.attrib,
        SVG.Style.attrib,
        SVG.Viewport.attrib,
        SVG.Color.attrib,
        SVG.Opacity.attrib,
        SVG.Graphics.attrib,
        SVG.Profile.attrib,
        SVG.Clip.attrib,
        SVG.Mask.attrib,
        SVG.Filter.attrib,
        SVG.GraphicalEvents.attrib,
        SVG.Cursor.attrib,
        SVG.XLinkEmbed.attrib,
        SVG.External.attrib,
        (common.attrs.aria.implicit.img | common.attrs.aria)?,
        attribute x { Coordinate.datatype }?,
        attribute y { Coordinate.datatype }?,
        attribute width { Length.datatype },
        attribute height { Length.datatype },
        [ a:defaultValue = "xMidYMid meet" ]
        attribute preserveAspectRatio {
            PreserveAspectRatioSpec.datatype
        }?,
        attribute transform { TransformList.datatype }?
}
