def extract_segment_types(urml_document_element, namespace):
    """Return a map from segment node IDs to their segment type
    ('nucleus', 'satellite' or 'isolated').
    """
    segment_types = \
        {namespace+':'+seg.attrib['id']: seg.tag
         for seg in urml_document_element.iter('nucleus', 'satellite')}

    for seg in urml_document_element.iter('segment'):
        seg_id = namespace+':'+seg.attrib['id']
        if seg_id not in segment_types:
            segment_types[seg_id] = 'isolated'
    return segment_types