3 Given a Wikipedia Article URL, scan the article and follow all encountered article links,
4 repeat the proccess recursively to a certain depth.
6 In the end, we have a graph of articles.
8 Links to other articles should always be scanned, but these articles themselves shouldn't neccessarily.
12 I'm not sure whether this "Walker" class is such a good idea.
13 It was intended as a starting point and have the responsibility of getting links of articles within the article.
15 But as it is designed now, there would be one global Walker for the program (since the walker holds th article collection).
16 But a walker would also need to walk through other articles recursively...
18 Thus, it might not be such a good idea...
22 ![overview](design.jpg)
24 An *article* consists of of title and a collection of other articles it links to.
26 All articles must also reside in a "global" collection (which might be in *another class*).
27 A) This is to avoid creating infinite articles because of multiple links (i.e. article A -> B, B -> C, A -> C).
28 B) Also, there might be cyclic links (i.e. article A links to B, B -> C, C -> D and D -> A).
29 Using this global collection one could look up if the article instance already exists.
31 Another class should be responsible for parsing the article. This parser could either add linked articles
32 to the article itself, or simply return a collection. This is because the result of the parser needs to be