It's all about the answers!

Ask a question

How do I stop artifacts from showing up twice in Report Builder when using Lifecycle Query Engine, when showing the Artifact Type?

Edward Chan (553) | asked Sep 05 '23, 11:19 p.m.
When creating a Report Builder Lifecycle Query Engine report from DOORS NEXT, if you add the attribute "Type", all artifacts are duplicated in the report. This is because it that Lifecycle Query Engine confuses "Artifact Type" and "Format". For instance:
8522   Requirement     <-- Artifact Type
8522   Text            <-- Format
8578 Requirement <-- Artifact Type
8578 Text            <-- Format
Is there a way to work around this issue?

Accepted answer

permanent link
David Honey (1.8k17) | answered Sep 06 '23, 4:46 a.m.

They are not duplicates as such. Requirements often have multiple RDF types and then the results include each of those types in the results.When reporting on artifacts whose columns have multiple values, you get the Cartesian product. This is how queries work, regardless of SPARQL, SQL, Cypher etc.

If you report on Requirement (an OSLC defined resource), the Type property represents the name of the resource shape associated with each requirement. If you report on a specific subtype of Requirement ( e.g. Feature), the Type property represents the RDF types of those requirements, not the name of the instance shape. Requirements commonly have multiple RDF types. However, in such a use case, the requirements will all be of associated with resource shapes of the same name and that name is already known. For example, when reporting on Features, the shape name is always "Feature".

The JTS development team has discussed the inconsistency between the semantics of Type in the above 2 use cases. If you would like to see an improvement in the design, please submit your idea through the IBM Ideas Portal.

In the meantime, you could just add a custom expression that always returned the name of the known subtype selected in the report.

Edward Chan selected this answer as the correct answer

Edward Chan commented Sep 06 '23, 7:28 p.m.

Thanks David. I have just now double-checked a report from Data Warehouse using the same DOORS NEXT data. Data Warehouse doesn't have this same issue - when I select "Requirement" and "Type", it only returns the "Artifact Type". So there is definitely an inconsistency with the way that Data Warehouse and LQE interpret "Type". 

One solution would be to allow us to select "Artifact Type" so that it matches the title in DOORS NEXT, rather than "Type". I understand I can raise this as an idea request but also that there is the filter workaround as you mention.

Your answer

Register or to post your answer.