A declaração XML é representada na árvore de mensagens por um elemento da sintaxe com tipo de campo XMLNSC.XMLDeclaration.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE s1 PUBLIC "http://www.ibm.com/example.dtd" "example.dtd">
<s1>........</s1>
A Declaração XML tem três atributos opcionais: Version, Standalone e Encoding. O analisador XMLNSC não define os tipos de campos especiais para esses atributos. Em vez disso, eles são identificados por seus nomes e por suas posições como um filho do elemento de Declaração XML.
CREATE FIRSTCHILD OF OutputRoot.XMLNSC TYPE XMLNSC.XmlDeclaration NAME 'XmlDeclaration';
SET OutputRoot.XMLNSC.(XMLNSC.XmlDeclaration)*.(XMLNSC.Attribute)Version = '1.0';
SET OutputRoot.XMLNSC.(XMLNSC.XmlDeclaration)*.(XMLNSC.Attribute)Encoding = 'UTF-8';
SET OutputRoot.XMLNSC.(XMLNSC.XmlDeclaration)*.(XMLNSC.Attribute)StandAlone = 'yes';
A primeira linha é opcional; se for omitida, o elemento XMLNSC.XMLDeclaration é criado automaticamente quando é referido pela segunda linha.//Crie o nó raiz do domínio XML
MBElement xmlRoot =
root.createElementAsLastChild(MbXMLNSC.PARSER_NAME);
//Crie o nó-pai da declaração XML
MbElement xmlDecl =
xmlRoot.createElementAsFirstChild(MbXMLNSC.XML_DECLARATION);
xmlDecl.setName("XmlDeclaration");
MbElement version = xmlDecl.CreateElementAsFirstChild(MbXMLNSC.ATTRIBUTE, "Version", "1.0");
MbElement encoding = xmlDecl.CreateElementAsFirstChild(MbXMLNSC.ATTRIBUTE, "Encoding", "utf-8");
MbElement standalone =
xmlDecl.CreateElementAsFirstChild(MbXMLNSC.ATTRIBUTE, "Standalone", "yes");