Edit page in Livemark
(2023-07-17 14:42)

Inquiries

As it's described in the Configuration section it's possible to provide custom inquiries in .github/frictionless.yaml file. An Inquiry is a Frictionless Framework concept used to define a validation job.

File Paths

The simplest way to customize an inquiry is to set validation paths:

path/to/inquiry.yaml

tasks:
  - path: data/table.csv
  - path: data/table.xls

File Details

A task can have many parameters accepted by the Resource class so you can provide scheme, format, etc:

path/to/inquiry.yaml

tasks:
  - path: data/table.csv.zip
    scheme: file
    format: csv
    encoging: utf-8
    compression: zip

By default, Fricitonless tries to infer all these parameters.

Table Details

Let's provide a dialect and a schema as it's described in Resource:

path/to/inquiry.yaml

tasks:
  - path: table.csv
    dialect:
      headerRows: [1,2]
      csv:
        separator: ;
    schema:
      fields:
        - name: currency
          type: string
        - name: rate
          type: number
          groupChar: ','
          constraints:
            maximum: 100

You can also provide dialect, or schema as a file path e.g. schema: schema.yaml.

Validation Details

It's possible to configure how the validation happens as it's in Checklist:

path/to/inquiry.yaml

tasks:
  - path: table.csv
    checklsit:
      pickErrors: ['#header']
      skipErrors: ['#row']
      checks:
        - type: ascii-value
        - type: row-constraint
          formula: id>1

Please consult with Validation Checks for available checks.

Validating Resource

It's possible to validate a data resource:

path/to/inquiry.yaml

tasks:
  - resource: data/dataresource.json

Read more about Resource in the Frictionless Framework docs.

Validating Package

It's possible to validate a data package:

path/to/inquiry.yaml

tasks:
  - package: data/datapackage.json

Read more about Package in the Frictionless Framework docs.