Method: Exodb::Utils.guess_miriam

Defined in:
lib/exodb/utils.rb

.guess_miriam(str) ⇒ String

Guess the type of id

Parameters:

Returns:

  • (String)

    a miriam registry or the string itself incase cannot guess


29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/exodb/utils.rb', line 29

def guess_miriam(str)
	case str
	when /\A((AC|AP|NC|NG|NM|NP|NR|NT|NW|XM|XP|XR|YP|ZP)_\d+|(NZ\_[A-Z]{4}\d+))(\.\d+)?\z/
		return "urn:miriam:refseq:#{str}"
	when /\A((ENS[A-Z]*[FPTG]\d{11}(\.\d+)?)|(FB\w{2}\d{7})|(Y[A-Z]{2}\d{3}[a-zA-Z](\-[A-Z])?)|([A-Z_a-z0-9]+(\.)?(t)?(\d+)?([a-z])?))\z/
		return "urn:miriam:ensembl:#{str}"
	when /\A((HGNC|hgnc):)?\d{1,5}\z/
		return "urn:miriam:hgnc:#{str}"
	when /\ACCDS\d+\.\d+\z/
		return "urn:miriam:ccds:#{str}"
	else
		return str
	end
end