{
  "id": "cron_expression",
  "kind": "datatype",
  "status": "draft",
  "name": "Cron schedule expression",
  "doc": "Schedule of a cron job: five fields separated by spaces, giving the minute, the hour, the day of the month, the month and the day of the week (0 is Sunday). POSIX allows an asterisk for all values, a number, a range a-b or a comma-separated list in each field; the regexp also accepts the step suffix /n that most cron implementations support. It does not check the value ranges, month and weekday names or @ shortcuts.",
  "is_pii": false,
  "categories": [
    "software",
    "datetime"
  ],
  "langs": [
    "common"
  ],
  "regexp": "^(?:\\*|[0-9]+(?:-[0-9]+)?(?:,[0-9]+(?:-[0-9]+)?)*)(?:/[0-9]+)?(?:\\s+(?:\\*|[0-9]+(?:-[0-9]+)?(?:,[0-9]+(?:-[0-9]+)?)*)(?:/[0-9]+)?){4}$",
  "examples": [
    {
      "value": "15 3 * * 1-5",
      "description": "Example from the POSIX crontab specification",
      "valid": true
    },
    {
      "value": "0 0 1,15 * 1",
      "description": "Example from the POSIX crontab specification",
      "valid": true
    },
    {
      "value": "15 3 * *",
      "description": "Four fields",
      "valid": false
    }
  ],
  "links": [
    {
      "type": "doc",
      "url": "https://pubs.opengroup.org/onlinepubs/9799919799/utilities/crontab.html"
    }
  ],
  "detected_by": {
    "tools": [
      "pydantic",
      "pywhat"
    ]
  },
  "quality": {
    "score": 85,
    "missing": [
      "mapping (Wikidata, Schema.org, ...)",
      "translation"
    ]
  },
  "source": {
    "path": "data/datatypes/any/software/cron_expression.yaml",
    "url": "https://github.com/apicrafter/metacrafter-registry/blob/main/data/datatypes/any/software/cron_expression.yaml",
    "edit_url": "https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/any/software/cron_expression.yaml"
  },
  "urls": {
    "html": "https://registry.apicrafter.io/datatype/cron_expression",
    "json": "https://registry.apicrafter.io/api/v1/datatypes/cron_expression.json"
  }
}