{
  "id": "sh",
  "acronym": "SH",
  "name": "Shapes Constraint Language",
  "category": "metadata",
  "domains": [
    "humanities",
    "computing"
  ],
  "kind": "ontology",
  "description": "A language for validating RDF graphs against a set of conditions",
  "formats": [
    "OWL",
    "RDF"
  ],
  "license": "W3C-20150513",
  "homepage": "https://www.w3.org/TR/shacl",
  "download": "https://www.w3.org/ns/shacl.rdf",
  "bioregistry": "sh",
  "registryStats": {
    "lov": {
      "reusedByVocabularies": 10,
      "reusedByDatasets": 0,
      "occurrencesInDatasets": 0,
      "modified": "2017-07-20",
      "namespace": "http://www.w3.org/ns/shacl#"
    },
    "discovery": {
      "terms": 163,
      "triples": 1386,
      "versionIri": "http://www.w3.org/ns/shacl#1.2",
      "titleFrom": "artefact"
    }
  },
  "publications": [],
  "usedBy": [],
  "tags": [
    "computer science",
    "nfdi4ing",
    "ontology",
    "quality",
    "w3c rec"
  ],
  "url": "https://schemascope.org/o/sh/",
  "evaluation": {
    "links": {
      "homepage": {
        "url": "https://www.w3.org/TR/shacl",
        "code": 200,
        "state": "ok",
        "resolvedUrl": "https://www.w3.org/TR/shacl/",
        "lastModified": "2018-01-31T08:26:43.000Z",
        "checkedAt": "2026-10-26T03:21:52.550Z"
      },
      "repository": null,
      "download": {
        "url": "https://www.w3.org/ns/shacl.rdf",
        "code": 200,
        "state": "ok",
        "lastModified": "2025-09-03T18:39:04.000Z",
        "checkedAt": "2026-10-26T03:21:52.495Z"
      }
    },
    "github": null,
    "ols": null,
    "obo": null,
    "bioportal": null,
    "citations": [],
    "git": null,
    "tib": {
      "portal": "TIB Terminology Service",
      "id": "sh",
      "api": "v1",
      "title": "W3C Shapes Constraint Language (SHACL) Vocabulary",
      "iri": "http://www.w3.org/ns/shacl#",
      "versionIri": null,
      "version": null,
      "releaseDate": null,
      "terms": 45,
      "properties": 93,
      "individuals": 121,
      "importsFrom": [],
      "exportsTo": [],
      "languages": [],
      "loaded": "2023-02-02T18:32:25.917+0000",
      "status": "SKIP",
      "page": "https://service.tib.eu/ts4tib/ontologies/sh",
      "source": "https://service.tib.eu/ts4tib/api/ontologies/sh",
      "fetchedAt": "2026-10-26T03:21:53.040Z"
    },
    "dashboard": null,
    "quality": null,
    "oops": null,
    "releases": {
      "dates": [],
      "lastYear": 0,
      "from": null
    },
    "bioregistry": {
      "prefix": "sh",
      "name": "Shapes Constraint Language",
      "mappings": {
        "lov": "sh",
        "tib.ts": "sh",
        "zazuko": "sh"
      },
      "dependsOn": [],
      "appearsIn": [],
      "license": "W3C-20150513",
      "version": null,
      "deprecated": false,
      "page": "https://bioregistry.io/sh",
      "source": "https://bioregistry.io/api/registry/sh",
      "fetchedAt": "2026-10-26T03:21:52.358Z"
    },
    "artifact": {
      "source": "https://www.w3.org/ns/shacl.rdf",
      "isRdf": true,
      "etag": "W/\"13781-63de9eb479b5e\"",
      "contentType": "application/rdf+xml",
      "fetchedAt": "2026-10-26T03:21:52.504Z"
    },
    "score": 29,
    "gross": 30,
    "earned": 30,
    "possible": 100,
    "qualityApplies": true,
    "penalty": {
      "score": -1,
      "reason": "1.1 years → 4 × max(0, 1.1 − 1)",
      "steps": [
        {
          "label": "Time since last activity",
          "pts": -1,
          "detail": "1.1 years → 4 × max(0, 1.1 − 1)"
        },
        {
          "label": "Inactive status",
          "pts": 0,
          "detail": "not archived, legacy or inactive"
        },
        {
          "label": "Consistency",
          "pts": 0,
          "detail": "not yet checked by a reasoner"
        }
      ]
    },
    "consistent": null,
    "grade": "E",
    "fair": 25,
    "breakdown": {
      "findable": {
        "score": 3,
        "max": 12,
        "steps": [
          {
            "label": "Persistent identifier (F1)",
            "pts": 0,
            "max": 4,
            "detail": "no PURL / w3id / DOI for the artefact"
          },
          {
            "label": "Indexed in services (F4)",
            "pts": 3,
            "max": 5,
            "detail": "2: TIB, Bioregistry"
          },
          {
            "label": "Citable reference (F2)",
            "pts": 0,
            "max": 3,
            "detail": "no reference publication listed"
          }
        ],
        "notes": [
          "Persistent identifier (F1): no PURL / w3id / DOI for the artefact",
          "Indexed in services (F4): 2: TIB, Bioregistry",
          "Citable reference (F2): no reference publication listed"
        ]
      },
      "accessible": {
        "score": 12,
        "max": 12,
        "steps": [
          {
            "label": "Homepage reachable",
            "pts": 3,
            "max": 3,
            "detail": "HTTP 200"
          },
          {
            "label": "Artefact retrievable over HTTP(S) (A1)",
            "pts": 6,
            "max": 6,
            "detail": "download HTTP 200"
          },
          {
            "label": "Metadata persists in a registry (A2)",
            "pts": 3,
            "max": 3,
            "detail": "Bioregistry"
          }
        ],
        "notes": []
      },
      "interoperable": {
        "score": 8,
        "max": 12,
        "steps": [
          {
            "label": "Formal machine-readable format (I1)",
            "pts": 5,
            "max": 5,
            "detail": "OWL, RDF"
          },
          {
            "label": "Semantic-web IRIs (I2)",
            "pts": 3,
            "max": 3,
            "detail": "OWL, RDF"
          },
          {
            "label": "References other vocabularies (I3)",
            "pts": 0,
            "max": 4,
            "detail": "no imported vocabularies found"
          }
        ],
        "notes": [
          "References other vocabularies (I3): no imported vocabularies found"
        ]
      },
      "reusable": {
        "score": 2,
        "max": 12,
        "steps": [
          {
            "label": "Clear license (R1.1)",
            "pts": 2,
            "max": 5,
            "detail": "W3C-20150513 (not a recognised open license)"
          },
          {
            "label": "Release provenance (R1.2)",
            "pts": 0,
            "max": 4,
            "detail": "no version in artefact, registry or release tags"
          },
          {
            "label": "Community standards (R1.3)",
            "pts": 0,
            "max": 3,
            "detail": "no independent compliance report (not on the OBO Dashboard)"
          }
        ],
        "notes": [
          "Clear license (R1.1): W3C-20150513 (not a recognised open license)",
          "Release provenance (R1.2): no version in artefact, registry or release tags",
          "Community standards (R1.3): no independent compliance report (not on the OBO Dashboard)"
        ]
      },
      "quality": {
        "score": 0,
        "max": 20,
        "steps": [
          {
            "label": "Logical consistency",
            "pts": 0,
            "max": 10,
            "detail": "never checked by a reasoner"
          },
          {
            "label": "OWL 2 DL profile",
            "pts": 0,
            "max": 2,
            "detail": "profile not checked"
          },
          {
            "label": "Upper-ontology alignment",
            "pts": 0,
            "max": 3,
            "detail": "no BFO/COB/DOLCE import found"
          },
          {
            "label": "Standard relations (RO)",
            "pts": 0,
            "max": 1,
            "detail": "does not import the Relation Ontology"
          },
          {
            "label": "ROBOT report: no errors",
            "pts": 0,
            "max": 2,
            "detail": "no ROBOT report available"
          },
          {
            "label": "ROBOT report: warning density",
            "pts": 0,
            "max": 1,
            "detail": "no ROBOT report available"
          },
          {
            "label": "Pitfall scan: no critical pitfalls",
            "pts": 0,
            "max": 1,
            "detail": "no pitfall scan or ROBOT report yet"
          }
        ],
        "notes": [
          "Logical consistency: never checked by a reasoner",
          "OWL 2 DL profile: profile not checked",
          "Upper-ontology alignment: no BFO/COB/DOLCE import found",
          "Standard relations (RO): does not import the Relation Ontology",
          "ROBOT report: no errors: no ROBOT report available",
          "ROBOT report: warning density: no ROBOT report available",
          "Pitfall scan: no critical pitfalls: no pitfall scan or ROBOT report yet"
        ]
      },
      "maintenance": {
        "score": 2,
        "max": 16,
        "steps": [
          {
            "label": "Recency",
            "pts": 2,
            "max": 10,
            "detail": "2025-09-03 → 13.7 months (≤ 2 years)"
          },
          {
            "label": "Release cadence (12 months)",
            "pts": 0,
            "max": 6,
            "detail": "0 releases"
          }
        ],
        "notes": [
          "Recency: 2025-09-03 → 13.7 months (≤ 2 years)",
          "Release cadence (12 months): 0 releases"
        ]
      },
      "adoption": {
        "score": 3,
        "max": 16,
        "steps": [
          {
            "label": "Documented adopting projects",
            "pts": 0,
            "max": 7,
            "detail": "0 projects"
          },
          {
            "label": "Reused by other ontologies",
            "pts": 3,
            "max": 4,
            "detail": "10 vocabularies (LOV)"
          },
          {
            "label": "Community signal",
            "pts": 0,
            "max": 5,
            "detail": "max(stars 0 → 0, citations 0 → 0)"
          }
        ],
        "notes": [
          "Documented adopting projects: 0 projects",
          "Reused by other ontologies: 10 vocabularies (LOV)",
          "Community signal: max(stars 0 → 0, citations 0 → 0)"
        ]
      }
    },
    "lastActivity": "2025-09-03T18:39:04.000Z",
    "adopterCount": 0,
    "reuseCount": 10,
    "importCount": 0,
    "registries": [
      "TIB",
      "Bioregistry"
    ],
    "evaluatedVersion": {
      "label": "file of 2025-09-03",
      "from": "Last-Modified of the download",
      "value": "2025-09-03T18:39:04.000Z",
      "all": [
        {
          "label": "file of 2025-09-03",
          "from": "Last-Modified of the download",
          "value": "2025-09-03T18:39:04.000Z"
        }
      ]
    },
    "evaluatedAt": "2026-10-26T03:21:53.040Z",
    "runId": "2026-10-26T02-37-38Z",
    "adopters": []
  },
  "history": [
    {
      "runId": "2026-10-26T02-37-38Z",
      "at": "2026-10-26T03:31:18.947Z",
      "score": 29,
      "grade": "E",
      "fair": 25,
      "version": "file of 2025-09-03",
      "terms": null,
      "stars": null,
      "license": null,
      "lastActivity": "2025-09-03T18:39:04.000Z",
      "adopters": 0,
      "links": {
        "homepage": "ok",
        "download": "ok"
      },
      "archived": false,
      "rubric": "3.4",
      "snapshot": "https://schemascope.org/runs/2026-10-26T02-37-38Z.json"
    }
  ],
  "changes": [],
  "recordProvenance": {
    "source": "harvest",
    "retrievedAt": "2026-10-25T22:34:26Z",
    "registries": [
      {
        "registry": "Bioregistry",
        "key": "bioregistry",
        "id": "sh",
        "url": "https://bioregistry.io/api/registry/sh",
        "retrievedAt": "2026-10-25T21:49:00Z"
      },
      {
        "registry": "TIB Terminology Service",
        "key": "tib",
        "id": "sh",
        "url": "https://terminology.tib.eu/ts/ontologies/sh",
        "retrievedAt": "2026-10-25T21:49:00Z"
      },
      {
        "registry": "Linked Open Vocabularies (LOV)",
        "key": "lov",
        "id": "sh",
        "url": "https://lov.linkeddata.es/dataset/lov/vocabs/sh",
        "retrievedAt": "2026-10-25T21:49:00Z"
      },
      {
        "registry": "Discovered via prefix.cc",
        "key": "discovery",
        "id": "shacl",
        "url": "http://prefix.cc/shacl",
        "artefact": "http://www.w3.org/ns/shacl",
        "retrievedAt": "2026-10-25T22:34:26Z",
        "alsoFoundVia": [
          {
            "channel": "prefix.cc",
            "via": "http://prefix.cc/shacl",
            "url": "http://www.w3.org/ns/shacl"
          }
        ]
      }
    ],
    "fields": {
      "acronym": "Bioregistry",
      "name": "Bioregistry",
      "description": "Bioregistry",
      "homepage": "Bioregistry",
      "download": "Bioregistry",
      "formats": "Bioregistry",
      "license": "Bioregistry",
      "tags": "Bioregistry"
    }
  },
  "evaluationProvenance": {
    "@context": {
      "prov": "http://www.w3.org/ns/prov#",
      "schemascope": "https://schemascope.org/ns#"
    },
    "@id": "https://schemascope.org/o/sh/#evaluation",
    "@type": "prov:Entity",
    "prov:specializationOf": {
      "@id": "https://www.w3.org/ns/shacl.rdf",
      "schemascope:evaluatedVersion": "2025-09-03T18:39:04.000Z"
    },
    "prov:wasGeneratedBy": {
      "@id": "https://schemascope.org/runs/2026-10-26T02-37-38Z",
      "@type": "prov:Activity",
      "prov:startedAtTime": "2026-10-26T02:37:38.997Z",
      "prov:endedAtTime": "2026-10-26T03:31:18.947Z",
      "prov:wasAssociatedWith": {
        "@id": "https://schemascope.org/ns#evaluator",
        "@type": "prov:SoftwareAgent",
        "schemascope:version": "2.0.0"
      },
      "prov:used": [
        {
          "@id": "https://www.w3.org/TR/shacl",
          "prov:atTime": "2026-10-26T03:21:52.550Z"
        },
        {
          "@id": "https://www.w3.org/ns/shacl.rdf",
          "prov:atTime": "2026-10-26T03:21:52.495Z"
        },
        {
          "@id": "https://www.w3.org/ns/shacl.rdf",
          "prov:atTime": "2026-10-26T03:21:52.504Z"
        },
        {
          "@id": "https://service.tib.eu/ts4tib/api/ontologies/sh",
          "prov:atTime": "2026-10-26T03:21:53.040Z"
        },
        {
          "@id": "https://bioregistry.io/api/registry/sh",
          "prov:atTime": "2026-10-26T03:21:52.358Z"
        }
      ]
    },
    "prov:generatedAtTime": "2026-10-26T03:21:53.040Z"
  }
}