Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

Querybase of Folder Query Capability URI change in the latest DOORS Next Generation

Previous version DNG response:

Query: https://rb-alm-02-t4.de.aaa.com/rm/oslc_rm/_lcBw0GC6Eee-NfIX3gcLkA/services.xml

          <oslc:QueryCapability>
            <dcterms:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
            >Folder Query Capability</dcterms:title>

            <oslc:queryBase rdf:resource="https://rb-alm-02-t4.de.aaa.com/rm/folders?oslc.where=public_rm:parent=https://rb-alm-02-t4.de.aaa.com/rm/folders/_lcBw0GC6Eee-NfIX3gcLkA"/>

          </oslc:QueryCapability>

Latest version of DNG project response:

 <oslc:queryCapability>
          <oslc:QueryCapability>
            <dcterms:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
            >Folder Query Capability</dcterms:title>
            <oslc:queryBase rdf:resource="https://rb-ubk-clm-02.de.aaa.com:9443/rm/folders?oslc.where=public_rm:parent=https%3A%2F%2Frb-ubk-clm-02.de.aaa.com%3A9443%2Frm%2Fprocess%2Fproject-areas%2F_lcBw0GC6Eee-NfIX3gcLkA"/>

          </oslc:QueryCapability>
        </oslc:queryCapability>

So "oslc.where=public_rm:parent " in the resource attribute of querybase points to project root url instead of folder url. Why is this change ? Any background reasons.

0 votes

Comments
The query (oslc.where query parameter) is for previous:


and for latest:


As David points out this isn't correct syntactically for OSLC Query because URLs should be surounded by < >

What version+ifix are your "previous" and "latest" versions?



2 answers

Permanent link

 You're seeing that we changed something about the query capability URLs between versions. As long as you use discovery to find the Folder query capability (i.e. don't hard-code it into your code), then query will continue to work across versions.

0 votes

Comments

I'd also argue that the older query base URL include an oslc.where parameter is confusing. While OSLC discovery doesn't place any restrictions on the query base URL, including an oslc.where parameter seems bizarre. A user would expect to use their own oslc.where parameter value without expecting to preserve what was provided in the base URL. So a DNG change to avoid that confusion is a change for the better.

AFAICT both query capability URLs include oslc.where - it's the value in the query that has changed.


Permanent link
I also notice that the use of oslc.where encoded into the base URL is not conformant with the OSLC Query specification - see https://docs.oasis-open-projects.org/oslc-op/query/v3.0/os/oslc-query.html#oslc.where.

URIs values should be enclosed in angle brackets. For example instead of:
    public_rm:parent=https%3A%2F%2Frb-ubk-clm-02.de.aaa.com%3A9443%2Frm%2Fprocess%2Fproject-areas%2F_lcBw0GC6Eee-NfIX3gcLkA
it should be:
    public_rm:parent=<https%3A%2F%2Frb-ubk-clm-02.de.aaa.com%3A9443%2Frm%2Fprocess%2Fproject-areas%2F_lcBw0GC6Eee-NfIX3gcLkA>

0 votes

Your answer

Register or log in to post 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.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 6,122

Question asked: Jul 12 '17, 8:49 a.m.

Question was seen: 2,459 times

Last updated: Jun 13 '22, 10:24 a.m.

Related questions
Confirmation Cancel Confirm