<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def parse_xml_layer(xml_custom_map_source):
 """ Get one MapLayer from an XML element Args: xml_custom_map_source (Element):
 The <customMapSource> element tag wrapped in a <layers> tag as XML Element Returns: MapLayer: """

        map_layer = MapLayer()
        try:
            for elem in xml_custom_map_source.getchildren():
                if elem.tag == 'url':
                    map_layer.tile_url = elem.text
                elif elem.tag == 'minZoom':
                    map_layer.min_zoom = int(elem.text)
                elif elem.tag == 'maxZoom':
                    map_layer.max_zoom = int(elem.text)
        except ValueError:
            raise MapSourceException("minZoom/maxZoom must be an integer. ")

        if map_layer.tile_url is None:
            raise MapSourceException("Layer requires a tile_url parameter. ")

        return map_layer