Package net.sf.saxon.s9api
Class WhitespaceStrippingPolicy
java.lang.Object
net.sf.saxon.s9api.WhitespaceStrippingPolicy
WhitespaceStrippingPolicy is class defining the possible policies for handling
whitespace text nodes in a source document.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final WhitespaceStrippingPolicy
The value ALL indicates that all whitespace-only text nodes are discarded.static final WhitespaceStrippingPolicy
The value IGNORABLE indicates that whitespace text nodes in element-only content are discarded.static final WhitespaceStrippingPolicy
The value NONE indicates that all whitespace text nodes are retained.static final WhitespaceStrippingPolicy
UNSPECIFIED means that no other value has been specifically requested. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Create a WhitespaceStrippingPolicy based on the xsl:strip-space and xsl:preserve-space declarations in a given XSLT stylesheet package -
Method Summary
Modifier and TypeMethodDescriptionprotected SpaceStrippingRule
static WhitespaceStrippingPolicy
makeCustomPolicy
(Predicate<QName> elementTest) Create a custom whitespace stripping policy, by supplying a predicate that indicates for any given element, whether whitespace text nodes among its children should be stripped or preserved.protected FilterFactory
protected int
ordinal()
-
Field Details
-
NONE
The value NONE indicates that all whitespace text nodes are retained. This is the default when documents are processed without validation. -
IGNORABLE
The value IGNORABLE indicates that whitespace text nodes in element-only content are discarded. Content is element-only if it is defined by a schema or DTD definition that does not allow mixed or PCDATA content. This option is in effect documentary only, since this policy is always used when DTD or schema validation is selected for aDocumentBuilder
, and is equivalent toNONE
otherwise. -
ALL
The value ALL indicates that all whitespace-only text nodes are discarded. -
UNSPECIFIED
UNSPECIFIED means that no other value has been specifically requested.
-
-
Constructor Details
-
WhitespaceStrippingPolicy
Create a WhitespaceStrippingPolicy based on the xsl:strip-space and xsl:preserve-space declarations in a given XSLT stylesheet package- Parameters:
pack
- the stylesheet package containing the xsl:strip-space and xsl:preserve-space declarations
-
-
Method Details
-
makeCustomPolicy
Create a custom whitespace stripping policy, by supplying a predicate that indicates for any given element, whether whitespace text nodes among its children should be stripped or preserved. Note that xml:space attributes that might be present have no effect on the outcome, and the decision applies only to immediate children, not to descendants.Changed in 9.9 to use the standard Java 8 Predicate class in place of Saxon's version.
- Parameters:
elementTest
- a predicate applied to element names, which should return true if whitespace-only text node children of the element are to be stripped, false if they are to be retained.- Returns:
- the whitespace stripping policy
-
ordinal
protected int ordinal() -
getSpaceStrippingRule
-
makeStripper
-