Hvis bestemte afsnit af dokumentet kun skal vises i en bestemt kontekst, kan du anvende filtrerings-markup til at angive kriterier, der skal opfyldes, for at afsnittet i dokumentet vises. Hvis kriterierne ikke er opfyldt, vil det pågældende afsnit af dokumentet ikke være synligt for brugeren. Filtre kan angives i ethvert XML-element, så længe markup'en stadig er gyldig efter behandlingen. Hvis et element filtreres, vil alle elementer og tekst under dette element også blive filtreret.
Tabellen nedenfor indeholder en fuldstændig liste over alle filteregenskaber og deres mulige værdier.
Egenskab | Betydning | Mulige værdier |
os
|
styresystem |
win32, win32, linux, macosx, aix, solaris, hpux, qnx
|
ws
|
vinduessystem |
win32, motif, gtk, photon, carbon
|
arch
|
processorarkitektur |
x86, x86_64, ia64, ia64_32, ppc, PA_RISC, sparc
|
product
|
Eclipse produkt-id |
Enhver produkt-id (f.eks. org.eclipse.sdk.ide for SDK)
|
plugin
|
plugintilstedeværelse |
Enhver plugin-id (f.eks. org.eclipse.help )
|
category
|
aktivitetskategori |
Enhver aktivitets-id (f.eks. org.eclipse.categories.teamCategory for kategorien Team)
|
activity
|
aktivitet (mulighed) |
Enhver aktivitets-id (f.eks. org.eclipse.team.cvs for aktiviteten CVS-understøttelse)
|
Hvis navnet ikke matcher en foruddefineret egenskab, vil hjælpesystemet bruge JVM's systemegenskab for navnet.
Du kan f.eks. angive enhver brugerdefineret egenskab ved start, f.eks.
-Dlocation=paris,france
og filtrere efter denne egenskab.
Der er to måder at angive filtre for et element på: vha. attributter eller elementer.
I den første fremgangsmåde tilføjes attributten filter
til elementet. Den generelle form er:
<element filter="[navn][operator][værdi]"> Noget tekst. </element>
navn
er navnet på den egenskab, der skal filtreres efter, f.eks.
os
for styresystem. operator
er enten =
for at betegne en match (nøjagtig match, skelner mellem store og små bogstaver) eller !=
for at betegne matcher ikke. værdi
er det, egenskaben skal matche eller ikke matche.
F.eks. er en af de mulige værdier for os
win32
(Windows). En fuldstændig liste med filteregenskaber og deres værdier vises i tabellen nedenfor.
Eksemplet nedenfor viser, hvordan et tekstafsnit i et XHTML-dokument kun vises, når der anvendes Linux.
<p filter="os=linux"> Meddelelsen vises kun, når den vises under Linux. </p>
I det andet eksempel vises linket kun, når plugin'en com.min.plugin
ikke er installeret:
<a href="..." filter="plugin!=com.min.plugin"> Klik her for at overføre plugin'en com.min.plugin. </a>
I den anden fremgangsmåde anvendes et filter
-element som et underordnet element til det element, du vil filtrere. Denne fremgangsmåde er lidt længere end fremgangsmåden for attribut, men den er mere effektiv, fordi du kan angive et ubegrænset antal filtre for et element. Den generelle form er:
<element attribute="værdi">
<filter name="[navn]" value="[modifikation][værdi]"/>
</element>
navn
og værdi
har her samme betydning som for attribut. Da de imidlertid er adskilt, skal det angives på en anden måde, om de skal matche eller ikke matche. Hvis du ikke stiller en modifikation
til rådighed, antages det som standard, at der skal være match. Hvis der ikke skal være match, skal du angive modifikationen som "!
.
"
Her er det første eksempel, der vises i den anden form:
<p> <filter name="os" value="linux"/> Meddelelsen vises kun, når den vises under Linux. </p>
Og det andet eksempel:
<a href="..."> <filter name="plugin" value="!com.min.plugin"/> Klik her for at overføre plugin'en com.min.plugin. </a>
Filtreringsunderstøttelse er deaktiveret, når hjælp afvikles i tilstanden infocenter, der bevirker, at alt indhold, herunder filtreret indhold, vises. Hvis du vil opbevare dokumentationen i både arbejdsbænk- og infocenter-tilstand, skal du anvende filtre på en måde, der giver mening, også hvis filtrering er deaktiveret.
Filtrering kan anvendes i følgende typer dokumenter:
* Bemærk: Der kræves nogle få ekstra trin for at aktivere dynamisk indhold i XHTML-dokumenter.
I alle tilfælde må du ikke placere filtre på noget element, hvor fjernelse af elementet resulterer i
ugyldig XML. Du skal f.eks. ikke placere et filter på elementet
html
i XHTML, fordi det ikke længere er en gyldig XHTML uden dette element.