Include/Exclude algorithm

Author Message
Gil Tayar 11/05/2003 07:50 am
If I have an "include" item in the filters - does that mean that it will include "only" that item, or that it will include all items, and also that item, even if it was excluded by "exclude".

In general - what, _exactly_, is the algorithm for deciding whether to include/exclude something? In other words, what is the order of execution of include/exclude. I can think of at least two scenarios:

a. Check if exists in "includes". If not, don`t download. If so, check in excludes.
b. Check if exists in "excludes". If it does, don`t download. If it is, check in includes.
(I`m pretty sure there are others).

Also - what is the relationship, in the algorithm, between the file/directory/protocol/server include/excludes.

Thanks,
Gil

Oleg Chernavin 11/05/2003 04:54 pm
The algorithm is very simple here - if any of the Project settings doesn`t allow some URL to be loaded, it will be skipped. Included items mean that if a URL doesn`t match any of Included keywords, it is skipped.

First OE goes through the Included list. If the URL "survives" - it matches one of the keywords in the list, then it is checked against Excluded keywords (if any). If one of the excluded keywords match the URL, it will be skipped. If no exluded keywords match it, it will be loaded.

First, OE uses File Filters categories one-by-one - if extension of a URL goes to some category there and that extension is checked and the whole category is checked, then the URL is allowed.

Second, OE checks it against URL Filters - Skip the following URLs...

Third, it goes through URL Filters | Protocols, then - URL Filters | Server, then - Directory and then - Filename. If the URL is not allowed on any of the above steps, it is skipped and other rules do not get applied to it.

Best regards,
Oleg Chernavin
MP Staff
Gil Tayar 11/07/2003 07:59 am
Thanks. That makes it simple.

Oleg, I also assume that if an "include list " is empty it means include all.

BTW, I searched for this information in the documentation and it wasn`t there (hint, hint :->)

Gil

> The algorithm is very simple here - if any of the Project settings doesn`t allow some URL to be loaded, it will be skipped. Included items mean that if a URL doesn`t match any of Included keywords, it is skipped.
> > First OE goes through the Included list. If the URL "survives" - it matches one of the keywords in the list, then it is checked against Excluded keywords (if any). If one of the excluded keywords match the URL, it will be skipped. If no exluded keywords match it, it will be loaded.
> > First, OE uses File Filters categories one-by-one - if extension of a URL goes to some category there and that extension is checked and the whole category is checked, then the URL is allowed.
> > Second, OE checks it against URL Filters - Skip the following URLs...
> > Third, it goes through URL Filters | Protocols, then - URL Filters | Server, then - Directory and then - Filename. If the URL is not allowed on any of the above steps, it is skipped and other rules do not get applied to it.
> > Best regards,
> Oleg Chernavin
> MP Staff
Oleg Chernavin 11/07/2003 09:38 am
> Oleg, I also assume that if an "include list " is empty it means include all.

Yes, that`s right.

> BTW, I searched for this information in the documentation and it wasn`t there (hint, hint :->)

Thank you! I will add it there.

Oleg.