Manifest składnika platformy Eclipse
Wersja 3.0 - ostatnia aktualizacja: 22 czerwca 2004
Format manifestu składnika jest definiowany przez poniższą definicję DTD:
<?xml encoding="ISO-8859-1"?>
<!ELEMENT feature (install-handler? | description? | copyright? |
license? | url? | includes* | requires? | plugin* | data*)>
<!ATTLIST feature
id
CDATA #REQUIRED
version
CDATA #REQUIRED
label
CDATA #IMPLIED
provider-name CDATA #IMPLIED
image
CDATA #IMPLIED
os
CDATA #IMPLIED
arch
CDATA #IMPLIED
ws
CDATA #IMPLIED
nl CDATA #IMPLIED
colocation-affinity
CDATA #IMPLIED
primary
(true | false) "false"
exclusive (true | false)
"false"
plugin CDATA
#IMPLIED
application CDATA #IMPLIED
>
<!ELEMENT install-handler EMPTY>
<!ATTLIST install-handler
library
CDATA #IMPLIED
handler
CDATA #IMPLIED
>
<!ELEMENT description (#PCDATA)>
<!ATTLIST description
url
CDATA #IMPLIED
>
<!ELEMENT copyright (#PCDATA)>
<!ATTLIST copyright
url
CDATA #IMPLIED
>
<!ELEMENT license (#PCDATA)>
<!ATTLIST license
url
CDATA #IMPLIED
>
<!ELEMENT url (update?, discovery*)>
<!ELEMENT update EMPTY>
<!ATTLIST update
url
CDATA #REQUIRED
label
CDATA #IMPLIED
>
<!ELEMENT discovery EMPTY>
<!ATTLIST discovery
type
(web | update) "update"
url
CDATA #REQUIRED
label
CDATA #IMPLIED
>
<!ELEMENT includes EMPTY>
<!ATTLIST includes
id
CDATA #REQUIRED
version
CDATA #REQUIRED
name
CDATA #IMPLIED
optional (true | false)
"false"
search-location (root | self | both)
"root"
os CDATA #IMPLIED
arch CDATA #IMPLIED
ws CDATA #IMPLIED
nl CDATA #IMPLIED
>
<!ELEMENT requires (import+)>
<!ELEMENT import EMPTY>
<!ATTLIST import
plugin
CDATA #IMPLIED
feature CDATA #IMPLIED
version
CDATA #IMPLIED
match
(perfect | equivalent | compatible | greaterOrEqual) "compatible"
patch (true |
false) "false"
>
<!ELEMENT plugin EMPTY>
<!ATTLIST plugin
id
CDATA #REQUIRED
version
CDATA #REQUIRED
fragment (true
| false) "false"
os
CDATA #IMPLIED
arch
CDATA #IMPLIED
ws
CDATA #IMPLIED
nl CDATA #IMPLIED
download-size CDATA #IMPLIED
install-size CDATA #IMPLIED
unpack (true |
false) "true"
>
<!ELEMENT data EMPTY>
<!ATTLIST data
id
CDATA #REQUIRED
os
CDATA #IMPLIED
arch
CDATA #IMPLIED
ws
CDATA #IMPLIED
nl CDATA #IMPLIED
download-size CDATA #IMPLIED
install-size CDATA #IMPLIED
>
Definicje elementów i atrybutów są następujące:
- <feature> - służy do definiowania składnika.
- id - wymagany identyfikator składnika (np. com.xyz.myfeature)
- version - wymagana wersja składnika (np. 1.0.3).
- label - opcjonalna wyświetlana etykieta (nazwa). Łańcuch do przetłumaczenia.
- provider-name - opcjonalna wyświetlana etykieta z nazwą dostawcy danego składnika. Łańcuch do przetłumaczenia.
- image - opcjonalny obraz używany podczas wyświetlania informacji o danym składniku. Określany względem pliku feature.xml.
- os - opcjonalna specyfikacja systemów operacyjnych. Lista rozdzielonych przecinkami nazw systemów operacyjnych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa typy systemów operacyjnych, w których można instalować dany składnik. Jeśli nie określono tego atrybutu, składnik można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację składnika bez względu na to ustawienie).
- arch - opcjonalna specyfikacja architektur komputerów. Lista rozdzielonych przecinkami nazw architektur komputerów zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa architektury komputerów, w przypadku których można instalować dany składnik. Jeśli nie określono tego atrybutu, składnik można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację składnika bez względu na to ustawienie).
- ws - opcjonalna specyfikacja systemów okienkowych. Lista rozdzielonych przecinkami nazw systemów okienkowych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa systemy okienkowe, w których można instalować dany składnik. Jeśli nie określono tego atrybutu, składnik można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację składnika bez względu na to ustawienie).
- nl - opcjonalna specyfikacja ustawień narodowych. Lista rozdzielonych przecinkami oznaczeń ustawień narodowych zdefiniowana przez środowisko Java. Określa, że dany składnik powinien zostać zainstalowany w systemie z odpowiednimi ustawieniami narodowymi (są one sprawdzane przy użyciu reguł Java). Jeśli nie określono tego atrybutu, składnik można instalować we wszystkich systemach (implementacja niezależna od języka). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację składnika bez względu na to ustawienie).
- colocation-affinity - opcjonalne odwołanie do identyfikatora innego składnika używane w celu wybierania domyślnego miejsca instalacji danego składnika. Jeśli dany składnik jest instalowany jako nowy składnik (w systemie nie ma żadnych jego innych wersji), jest podejmowana próba zainstalowania go w tym samym miejscu, w którym jest zainstalowany przywoływany składnik.
- primary - opcjonalne wskazanie określające, czy dany składnik może być używany jako składnik podstawowy. Domyślna wartość: false (składnik nie jest składnikiem podstawowym).
- application - opcjonalny identyfikator aplikacji Eclipse, która ma być używana podczas uruchamiania, jeśli deklarowany składnik jest składnikiem podstawowym. Identyfikator aplikacji musi odpowiadać poprawnej aplikacji zarejestrowanej w punkcie rozszerzenia org.eclipse.core.runtime.applications. Domyślna wartość: org.eclipse.ui.ide.workbench.
- plugin - opcjonalny identyfikator modułu dodatkowego używanego do obsługi informacji o marce danego składnika (obrazy, tłumaczenia, ekrany startowe w przypadku składnika podstawowego itp.). Jeśli nie określono tego ustawienia, domyślnie zostanie założone, że ten identyfikator jest taki sam jak identyfikator składnika.
- exclusive - opcjonalna flaga, której ustawienie na wartość "true" oznacza, że dany składnik nie może być instalowany w grupie z innymi składnikami.
- <install-handler>
- library - opcjonalna biblioteka JAR zawierająca klasy programów obsługi instalacji.
Jeśli określono to ustawienie, odpowiedni plik JAR musi znajdować się w archiwum składnika.
Wartością tego ustawienia musi być ścieżka wewnętrzna archiwum składnika określona w odniesieniu do pliku feature.xml. Jeśli nie określono tego ustawienia, do ładowania klas programów obsługi instalacji jest używane archiwum składnika. Ten atrybut jest interpretowany pod warunkiem, że określono atrybut class.
- handler - opcjonalny identyfikator programu obsługi instalacji. Wartość ta jest interpretowana w zależności od ustawienia atrybutu library. Jeśli określono atrybut library, dana wartość jest interpretowana jako pełna nazwa klasy zawartej we wskazanej bibliotece (library). Jeśli nie określono atrybutu library, dana wartość jest interpretowana jako identyfikator rozszerzenia zarejestrowanego w punkcie rozszerzenia org.eclipse.update.installHandlers. W każdym z tych przypadków wskazana klasa musi zawierać implementację interfejsu IInstallHandler. Klasa jest dynamicznie ładowana i wywoływana w określonych miejscach podczas przetwarzania składnika. Jeśli program obsługi jest wskazany jako klasa, ma on dostęp do klas API z modułu dodatkowego org.eclipse.update.core i modułów dodatkowych Eclipse wymaganych przez ten moduł. W przeciwnym razie, jeśli wskazano go jako rozszerzenie, ma on dostęp do wszystkich klas, do których ma dostęp moduł dodatkowy definiujący rozszerzenie.
- <description> - tekst krótkiego opisu składnika.Łańcuch do przetłumaczenia.
- url - opcjonalny adres URL do pełnego opisu w formacie HTML. Adres URL może być bezwzględny lub względny. Jeśli jest to adres względny, zakłada się, że jest określony względem archiwum składnika (w nim jest spakowany plik). Należy zauważyć, że w przypadku, gdy są obsługiwane różne wersje językowe, adres URL powinien być zakończony separatorem, aby umożliwić podanie alternatywnych adresów dla innych wersji językowych.
- <copyright> - tekst informacji o prawach autorskich dotyczący składnika.Łańcuch do przetłumaczenia.
- url - opcjonalny adres URL do pełnego opisu w formacie HTML. Adres URL może być bezwzględny lub względny. Jeśli jest to adres względny, zakłada się, że jest określony względem archiwum składnika (w nim jest spakowany plik). Należy zauważyć, że w przypadku, gdy są obsługiwane różne wersje językowe, adres URL powinien być zakończony separatorem, aby umożliwić podanie alternatywnych adresów dla innych wersji językowych.
- <license> - tekst licencji akceptowanej przez wybranie odpowiedniej opcji.Łańcuch do przetłumaczenia. Ten tekst jest wyświetlany w standardowym oknie dialogowym (z akcjami akceptowania i odrzucania licencji) podczas procesu pobierania/instalacji. Licencja akceptowana przez wybranie opcji musi być określona dla każdego składnika, którego będzie można wybrać do zainstalowania lub zaktualizowania przy użyciu menedżera aktualizacji Eclipse. W przypadku składników zagnieżdżonych tekst licencji musi być zdefiniowany tylko dla nadrzędnego składnika (tj. składnika wybranego do instalacji lub aktualizacji). Tekst licencji jest wymagany, nawet jeśli określono opcjonalny atrybut url.
- url - opcjonalny adres URL do pełnego opisu w formacie HTML. Adres URL może być bezwzględny lub względny. Jeśli jest to adres względny, zakłada się, że jest określony względem archiwum składnika (w nim jest spakowany plik). Należy zauważyć, że w przypadku, gdy są obsługiwane różne wersje językowe, adres URL powinien być zakończony separatorem, aby umożliwić podanie alternatywnych adresów dla innych wersji językowych. Tekst, do którego odsyła dany adres URL, nie jest tekstem, który jest wyświetlany podczas instalacji jako licencja akceptowana przez wybranie odpowiedniej opcji. Licencją prezentowaną użytkownikowi jest wartość bieżąca przypisana atrybutowi <license> (np. <license>tekst licencji</license>).
- <url> - opcjonalny adres URL serwisu zawierającego aktualizacje danego składnika lub nowe składniki.
- <update> - adres URL miejsca, w którym można znaleźć aktualizacje danego składnika.
- url - rzeczywisty adres URL.
- label - wyświetlana etykieta (nazwa) przywoływanego serwisu.
- <discovery> - adres URL miejsca, w którym można znaleźć nowe składniki.Zwykle dostawca może użyć tego elementu jako odsyłacza do własnych serwisów lub serwisów partnerów oferujących składniki uzupełniające. Platforma Eclipse używa tego elementu do informowania klientów o adresach URL nowych serwisów. Serwisy należące do składników podstawowych (na najwyższym poziomie hierarchii) są zwykle wyświetlane na liście "Serwisy do odwiedzenia" w menedżerze aktualizacji.
- url - rzeczywisty adres URL.
- label - wyświetlana etykieta (nazwa) przywoływanego serwisu.
- type (nowość w wersji 2.1) - domyślnie jest przyjęte, że serwisy wykrywania są serwisami aktualizacji (parametr "update"). Jeśli ten atrybut jest ustawiony na wartość "web", jest to informacja dla platformy Eclipse, że dany adres URL powinien być traktowany jak zwykły odsyłacz hipertekstowy sieci WWW, który można bezpośrednio wyświetlać w odpowiedniej przeglądarce.
- <includes> - opcjonalne odwołanie do składnika zagnieżdżonego, który jest uznawany za część danego składnika.Składniki zagnieżdżone muszą znajdować się w tym samym serwisie aktualizacji co dany składnik.
- id - wymagany identyfikator składnika zagnieżdżonego. Jeśli składnik jest poprawką (patrz poniższa sekcja dotycząca elementu <requires>), musi to być identyfikator innej poprawki.
- version - wymagana wersja składnika zagnieżdżonego.
- optional - gdy ten atrybut ma wartość "true", można uwzględnić dany składnik jako opcjonalny. Użytkownik może nie instalować opcjonalnego składnika, wyłączyć go (jeśli jest zainstalowany) lub zainstalować później. Brak składnika opcjonalnego nie jest uważany za błąd.
- name - jeśli brak składnika opcjonalnego, platforma Eclipse nie może prawidłowo wyświetlać jego nazwy. Ten atrybut pozwala platformie Eclipse prawidłowo wyświetlać nazwę składnika opcjonalnego, który nie jest zainstalowany.
- search-location - uwzględniony składnik można aktualizować przy użyciu poprawek.
Domyślną wartością atrybutu miejsca wyszukiwania (search-location) jest "root", co oznacza, że będzie używany adres URL określony jako wartość elementu "update" w ramach elementu "url" składnika nadrzędnego. Jeśli uwzględniony składnik ma zdefiniowany własny element "update", będzie on domyślnie ignorowany.
Jeśli składnik nadrzędny ma zezwalać na aktualizowanie składnika podrzędnego w oparciu o jego własne ustawienia, może ustawić ten atrybut na wartość "both" lub "self".
- os - opcjonalna specyfikacja systemów operacyjnych. Lista rozdzielonych przecinkami nazw systemów operacyjnych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa systemy operacyjne, w których można instalować daną pozycję. Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- arch - opcjonalna specyfikacja architektur komputerów. Lista rozdzielonych przecinkami nazw architektur komputerów zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa architektury komputerów, w przypadku których można instalować dany składnik. Jeśli nie określono tego atrybutu, składnik można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację składnika bez względu na to ustawienie).
- ws - opcjonalna specyfikacja systemów okienkowych. Lista rozdzielonych przecinkami nazw systemów okienkowych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa systemy okienkowe, w których można instalować daną pozycję. Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- nl - opcjonalna specyfikacja ustawień narodowych. Lista rozdzielonych przecinkami oznaczeń ustawień narodowych zdefiniowana przez środowisko Java. Określa, że dana pozycja powinna zostać zainstalowana w systemie z odpowiednimi ustawieniami narodowymi (są one sprawdzane przy użyciu reguł Java). Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja niezależna od języka). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- <requires> - opcjonalne informacje o zależnościach składnika.Te informacje są określane pod względem zależności dotyczących modułów dodatkowych. Jeśli je określono, zależności są wymuszane przez mechanizm instalacji i aktualizacji podczas procesu instalowania.
- <import> - pozycja zależności.Specyfikacja i sposób przetwarzania są określane w ramach elementu <import> w pliku plugin.xml.
- plugin - identyfikator zależnego modułu dodatkowego, jeśli do określania zależności jest używany moduł dodatkowy.
- feature (nowość w wersji 2.1) - identyfikator składnika zależnego, jeśli do określania zależności jest używany składnik. Wymagane jest ustawienie atrybutu plugin lub feature (nie można ustawić obu tych atrybutów). Jeśli atrybut "patch" ma wartość "true", należy użyć atrybutu feature.
- version - opcjonalna specyfikacja wersji modułu dodatkowego. Jeśli atrybut "patch" ma wartość "true", należy ustawić ten atrybut.
- match - opcjonalna reguła dopasowania. Dopuszczalne wartości i sposoby przetwarzania są następujące:
- Jeśli atrybut version nie jest określony, atrybut match (jeśli został określony) jest ignorowany.
- perfect - wersja zależnego modułu dodatkowego musi dokładnie odpowiadać podanej wersji. Jeśli atrybut "patch" ma wartość "true", wartość "perfect" jest ustawieniem domyślnym i nie można ustawić innych wartości.
- equivalent - wersja zależnego modułu dodatkowego musi odpowiadać podanej wersji i może mieć wyższy numer poprawki serwisowej (główny i drugorzędny numer wersji muszą być takie same jak określony numer wersji).
- compatible - wersja zależnego modułu dodatkowego musi odpowiadać podanej wersji i może mieć wyższy numer poprawki serwisowej oraz drugorzędny numer wersji (główny numer wersji musi być taki sam jak określony numer wersji).
- greaterOrEqual - wersja zależnego modułu dodatkowego musi odpowiadać podanej wersji i może mieć wyższy numer poprawki serwisowej, drugorzędny numer wersji oraz główny numer wersji.
- patch - jeśli ten atrybut ma wartość "true", to dany składnik jest poprawką przywoływanego składnika. Podczas ustawiania tego atrybutu należy przestrzegać poniższych reguł:
- Atrybut feature musi wskazywać identyfikator składnika, którego dotyczy poprawka.
- Atrybut version musi być ustawiony.
- Atrybut match nie powinien być ustawiony, a wartość "perfect" ma być ustawieniem domyślnym.
- Jeśli uwzględniono (<include>) inne składniki, one także muszą być poprawkami.
Poprawka jest to specjalny składnik zawierający nowsze wersje modułów dodatkowych przeznaczone dla danego składnika. Nie powoduje ona zastąpienia tego składnika. Jedna poprawka może także zawierać inne poprawki.
- <plugin> - służy do identyfikowania przywoływanego modułu dodatkowego.
- id - wymagany identyfikator modułu dodatkowego (z pliku plugin.xml).
- version - wymagana wersja modułu dodatkowego (z pliku plugin.xml).
- fragment - opcjonalna specyfikacja wskazująca, czy dana pozycja jest fragmentem modułu dodatkowego. Wartość domyślna: false.
- os - opcjonalna specyfikacja systemów operacyjnych. Lista rozdzielonych przecinkami nazw systemów operacyjnych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa systemy operacyjne, w których można instalować daną pozycję. Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- arch - opcjonalna specyfikacja architektur komputerów. Lista rozdzielonych przecinkami nazw architektur komputerów zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa architektury komputerów, w przypadku których można instalować dany składnik. Jeśli nie określono tego atrybutu, składnik można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację składnika bez względu na to ustawienie).
- ws - opcjonalna specyfikacja systemów okienkowych. Lista rozdzielonych przecinkami nazw systemów okienkowych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa systemy okienkowe, w których można instalować daną pozycję. Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- nl - opcjonalna specyfikacja ustawień narodowych. Lista rozdzielonych przecinkami oznaczeń ustawień narodowych zdefiniowana przez środowisko Java. Określa, że dana pozycja powinna zostać zainstalowana w systemie z odpowiednimi ustawieniami narodowymi (są one sprawdzane przy użyciu reguł Java). Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja niezależna od języka). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- download-size - opcjonalna wskazówka dostawcy składnika określająca wielkość archiwum modułu dodatkowego do pobrania (w kilobajtach). Jeśli atrybut nie jest określony, ta wielkość nie jest znana. Uwaga dotycząca implementacji: Implementacja musi umożliwiać rozróżnienie między nieznaną wielkością a wielkością 0.
- install-size - opcjonalna wskazówka dostawcy składnika określająca wielkość danego archiwum modułu dodatkowego po instalacji (w kilobajtach). Jeśli atrybut nie jest określony, ta wielkość nie jest znana. Uwaga dotycząca implementacji: Implementacja musi umożliwiać rozróżnienie między nieznaną wielkością a wielkością 0.
- unpack (nowość w wersji 3.0) - opcjonalna specyfikacja podana przez dostawcę składnika wskazująca, że moduł dodatkowy może być uruchamiany z pliku JAR, a treść pliku JAR modułu dodatkowego nie powinna być rozpakowywana do katalogu. Wartość domyślna: true. Uwaga dotycząca implementacji: Atrybut unpack nie powinien mieć wartości "false" w przypadku częściowych modułów dodatkowych dostarczanych ze składnikiem, którego programem obsługi instalacji jest org.eclipse.update.core.DeltaInstallHandler.
- <data> - służy do identyfikowania danych, które są częścią składnika, ale nie należą do modułu dodatkowego.
- id - wymagany identyfikator danych w formie ścieżki względnej.
- os - opcjonalna specyfikacja systemów operacyjnych. Lista rozdzielonych przecinkami nazw systemów operacyjnych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa systemy operacyjne, w których można instalować daną pozycję. Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- arch - opcjonalna specyfikacja architektur komputerów. Lista rozdzielonych przecinkami nazw architektur komputerów zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa architektury komputerów, w przypadku których można instalować dany składnik. Jeśli nie określono tego atrybutu, składnik można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację składnika bez względu na to ustawienie).
- ws - opcjonalna specyfikacja systemów okienkowych. Lista rozdzielonych przecinkami nazw systemów okienkowych zdefiniowana przez platformę Eclipse (patrz dokumentacja Javadoc klasy org.eclipse.core.runtime.Platform).
Określa systemy okienkowe, w których można instalować daną pozycję. Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja przenośna). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- nl - opcjonalna specyfikacja ustawień narodowych. Lista rozdzielonych przecinkami oznaczeń ustawień narodowych zdefiniowana przez środowisko Java. Określa, że dana pozycja powinna zostać zainstalowana w systemie z odpowiednimi ustawieniami narodowymi (są one sprawdzane przy użyciu reguł Java). Jeśli nie określono tego atrybutu, pozycję można instalować we wszystkich systemach (implementacja niezależna od języka). Ta informacja jest używana tylko jako wskazówka przy instalacji i aktualizacji (użytkownik może wymusić instalację pozycji bez względu na to ustawienie).
- download-size - opcjonalna wskazówka dostawcy składnika określająca wielkość archiwum danych do pobrania (w kilobajtach). Jeśli atrybut nie jest określony, ta wielkość nie jest znana. Uwaga dotycząca implementacji: Implementacja musi umożliwiać rozróżnienie między nieznaną wielkością a wielkością 0.
- install-size - opcjonalna wskazówka dostawcy składnika określająca wielkość danego archiwum danych po instalacji (w kilobajtach). Jeśli atrybut nie jest określony, ta wielkość nie jest znana. Uwaga dotycząca implementacji: Implementacja musi umożliwiać rozróżnienie między nieznaną wielkością a wielkością 0.
Podczas interakcji z serwisem aktualizacji implementacja składnika odwzorowuje elementy <plugin> i <data> na identyfikatory ścieżek używane przez serwis w celu ustalenia konkretnych plików do pobrania i zainstalowania. Domyślna implementacja składnika dostępna w środowisku Eclipse pozwala utworzyć identyfikatory ścieżek w następujący sposób:
-
Na podstawie elementu <plugin> jest tworzony wpis ścieżki: plugins/<IdModułuDodatkowego>_<WersjaModułuDodatkowego>.jar (np. plugins/org.eclipse.core.boot_2.0.0.jar).
-
Na podstawie elementu <data> jest tworzony wpis ścieżki: features/<IdSkładnika>_<WersjaSkładnika>/<IdDanych> (np. features/com.xyz.tools_1.0.3/examples.zip).
Należy zauważyć, że w przypadku dokumentów manifestów feature.xml należy zwykle używać kodowania UTF-8. Na przykład:
<?xml version="1.0" encoding="UTF-8"?>
Zawarte w pliku feature.xml teksty podlegające tłumaczeniu można umieścić w pliku feature<_ustawienia narodowe>.properties przy użyciu konwencji pakunków właściwości języka Java.
Przetłumaczone łańcuchy są używane podczas instalacji - nie należy używać wykonawczego mechanizmu fragmentu modułu dodatkowego.