Analysis of Marker Chromosomes

(Linear) Marker Chromosomes are described with the symbol "mar". Their number is given as an absolute number or as a range before this symbol. If several different markers are clonally present, this is indicated by an arabic number after the symbol, and if multiple copies of such a marker are present, their copy number follows after the symbol and a multiplication sign. If no copy number is given, it is assumed to be 1.

Examples:

  • +mar: one additional marker is present
  • +1~3mar: one to three markers are present
  • +mar1,+mar2x3: markers 1 and 2 are present clonally, with one copy of mar1 and 3 copies of mar2
Hence, the description string passed to the constructor of the Marker class is compared to the pattern "^((?<min>[\+\-]?\d*)([\-\~](?<max>\d+))?)?x?marc?(?<num>\d+)?(x(?<min>\d+)([\-\~](?<max>\d+))?)?$" after removal of unnecessary spaces.

The above pattern will also accept several styles which are not allowed according to the ISCN manual:

  • no plus sign ("+") is required at the beginning of the description
  • no multiplication sign ("x") is required when the copy number is given before the "mar" symbol
  • the copy number may be given before or after the "mar" symbol regardless of the clonal presence of different markers.
The "min" and "max" groups will catch the minimum and maximum copy number, resp., while the "num" group catches the number of a distinguishable marker chromosome.

Despite these differences to the ISCN standards, the "toString" method will return a description according to standard. Thus, within the above mentioned limits, the Marker class can be "abused" to correct not-well spelled descriptions of marker chromosomes.