org.jaxen.function
Class LangFunction
java.lang.Object
org.jaxen.function.LangFunction
- Function
public class LangFunction
extends java.lang.Object
4.3 boolean lang(string)
The lang function returns true or false depending on whether
the language of the context node as specified by
xml:lang
attributes is the same as or is a sublanguage
of the language specified by the argument string. The language of the
context node is determined by the value of the xml:lang
attribute on the context node, or, if the context node has no
xml:lang
attribute, by the value of the
xml:lang
attribute on the nearest ancestor of the
context node that has an xml:lang
attribute. If there
is no such attribute, then lang
returns false. If there is such an attribute, then lang returns true if the attribute
value is equal to the argument ignoring case, or if there is some
suffix starting with -
such that the attribute value
is equal to the argument ignoring that suffix of the attribute value
and ignoring case. For example, lang("en")
would
return true if the context node is any of these five elements:
<para xml:lang="en"/>
<div xml:lang="en"><para/></div>
<para xml:lang="EN"/>
<para xml:lang="en-us"/>
- Attila Szegedi (szegedia @ freemail.hu)
Object | call(Context context, List args) -
Determines whether or not the context node is written in the language specified
by the XPath string-value of
args.get(0) ,
as determined by the nearest xml:lang attribute in scope.
|
private static Boolean | evaluate(List contextNodes, Object lang, Navigator nav)
|
private static boolean | evaluate(Object node, String lang, Navigator nav)
|
private static boolean | isSublang(String sublang, String lang)
|
LANG_LOCALNAME
private static final String LANG_LOCALNAME
XMLNS_URI
private static final String XMLNS_URI
LangFunction
public LangFunction()
Create a new LangFunction
object.
call
public Object call(Context context,
List args)
throws FunctionCallException
Determines whether or not the context node is written in the language specified
by the XPath string-value of args.get(0)
,
as determined by the nearest xml:lang
attribute in scope.
- call in interface Function
context
- the context in which to evaluate the lang()
functionargs
- the arguments to the lang function
- a
Boolean
indicating whether the context node is written in
the specified language
isSublang
private static boolean isSublang(String sublang,
String lang)