description <http://ua.be/simple_car/description/definitions#> as definitions {
	uses <http://ua.be/sdo2l/vocabulary/base#> as base
	uses <http://ua.be/sdo2l/vocabulary/ftg#> as ftg

	ci requirementList-def : ftg:Formalism [
		base:hasName "Requirement List"
	]

	ci structural-model-def : ftg:Formalism [
		base:hasName "Structural Model"
	]

	ci shacl-property-def : ftg:Formalism [
		base:hasName "SHACL Property"
	]

	ci violation-report-def : ftg:Formalism [
		base:hasName "Violation Report"
	]

	ci requirement-elicitation-act-def : ftg:Transformation [
		base:hasName "Requirement Elicitation"
		ftg:outputs requirementList-def
	]

	ci property-design-act-def : ftg:Transformation [
		base:hasName "Property Design"
		ftg:outputs requirementList-def
	]

	ci architectural-design-act-def : ftg:Transformation [
		base:hasName "Architectural Design"
		ftg:isInputtedBy requirementList-def
		ftg:outputs structural-model-def
	]

	ci property-verification-act-def : ftg:Transformation [
		base:hasName "Property Verification"
		ftg:isInputtedBy requirementList-def
		ftg:isInputtedBy shacl-property-def
		ftg:outputs violation-report-def
	]
}
