public void restoreXml(XmlPullParser parser, ParamListStandard res) throws XmlParseException

	{
		XmlElement elemId = parser.start(ELEM_RULE.name());
		filter = DatatypeFilter.restoreFilterXml(parser);
		ArrayList<QualifierFilter> qualifierList = new ArrayList<>();
		for (;;) {
			QualifierFilter tmpFilter = QualifierFilter.restoreFilterXml(parser);
			if (tmpFilter == null) {
				break;
			}
			qualifierList.add(tmpFilter);
		}
		if (qualifierList.size() == 0) {
			qualifier = null;
		}
		else if (qualifierList.size() == 1) {
			qualifier = qualifierList.get(0);
			qualifierList.clear();
		}
		else {
			qualifier = new AndFilter(qualifierList);
		}
		assign = AssignAction.restoreActionXml(parser, res);
		ArrayList<AssignAction> sideList = new ArrayList<>();
		for (;;) {
			XmlElement subEl = parser.peek();
			if (!subEl.isStart()) {
				break;
			}
			sideList.add(AssignAction.restoreSideeffectXml(parser, res));
		}
		sideeffects = new AssignAction[sideList.size()];
		sideList.toArray(sideeffects);
		parser.end(elemId);
	}
Decode this rule from stream

@param parser is the stream decoder
@param res is the parameter resource list owning this rule
@throws XmlParseException if there are problems decoding are missing resources
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/lang/protorules/ModelRule.java