Warning, /frameworks/knewstuff/docs/DialogHacking.txt is written in an unsupported language. File is not indexed.

0001 How do providers, categories, feeds and entries correlate?
0002 And authors on top of that?
0003 
0004 Authors are simple: each entry is linked to one author, even if the
0005 author is the same the objects differ. We can change this in the future,
0006 right now there is no need to do that.
0007 The other objects are a bit more difficult.
0008 
0009 DXS: provider -> category -> feed/list -> entries
0010 GHNS: provider -> feed [with categories] -> entries
0011 
0012 Example
0013 -------
0014 
0015 The maintainer of an application offers extensions in the categories
0016 "image" and "script". Since the application has a lot of users, both
0017 kde-coolextensions.org and kde-betterextensions.org offer such extensions.
0018 The provider.xml file would thus contain the two <provider>s. When fetching
0019 the feed files for most popular/most downloaded/most recent, those files
0020 need to contain entries of *all* categories! A workaround is to add virtual
0021 providers for each category (there won't be much difference in the UI), but
0022 ideally with frameworks such as Hotstuff the right number of items will be
0023 inserted into the feed.
0024 With DXS, the problem doesn't exist since DXS fetches all categories first
0025 and then the feeds for each category. DXS also allows to retrieve all entries
0026 of a certain category, so it is much more flexible in general.
0027 
0028 GHNS setup:
0029 -----------
0030  provider kde-coolextensions.org
0031   feed most-recent
0032    entry a [category image]
0033    entry b [category script]
0034    ...
0035   feed most-downloaded
0036   ...
0037  provider kde-betterextensions.org
0038   ...
0039 
0040 Alternative GHNS setup:
0041 -----------------------
0042  provider kde-coolextensions.org/image
0043   feed most-recent
0044    entry a [image]
0045    entry c [image]
0046    ..
0047   ..
0048  provider kde-coolextensions.org/script
0049   ...
0050 
0051 DXS setup:
0052 ----------
0053  provider kde-coolextensions.org
0054   category image
0055    feed most-recent
0056     entry a [image]
0057     entry c [image]
0058     ...
0059    ...
0060   ...
0061  provider kde-betterextensions.org
0062   ...
0063