private String getPrefix(final String qName) {
        if (qName == null) {
            return null;
        } else if (qName.isEmpty() || !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 name, or the empty string.
@param qName     The element's qualified (prefixed) name, or the empty string.
@param atts      The element's attributes.
@throws org.xml.sax.SAXException The client may throw an exception during processing.
@see stroom.pipeline.filter.AbstractXMLFilter#startElement(java.lang.String,
java.lang.String, java.lang.String, org.xml.sax.Attributes)
stroom-pipeline/src/main/java/stroom/pipeline/refdata/ReferenceDataFilter.java