UX settings of filtration properties¶
Filtering properties are very important objects of the system, so the handling of this objects in the Front-End UX logic requires wide spectrum of settings. They form essential part of Property Status structure, their congiguration is discussed in Configuration of filtration schema API.
The settings are:
title, optional string - human readable description of unit, can be not defined if name is sufficient
render_mode - optional string; used in UI to represent values of unit, see details below
tooltip - optional string; explanation of unit meaning to render in UI as tooltip (title in HTML terms)
classes - list of integers
Integers in the list are index values in descriptor structurr unit-classes from Dataset Descriptor structure.
The last setting requires an extended explanation.
Properties classification¶
Since there are too many various filtering properties in the system, we make an attempt to classify properties by their "universal meanings". The classification is not so clear and distinct, however it is possible to use it to separate properties for use them in different contexts.
The classification has two layers:
domain (facet) layer: there are numerous domains of classification, each property needs to be classified in each domain
low layer: in context of each domain there is list of of types
The classification applied to the dataset forms unit-classes field of Dataset Descriptor structure that is return value of dsinfo.
The facet indexes of concrete filtering property form classes field of Property Status structure.
In terms of Variable registry facet classification is defined in terms of parameters facet1, facet2, facet3 - optional strings.
The Front End can use this classification to help the user to keep unneccessary properties hidden in the filtration process.
The current version of the system provides the following classification:
facet
Title
Technical name
Knowledge Domain
facet1
Call Annotations
call
Phenotypic Data
phenotype
Compound Rules
rules
Population Genetics
popgen
Functional
function
Animal Genetics
animal
Human Genetics
human
Epigenetics
epigenetics
N/A
na1
Scale
facet2
Transcript
transcript
Variant
variant
Position
position
Window
window
Gene
gene
N/A
na2
Method
facet3
Statistical Genetics Evidence
statgen
Bioinformatics Inference
bioinf
Experimental, in Vivo
in-vivo
Experimental, in Vitro
in-vitro
Experimental, Other
explanation
Clinical Evidence
clinical
Raw Data
raw
N/A
na3
Render modes¶
Render modes for numeric properties
"
scale, bounds"
scale:
linear
/log
- linear or logariphmic scale
- bounds:
<
/>
/=
- meaningful bounds:
<
only upper/>
only lower /=
bothExamples:
"linear,<"
linear scale, only upper bound is meaningful
"log,>"
logariphmic scale, only lower bound is meaningful
"neighborhood"
needs center/radius to determine diapason (linear scale assumed)Render modes for enumerated properties
"pie"
used for status properties
"bar"
used for multiset properties, with not too wide spectrum of values
"tree-map"
used for variety properties, or for properties with wide spectrum of values