private String getPrefix(final String qName) {
        if (qName == null) {
            return null;
        } else if (!qName.contains(":")) {
            return "";
        } else {
            final String[] parts = PREFIX_DELIMITER_PATTERN.split(qName);
            return parts[0];
        }
    }
This method looks for a post processing function. If it finds one it does
not output the element. Instead it stores data about the function and
sets a flag so that the function can be performed when the corresponding
end element is reached.

@param uri       The element's Namespace URI, or the empty string.
@param localName The element's local key, or the empty string.
@param qName     The element's qualified (prefixed) key, or the empty string.
@param atts      The element's attributes.
@throws SAXException The client may throw an exception during processing.
@see AbstractXMLFilter#startElement(String,
String, String, Attributes)
stroom-state/stroom-planb-impl/src/main/java/stroom/planb/impl/pipeline/PlanBFilter.java