Opis składników zależy od zawierających je modułów dodatkowych. To oznacza, że moduły dodatkowe są podstawową jednostką łączącą funkcje w pakiety.
Podczas gdy składniki są zorganizowane pod kątem dystrybucji i aktualizowania produktów, moduły dodatkowe są zorganizowane w sposób ułatwiający zespołowe programowanie funkcji produktu. Zespół programistów decyduje o wydzieleniu danej funkcji do oddzielnego modułu dodatkowego.
Moduły dodatkowe są połączone w pakiet w pliku archiwum modułu dodatkowego i opisywane przy użyciu pliku manifestu modułu dodatkowego - plugin.xml.
Fragmenty modułu dodatkowego są oddzielnie spakietowanymi plikami, których treść jest traktowana tak, jakby były oryginalnymi plikami archiwum modułu dodatkowego. Fragmenty są pomocne przy dodawaniu funkcjonalności do modułu dodatkowego, na przykład dodatkowego tłumaczenia w języku narodowym do istniejącego modułu dodatkowego po jego instalacji. Fragmenty idealnie nadają się do dostarczania funkcji testujących początkową wersję produktu, ponieważ dzięki nim można dodać funkcję bez ponownego łączenia w pakiet i reinstalowania oryginalnego modułu dodatkowego. Gdy fragment zostanie wykryty przez platformę, jego treść zostaje scalona z funkcją oryginalnego modułu dodatkowego. Inaczej mówiąc, po wysłaniu zapytania do rejestru modułów dodatkowych platformy można zobaczyć rozszerzenia lub inną funkcję udostępniane przez fragment, tak jakby były to oryginalne elementy modułu dodatkowego.
Fragmenty są opisywane przy użyciu pliku manifestu fragmentu - fragment.xml. Ten plik jest podobny do pliku manifestu modułu dodatkowego. Ponieważ fragment współużytkuje z jego modułem dodatkowym wiele właściwości, niektóre atrybuty w pliku manifestu modułu dodatkowego, takie jak klasa oraz instrukcje importowania modułu dodatkowego, są niepoprawne.
Pliki archiwum modułu dodatkowego mogą zawierać moduły dodatkowe lub fragmenty.