'Construct a new Waypoint from dictionaries of attribute and child
element names corresponding to GPX waypoint information, as parsed
by the `GPX` class.'

@classmethod
def from_xml_names(cls, attrs, children):

    lat = attrs['lat']
    lon = attrs['lon']
    if ('ele' in children):
        ele = children['ele']
    else:
        ele = None
    w = cls(lat, lon, ele)
    if ('time' in children):
        w.timestamp = children['time']
    if ('name' in children):
        w.name = children['name']
    if ('desc' in children):
        w.description = children['desc']
    if ('cmt' in children):
        w.comment = children['cmt']
    if ('src' in children):
        w.source = children['src']
    if ('sym' in children):
        w.symbol = children['sym']
    if ('type' in children):
        w.classification = children['type']
    if ('fix' in children):
        w.fix = children['fix']
    if ('sat' in children):
        w.num_satellites = children['sat']
    if ('ageofdgpsdata' in children):
        w.age = children['ageofdgpsdata']
    if ('dgpsid' in children):
        w.dgpsid = children['dgpsid']
    return w
