Hvis bestemte deler av dokumentet bare skal vises i en bestemt kontekst, kan du bruke filteringskoder til å oppgi kriterier som må være oppfylt for at denne delen av dokumentet skal vises. Hvis kriteriene ikke er oppfylt, blir denne delen av dokumentet ikke synlig for brukeren. Filtre kan oppgis i et hvilket som helst XML-element så lenge kodingen fremdeles er gyldig etter behandling. Hvis et element er filtrert, blir alle elementer og all tekts under dette elementet også filtrert.
Tabellen nedenfor inneholder en fullstendig liste over alle filtreringsegenskapene og deres mulige verdier.
Egenskap | Betydning | Mulige verdier |
os
|
operativsystem |
win32, win32, linux, macosx, aix, solaris, hpux, qnx
|
ws
|
vindussystem |
win32, motif, gtk, photon, carbon
|
arch
|
prosessorarkitektur |
x86, x86_64, ia64, ia64_32, ppc, PA_RISC, sparc
|
product
|
ID for Eclipse-produkt |
En hvilken som helst produkt-ID (for eksempel org.eclipse.sdk.ide for SDK)
|
plugin
|
plugin-modul |
En hvilken som helst plugin-ID (for eksempel org.eclipse.help )
|
category
|
aktivitetskategori |
En hvilken som helst aktivitetskategori-ID (for eksempel
org.eclipse.categories.teamCategory for kategorien Gruppe)
|
activity
|
aktivitet (funksjonalitet) |
En hvilken som helst aktivitets-ID (for eksempel
org.eclipse.team.cvs for aktiviteten CVS-støtte)
|
Hvis navnet ikke samsvarer
med noen forhåndsdefinert egenskap, bruker hjelpesystemet JVMs systemegenskap for
dette navnet. Du kan for eksempel
sende en hvilken som helst brukerdefinert egenskap ved oppstart, som -Dlocation=paris,france
,
og filtrere etter denne egenskapen.
Det finnes to måter å oppgi filtre for et element på: ved hjelp av attributter eller elementer.
Den første formen er
å legge til et filter
attributt i elementet. Dette er den generelle formen:
<element filter="[name][operator][value]"> Tekst. </element>
name
er navnet på egenskapen det skal filtreres etter, for eksempel os
for operativsystem. operator
er enten =
for å oppgi et samsvar (nøyaktig samsvar, skille mellom store og små bokstaver),
eller !=
for å oppgi samsvarer ikke. value
er det egenskapen skal (eller ikke skal) samsvare med. For os
er
en av de mulige verdiene for eksempel win32
(Windows). En fullstendig liste over
filteregenskaper og deres verdier er tilgjengelig i en tabell nedenfor.
Eksempelet nedenfor viser hvordan du viser et avsnitt med tekst i et XHTML-dokument når du bare kjører Linux.
<p filter="os=linux"> Denne meldingen blir bare vist når den vises i Linux. </p>
I det andre eksempelet
blir linken bare vist når plugin-modulen com.my.plugin
ikke er installert:
<a href="..." filter="plugin!=com.my.plugin"> Klikk her for å laste ned plugin-modulen com.my.plugin. </a>
Den andre formen
er å bruke et filter
-element som en underordnet av
det elementet du ønsker å filtrere. Denne formen er noe lenger
enn attributtformen, men den er kraftigere fordi du kan oppgi et hvilket som helst antall filtre
for et element. Dette er den generelle formen:
<element attribute="value">
<filter name="[name]" value="[modifier][value]"/>
</element>
name
og value
her er de samme som med
attributtet. Siden de er
atskilt, trenger vi imidlertid en annen metode for å oppgi om de skal samsvare eller ikke. Hvis du
ikke oppgir en modifikator
,
blir et samsvar som standard antatt. Hvis det
ikke skal samsvare, setter du modifikatoren til "!
"
Dette er det første eksempelet ovenfor i den andre formen:
<p> <filter name="os" value="linux"/> Denne meldingen blir bare vist når den vises i Linux. </p>
Og det andre eksempelet:
<a href="..."> <filter name="plugin" value="!com.my.plugin"/> Klikk her for å laste ned plugin-modulen com.my.plugin. </a>
Filtreringsstøtte slås av når du kjører hjelp i infocenter-modus, slik at alt innhold, inkludert filtrert innhold, er synlig. Hvis du vil være vert for dokumentasjonen både på arbeidsbenken og i inforcenter-modus, bør du bruke filtre på en måte som gir mening dersom filtrering er slått av.
Filtrering kan brukes i disse typene dokumenter:
* Merk: Det finnes noen få ekstratrinn som kreves for å aktivere dynamisk innhold i XHTML-dokumentene.
Uansett så
må du ikke plassere filtre på noen elementer der fjerning av dette elementet
vil resultere i ugyldig XML. Du bør for eksempel ikke
plassere et filter på html
-elementet i XHTML, fordi uten dette elementet, er det ikke lenger
gyldig XHTML.