{
  "id": "semver",
  "kind": "datatype",
  "status": "stable",
  "name": "Semantic version (SemVer)",
  "doc": "Version number in the Semantic Versioning 2.0.0 format: MAJOR.MINOR.PATCH, optionally followed by a pre-release part after '-' and build metadata after '+'.",
  "is_pii": false,
  "categories": [
    "software"
  ],
  "langs": [
    "common"
  ],
  "classification": "identifier",
  "regexp": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$",
  "examples": [
    {
      "value": "1.0.0",
      "description": "release",
      "valid": true
    },
    {
      "value": "2.1.3-alpha.1",
      "description": "pre-release",
      "valid": true
    },
    {
      "value": "1.0.0-rc.1+build.5",
      "description": "pre-release with build metadata",
      "valid": true
    },
    {
      "value": "1.0",
      "description": "PATCH is missing",
      "valid": false
    },
    {
      "value": "01.2.3",
      "description": "leading zero",
      "valid": false
    }
  ],
  "links": [
    {
      "type": "doc",
      "url": "https://semver.org/spec/v2.0.0.html"
    }
  ],
  "detected_by": {
    "tools": [
      "metacrafter"
    ],
    "metacrafter_rules": [
      {
        "rule": "semverbyvalue",
        "type": "data",
        "match": "ppr",
        "file": "common/software.yaml"
      }
    ]
  },
  "quality": {
    "score": 85,
    "missing": [
      "mapping (Wikidata, Schema.org, ...)",
      "translation"
    ]
  },
  "source": {
    "path": "data/datatypes/any/software/semver.yaml",
    "url": "https://github.com/apicrafter/metacrafter-registry/blob/main/data/datatypes/any/software/semver.yaml",
    "edit_url": "https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/any/software/semver.yaml"
  },
  "urls": {
    "html": "http://registry.apicrafter.io/datatype/semver",
    "json": "http://registry.apicrafter.io/api/v1/datatypes/semver.json"
  }
}