Common Trending and QC tools:
Documentation
|
tqs = Trending and Quality Control System |
make printable
Please note that if you want to print this page, choose 'landscape' and scale probably to 70% because of the large table below. Best if you check the print preview first.
|
new:
v0.95
- tool being implemented
|
see also:
webCMS tool description |
webCMS: syntax and structural components
Most content in the text files of webCMS is plain text, or related to interpreted high-level tags like TABLE or some ITEM identifiers.
TABLE content gets marked by table identifiers. ITEM identifiers are needed for some text files, there are just 2 or 3 and they appear at the begin of the file. A complete list of identifiers can be found below.
Figures get embedded into TABLEs, they have no type of their own. This makes sense because figures should always have a caption, and a figure with a caption naturally forms a table, or a row in a table. Other HTML elements like URLs or horizontal lines are embedded in TEXT and are interpreted as native HTML code. HTML tags should be kept to a minimum. Don't forget that the purpose of the webCMS tool is to eliminate the burden of HTML coding. In particular avoid anything like text decoration with colors. Likewise, font sizes have gone, they are replaced by classes and styles which are managed within the tool.
Tables
Tables are marked by specific TABLE_TYPEs. The big advantage of using TABLE_TYPEs is that the user doesn't need to know all details about style and content conventions. For instance, the TABLE_TYPE 'QC1_TABLE' has the following format convention hard-coded in the tool:
Date |
event |
<user content> |
<user content> |
The TABLE_TYPE determines format and look-up. For the example below, the table_type HISTORY means that the table gets 2 columns, the labels 'Date' and 'event', and determines all styles. In the source text file, this part has the following content:
TABLE_NAME histo1
TABLE_TYPE HISTORY
TABLE_ROW1 <user content> SEP <user content> |
The TABLE_NAME is actually for user orientation only but not used by the tool.
Note also the simple marking of cells: separate them by SEP which stands for </td><td>. This is expanded by the tool, and anything else is also added by the tool (<tr><td>, <table> etc.). Use tabs and spaces in your text file in whatever way they come from the sources, they are not interpreted. Make sure that each TABLE_ROW has one content row only. Remember that SEP is reserved.
Here is a real example, for the HISTORY table of the GIRAFFE QC page http://www.eso.org/qc/GIRAFFE/qc/fmt_qc1.html, lowest component (named correlations.txt in the webCMS system):
TABLE_NAME histo1
TABLE_TYPE HISTORY
TABLE_ROW1 2007-11-14 SEP earthquake; non-thermal jump of HR grating in X (+1) and Y (+2) pixels
TABLE_ROW2 2011-03-14 SEP earthquake, non-thermal jump in Y direction; adjusted back to the old values on 2011-04-01; no science files affected
TABLE_ROW3 2011-06-10 SEP earthquake, non-thermal jump in X and Y direction; adjusted back to the old values on 2011-06-22
TABLE_ROW4 2011-06-27 SEP earthquake, non-thermal jump in X; adjusted back on 2011-06-30
TABLE_ROW5 2015-11-27 SEP earthquake, non-thermal jump of HR in X by +8 px, LR in Y by more than 1 px; adjusted back begin of 2015 Dec; required new reference dispersion solutions for Medusa2 |
This is the output of webCMS:
Date |
event |
2007-11-14 |
earthquake; non-thermal jump of HR grating in X (+1) and Y (+2) pixels |
2011-03-14 |
earthquake, non-thermal jump in Y direction; adjusted backto the old values on 2011-04-01; no science files affected |
2011-06-10 |
earthquake, non-thermal jump in X and Y direction; adjusted back to the old values on 2011-06-22 |
2011-06-27 |
earthquake, non-thermal jump in X; adjusted back on 2011-06-30 |
2015-11-27 |
earthquake, non-thermal jump of HR in X by +8 px, LR in Y by more than 1 px; adjusted back begin of 2015 Dec; required new reference dispersion solutions for Medusa2 |
List of TABLE_TYPEs
This is the complete list of supported TABLE_TYPEs in webCMS. Qualifiers are marked blue, find the complete list below. The complete list of TABLE identifiers is also listed below.
TABLE_TYPE |
used for |
format? |
applicable branch |
Entry in TABLE block *
(applicable TABLE identifiers in the first column) |
Result |
TOP_TABLE |
table on top of the QC pages, with links to HC plots and QC1 database |
2 columns, fixed header and content |
QC_PAGE |
TABLE_ROW1 |
Noise parameters SEP HC_LINK /qc/GIRAFFE/reports/HEALTH/trend_report_DETNOISE_HC.html |
TABLE_ROW2 |
Linearity & gain SEP HC_LINK /qc/GIRAFFE/reports/HEALTH/trend_report_DETLIN_HC.html |
TABLE_ROW3 |
same, correlations SEP HC_LINK /qc/GIRAFFE/reports/HEALTH/trend_report_DETRELS_HC.html |
TABLE_ROW4 |
Contamination SEP HC_LINK /qc/GIRAFFE/reports/HEALTH/trend_report_DETCONTA_HC.html |
TABLE_ROW5 |
QC1DB_LINK giraffe_ccd |
|
|
QC PLOTS |
Noise parameters |
|
Linearity & gain |
|
same, correlations |
|
Contamination |
|
QC1 database (advanced users): browse | plot |
|
QC1_TABLE |
describing QC1 parameters |
2 columns, fixed header; the tool adds further columns; more ... |
QC_PAGE |
TABLE_ROW1 |
CONTAM1 SEP giraffe_ccd..conta1 |
TABLE_ROW2 |
CONTAM2 SEP giraffe_ccd..conta2 |
TABLE_ROW3 |
CONTAM3 SEP giraffe_ccd..conta3 |
|
CONTAM1 |
giraffe_ccd..conta1 |
content |
auto- |
added |
|
CONTAM2 |
giraffe_ccd..conta2 |
from |
file |
classification.txt |
|
CONTAM3 |
giraffe_ccd..conta3 |
|
|
|
|
|
HISTORY |
history of events |
2 columns, fixed header |
QC_PAGE |
TABLE_ROW1 |
2004-07 SEP new main mirror |
TABLE_ROW2 |
2015-05 SEP removal of contamination |
|
2004-07 |
new main mirror |
2015-05 |
removal of contamination |
|
|
TABLE_NOHEADER |
free content |
no header, any number of columns and rows |
any |
TABLE_ROW1 |
airbus SEP a SEP 380 |
TABLE_ROW2 |
pata SEP go SEP nia |
TABLE_ROWn |
and SEP so SEP on |
|
airbus |
a |
380 |
pata |
go |
nia |
and |
so |
on |
|
TABLE_CUSTOMHDR |
free content |
as before but with configured header, any number of columns and rows |
any |
TABLE_HEADER |
col#a SEP col#b SEP col#c |
TABLE_ROW1 |
1 SEP 2 SEP 3 |
TABLE_ROW2 |
this SEP is SEP text |
TABLE_ROWn |
and SEP so SEP on |
|
1 |
2 |
3 |
this |
is |
text |
and |
so |
on |
|
FIGURE_1A
(or FIGURE_1) |
one figure and its caption |
1 row, 2 columns: figure is left, caption right |
any |
TABLE_IMG1 |
argument of <a href=...>, e.g.: "jumpto.png width=32 height=32 border=0" |
TABLE_CAP1 |
this is the caption |
TABLE_CAP1 |
(multiple lines |
TABLE_CAP1 |
supported for TABLE_CAP1) |
|
|
this is the caption (multiple lines supported) |
|
|
same as above, with an optional initial line encoded as AHREF= which is useful if you have a large image that does not fit easily into the overall page design (you then use a thumbnail image in the second row and define the real image in the first row):
TABLE_IMG1 |
AHREF="jumpto.png" |
TABLE_IMG1 |
"jumpto.png width=32 height=32 border=1" |
TABLE_CAP1 |
this is the caption |
|
|
this is the caption |
|
FIGURE_1B |
one figure and its caption |
2 rows, 1 column: figure is top, caption below |
any |
TABLE_IMG1 |
argument of <a href=...>, e.g.:
"jumpto.png width=32 height=32 border=0" |
TABLE_CAP1 |
this is the caption |
|
|
this is the caption |
|
|
same as above, with an optional initial line encoded as AHREF=:
TABLE_IMG1 |
AHREF="parallel.png" |
TABLE_IMG1 |
"parallel.png width=106 height=106 border=1" |
TABLE_CAP1 |
this is the caption |
TABLE_CAP1 |
and it continues here |
(multiple lines supported for TABLE_CAP1) |
|
this is the caption and it continues here |
|
FIGURE_2 |
two figures and their captions |
two FIGURE_1A stacked in one table (2 rows, 2 columns) |
any |
TABLE_IMG1 |
"jumpto.png width=32 height=32 border=0" |
TABLE_CAP1 |
this is the caption for Fig. 1 |
TABLE_CAP1 |
(multiple lines supported) |
TABLE_IMG2 |
AHREF="parallel.png" |
TABLE_IMG2 |
"parallel.png width=106 height=106 border=1" |
TABLE_CAP2 |
same, for Fig. 2 |
TABLE_CAP2 |
(multiple lines supported) |
|
|
this is the caption for Fig. 1 (multiple lines supported) |
|
same, for Fig. 2 (multiple lines supported) |
|
* in addition to TABLE_NAME, TABLE_TYPE (both mandatory) and TABLE_WIDTH (optional);
it is always a good idea to have TABLE_END added, although the tool makes an attempt to guess if not found.
There is no TABLE_TYPE for tables more complex than FIGURE_2. Always try to simplify your tables. Hopefully there is no need for more complex tables, but in principle they can be created on demand.
Using TABLE_WIDTH is recommended for tables which otherwise grow too large. Use a percentage value, e.g. 80%, to constrain the table width to 80% of the display page width.
Content of QC1_TABLE
These are the columns of the standard QC1_TABLE in the tutorial pages (QC_PAGES branch):
user content |
user content |
definition of the QC1 parameter
from
QC1 database content, QC1 db configuration; query against qc1..qc1_columns (procedure getDescription) |
from classification.txt |
dynamic queries |
these are the two columns in TABLE_ROWn separated by SEP |
provided by webCMS |
provided by webDocuSys (coming) |
List of identifiers
Identifier are used to mark certain lines in the text file. Their logics is like in configuration files: they are recognized if they start a line, and anything behind has the property indicated by the identifier.
Identifier |
kind of content |
used for |
ITEM_TITLE |
ITEM (property of the text file) |
title of the QC item in the final html page, also used for the jump menue; not needed in top_table.txt, general.txt; can be NONE if e.g. only one QC item exists for this page |
ITEM_ANAME |
ITEM |
anchor of the QC item (for the jump menue; used as <a name=#ITEM_ANAME); not needed in top_table.txt, general.txt; not needed if only one QC item exists for this page |
ITEM_REPORT |
ITEM |
optional; special to mark the proper txt file if QC parameter is listed in more than one txt file; then, it takes the root name of the HC report (what remains without HC/FULL/html/trend_report tags). |
ITEM_TYPE |
NON-STANDARD |
optional; special to mark a QC_PAGE item as non-standard (then it is allowed to have general.txt only, and no checks for 5 standard TITLEs are done; typically used for things like qc.html; use wisely!) |
|
TITLE |
TEXT |
this kind of text is interpreted as a standard subsection; for QC_PAGE content, the existence of five TITLEs is checked by the tool (QC1 parameters, Trending, Scores&thresholds, History, Algorithm). Otherwise, TITLE just marks the style. |
TABLE_... |
TABLE |
several identifiers mark a table and its content, depending on the TABLE_TYPE; among them: |
TABLE_NAME |
TABLE |
mandatory |
TABLE_TYPE |
TABLE |
mandatory |
TABLE_WIDTH |
TABLE |
optional; supported in FIGURE_x, TABLE_CUSTOMHDR, TABLE_NOHEADER |
TABLE_IMGn |
TABLE |
FIGURE_x |
TABLE_CAPn |
TABLE |
FIGURE_x |
TABLE_ROWn |
TABLE |
other TABLE_TYPEs (not in FIGURE_x) |
List of Qualifiers
Qualifiers are interpreted tags. They are interpreted in certain environments (TABLEs or TEXT), as indicated below:
Qualifier |
translates into ... |
applicable TABLE_TYPE |
SEP |
</td><td> |
any table |
HC_LINK |
html code for the link to the HC plot, incl. graphical symbol |
TOP_TABLE |
QC1DB_LINK |
text and html code for the QC1 database link |
TOP_TABLE |
SHORT_QC1DB_LINK |
only the html code for the QC1 database link |
TOP_TABLE |
AHREF |
<a href= ... > |
FIGURE_1, FIGURE_2 |
NOWRAP |
'nowrap' attribute of <td> |
any table |
BLANK |
|
any |
COLSPAN=n |
'colspan=n' (attribute of td) |
any table
(needed only for the first cell; for other cells you use '</td><td colspan=n>' directly instead of SEP; 'n' stands for any number |
NO_TOP |
user selection to not offer jump to top |
TEXT, in the end, on general pages |
VIRT_INCLUDE |
<include virtual...> |
TEXT in pages with common content |
In some cases you still need simple HTML:
- use <p> to mark a new paragraph;
- use <br> to mark a line break;
- use <b>/<i> etc. as before (wisely please);
- use standard HTML syntax for links;
- use <ul>, </ul> and <li> for lists;
- use > for > and < for <.
Figures
Include figures with captions as a table, with a choice of FIGURE_1(A/B) or FIGURE_2. For the figure size you have several choices (see TABLE_TYPES above):
- use TABLE_IMG1 as single line, no 'width' and 'height' specified: the image gets displayed in its original size; this is simple but not always optimal;
- same, with 'width' and 'height' specified: the image gets displayed as you specify; this is a good idea if the image would otherwise be too large; make sure to specify 'width' and 'height' with the same scaling factor; explore the original size of the image (in the browser: right mouse click, view image, view image properties);
- same, but with two lines labelled TABLE_IMG1, the first one having "AHREF=<URL of image>": this would allow to click the displayed scaled image and display its full size.
There is no fixed rule what is best, but you probably have made these decisions already long ago in the text now to be migrated, so just "translate" what you have into the new syntax.
Last update: April 26, 2021 by rhanusch
|