microbiomedata / dh_testing

Sandbox for testing the content of various minimal schemas vs DataHarmonizer
0 stars 0 forks source link

DH slot attribute handling #3

Open turbomam opened 2 years ago

turbomam commented 2 years ago

Any class can be a DH template, even without is_a: dh_interface statements (or the definition of the dh_interface parent class), but that requires manually adding a block like this into menu.js, if one wants to access the interface for a class through the menu system.

  "dh_testing": {
    "test_class": {
      "name": "test_class",
      "status": "published",
      "display": true
    }
  }

One could also use a URL in the style http://localhost:8080/?template=dh_testing/test_class

Don't forget to generate at least a minimal export.js with export default {};

Currently, all slots for a class will be displayed. Maybe we should use abstract or deprecated to suppress slots?

Slot attribute handling

Help can be accessed by double-clicking the column header in a stand-alone DH. Invalid cells are colored light pink and illegally empty cells are colored darker pink. Could we choose other colors? Column and section ordering is by appearance in the schema unless otherwise specified. Columns are placed into a Generic section unless otherwise specified.

Slot_sectioning

Generic comes first?

  dh_section:
    name: dh_section
    description: A section (ie group if columns) within a DataHarmonizer interface

  Sample ID:
    name: Sample ID
    rank: 1
    is_a: dh_section

  sample_id_1:
    slot_group: Sample ID
    rank: 1

  sample_id_2:
    slot_group: Sample ID
    rank: 2
turbomam commented 2 years ago

Look into

try more ranges

enum-like constraints

future multivalued handling

grouping

pattern-based validation

rule-based combination of conditions

turbomam commented 2 years ago

Probably irrelevant

ddooley commented 2 years ago

I think Patrick's new datatypes.js handles Boolean true/false but not yes/no or True/False