Converter texto em XML com um arquivo de esquema de texto
Crie um assembly contendo uma etapa
textschema
. Obtenha o texto de amostra que formará a base do seu esquema de texto. A etapa
textschema
permite que você converta texto em XML usando um esquema de texto. Para desenvolver um esquema de texto, você deve conhecer a estrutura dos dados que quer transformar. O processo é consideravelmente simplificado quando há um pequeno documento de amostra contendo dados representativos. Este tópico presume que você tem essa amostra. Você pode usar a etapa
textschema
para converter XML em texto ou para transformar arquivos delimitados. Na maioria dos casos, é mais simples usar as etapas XTT
e csv-to-xml
, respectivamente.- Na visualizaçãoPropertiesda etapatextschema, clique emCreate Text Schema File.
- Selecione uma pasta principal para o arquivo do esquema de texto e forneça o nome do arquivo. Se necessário, especifique o URI do namespace de destino.
- O Studio abre o editor de esquema de texto e exibe o novo esquema de texto na visualizaçãoem árvore.
- Recorte e cole o texto de amostra na área superior direita do editor de esquema de texto, substituindoinitial-text.Para remover a alimentação de linha de término dos arquivos de entrada, adicione este atributo ao elemento do esquema raiz:ts:eofStrip=" ".
- Comece descrevendo o texto de amostra. Selecione o primeiro campo, clique com o botão direito do mouse e selecioneCreate Field.Se você não tem uma amostra do texto que quer converter, mas conhece a estrutura, você pode editar diretamente a visualizaçãoSourcedo esquema de texto.
- Na páginaIdentitydoCreate Field Wizard, forneça uma descrição básica do campo. Durante a execução da tarefa, considere:
Opção Descrição NameUm nome para o campo.OccurrenceAs opções são:- Default: o campo é obrigatório e ocorre apenas uma vez.
- Required: igual a Default.
- Optional: o campo é opcional e pode ocorrer somente uma vez.
- Multiple Optional: o campo é opcional e pode ocorrer várias vezes.
- Multiple Required: o campo é obrigatório e pode ocorrer várias vezes.
Start TagUma expressão regular que especifica o texto que faz com que um elemento seja gerado. Observe que o texto que corresponde a essa expressão não faz parte do valor de saída. Se você quer que o texto correspondente seja exibido no valor de saída, use ots:formatopçãoEtiqueta de términoUma expressão regular que especifica o texto que marca o fim de um elemento. Observe que o texto que corresponde a essa expressão não faz parte do valor de saída. Se você quer que o texto correspondente seja exibido no valor de saída, use ots:formatopçãoTruncarEspecifica se os dados excedentes devem ser truncados em um campo de comprimento fixo ou se será gerado um erro. O valor por padrão étrue.SeparadorUma expressão regular que especifica um caractere que separa campos repetidos. Essa opção é habilitada somente se você seleciona a opção de ocorrênciaMultiple OptionalouMultiple Required.OmitEspecifica se o campo da saída deve ser omitido em uma transformaçãotext-to-XMLouXML-to-text. O valor por padrão é não omitir. - Na páginaDelimitdoCreate Field Wizard, descreva quantos caracteres do texto de amostra representam um campo:
Opção Descrição FormatoUma expressão regular que identifica padrões de texto válidos para um campo. Use essa expressão como uma alternativa paraStart TageEnd Tag, a fim de garantir que todo o texto correspondente seja exibido na saída. Você também pode usá-la quando estiver lidando com valores que ocorrem várias vezes para que fique claro quando ocorre o final da sequência.Fixed LengthEspecifica o comprimento dos campos com comprimento fixo. Inclui aspas e caracteres de escape.QuotedIndica se os valores de cadeia de caracteres são tratados como cadeias de caracteres entre aspas. As opções são:- Default:
- always:
- always-including-empty:
- optional:
- never:
PaddingUma expressão regular que identifica qualquer texto de preenchimento em campos com comprimento fixo.Preferred PaddingEspecifica o valor a ser usado se a expressão dePaddingpuder corresponder a mais de uma possível cadeia de caracteres.AlignEspecifica o alinhamento dos campos com comprimento fixo que exigem preenchimento. - Na páginaInterpretdoCreate Field Wizard, descreva quantos caracteres do texto de amostra representam um campo:
Opção Descrição TipoO tipo de dados do campo.Valor por padrãoUm valor por padrão para o campo.Date FormatEspecifica um padrão para datas ou horas. Com suporte a qualquer padrão permitido por JavasSimpleDateFormat.Idioma da dataEspecifica o idioma de data a ser usado na interpretação de datas. Garante que o nome seja usado no idioma apropriado quando o formato de data usar nomes de meses. O valor por padrão éEN.Ano de dois dígitosEspecifica um valor para interpretar datas com ano de dois dígitos. O analisador de esquema de texto interpreta as datas de ano de dois dígitos que ocorrem antes desse valor como ocorrendo no país atual. Exemplo: se você inserir18, o analisador interpreta14como2014e96como1996.Formato de númeroEspecifica um padrão para números. Com suporte a qualquer padrão permitido por JavasDecimalFormat.Separador decimalEspecifica o separador usado em números decimais.Grouping SeparatorEspecifica o separador de agrupamento de milhares nos números. - Repita as etapas 6 a 9 para cada campo do texto de exemplo, adicionando novos elementos à visualizaçãoem árvore. Depois de criar todas as definições de campos obrigatórios, exclua o restante.Unparsedelemento filho
- Para agrupar todos os elementos que você criou em um tipo complexo, selecione-os, clique com o botão direito do mouse neles e selecioneQuebrar elementos automaticamente. Em seguida, forneça um nome e um valor de ocorrência para o elemento wrapper.
- Na visualizaçãode Propriedadesdo elemento wrapper, selecione/nna lista suspensaEtiqueta de finalização.
- O elemento-raiz do esquema por padrão é denominadoFile. Na guiaEsquemada visualizaçãoPropriedadesdo elemento, forneça um nome mais significativo.
- Na visualizaçãoPropriedadesdo nível superiorschemaelemento, a propriedadeElemento-raiztem o valortns:File. SubstituirFilecom o nome significativo que você selecionou para o elemento-raiz.
- Para remover quaisquer espaços extras da saída gerada, selecione a visualizaçãoPropriedadesdo nível superior.schemaelemento. Selecione+na lista suspensaPreenchimento. Salve o esquema.