added GetCanonicalName