Package org.docx4j.jaxb
Class NamespacePrefixMappings
java.lang.Object
org.docx4j.jaxb.NamespacePrefixMappings
- All Implemented Interfaces:
NamespaceContext,org.docx4j.org.apache.xml.utils.PrefixResolver
public class NamespacePrefixMappings
extends Object
implements NamespaceContext, org.docx4j.org.apache.xml.utils.PrefixResolver
NamespacePrefixMappings, required for JAXB, and XPath.
The intent is to define the namespace prefix mappings in a
single place.
This class implements NamespaceContext, so it can be used as follows:
XPathFactory factory = XPathFactory.newInstance();
XPath xPath = factory.newXPath();
xPath.setNamespaceContext(new NamespacePrefixMappings());
For JAXB, NamespacePrefixMapper (for RI) and NamespacePrefixMapperSunInternal
(for Java 6) both refer to this class.
- Author:
- jharrop
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetNamespaceForPrefix(String prefix) getNamespaceForPrefix(String prefix, Node context) getNamespaceURI(String prefix) protected static StringgetNamespaceURIStatic(String prefix) static StringgetPreferredPrefixStatic(String namespaceUri, String suggestion, boolean requirePrefix) Returns a preferred prefix for the given namespace URI.getPrefixes(String namespaceURI) booleanstatic voidregisterPrefixMappings(String prefixMappings)
-
Constructor Details
-
NamespacePrefixMappings
public NamespacePrefixMappings()
-
-
Method Details
-
getPreferredPrefixStatic
public static String getPreferredPrefixStatic(String namespaceUri, String suggestion, boolean requirePrefix) Returns a preferred prefix for the given namespace URI.- Parameters:
namespaceUri- The namespace URI for which the prefix needs to be found. Never be null. "" is used to denote the default namespace.suggestion- When the content tree has a suggestion for the prefix to the given namespaceUri, that suggestion is passed as a parameter. Typically this value comes from QName.getPrefix() to show the preference of the content tree. This parameter may be null, and this parameter may represent an already occupied prefix.requirePrefix- If this method is expected to return non-empty prefix. When this flag is true, it means that the given namespace URI cannot be set as the default namespace.- Returns:
- null if there's no preferred prefix for the namespace URI. In this case, the system will generate a prefix for you. Otherwise the system will try to use the returned prefix, but generally there's no guarantee if the prefix will be actually used or not. return "" to map this namespace URI to the default namespace. Again, there's no guarantee that this preference will be honored. If this method returns "" when requirePrefix=true, the return value will be ignored and the system will generate one.
-
getNamespaceURI
- Specified by:
getNamespaceURIin interfaceNamespaceContext
-
getNamespaceURIStatic
-
getPrefix
- Specified by:
getPrefixin interfaceNamespaceContext
-
getPrefixes
- Specified by:
getPrefixesin interfaceNamespaceContext
-
registerPrefixMappings
-
getNamespaceForPrefix
- Specified by:
getNamespaceForPrefixin interfaceorg.docx4j.org.apache.xml.utils.PrefixResolver
-
getNamespaceForPrefix
- Specified by:
getNamespaceForPrefixin interfaceorg.docx4j.org.apache.xml.utils.PrefixResolver
-
getBaseIdentifier
- Specified by:
getBaseIdentifierin interfaceorg.docx4j.org.apache.xml.utils.PrefixResolver
-
handlesNullPrefixes
public boolean handlesNullPrefixes()- Specified by:
handlesNullPrefixesin interfaceorg.docx4j.org.apache.xml.utils.PrefixResolver
-