{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://cheeleong.dev/wwn-system-json/systems/source.schema.json",
  "title": "WWN Source",
  "type": "object",
  "allOf": [{ "$ref": "https://cheeleong.dev/wwn-system-json/systems/common.schema.json#/$defs/Entity" }],
  "properties": {
    "@type": { "const": "Source" },
    "author": { "type": "string", "minLength": 1 },
    "version": { "type": "string", "minLength": 1 },
    "license": { "type": "string", "minLength": 1 },
    "licenseUrl": { "type": "string", "format": "uri" },
    "sourceFile": { "type": "string", "minLength": 1 },
    "canonicalUrl": { "type": "string", "format": "uri" },
    "contentDigest": { "type": "string", "pattern": "^sha256-[A-Fa-f0-9]{64}$" }
  },
  "required": ["author", "version", "license", "licenseUrl", "sourceFile", "contentDigest"],
  "unevaluatedProperties": false
}
