...
DECISION: the API will return only results, with IDs of the associated input objects attached. The endpoint may be extended to also provide the inputs
There is no ReviewDB endpoint for DTA reviews - only the backend backend.
JSON model for analysis results
...
Code Block |
---|
title | Analysis results model |
---|
|
RESULT: {
result: <OVERALL_RESULT_DATA>,
(dataRows: <ROW_RESULT_DATA>*|subgroups: [{
result: <SUBGROUP_RESULT_DATA>
dataRows: <ROW_RESULT_DATA>*
}])
}
RESULT_DATA: {
estimable: true|false,
mean: 0.0, (NOTE: ON THE SCALE OF ANALYSIS, SO LOG SCALE FOR LOG SCALE OUTCOMES)
se: 0.0,
ciStart: 0.0, (NOTE: ON THE SCALE OF ANALYSIS, SO LOG SCALE FOR LOG SCALE OUTCOMES)
ciEnd: 0.0, (NOTE: ON THE SCALE OF ANALYSIS, SO LOG SCALE FOR LOG SCALE OUTCOMES)
weight: 0.0
}
ROW_RESULT_DATA extends RESULT_DATA: {
id: "<studyDataRowId>"
}
SUBGROUP_RESULT_DATA extends RESULT_DATA: {
id: "<subgroupAnalysisId>",
heterogeneity: {
chiSquared: 0.0,
degreesOfFreedom: 0,
iSquared: 0.0,
p: 0.0,
(tauSquared: 0.0)? (NOTE: FOR RANDOM EFFECTS)
},
overallEffect: {
z: 0.0,
p: 0.0
},
(experimental: {
total: 0
},
control: {
total: 0
})?
}
OVERALL_RESULT_DATA extends SUBGROUP_RESULT_DATA: {
(subgroupDifferences: {
chiSquared: 0.0,
degreesOfFreedom: 0,
iSquared: 0.0,
p: 0.0},)?
(experimental: {
total: 0
},
control: {
total: 0
})?
} |
Code Block |
---|
title | DTA Analysis result model |
---|
|
RESULT: {
diagnosticDataRows: [
<DIAGNOSTIC_RESULT_TEST_DATA_ROW>*
] |
diagnosticSubgroups: [{
meanD: 0.0,
a: 0.0,
b: 0.0,
diagnosticDataRows: [
<DIAGNOSTIC_RESULT_TEST_DATA_ROW>*
]
},...]
}
DIAGNOSTIC_RESULT_TEST_DATA_ROW: {
sensitivity: 0.0,
sensCiStart: 0.0,
sensCiEnd: 0.0,
specificity: 0.0,
specCiStart: 0.0,
specCiEnd: 0.0
}
DIAGNOSTIC_RESULT_TEST_DATA_ROW_FOR_SUBGROUP extends DIAGNOSTIC_RESULT_TEST_DATA_ROW: {
d: 0.0,
s: 0.0,
weight: 0.0,
scaleSpec: 0.0,
scaleSens: 0.0
} |
Platforms/protocol for analysis backend
...
Code Block |
---|
|
INPUT: [{
options: {
dataType: "DICHOTOMOUS"|"CONTINUOUS"|"CONTRAST"|"OBSERVED_EXPECTED", (NOTE: CONTRAST maps to INVERSE_VARIANCE in RM5/Review DB)
method: "MH"|"GIV"|"PETO",
effectMeasure: "MD"|"SMD"|"LOR"|"LRR"|"RD"|"PetoLOR"|"Generic",
model: "FIXED"|"RANDOM",
ciLevelRows: 0.90|0.95|0.99,
ciLevelTotals: 0.90|0.95|0.99,
swapEvents: true|false,
totals: "YES"|"SUB"|"NO"
},
dataRows: [
<DICHOTOMOUS_DATA>*|<CONTINUOUS_DATA>*|<CONTRAST_DATA>*|<OBSERVED_EXPECTED_DATA>*
]|
subgroups: [{
dataRows: [
<DICHOTOMOUS_DATA>*|<CONTINUOUS_DATA>*|<CONTRAST_DATA>*|<OBSERVED_EXPECTED_DATA>*
},...]
},...]
}]
DICHOTOMOUS_DATA: {
experimental: {
events: 0,
total: 0
},
control: {
events: 0,
total: 0
}
}
CONTINUOUS_DATA: {
experimental: {
total: 0,
mean: 0.0,
sd: 0.0
},
control: {
total: 0,
mean: 0.0,
sd: 0.0
}
}
CONTRAST_DATA: {
estimate: 0.0,
se: 0.0
(experimental: {
total: 0
},
control: {
total: 0
})?
}
OBSERVED_EXPECTED_DATA: {
oe: 0.0,
variance: 0.0,
(experimental: {
events: 0,
total: 0
},
control: {
events: 0,
total: 0
})?
} |
...
Code Block |
---|
|
INPUT: [{
diagnosticOptions: {
scale: "EQUAL" | "SAMPLE_SIZE" | "INVERSE_SE" | "COVARIATE"
weight: "EQUAL" | "SAMPLE_SIZE" | "INVERSE_V",
ciLevel: 0.90|0.95|0.99
},
diagnosticDataRows: [
<DIAGNOSTIC_TEST_DATA_ROW>*
] |
diagnosticSubgroups: [{
diagnosticDataRows: [
<DIAGNOSTIC_TEST_DATA_ROW>*
]
},...]
}]
DIAGNOSTIC_TEST_DATA_ROW: {
tp: 0,
fp: 0,
fn: 0,
tn: 0,
covariateScaleValue?: 0.0
} |
...