An appendix of the
OSLC Change Management 2.0 Specification
Overview
This defines the definitions of the OSLC CM 2.0 defined resources utilizing the OSLC Core Shape Resource definition. Implementations may use these shapes to as a basis for their work, providing their own property additions and additional constraints on OSLC defined properties.
ChangeRequest
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:foaf="http://http://xmlns.com/foaf/0.1/"
xmlns:oslc="http://open-services.net/ns/core#"
xmlns:oslc_cm="http://open-services.net/ns/cm#">
<oslc:ResourceShape
rdf:about="http://example.com/oslc/shapes/ChangeRequest">
<dcterms:title>CM V2 Change Request</dcterms:title>
<oslc:describes rdf:resource="http://open-services.net/ns/cm#ChangeRequest" />
<rdf:type rdf:resource="http://open-services.net/ns/core#ResourceShape" />
<!-- OSLC Core Common Properties -->
<oslc:property>
<oslc:Property>
<oslc:name>shortTitle</oslc:name>
<dcterms:title>Short title</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/core#shortTitle" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#XMLLiteral" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>description</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/description" />
<oslc:valueType
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>title</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/title" />
<oslc:valueType
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Exactly-one" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>identifier</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/identifier" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Exactly-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>subject</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/subject" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>creator</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/creator" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#AnyResource" />
<oslc:range rdf:resource="http://http://xmlns.com/foaf/0.1/Person" />
<oslc:valueShape rdf:resource="http://example.com/oslc/shapes/Person" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Either" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>contributor</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/contributor" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#AnyResource" />
<oslc:range rdf:resource="http://http://xmlns.com/foaf/0.1/Person" />
<oslc:valueShape rdf:resource="http://example.com/oslc/shapes/Person" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Either" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>created</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/created" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>modified</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/modified" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>type</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>serviceProvider</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/core#serviceProvider" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/core#ServiceProvider" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>instanceShape</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/core#instanceShape" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/core#ResourceShape" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>discussedBy</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/core#discussedBy" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#AnyResource" />
<oslc:range rdf:resource="http://open-services.net/ns/core#Discussion" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Either" />
</oslc:Property>
</oslc:property>
<!-- OSLC CM additional properties -->
<oslc:property>
<oslc:Property>
<oslc:name>type</oslc:name>
<oslc:propertyDefinition rdf:resource="http://purl.org/dc/terms/type" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>closeDate</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#closeDate" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>status</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#status" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#String" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
</oslc:Property>
</oslc:property>
<!-- State predicates -->
<oslc:property>
<oslc:Property>
<oslc:name>closed</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#closed" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#Boolean" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>inprogress</oslc:name>
<dcterms:title>in progress</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#inprogress" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#Boolean" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>fixed</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#fixed" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#Boolean" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>approved</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#approved" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#Boolean" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>reviewed</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#reviewed" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#Boolean" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>verified</oslc:name>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#verified" />
<oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#Boolean" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" />
<oslc:readOnly>true</oslc:readOnly>
</oslc:Property>
</oslc:property>
<!-- Relationship properties -->
<oslc:property>
<oslc:Property>
<oslc:name>relatedChangeRequest</oslc:name>
<dcterms:title>Related ChangeRequest</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#relatedChangeRequest" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/cm#ChangeRequest" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>affectsPlanItem</oslc:name>
<dcterms:title>Affects PlanItem</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#affectsPlanItem" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/cm#ChangeRequest" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>affectedByDefect</oslc:name>
<dcterms:title>Affected by Defect</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#affectedByDefect" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/cm#ChangeRequest" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>tracksRequirement</oslc:name>
<dcterms:title>Tracks Requirement</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#tracksRequirement" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/rm#Requirement" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>implementsRequirement</oslc:name>
<dcterms:title>Implements Requirement</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#implementsRequirement" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/rm#Requirement" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>affectsRequirement</oslc:name>
<dcterms:title>Affects Requirement</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#affectsRequirement" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/rm#Requirement" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>testedByTestCase</oslc:name>
<dcterms:title>Tested by TestCase</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#testedByTestCase" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/qm#TestCase" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>affectsTestResult</oslc:name>
<dcterms:title>Affects TestResult</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#affectsTestResult" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/qm#TestResult" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>blocksTestExecutionRecord</oslc:name>
<dcterms:title>Blocks TestExecutionRecord</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#blocksTestExecutionRecord" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/qm#TestExecutionRecord" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>relatedTestExecutionRecord</oslc:name>
<dcterms:title>Related TestExecutionRecord</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#relatedTestExecutionRecord" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/qm#TestExecutionRecord" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>relatedTestCase</oslc:name>
<dcterms:title>Related TestCase</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#relatedTestCase" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/qm#TestCase" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>relatedTestPlan</oslc:name>
<dcterms:title>Related TestPlan</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#relatedTestPlan" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/qm#TestPlan" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>relatedTestScript</oslc:name>
<dcterms:title>Related TestScript</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#relatedTestScript" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/qm#TestScript" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
<oslc:property>
<oslc:Property>
<oslc:name>tracksChangeSet</oslc:name>
<dcterms:title>Tracks ChangeSet</dcterms:title>
<oslc:propertyDefinition
rdf:resource="http://open-services.net/ns/cm#tracksChangeSet" />
<oslc:valueType rdf:resource="http://open-services.net/ns/core#Resource" />
<oslc:range rdf:resource="http://open-services.net/ns/scm#ChangeSet" />
<oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-many" />
<oslc:representation rdf:resource="http://open-services.net/ns/core#Reference" />
</oslc:Property>
</oslc:property>
</oslc:ResourceShape>
</rdf:RDF>
foaf:Person
See
OSLCCoreSpecRDFXMLExamples
oslc:Discussion
See
OSLCCoreSpecRDFXMLExamples
oslc:Comment
See
OSLCCoreSpecRDFXMLExamples