Quick Check configuration syntax

Quick Check configuration is done by using one or several filter expressions. Any filter expression has a certain specificity and either includes or excludes the respective sub data structure or data field. Filter expressions are interpreted against the structure of possible Quick Check output (for more details see the article Structure and syntax of Quick Check output). Filtering works for the following areas:

  • "direct" 
  • "aggregated"

Note: The "status" data structure will always be written and cannot be turned off.

The filter expressions are based on the 'path' to a given data (sub)structure or data element in the Quick Check output structure. Assuming the following output excerpt:

"aggregated": {
  "pages": {
			"page" : [
				{
					"geometry" : {
						"TrimBox" : {
							"left" : 0,
							"bottom" : 0,
							"right" : 612,
							"top" : 792,
							"width" : 612,
							"height" : 792,
							"width_eff" : 612,
							"height_eff" : 792
						}
					}
								},
				{
					"geometry" : {
						"TrimBox" : {
							"left" : 0,
							"bottom" : 0,
							"right" : 612,
							"top" : 792,
							"width" : 612,
							"height" : 792,
							"width_eff" : 612,
							"height_eff" : 792
						}
					}
				}
		 ]
	}
}

and also assuming that only the width_eff and height_eff data elements of the TrimBox of each page are of interest, the following filtering expression would be used:

$.direct: false
$.aggregated: false
$.aggregated.pages.page.geometry.TrimBox.width_eff : true
$.aggregated.pages.page.geometry.TrimBox.height_eff : true

The $ element serves as a kind of virtual root element, to which the path to the data structure or element of interest is appended.

In order to not trigger creation output of massive amounts of data it is recommended to completely turn off the top most level of the two main areas, using $.direct: false and $.aggregated: false.

Next, filter expressions that target the exact data substructure or element that are to be included in the output are added – in this example just the two entries inside the TrimBox data structures for each page.

Filtering for all pages, a specific page or consolidated data from all pages

The Quick Check filter expressions make it possible to request page related data either for a specific page (or range of pages), all pages, or in a consolidated form aggregating information from all pages.

Data related to pages consists of the following substructures:

  • geometry: various data elements based on page geometry boxes
  • info: data elements for sequential page number (starting at 1 for first page) and page label
  • resources: data structures and elements for color and font resources

Addressing a specific page is done by using the usual array notation (where the first element start at 0). For the third page in a PDF file the following filter expression would be used to create output for its geometry data substructure:

$.aggregated.pages.page[2].geometry: true

0 Comments

Send Your Comment

E-Mail me when someone replies to this comment