It's all about the answers!

Ask a question

Is there a way to use OSLC to retrieve custom properties of a test or TCER or TCER result?


Gary Dang (59328552) | asked May 06 '15, 2:55 p.m.
When a RTC defect is linked to a test case, the CCM OSLC query returns the linked test case as shown below:

<oslc_cm:relatedTestCase rdf:resource="https://myCLMserver/qm/oslc_qm/contexts/_LcZ8IUMeEeScN8VySypHig/resources/com.ibm.rqm.planning.VersionedTestCase/_29Ek73NnEeS4P9VZR0arew"/>

However, when I do a GET using this OSLC link to retrieve the QM test case, no custom properties of the test case are returned in the result.

After digging a little, it looks like that if I do a REST call such the following (note: I have to know the QM PA name and the test case ID), I am able to retrieve the custom properties:

"https://<myCLMserver>/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/RQM50_UAT_PA/testcase/urn:com.ibm.rqm:testcase:29"

I don't want to have to traverse the OSLC to find the test case ID and PA name in order to issue the REST call.  I need to be able to issue an OSLC call to get the QM test case custom properties.  Is this possible?  If so, can you provide an example of the OSLC syntax?


Accepted answer


permanent link
Donald Nong (14.4k314) | answered May 07 '15, 4:28 a.m.
I'm afraid you have to. The RDF presentations generated by the OSLC API and the reportable REST API use quite different name spaces. The custom property is defined as "qm:customAttributes" in "http://jazz.net/xmlns/alm/qm/v0.1/". None of the name spaces in the OSLC presentation has something similar.
Gary Dang selected this answer as the correct answer

2 other answers



permanent link
Gary Dang (59328552) | answered May 11 '15, 11:00 a.m.
thanks Donald.  Can you also confirm the behavior below is also due to OSLC limitation?

I am trying to use OSLC to retrieve RTC workitems of a specific work item type (defect) and certain status using the dcterms:type and oslc_cm:status (note: I don't want to use rtc_cm:state).               
                                                                       
For example, regarding defect type, I can do this.                     
                                                                       
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=rtc_cm:type="com.acn.adt3.workitem.workitemtype.defect"&oslc.
select=dcterms:created,dcterms:title,dcterms:type                      
                                                                       
but I can't do this (get 400 bad request error)..                      
                                                                       
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=dcterms:type="ADT Defect""&oslc.select=dcterms:created,     
dcterms:title,dcterms:type                                             
                                                                       
Regarding status, I can do this (get 400 bad request error)            
                                                                       
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=rtc_cm:state="com.acn.adt3.workflow.defect.state.s1"&oslc.  
select=dcterms:created,dcterms:title,dcterms:type                      
                                                                       
but not do this..                                                      
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=oslc_cm:status="New"&oslc.select=dcterms:created,dcterms:   
title,dcterms:type   

permanent link
Gary Dang (59328552) | answered May 11 '15, 11:01 a.m.
thanks Donald.  Can you also confirm the behavior below is also due to OSLC limitation?

I am trying to use OSLC to retrieve RTC workitems of a specific work item type (defect) and certain status using the dcterms:type and oslc_cm:status (note: I don't want to use rtc_cm:state).               
                                                                       
For example, regarding defect type, I can do this.                     
                                                                       
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=rtc_cm:type="com.acn.adt3.workitem.workitemtype.defect"&oslc.
select=dcterms:created,dcterms:title,dcterms:type                      
                                                                       
but I can't do this (get 400 bad request error)..                      
                                                                       
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=dcterms:type="ADT Defect""&oslc.select=dcterms:created,     
dcterms:title,dcterms:type                                             
                                                                       
Regarding status, I can do this (get 400 bad request error)            
                                                                       
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=rtc_cm:state="com.acn.adt3.workflow.defect.state.s1"&oslc.  
select=dcterms:created,dcterms:title,dcterms:type                      
                                                                       
but not do this..                                                      
https://<server>/ccm/oslc/contexts/_kyDzEELtEeSORJDfpY2W9w/workitems?  
oslc.where=oslc_cm:status="New"&oslc.select=dcterms:created,dcterms:   
title,dcterms:type   

Your answer


Register or to post your answer.