AEM 6.4 chegou ao fim do suporte estendido e esta documentação não é mais atualizada. Para obter mais detalhes, consulte nossa períodos de assistência técnica. Encontre as versões compatíveis here.
Um dicionário de dados permite que usuários corporativos usem informações de fontes de dados de back-end sem conhecer detalhes técnicos sobre seus modelos de dados subjacentes. Um dicionário de dados é composto por elementos de dicionário de dados (DDEs). Esses elementos de dados são usados para integrar dados de back-end às cartas como entrada para uso em uma correspondência do cliente.
Um dicionário de dados é uma representação independente dos metadados que descreve as estruturas de dados subjacentes e seus atributos associados. Um dicionário de dados é criado usando o vocabulário de negócios. Ele pode ser mapeado para um ou mais modelos de dados subjacentes.
O dicionário de dados é composto de elementos de três tipos: Elementos simples, composto e coleção. DDEs simples são elementos primitivos, como sequências, números, datas e valores booleanos que contêm informações como o nome de uma cidade. Um DDE composto contém outros DDEs, que podem ser do tipo primitivo, composto ou coleção. Por exemplo, um endereço, que consiste em um endereço de rua, cidade, província, país e código postal. Uma Coleção é uma lista de DDEs Simples ou Compostos semelhantes. Por exemplo, um cliente com vários locais ou endereços de faturamento e envio diferentes.
O Gerenciamento de correspondência usa o back-end, o cliente,
ou dados específicos do recipient armazenados de acordo com a estrutura do dicionário de dados para criar correspondência destinada a clientes diferentes. Por exemplo, um documento pode ser criado com nomes amigáveis, como "Caro {Nome}","Sr. {Sobrenome}".
Normalmente, os usuários corporativos não exigem conhecimento de representações de metadados, como XSD (esquema XML) e classes Java. No entanto, elas geralmente exigem acesso a essas estruturas de dados e atributos para criar soluções.
Instale o Pacote de Compatibilidade para visualizar o Dicionários de dados na Forms página.
Você usa o Editor de dicionário de dados para criar um dicionário de dados ou pode fazer upload de um arquivo de esquema XSD para criar um dicionário de dados com base nele. É possível estender o dicionário de dados adicionando mais informações necessárias, incluindo campos. Independentemente de como o dicionário de dados foi criado, o proprietário do processo de negócios não precisa de conhecimento dos sistemas de back-end. O proprietário do processo de negócios precisa apenas do conhecimento dos objetos de domínio e de suas definições para o seu processo.
Para várias letras que exigem elementos semelhantes, você pode criar um dicionário de dados comum. Entretanto, um grande dicionário de dados com um grande número de elementos pode causar problemas de desempenho ao usar o dicionário de dados e carregar os elementos, como em letras e fragmentos de documento. Se tiver problemas de desempenho, tente criar dicionários de dados separados para letras diferentes.
Selecionar Forms > Dicionários de dados.
Toque Criar dicionário de dados.
Na tela Propriedades, adicione o seguinte:
Título: (Opcional) Insira o título do dicionário de dados. O título não precisa ser exclusivo e pode ter caracteres especiais e caracteres que não sejam inglês. Cartas e outros fragmentos de documento são referenciados com seu título (quando disponíveis), como em miniaturas e propriedades de ativos. Os dicionários de dados são referenciados com seus nomes e não com títulos.
Nome: O nome exclusivo do dicionário de dados. No campo Nome , é possível inserir somente caracteres, números e hifens em inglês. O campo Nome é automaticamente preenchido com base no campo Título e os caracteres especiais, espaços, números e caracteres que não estão em inglês inseridos no campo Título são substituídos por hifens. Embora o valor no campo Título seja copiado automaticamente para o Nome, você pode editar o valor.
Descrição: (Opcional) Descrição do dicionário de dados.
Tags: (Opcional) Para criar uma tag personalizada, insira o valor no campo de texto e pressione Enter. Você pode ver sua tag abaixo do campo de texto das tags. Ao salvar esse texto, as tags recém-adicionadas também são criadas.
Propriedades estendidas: (Opcional) Toque em Adicionar campo para especificar atributos de metadados para o dicionário de dados. Na coluna Nome da propriedade , insira um nome de propriedade exclusivo. Na coluna Value , insira um valor para associar à propriedade.
(Opcional) Para fazer upload de uma definição de esquema XSD para seu dicionário de dados, no painel Estrutura do dicionário de dados, toque em Fazer upload do esquema XML. Navegue até o arquivo XSD, selecione-o e toque em Abrir. Um Dicionário de dados é criado com base no esquema XML carregado. Você precisa ajustar os nomes de exibição e as descrições dos elementos no dicionário de dados. Para fazer isso, selecione os nomes dos elementos tocando neles e edite suas descrições, nomes de exibição e outros detalhes nos campos no painel direito.
Para obter mais informações sobre Elementos de DD calculados, consulte Elementos do dicionário de dados calculados.
É possível ignorar o upload do arquivo de esquema e criar o dicionário de dados do zero usando a interface do usuário do . Para fazer isso, pule esta etapa e continue com as próximas etapas.
Toque Próximo.
Na tela Adicionar propriedades , adicione os elementos ao dicionário de dados. Você também pode adicionar/excluir elementos e editar seus detalhes se tiver carregado um esquema para obter uma estrutura básica do dicionário de dados.
Você pode tocar nos três pontos no lado direito de um elemento e adicionar um elemento à estrutura do dicionário de dados.
Selecione Elemento composto, Elemento de coleção ou Elemento primitivo.
A seguir estão algumas regras para criar um dicionário de dados:
Para obter mais informações sobre elementos Compostos, Coleção e Primitivos e trabalhar com elementos do dicionário de dados, consulte Mapeamento de elementos do dicionário de dados para o esquema XML.
Para obter informações sobre validações no Dicionário de dados, consulte Validações do editor do dicionário de dados.
(Opcional) Depois de selecionar um elemento, na guia Avançado , é possível adicionar propriedades (atributos). Também é possível tocar em Adicionar campo e estenda as propriedades de um elemento DD.
(Opcional) Você pode remover qualquer elemento tocando nos três pontos no lado direito de um elemento e selecionando Excluir.
A exclusão de um elemento composto/coleção com nós filhos também exclui seus nós filhos.
(Opcional) Selecione um elemento no painel Estrutura do dicionário de dados e no painel Campo e Lista de variáveis. Altere ou adicione quaisquer atributos necessários associados ao elemento.
Toque Salvar.
Para criar rapidamente um ou mais dicionários de dados com propriedades e elementos semelhantes aos dicionários de dados existentes, você pode copiá-los e colá-los.
Ao editar ou exibir um dicionário de dados, você pode ver quais elementos no dicionário de dados são referenciados em quais Textos, Condições, Cartas e Comunicações interativas.
Siga um destes procedimentos para editar o dicionário de dados:
Ou toque em um dicionário de dados para exibi-lo.
No dicionário de dados, toque em um elemento simples para selecioná-lo. Os elementos de composição e coleção não têm referências.
Juntamente com as propriedades Básicas e Avançadas do elemento, o Conteúdo emprestado também é exibido.
Toque em Conteúdo emprestado.
A guia Conteúdo emprestado é exibida com o seguinte: Textos, condições, letras e comunicações interativas. Cada um desses cabeçalhos também exibe o número de referências ao elemento selecionado.
Toque em um cabeçalho para ver o nome dos ativos que se referem ao elemento.
Para exibir o conteúdo emprestado para outro elemento, toque no elemento .
Para exibir um ativo que se refere ao elemento, toque em seu nome. O navegador exibe o ativo, a letra ou a Comunicação interativa.
Na página Dicionários de dados , toque em Selecionar.
Toque em um dicionário de dados para o qual deseja baixar os dados de teste e toque em Baixar dados de exemplo XML.
Toque OK na mensagem de alerta. Um arquivo XML é baixado.
Abra o arquivo XML com o Bloco de notas ou outro editor XML. O arquivo XML tem a mesma estrutura que o dicionário de dados e as strings de espaço reservado nos elementos. Substitua as strings de espaço reservado pelos dados com os quais você deseja testar uma carta.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Company>
<Name>string</Name>
<Type>string</Type>
<HeadOfficeAddress>
<Street>string</Street>
<City>string</City>
<State>string</State>
<Zip>string</Zip>
</HeadOfficeAddress>
<SalesOfficeAddress>
<Street>string</Street>
<City>string</City>
<State>string</State>
<Zip>string</Zip>
</SalesOfficeAddress>
<HeadCount>1.0</HeadCount>
<CEO>
<PersonName>
<FirstName>string</FirstName>
<MiddleName>string</MiddleName>
<LastName>string</LastName>
</PersonName>
<DOB>string</DOB>
<CurrAddress>
<Street>string</Street>
<City>string</City>
<State>string</State>
<Zip>string</Zip>
</CurrAddress>
<DOJ>14-04-1973</DOJ>
<Phone>1.0</Phone>
</CEO>
</Company>
Neste exemplo, XML cria espaço para três valores em um elemento de coleção, mas o número de valores pode ser aumentado/diminuído de acordo com o requisito.
Depois de fazer as entradas de dados, você pode usar esse arquivo XML ao visualizar uma carta com dados de teste.
Você pode adicionar esses dados de teste com DD (selecione DD e toque em Fazer upload de dados de teste e fazer upload desse arquivo xml)
Então, depois disso, quando você visualiza a carta normalmente (não personalizada), esses dados XML são usados na carta. Também é possível tocar em Personalizado e fazer upload desse XML.
Os exemplos de código a seguir mostram detalhes de implementação do Dicionário de dados.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns="DCT" targetNamespace="DCT" xmlns:xs="https://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="Company">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Type" type="xs:anySimpleType"/>
<xs:element name="HeadOfficeAddress" type="Address"/>
<xs:element name="SalesOfficeAddress" type="Address" minOccurs="0"/>
<xs:element name="HeadCount" type="xs:integer"/>
<xs:element name="CEO" type="Employee"/>
<xs:element name="Workers" type="Employee" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="Employee">
<xs:complexContent>
<xs:extension base="Person">
<xs:sequence>
<xs:element name="CurrAddress" type="Address"/>
<xs:element name="DOJ" type="xs:date"/>
<xs:element name="Phone" type="xs:integer"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Person">
<xs:sequence>
<xs:element name="PersonName" type="Name"/>
<xs:element name="DOB" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Name">
<xs:sequence>
<xs:element name="FirstName" type="xs:string"/>
<xs:element name="MiddleName" type="xs:string"/>
<xs:element name="LastName" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Address">
<xs:sequence>
<xs:element name="Street" type="xs:string"/>
<xs:element name="City" type="xs:string"/>
<xs:element name="State" type="xs:string"/>
<xs:element name="Zip" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
A tabela a seguir detalha os atributos comuns associados a um DDE:
Atributo | Tipo | Descrição |
Nome | String | Obrigatório. Nome do DDE. Deve ser único. |
Referência Nome |
String | Obrigatório. Nome de referência exclusivo para o DDE que permite referências ao DDE que são independentes de alterações na hierarquia ou na estrutura do dicionário de dados. Os módulos de texto são mapeados usando este nome |
displayname | String | Um nome opcional amigável para o usuário do DDE. |
descrição | String | Descrição do DDE. |
elementType | String | Obrigatório. O tipo de DDE: STRING, NÚMERO, DATA, Booleano, COMPOSTO, COLEÇÃO. |
elementSubType | String | O subtipo para DDE: ENUM. Somente permitido para STRING e NUMBER elementType. |
Chave | Booleano | Um campo booleano para indicar se um DDE é um elemento chave. |
Computado | Booleano | Um campo booleano para indicar se um DDE é calculado. Um valor DDE calculado é uma função de outros valores DDE. Por padrão, expressões jsp são compatíveis. |
expressão | String | A expressão para o DDE "calculado". O serviço de avaliação de expressão enviado por padrão suporta expressões JSP EL. É possível substituir o serviço de expressão por uma implementação personalizada. |
valueSet | Lista | Um conjunto de valores permitidos para um tipo Enum DDE. Por exemplo, o tipo de Conta pode ter apenas valores (Salvar, Atual). |
extendedProperties | Objeto | Um mapa de propriedades personalizadas adicionado ao DDE (interface do usuário específica ou qualquer outra informação). |
Obrigatório | Booleano | O sinalizador indica que a fonte de dados da instância correspondente ao dicionário de dados deve conter o valor desse DDE específico. |
Vínculo | BindingElement | O vínculo XML ou Java do elemento. |
Um dicionário de dados também pode incluir elementos calculados. Um elemento de dicionário de dados calculado é sempre associado a uma expressão. Essa expressão é avaliada para obter o valor de um elemento de dicionário de dados no tempo de execução. Um valor DDE calculado é uma função de outros valores DDE ou literais. Por padrão, as expressões da Linguagem de expressão JSP (EL) são compatíveis. As expressões EL usam os caracteres ${ } e expressões válidas podem incluir literais, operadores, variáveis (referências de elementos do dicionário de dados) e chamadas de função. Ao fazer referência a um elemento de dicionário de dados na expressão, o nome de referência do DDE é usado. O nome de referência é exclusivo para cada elemento de dicionário de dados em um dicionário de dados.
Um DDE PersonFullName calculado pode ser associado a uma expressão de concatenação EL, como ${PersonFirstName} ${PersonLastName}.
A exportação de um XSD requer mapeamento de dados específico, que é detalhado na tabela a seguir. A coluna DDI indica o tipo do valor DDE, conforme disponível no DDI.
XSD |
Dicionário de dados |
DDI (Tipo de Dados de Valor da Instância) |
xs:elemento do tipo - Tipo composto |
DDE do tipo - COMPOSITE |
java.util.Map |
xs:element em que maxOccurs > 1 |
DDE do tipo - COLLECTION- |
java.util.List |
Atributo do tipo - xs:id |
DDE do tipo - STRING |
java.lang.String |
xs:attribute /xs:element do tipo - xs:string |
DDE do tipo - STRING |
java.lang.String |
xs:attribute /xs:element do tipo - xs: booleano |
DDE do tipo - Booleano |
java.lang.Boolean |
xs:attribute /xs:element do tipo - xs:date | DDE do tipo - DATE | java.lang.String |
xs:attribute /xs:element do tipo - xs:integer | DDE do tipo - NÚMERO | java.lang.Double |
xs:attribute /xs:element do tipo - xs:long | DDE do tipo - NÚMERO | java.lang.Double |
xs:attribute /xs:element do tipo - xs:double | DDE do tipo - NÚMERO | java.lang.Double |
Elemento do tipo enum e baseType - xs:string | DDE de type - STRING subtipo - ENUM valueSet - os valores permitidos para ENUM |
java.lang.String |
Depois de criar um dicionário de dados, você pode baixá-lo como um arquivo de dados de amostra XML para fazer entradas de texto nele.
Na página Dicionários de dados , toque em Selecionar e toque em um dicionário de dados para selecioná-lo.
Selecionar Baixar dados de exemplo XML.
Toque OK na mensagem de alerta.
O Gerenciamento de correspondência cria um arquivo XML com base na estrutura do dicionário de dados selecionado e o baixa no computador com o nome <data-dictionary-name>-SampleData. Agora você pode editar esse arquivo em um editor de texto ou XML para fazer entradas de dados enquanto criação de uma carta.
Quando quiser enviar a mesma carta em idiomas diferentes para os clientes, poderá localizar o nome de exibição, a descrição e os conjuntos de valores de enumeração do Dicionário de dados e dos Elementos do dicionário de dados.
Na página Dicionários de dados , toque em Selecionar e toque em um dicionário de dados para selecioná-lo.
Toque Baixar dados de localização.
Toque OK no alerta. O Gerenciamento de correspondência baixa um arquivo zip em seu computador com o nome DataDictionary-<ddname>.zip.
O arquivo Zip contém um arquivo .properties . Esse arquivo define o dicionário de dados baixado. O conteúdo do arquivo de propriedade é semelhante ao seguinte:
#Wed May 20 16:06:23 BST 2015
DataDictionary.EmployeeDD.description=
DataDictionary.EmployeeDD.displayName=EmployeeDataDictionary
DataDictionaryElement.name.description=
DataDictionaryElement.name.displayName=name
DataDictionaryElement.person.description=
DataDictionaryElement.person.displayName=person
A estrutura do arquivo de propriedades define uma linha cada para a descrição e o nome de exibição do dicionário de dados e cada elemento de dicionário de dados no dicionário de dados. Além disso, o arquivo de propriedades define uma linha para um valor enum definido para cada elemento de dicionário de dados. Como ocorre com um dicionário de dados, o arquivo de propriedades correspondente pode ter várias definições de elementos do dicionário de dados. Além disso, o arquivo pode conter as definições de um ou mais conjuntos de valores de enumeração.
Para atualizar o arquivo .properties em um local diferente, atualize o nome de exibição e os valores de descrição no arquivo. Crie mais instâncias do arquivo para cada idioma que deseja localizar. Somente os idiomas francês, alemão, japonês e inglês são compatíveis.
Salve os diferentes arquivos de propriedades atualizados com os seguintes nomes:
_fr_FR.properties Francês
_de_DE.properties Alemão
_ja_JA.properties Japonês
_en_EN.properties Inglês
Arquive o arquivo .properties (ou arquivos de várias localidades) em um único arquivo .zip.
Na página Dicionários de dados , selecione Mais > Fazer upload de dados de localização e selecione o arquivo zip com arquivos de propriedades localizados.
Para exibir as alterações de localização, altere o local do navegador.
O Editor de dicionário de dados impõe as seguintes validações ao criar ou atualizar um dicionário de dados.
Validações aplicadas no nível do dicionário de dados
Validações aplicadas no Nível de elemento do dicionário de dados.
Você pode criar um dicionário de dados a partir de um Esquema XML ou criá-lo usando a interface do usuário do Dicionário de dados. Todos os Elementos do dicionário de dados (DDEs) em um dicionário de dados têm um campo Vínculo XML para armazenar o vínculo do DDE a um elemento no esquema XML. O vínculo em cada DDE é relativo ao DDE pai.
Os detalhes a seguir incluem modelos de amostra e amostras de código que mostram detalhes de implementação do Dicionário de dados.
Um DDE primitivo representa um campo ou atributo que é de natureza atômica. Os DDEs primitivos definidos fora do escopo de um tipo complexo (DDE composto) ou de um elemento repetitivo (DDE da coleção) podem ser armazenados em qualquer local dentro do Esquema XML. A localização dos dados correspondentes a um DDE primitivo não depende do mapeamento do DDE pai. O DDE primitivo usa as informações de mapeamento do campo Vínculo XML para determinar seu valor e os mapeamentos são traduzidos em um dos seguintes:
O exemplo a seguir mostra um schema simples.
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="https://www.w3.org/2001/XMLSchema">
<xs:element name='age' type='integer'/>
<xs:element name='price' type='decimal'/>
</xs:schema>
Elemento do dicionário de dados | Vínculo XML padrão |
---|---|
idade | /idade |
preço | /preço |
O vínculo não é suportado para elementos Compostos, se o vínculo for fornecido, ele será ignorado. A ligação para todos os DDEs filhos constituintes de tipo primitivo deve ser absoluta. Permitir o mapeamento absoluto para elementos filho de um DDE composto fornece mais flexibilidade em termos de Vínculo XPath. Mapear um DDE composto para um elemento de tipo complexo no esquema XML limita o escopo do vínculo para seus elementos filho.
O exemplo a seguir mostra o esquema de uma nota.
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Elemento do dicionário de dados | Vínculo XML padrão |
observação | empty(null) |
para | /note/to |
de | /note/from |
cabeçalho | /nota/cabeçalho |
corpo | /nota/corpo |
Um elemento de coleção só é mapeado para outro elemento de coleção que tenha cardinalidade > 1. Os DDEs filho de uma coleção DDE têm Vínculo XML relativo (local) em relação ao Vínculo XML do pai. Como os DDEs filhos de um elemento de coleção devem ter a mesma cardinalidade que os pais, a vinculação relativa é mandada para garantir a restrição de cardinalidade para que os DDEs filhos não apontem para um elemento Esquema XML não repetitivo. No exemplo abaixo, a cardinalidade de "TokenID" deve ser igual a "Tokens", que é sua coleção pai DDE.
Ao mapear um DDE de coleção para um elemento de Esquema XML:
o vínculo para o DDE correspondente ao elemento Collection deve ser o XPath absoluto
Não forneça nenhum vínculo para o DDE que representa o tipo de elemento Collection . Se fornecido, o vínculo será ignorado.
O vínculo para todos os DDEs filhos do elemento Collection deve ser relativo ao elemento primário Collection.
O Esquema XML abaixo declara um elemento com o nome Tokens e um atributo maxOccurs de "não limitado". Assim, Tokens é um elemento de coleção.
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Tokens>
<TokenID>string</TokenID>
<TokenText>
<TextHeading>string</TextHeading>
<TextBody>string</TextBody>
</TokenText>
</Tokens>
<Tokens>
<TokenID>string</TokenID>
<TokenText>
<TextHeading>string</TextHeading>
<TextBody>string</TextBody>
</TokenText>
</Tokens>
<Tokens>
<TokenID>string</TokenID>
<TokenText>
<TextHeading>string</TextHeading>
<TextBody>string</TextBody>
</TokenText>
</Tokens>
</Root>
O Token.xsd associado a esta amostra seria:
<xs:element name="Root">
<xs:complexType>
<xs:sequence>
<xs:element name="Tokens" type="TokenType" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="TokenType">
<xs:sequence>
<xs:element name="TokenID" type="xs:string"/>
<xs:element name="TokenText">
<xs:complexType>
<xs:sequence>
<xs:element name="TextHeading" type="xs:string"/>
<xs:element name="TextBody" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
Elemento do dicionário de dados | Vínculo XML padrão |
---|---|
Raiz | empty(null) |
Tokens | /Raiz/Tokens |
Composto | empty(null) |
TokenID | TokenID |
TokenText | empty(null) |
TokenTitle | TokenText/TextCabeçalho |
TokenBody | TokenText/TextBody |