MeridianMERIDIAN

representation

Numbers, booleans, encodings, and scientific notation

8 categories, 32 types: 15 a sibling in its category also accepts, 30 accepted by another category's rule, 16 that decompose into parts, 8 in Meridian's open data.

8 categories · 32 types

The 8 representation categories

Each category's lookup value, against every other category's rule

CategoryTypesCasts toFor exampleWithin the groupAlso accepted by
7VARCHARATGCAGC6 a sibling also acceptsfile, text
6DOUBLE, BIGINT423 a sibling accepts, 1 misreadfile, identifier, scientific, text
4VARCHAR, BIGINT10243 a sibling accepts, 1 misreadidentifier, numeric, scientific, text
4VARCHAR, BIGINT, UUID13 a sibling also acceptsfile, format, numeric, scientific, text
4VARCHAR😀each told apartfile, scientific
3BOOLEAN0each told apartfile, identifier, numeric, scientific, text
3VARCHAR#FF0000each told apartfile, scientific
1VARCHARhigh—file, scientific, text

Where representation categories overlap

Each type's lookup value, against every other category's rule

ValueWritten byAlso accepted by
0boolean.binaryfile.excel_format → 0; file.extension → 0; file.file_size → 0.0; identifier.increment → 0; identifier.numeric_code → 0; numeric.decimal_number → 0.0; numeric.decimal_number_comma → 0.0; numeric.integer_number → 0; numeric.percentage → 0.0; scientific.smiles → 0; text.word → 0
840identifier.numeric_codefile.excel_format; file.extension; file.file_size → 840.0; format.color_hex; numeric.decimal_number → 840.0; numeric.decimal_number_comma → 840.0; numeric.integer_number; numeric.percentage → 840.0; scientific.smiles; text.word
1identifier.incrementfile.excel_format; file.extension; file.file_size → 1.0; numeric.decimal_number → 1.0; numeric.decimal_number_comma → 1.0; numeric.integer_number; numeric.percentage → 1.0; scientific.smiles; text.word
1024file.file_sizeidentifier.increment → 1024; identifier.numeric_code → 1024; numeric.decimal_number; numeric.integer_number → 1024; numeric.percentage; scientific.smiles → 1024; text.word → 1024
42numeric.integer_numberfile.excel_format; file.extension; file.file_size → 42.0; identifier.increment; identifier.numeric_code; scientific.smiles; text.word
Tboolean.initialsfile.excel_format → T; file.extension → t; scientific.dna_sequence → T; scientific.protein_sequence → T; scientific.smiles → T; text.word → t
trueboolean.termsfile.excel_format; file.extension; scientific.smiles; text.word
highdiscrete.ordinalfile.excel_format; file.extension; scientific.smiles; text.word
12.2Knumeric.si_numberfile.excel_format → 12.2K; file.file_size → 12492.8; identifier.alphanumeric_id → 12.2K; scientific.smiles → 12.2K
SKU-12345identifier.alphanumeric_idfile.excel_format; scientific.smiles; text.word → sku-12345
550e8400-e29b-41d4-a716-4466…identifier.uuidfile.excel_format; scientific.smiles; text.word
3.14numeric.decimal_numberfile.excel_format; file.file_size; scientific.smiles
1.23e-4numeric.scientific_notationfile.excel_format → 1.23e-4; identifier.alphanumeric_id → 1.23e-4; scientific.smiles → 1.23e-4
ATGCAGCscientific.dna_sequencefile.excel_format; file.extension → atgcagc; text.word → atgcagc
meterscientific.measurement_unitfile.excel_format; file.extension; text.word
MKVLLIVGSscientific.protein_sequencefile.excel_format; file.extension → mkvllivgs; text.word → mkvllivgs
AUGCAGCscientific.rna_sequencefile.excel_format; file.extension → augcagc; text.word → augcagc
Oscientific.smilesfile.excel_format; file.extension → o; text.word → o
hellotext.wordfile.excel_format; file.extension; scientific.smiles
txtfile.extensionscientific.smiles; text.word
#FF0000format.color_hexfile.excel_format; scientific.smiles
50%numeric.percentagefile.excel_format → 50%; scientific.smiles → 50%
7732-18-5scientific.cas_numberfile.excel_format; text.word
text/plainfile.mime_typescientific.smiles
hsl(120, 100%, 50%)format.color_hslfile.excel_format
rgb(255, 0, 0)format.color_rgbfile.excel_format
1.234,56numeric.decimal_number_commafile.excel_format → 1.234,56
InChI=1S/H2O/h1H2scientific.inchifile.excel_format
The Olive Gardentext.entity_namefile.excel_format
This is a plain text descrip…text.plain_textfile.excel_format

Which representation type is it?

12 of 32 representation types in 6 categories accept it, and read it 2 ways.

Binary Boolean (0/1), Boolean Initials (T/F, Y/N), Boolean Terms (True/False, Yes/No), Ordinal Value, Measurement Unit, Entity Name and Plain Text carry no pattern or format, so they have no rule to ask.

TypeCategoryReads it as
Numeric Code numeric_codeidentifier840
Excel Number Format String excel_formatfile840
File Extension extensionfile840
File Size file_sizefile840.0
Color (Hexadecimal) color_hexformat840
Increment / Counter incrementidentifier840
Decimal Number decimal_numbernumeric840.0
Decimal Number (Comma Separator) decimal_number_commanumeric840.0
Integer Number integer_numbernumeric840
Percentage percentagenumeric840.0
SMILES Notation smilesscientific840
Single Word wordtext840

What the engine extracts

  • scientific5 of 7check_digit · formula · gc_content · length · molecular_weight_estimate · part1 · part2 · version
  • numeric4 of 6exponent · fractional_part · has_symbol · integer_part · mantissa · percent_value
  • file3 of 4category · charset · size · subtype · type · unit
  • identifier1 of 4alpha_part · numeric_part
  • text1 of 4char_count · word_count
  • format2 of 3blue · green · hue · lightness · red · saturation

In Meridian's open data

Use it

One value from each category, each inferred on its own

CLI · DuckDB
$ for v in 'ATGCAGC' '42' '1024' '1' '😀' '0' '#FF0000' 'high'; do finetype infer -i "$v"; done

SELECT v, ft_infer(v) FROM (VALUES ('ATGCAGC'), ('42'), ('1024'), ('1'), ('😀'), ('0'), ('#FF0000'), ('high')) t(v);

Type Registry