param model element param indent current indent line param header line param prefix insert line doc param footer close line repres document given model element doc object indent header prefix footer result indent model facad model element iter iter model facad tag valu iter iter object tv iter tag model facad tag tag tv argo document tag equal tag argo document tag alt equal tag result model facad valu tag tv prioriti standard document tag argo document tag equal tag result comment buffer result buffer header result append header append line separ indent prefix prefix indent prefix footer footer indent footer append comment result prefix result footer result append footer result 