PDA

View Full Version : Indenting search criteria


armsys
01-23-2009, 08:12 PM
Graphical user interface (GUI) of the Search Criteria construction is visually pleasing as long as no indenting rows (criteria) are applied. The benefits of the indenting rows, often than not, diminish and precipitate more confusion than clarity. The following simple complex indenting criteria (see the screen shot) may represent (Reminder >0 minutes AND Begin Date >=12/25/2008 AND Begin Date <= 1/30/2009) AND (Date Completed = NIL OR Date Completed doesn't exists). But I'm not sure.

Textual representation of the Search Criteria are more comprehensible, definitive, and flexible regardless of the complexity involved.

Just my two cents.

Armstrong

armsys
01-23-2009, 08:15 PM
The screen shot for the above post.

armsys
01-23-2009, 08:20 PM
Could someone be very kind enough to interpret the following screen shot? What would be the logical meaning for the unindented last row?
Thanks a lot.
Armstrong

ashwken
01-23-2009, 11:02 PM
Originally posted by armsys
Could someone be very kind enough to interpret the following screen shot? What would be the logical meaning for the unindented last row?
Thanks a lot.
Armstrong
Not sure if this is correct, but this is how I see the statement:

(
(Reminder > 0)
.AND.
(Begin Date >= 12/25/2008)
.AND.
(Begin Date <= 01/30/2009 .AND. Date Completed = NULL)
.OR.
(Date Completed .NOT. exists (NULL))
)

armsys
01-24-2009, 12:38 AM
Originally posted by ashwken
Not sure if this is correct,...

That's exactly my main point, that's, Search Criteria GUI creates more confusion than clarity. Your interpretation doesn't match the result. Specifically, the .OR. (Date Completed .NOT. exists) expression alone could have shown all non-task Info Items. The result doesn't.

Neither do I know the interpretation for sure.

Therefore, it would benefit enormously all UR users by displaying the textual interpretation underneath the Search Criteria matrix (table).

Armstrong

armsys
01-24-2009, 12:54 AM
ashwken,
Thanks for your trying to help.
Armstrong

quant
01-24-2009, 05:22 AM
Originally posted by armsys
Therefore, it would benefit enormously all UR users by displaying the textual interpretation underneath the Search Criteria matrix (table).
I already requested this, but got no reply.

Anyway, if you didn't indent the last row the search would be (as far as I know):

you have two AND and one OR on the same level (the order on the same level does not matter, read in the help file "location does not matter"), by the help file AND takes precedence (all AND are evaluated before any OR, on the same level), so you have

(Reminder > 0 AND Begin Date >= 12/25/2008 AND Begin Date <= 01/30/2009)
OR
Date Completed .NOT. exists

Now you connect the above with AND on the second level, so you get


((Reminder > 0 AND Begin Date >= 12/25/2008 AND Begin Date <= 01/30/2009)
OR
Date Completed .NOT. exists)
AND
Date Completed = NULL

ashwken
01-24-2009, 07:55 AM
Originally posted by quant
I already requested this, but got no reply.

Anyway, if you didn't indent the last row the search would be (as far as I know):

you have two AND and one OR on the same level (the order on the same level does not matter, read in the help file "location does not matter"), by the help file AND takes precedence (all AND are evaluated before any OR, on the same level), so you have

(Reminder > 0 AND Begin Date >= 12/25/2008 AND Begin Date <= 01/30/2009)
OR
Date Completed .NOT. exists

Now you connect the above with AND on the second level, so you get


((Reminder > 0 AND Begin Date >= 12/25/2008 AND Begin Date <= 01/30/2009)
OR
Date Completed .NOT. exists)
AND
Date Completed = NULL
So, the positioning of the indent(s) within the grid (which row they occupy) has no bearing on the evaulation sequence, except that the rows are evaluated by position within an indent level with .AND. taking precedence.

In the above example, the indented row could actually be the last row of the grid?

quant
01-24-2009, 08:12 AM
Originally posted by ashwken
In the above example, the indented row could actually be the last row of the grid?
yes, makes no difference.

"All Criteria Rows at the same indent level (regardless of location) will be evaluated together as if they were enclosed in a parenthesis (comprising a composite Search Expression). The Relationship for the first Criteria Row in an indent level determines how the expression represented by that indent level is related to the rest of the search criteria."

armsys
01-24-2009, 08:52 AM
Originally posted by quant
The Relationship for the first Criteria Row in an indent level determines how the expression represented by that indent level is related to the rest of the search criteria."
Quant, do you actually understand this cryptic sentence? It seems to be written in an alien language.

Nonetheless, Kinook illuminates it in http://www.kinook.com/Forum/showthread.php?s=&threadid=3908. However, it doesn't diminish the cloud of confusion over the complex multi-indenting Search Criteria. I have to experiment with long hours until the search result matches my intent.

Armstrong

armsys
01-24-2009, 09:19 AM
Originally posted by quant
you have two AND and one OR on the same level (the order on the same level does not matter, read in the help file "location does not matter"), by the help file AND takes precedence (all AND are evaluated before any OR, on the same level), so you have...
Appreciate your illumination. Your theory suggesting that same level does not matter may contradict the priority formed by the presumed parentheses, that's, the indenting Search Criteria.

Therefore, for the same level, the location does matter.

Armstrong

quant
01-24-2009, 12:25 PM
Originally posted by armsys
Appreciate your illumination. Your theory suggesting that same level does not matter may contradict the priority formed by the presumed parentheses, that's, the indenting Search Criteria.

Therefore, for the same level, the location does matter.

Armstrong

I think it doesn't. Prove me wrong

Let's take for example the search I created, I provided my explanation what it does, with 2 examples that match it. Can you think of item that would match and contradict the search bellow?

((aaa AND iii) OR eee)
..AND
..(
....((bbb AND fff) OR jjj)
....OR
....(
......(ccc OR ggg)
......AND
........hhh
....)
..)

armsys
01-24-2009, 05:51 PM
Originally posted by quant
I think it doesn't. Prove me wrong...
Quant,
I'm humbled by your efforts to vindicate your theory. In fact, you're the first one and the only one enlightening us that the same level can mean transcending across inconsecutive Search Criteria (rows). That's awesome.

I certainly have no intent to prove you wrong. My posts highlights the critical fact that the Search Criteria construction GUI causes more confusion rather than clarity. My view is based upon the UR Manual (http://www.kinook.com/UltraRecall/Manual/?gettingstarted.htm): "Sometimes this is not the desired search behaviour. You can explicitly specify precedence using Indenting, which
function like parentheses."

Obviously your sample Search prove it's not necessarily always the case.

On the contrary, your textual Search Criteria (logical expression) is crystal clear to everyone free of any confusion.

Hopefully the Search Criteria textual display will be implemented by Kinook in the near future.

Armstrong

quant
01-25-2009, 06:06 AM
Originally posted by armsys
... In fact, you're the first one and the only one enlightening us that the same level can mean transcending across inconsecutive Search Criteria (rows). That's awesome.
isn't it exactly what the help file says?

"All Criteria Rows at the same indent level (regardless of location) will be evaluated together as if they were enclosed in a parenthesis"

That means "transcending across inconsecutive rows" as well. Take whatever is on the same indent level and put it in the parenthesis. I tried one more very trivial example, ... again the results seems to be in line with how I understand the help file:
(aaa OR ccc) AND bbb

Surely, one would probably not make a confusing search criteria like the previous complicated example, and the rows with the same indent level would be consecutive.

quant
01-25-2009, 06:22 AM
Originally posted by armsys
"Sometimes this is not the desired search behaviour. You can explicitly specify precedence using Indenting, which
function like parentheses."
and the next line in the help file explains how the parenthesis are created ...
Originally posted by armsys
Obviously your sample Search prove it's not necessarily always the case.
Again, the important part is how the parenthesis are created, this is where the confusion seems to arrise ...

quant
01-25-2009, 06:30 AM
Originally posted by armsys
Appreciate your illumination. Your theory suggesting that same level does not matter may contradict the priority formed by the presumed parentheses, that's, the indenting Search Criteria.

Therefore, for the same level, the location does matter.

Armstrong
can you explain how you understand the parenthesis are created, given what's written in the help file?

armsys
01-26-2009, 04:00 AM
Originally posted by quant
Again, the important part is how the parenthesis are created, this is where the confusion seems to arrise ...
You're absolutely right.

J-Mac
01-28-2009, 03:31 PM
Thanks for the info - and especially the screenshots - in this thread, armsys and quant. Very helpful to me.

quant, just my opinion but sometimes I think that, with your immense knowledge of Ultra Recall and database structure in general, you don’t realize how some of us cannot see or immediately understand the things that seem simple to you. At least not see them as easily as you do!

(Reminds me of the people on the ship in "The Matrix" who look at the green code scrolling quickly down the screens and see it almost graphically, as if it were a video, so knowledgeable they supposedly were of the coding structure of the Matrix!)

But whenever you post like this I learn something more about URp!

Thanks again!

Jim

armsys
01-28-2009, 08:22 PM
Hi Jim,
Originally posted by J-Mac
Thanks for the info - and especially the screenshots - in this thread, armsys and quant. Very helpful to me.
Thanks for your word of encouragement. You'll do likewise if you encounter similar issues.
As of this moment, IMHO, the Indenting Criteria issue remains unsettled. The internal interpretation by the UR of the Indenting Criteria GUI (to be precise, the parentheses) is not definitive, especially in the absence of Kinook's verdict.

Armstrong

armsys
09-15-2010, 02:43 AM
Originally posted by quant
I already requested this, but got no reply.
More than 600 days passing by, not sure why the textual display of search criteria hasn't been implemented.

armsys
09-15-2010, 03:02 AM
Hi Quant,
600 days later, today I still find your answers immensely helpful. Thank you.
Armstrong