def METHOD_NAME(self, obj):
    """Get issued dates."""
    try:
        parsed = parse_edtf(obj["metadata"].get("publication_date"))
    except EDTFParseException:
        return missing
    if isinstance(parsed, Date):
        parts = add_if_not_none(parsed.year, parsed.month, parsed.day)
        return {"date-parts": [parts]}
    elif isinstance(parsed, Interval):
        d1 = parsed.lower
        d2 = parsed.upper
        return {
            "date-parts": [
                add_if_not_none(d1.year, d1.month, d1.day),
                add_if_not_none(d2.year, d2.month, d2.day),
            ]
        }
    else:
        return missing