Currently, a distribution/online/url is used even if it does not have a function="download" attribute, but if it does not have that, the element should be ignored, and if there are no url elements with function="download", the EML should be rejected.
Current code:
url_el = physical_el.find('distribution/online/url')
if url_el is None:
raise util.exc.EmlError(f'No <url> element found for entity: {entity_name_el.text}')
The attribute requirement can probably be added to the find().