PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX testdescription: <http://www.w3.org/2006/03/test-description#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

testdescription:SpecificationTestCase a rdfs:Class ;
  rdfs:label "A Test Case based on a specification"@en ;
  rdfs:comment "A test case which relates to a requirement set in a specification" ;
  rdfs:subClassOf testdescription:TestCase .

testdescription:specificationReference a rdf:Property ;
  rdfs:label "reference in specification"@en ;
  rdfs:comment "a description or a link of what part of which specification lead to the creation of this test case"@en ;
  rdfs:domain testdescription:TestCase ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://purl.org/dc/elements/1.1/description> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

testdescription:reviewStatus a rdf:Property ;
  rdfs:label "status of review"@en ;
  rdfs:range testdescription:ReviewStatus .

testdescription:purpose a rdf:Property ;
  rdfs:label "purpose"@en ;
  rdfs:domain testdescription:TestCase ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://purl.org/dc/elements/1.1/rights> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://purl.org/dc/elements/1.1/title> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

testdescription:input a rdf:Property ;
  rdfs:label "input"@en ;
  rdfs:comment "Parameters or data that are needed for the test execution."@en ;
  rdfs:domain testdescription:TestCase ;
  rdfs:range <https://w3id.org/linkml/Any> .

testdescription:expectedResults a rdf:Property ;
  rdfs:label "expected results"@en ;
  rdfs:comment "The results that a conformant implementation is expected to produce when this test is executed" ;
  rdfs:domain testdescription:TestCase ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://purl.org/dc/elements/1.1/contributor> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

testdescription:preCondition a rdf:Property ;
  rdfs:label "precondition"@en ;
  rdfs:comment "a condition that must be met before the test is executed"@en ;
  rdfs:domain testdescription:TestCase ;
  rdfs:range <https://w3id.org/linkml/Any> .

testdescription:TestCase a rdfs:Class ;
  rdfs:label "A Test Case"@en ;
  rdfs:comment "A set of test inputs, execution conditions, and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement" .

testdescription:ReviewStatus a rdfs:Class ;
  rdfs:label "Status in a review process"@en ;
  rdfs:comment "A particular stage in a review process" .

<http://www.w3.org/2006/gen/ont#InformationResource> a rdfs:Class .

<https://w3id.org/linkml/Any> a rdfs:Class ;
  rdfs:comment "An unconstrained type or object" .

testdescription:informationResourceInput a rdf:Property ;
  rdfs:label "information resource as input"@en ;
  rdfs:comment "Information Resource (e.g. a file) used as input for the test case"@en ;
  rdfs:range <http://www.w3.org/2006/gen/ont#InformationResource> ;
  rdfs:subPropertyOf testdescription:input .

testdescription:informationResourceResults a rdf:Property ;
  rdfs:label "information resource as expected results"@en ;
  rdfs:comment "Information Resource (e.g. a file) that contains the expected results for the test case" ;
  rdfs:range <http://www.w3.org/2006/gen/ont#InformationResource> ;
  rdfs:subPropertyOf testdescription:expectedResults .

testdescription:SimpleReviewStatus a rdfs:Class ;
  rdfs:label "A status for a simple review process containing 6 possible stages"@en ;
  rdfs:subClassOf testdescription:ReviewStatus .

testdescription:unreviewed a testdescription:SimpleReviewStatus ;
  rdfs:label "unreviewed"@en ;
  rdfs:comment "the item has been proposed, but hasn't been reviewed (e.g. for completeness) yet" .

testdescription:accepted a testdescription:SimpleReviewStatus ;
  rdfs:label "accepted"@en ;
  rdfs:comment "the item has gone through a first review, which shows it as valid for further processing" .

testdescription:assigned a testdescription:SimpleReviewStatus ;
  rdfs:label "assigned"@en ;
  rdfs:comment "a more specific review of the item has been assigned to someone" .

testdescription:approved a testdescription:SimpleReviewStatus ;
  rdfs:label "approved"@en ;
  rdfs:comment "the item has gone through the review process and was approved" .

testdescription:rejected a testdescription:SimpleReviewStatus ;
  rdfs:label "rejected"@en ;
  rdfs:comment "the item has gone through the review process and was rejected" .

testdescription:onhold a testdescription:SimpleReviewStatus ;
  rdfs:label "on hold" ;
  rdfs:comment "the item had already gone through the review process, but the results of the review need to be re-assessed due to new input" .
