Issue 4546: issue: excluded attributes (bqs-ftf) Source: Japan Biological Informatics Consortium (Mr. Martin Senger, martin.senger(at)gmail.com) Nature: Uncategorized Issue Severity: Summary: The BQS has a notion of the "excluded attributes". They can be specified in query methods and cause that the resulting collection has some attributes missing. The intention was to allow to create more lightweight collections (without long abstracts, for example). This reason is still valid and I am not going to ask to remove it from the query methods. However, during our implementation we found that also other "user pattern" is quite often: To create a collection, then ask for few attributes (like titles), and then ask for the another few attributes, and only that, finally, ask for the (whole) collection. The existence of excluded attributes in query methods makes it possible to realize such pattern - but the implementation become quite complex. Because whenever the user wants to change the set of excluded attributes, the server has to create a new collection (which may be optimalized, I know, but still it is a hassle for the implementation). Therefore, I am thinking about adding the "excluded attributes" parameter also to the retrieval methods. I would not expect big problems from the FTF's P&P point of view, because I hope that I can prove that adding such parameter is not new functionality but only a convenient way how to achieve already existing functions. However, I would like to ask for your advice, if this addition is or is not bad from the BQS architecture point of view. I know that our implementation (and perhaps other implementations as well) would be much cleaner with having these attributes, but is that enough to justify the suggested change? Resolution (would be): To add a parameter "in AttributeList excluded" to the retrival methods (all in BibRefCollection interface): - retrieve_all_elements() - create_iterator() - find_by_id() Resolution: see below Revised Text: To add a parameter in AttributeList excluded to the three retrieval methods (all are in the BibRefCollection interface). The new IDL will be: DsLSRBibObjects::BibliographicReference find_by_id ( in DsLSRBibObjects::BibRefIdentifier id, in AttributeList excluded) raises (CosQuery::QueryInvalid, NotFound); DsLSRBibObjects::BibliographicReferenceList retrieve_all_elements ( in AttributeList excluded) raises (LimitExceeded); BibRefIterator create_iterator (in AttributeList excluded); To add the following text to the "excluded attributes" chapter (section 2.2.5.1): Another use for the "excluded attributes" is in retrieval methods. A query collection, once created, can be asked to return more lightweight citations by specifying such list. Note that the same query collection can be asked to retrieve again the same citations but with a different set of the excluded attributes. To add the following text to the sesction 2.2.9 under the paragraph describing create_iterator method: The returned citations may have some attributes empty if the iterator was created with a non-empty excluded attribute list Actions taken: August 30, 2001: received issue May 13, 2002: closed issue Discussion: End of Annotations:===== Date: Sat, 17 Nov 2001 16:08:53 +0000 (GMT) From: Martin Senger To: bqs-ftf@omg.org cc: openbqs-dev@ebi.ac.uk Subject: Call to vote: Issue 4546 - excluded attributes Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-UIDL: (aod9bKOe9pP"!!/J