Linked.Archi TIME Framework SHACL Shapes
type: Ontology
imports: core-shapes#
license: http://creativecommons.org/licenses/by/4.0/
preferred namespace prefix: timesh
creator: Kalin Maldzhanski
description: SHACL shapes for validating TIME framework model data. Ensures applications have required metadata, fit assessments are complete, and controlled vocabulary values are valid. This is the SHACL layer of the TIME framework. Use together with: * time-onto.ttl (OWL) — defines classes, properties, and OWL reasoning rules * time-tax.ttl (SKOS) — organizes controlled vocabularies for navigation
created: 2020-07-27
modified: 2026-05-03
publisher: Linked.Archi
publisher: linked.archi
status: draft
version IRI: 0.1.0#
version info: 0.1.0

ApplicationShape
type: NodeShape
target class: Application
property:
  path: prefLabel
  min count: 1
  message: Every Application must have a skos:prefLabel.
property:
  path: hasFitAssessment
  min count: 1
  message: Every Application should have at least one FitAssessment.
  severity: Warning
property:
  path: businessOwner
  max count: 1
  class: Person
  message: businessOwner must be a Person.
property:
  path: itOwner
  max count: 1
  class: Person
  message: itOwner must be a Person.
property:
  path: lifecycleState
  max count: 1
  in: Plan
  in: Build
  in: Run
  in: Retire
  message: lifecycleState must be one of: Plan, Build, Run, Retire.

FitAssessmentShape
type: NodeShape
target class: FitAssessment
property:
  path: assessedApplication
  min count: 1
  max count: 1
  class: Application
  message: Every FitAssessment must reference exactly one Application.
property:
  path: assessmentDate
  min count: 1
  max count: 1
  datatype: date
  message: Every FitAssessment must have an assessmentDate (xsd:date).
property:
  path: timeDisposition
  min count: 1
  max count: 1
  in: Tolerate
  in: Invest
  in: Migrate
  in: Eliminate
  message: Every FitAssessment must have a timeDisposition: Tolerate, Invest, Migrate, or Eliminate.
property:
  path: functionalFitScore
  max count: 1
  datatype: integer
  min inclusive: 1
  max inclusive: 5
  message: functionalFitScore must be an integer between 1 and 5.
property:
  path: technicalFitScore
  max count: 1
  datatype: integer
  min inclusive: 1
  max inclusive: 5
  message: technicalFitScore must be an integer between 1 and 5.
property:
  path: costFitScore
  max count: 1
  datatype: integer
  min inclusive: 1
  max inclusive: 5
  message: costFitScore must be an integer between 1 and 5.
property:
  path: functionalFitRating
  max count: 1
  in: High
  in: Low
  message: functionalFitRating must be High or Low.
property:
  path: technicalFitRating
  max count: 1
  in: High
  in: Low
  message: technicalFitRating must be High or Low.
property:
  path: costFitRating
  max count: 1
  in: High
  in: Low
  message: costFitRating must be High or Low.
property:
  path: assessmentStatus
  max count: 1
  in: Draft
  in: Approved
  in: Superseded
  in: Rejected
  message: assessmentStatus must be one of: Draft, Approved, Superseded, Rejected.
property:
  path: rationale
  min count: 1
  message: Every FitAssessment should have a rationale explaining the disposition.
  severity: Warning

EvidenceShape
type: NodeShape
target class: Evidence
property:
  path: prefLabel
  min count: 1
  message: Every Evidence item must have a skos:prefLabel.
property:
  path: evidenceType
  min count: 1
  max count: 1
  in: ArchitectureReview
  in: SecurityAssessment
  in: OperationsMetrics
  in: CostAnalysis
  in: BusinessStakeholderInput
  in: VendorRoadmap
  in: TechnicalDebtRegister
  in: OtherEvidence
  message: Every Evidence item must have a valid evidenceType.

FitCriterionScoreShape
type: NodeShape
target class: FitCriterionScore
property:
  path: criterion
  min count: 1
  max count: 1
  class: FitCriterion
  message: Every FitCriterionScore must reference exactly one FitCriterion.
property:
  path: criterionScoreValue
  min count: 1
  max count: 1
  datatype: integer
  min inclusive: 1
  max inclusive: 5
  message: criterionScoreValue must be an integer between 1 and 5.

FitCriterionShape
type: NodeShape
target class: FitCriterion
property:
  path: prefLabel
  min count: 1
  message: Every FitCriterion must have a skos:prefLabel.
property:
  path: dimension
  min count: 1
  max count: 1
  in: Functional
  in: Technical
  in: Cost
  message: Every FitCriterion must specify its dimension: Functional, Technical, or Cost.