public PayloadException(Node node) throws XPathExpressionException {
		
		String provider = Utilities.selectSingleText(node, "./dc:DataProvider", XMLLabels.STANDARD_NAMESPACES);
		if(Utilities.isNullOrWhitespace(provider)) {
			this.provider = Contributor.findContributor(provider);
		}
		
		Node subjectNode = Utilities.selectSingleNode(node, "./dc:SubjectID", XMLLabels.STANDARD_NAMESPACES);
		if(subjectNode != null) {
			String domain = Utilities.selectSingleText(subjectNode, "./@dc:type", XMLLabels.STANDARD_NAMESPACES);
			this.subject = new SubjectID(domain, subjectNode.getTextContent());
		}

		this.code = Utilities.selectSingleText(node, "./SubjectExceptionCode", XMLLabels.STANDARD_NAMESPACES);
		this.reason = Utilities.selectSingleText(node, "./SubjectExceptionReason", XMLLabels.STANDARD_NAMESPACES);
	}