How Can I Write an RM Query to Fetch Module-Context Artifact URI and Artifact Base-URI at the Same Time?
I am authoring a report in RPE that generates a Word document from a Module. The report works, but I would really like to add a particular feature.
Background:
How I'm trying to do it:
Problem:
By contrast, any hyperlinks that are present in the text refer to the artifacts using the module-context URIs. So we have a mismatch. I can't match up the hyperlinks with the artifacts that were exported.
Question:
Sending a GET to the server using the Module Link URI with the OSLC 2.0 header set gives half of what I need. It returns the full list of all artifacts using the module-context URIs. It seems like there ought to be some kind of OSLC query that I could build that would give me both. Any suggestions? |
One answer
I think there is a work-around for this issue on the authoring side of the Module. It looks like you can retrieve the module-context-aware artifact link if you do so from within the module view. This can be done from the pencil drop-down at the left of the artifact's row. Then, when inserting a cross-reference link to the artifact, you can choose to insert a "web" link and paste in that module-context-aware link. This method is in contrast to the typical procedure which would likely be to simply create the link by referencing the target work item's identifier. Using the work item's identifier creates a link to the base-artifact. So if I can get my users to create module-context-aware links, those links should be preserved in my output report. I think it makes sense that an artifact can have more than one link that takes you to different contexts when you follow it, but it seems like RM's default behavior should be to use the module-context-aware link when you reference an artifact by identifier from within a module. |
Your answer
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.
Comments
An HTTP header "DoorsRP-Request-Type: private" is required to expose the <rm:boundArtifact> attribute of a module artifact when you do a simple GET. But none of the reportable REST API seems to care about this header and adds this attribute in the response.
I don't know how I can set an additional header in the RPE Data Source. The underlying http requests don't seem to be exposed to that level within the RPE tool. Even if I could, I'm not sure if that's going to solve my problem though. It sounds like you're saying that setting the header doesn't affect the output of the API call?