As discussed in AutomationMeetings20120223, some examples of the discussed Automation Contribution options have been created.
14 March update - Option C - Use reification to further describe contributions - has been removed. The workgroup felt reification is more appropriate to make statements about objects and did not differ significantly from Option B - add additional optional attributes to contributions.
14 March update - Improvements to the examples.
Option A - Turtle and RDF/XML - generic resource as currently defined in the draft specification
#Example Automation Result - freeform contributions
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix dcterms: <http://purl.org/dc/terms/>.
@prefix oslc: <http://open-services.net/ns/core#>.
@prefix oslc_auto: <http://open-services.net/ns/auto#>.
@prefix my_ns: <http://example.org/ns/my_ns#>.
<http://example.org/autoResults/result1>
rdf:type oslc_auto:AutomationResult;
dcterms:title "Automation Result 1";
dcterms:identifier "1"^^<http://www.w3.org/2001/XMLSchema#integer>;
oslc_auto:state "Complete";
oslc_auto:verdict "Success";
oslc_auto:pass "true";
oslc_auto:reportsOnAutomationPlan <http://example.org/autoPlan/plan1>;
oslc_auto:hasContribution <http://example.org/testResult/result1>;
oslc_auto:hasContribution _:log_contrib;
oslc_auto:hasContribution _:approval_contrib.
_:log_contrib
my_ns:status_page "http://buildserver1/builds/123/status.html";
my_ns:logfile "http://buildserver1/builds/123/logfile.txt";
my_ns:build_location "ftp://anonymous@fileserver1/home/builds/123/build_output_20120314a.zip"
_:approval_contrib
my_ns:approver "Mike Fiedler";
my_ns:approval_status "Approved".
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:oslc="http://open-services.net/ns/core#"
xmlns:oslc_auto="http://open-services.net/ns/auto#"
xmlns:my_ns="http://example.org/ns/my_ns#">
<rdf:Description rdf:about="http://example.org/autoResults/result1">
<rdf:type rdf:resource="http://open-services.net/ns/auto#AutomationResult"/>
<dcterms:title>Automation Result 1</dcterms:title>
<dcterms:identifier rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1</dcterms:identifier>
<oslc_auto:state>Complete</oslc_auto:state>
<oslc_auto:verdict>Success</oslc_auto:verdict>
<oslc_auto:pass>true</oslc_auto:pass>
<oslc_auto:reportsOnAutomationPlan rdf:resource="http://example.org/autoPlan/plan1"/>
<oslc_auto:hasContribution rdf:resource="http://example.org/testResult/result1"/>
<oslc_auto:hasContribution rdf:nodeID="node16nrg1b53x13894"/>
<oslc_auto:hasContribution rdf:nodeID="node16nrg1b53x13895"/>
</rdf:Description>
<rdf:Description rdf:nodeID="node16nrg1b53x13894">
<my_ns:status_page>http://buildserver1/builds/123/status.html</my_ns:status_page>
<my_ns:logfile>http://buildserver1/builds/123/logfile.txt</my_ns:logfile>
<my_ns:build_location>ftp://anonymous@fileserver1/home/builds/123/build_output_20120314a.zip</my_ns:build_location>
</rdf:Description>
<rdf:Description rdf:about="http://any23.org/tmp/approval_contrib">
<my_ns:approver>Mike Fiedler</my_ns:approver>
<my_ns:approval_status>Approved</my_ns:approval_status>
</rdf:Description>
</rdf:RDF>
Option B - Turtle and RDF/XML - resource with some ”’optional”’ basic attributes
#Example Automation Result - optional additional basic attributes
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix dcterms: <http://purl.org/dc/terms/>.
@prefix oslc: <http://open-services.net/ns/core#>.
@prefix oslc_auto: <http://open-services.net/ns/auto#>.
@prefix oslc_qm: <http://open-services.net/ns/qm#>.
@prefix my_ns: <http://example.org/ns/my_ns#>.
<http://example.org/autoResults/result1>
rdf:type oslc_auto:AutomationResult;
dcterms:title "Automation Result 1";
dcterms:identifier "1"^^<http://www.w3.org/2001/XMLSchema#integer>;
oslc_auto:state "Complete";
oslc_auto:verdict "Success";
oslc_auto:pass "true";
oslc_auto:reportsOnAutomationPlan <http://example.org/autoPlan/plan1>;
oslc_auto:hasContribution _:test_contrib;
oslc_auto:hasContribution _:logfile_contrib;
oslc_auto:hasContribution _:approval_contrib .
_:test_contrib
dcterms:type oslc_qm:TestResult;
oslc_qm:TestResult <http://example.org/testResult/result1>.
_:log_contrib
dcterms:title "logfile.txt";
dcterms:description "Logfile for build 123";
dcterms:type my_ns:Logfile;
my_ns:status_page "http://buildserver1/builds/123/status.html";
my_ns:logfile "http://buildserver1/builds/123/logfile.txt";
my_ns:build_location "ftp://anonymous@fileserver1/home/builds/123/build_output_20120314a.zip".
_:approval_contrib
dcterms:title "Approval Record 123";
dcterms:description "The approval record for build 123";
dcterms:type my_ns:Approval;
my_ns:approver "Mike Fiedler";
my_ns:approval_status "Approved".
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:oslc="http://open-services.net/ns/core#"
xmlns:oslc_auto="http://open-services.net/ns/auto#"
xmlns:oslc_qm="http://open-services.net/ns/qm#"
xmlns:my_ns="http://example.org/ns/my_ns#">
<rdf:Description rdf:about="http://example.org/autoResults/result1">
<rdf:type rdf:resource="http://open-services.net/ns/auto#AutomationResult"/>
<dcterms:title>Automation Result 1</dcterms:title>
<dcterms:identifier rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1</dcterms:identifier>
<oslc_auto:state>Complete</oslc_auto:state>
<oslc_auto:verdict>Success</oslc_auto:verdict>
<oslc_auto:pass>true</oslc_auto:pass>
<oslc_auto:reportsOnAutomationPlan rdf:resource="http://example.org/autoPlan/plan1"/>
<oslc_auto:hasContribution rdf:nodeID="node16n9td71qx2916433"/>
<oslc_auto:hasContribution rdf:nodeID="node16n9td71qx2916434"/>
<oslc_auto:hasContribution rdf:nodeID="node16n9td71qx2916435"/>
</rdf:Description>
<rdf:Description rdf:nodeID="node16n9td71qx2916433">
<dcterms:type rdf:resource="http://open-services.net/ns/qm#TestResult"/>
<oslc_qm:TestResult rdf:resource="http://example.org/testResult/result1"/>
</rdf:Description>
<rdf:Description rdf:nodeID="node16n9td71qx2916436">
<dcterms:title>logfile.txt</dcterms:title>
<dcterms:description>Logfile for build 123</dcterms:description>
<dcterms:type rdf:resource="http://example.org/ns/my_ns#Logfile"/>
<my_ns:status_page>http://buildserver1/builds/123/status.html</my_ns:status_page>
<my_ns:logfile>http://buildserver1/builds/123/logfile.txt</my_ns:logfile>
<my_ns:build_location>ftp://anonymous@fileserver1/home/builds/123/build_output_20120314a.zip</my_ns:build_location>
</rdf:Description>
<rdf:Description rdf:nodeID="node16n9td71qx2916435">
<dcterms:title>Approval Record 123</dcterms:title>
<dcterms:description>The approval record for build 123</dcterms:description>
<dcterms:type rdf:resource="http://example.org/ns/my_ns#Approval"/>
<my_ns:approver>Mike Fiedler</my_ns:approver>
<my_ns:approval_status>Approved</my_ns:approval_status>
</rdf:Description>
</rdf:RDF>