数据字典使商业用户能够使用后端数据源中的信息,而无需了解其基础数据模型的技术详细信息。 数据字典由数据字典元素(DDE)组成。 您可以使用这些数据元素将后端数据集成到信件中作为输入,以用于客户通信。
数据字典是描述基础数据结构及其关联属性的独立元数据表示。 数据字典是使用商业词汇创建的。 它可以映射到一个或多个基础数据模型。
数据字典由三种类型的元素组成:简单、合成和集合元素。 简单DDE是简单元素,如字符串、数字、日期和布尔值,它们包含城市名称等信息。 复合DDE包含其他DDE,其类型可以是简单、复合或集合。 例如,地址,由街道地址、城市、省、国家和邮政编码组成。 集合是类似的简单或复合DDE的列表。 例如,具有多个地点或不同的账单和送货地址的客户。
通信管理使用根据收件人字典结构存储的后端、客户、
或特定于客户的数据来创建用于不同客户的通信。 例如,可以使用友好名称创建文档,如“尊敬的{First Name}”、“先生”。 {姓氏}".
通常,企业用户不需要掌握元数据表示法,如XSD(XML模式)和Java类。 但是,他们通常需要访问这些数据结构和属性才能构建解决方案。
安装兼容性包以视图Forms页上的数据字典选项。
您可以使用模式字典编辑器创建数据字典,也可以上传XSD数据文件以创建基于该数据字典。 然后,您可以通过添加更多必需信息(包括字段)来扩展数据字典。 无论数据字典是如何创建的,业务流程所有者都不需要有关后端系统的知识。 业务流程所有者只需要对域对象及其定义的知识,即可对其流程进行操作。
对于需要相似元素的多个字母,可以创建通用数据字典。 但是,具有大量元素的大数据字典在使用数据字典和加载元素(如字母和文档片段)时可能会导致性能问题。 如果遇到性能问题,请尝试为不同的字母创建单独的数据字典。
选择Forms > 数据字典。
点按创建数据字典。
在“属性”屏幕中,添加以下内容:
标题: (可选)输入数据字典的标题。标题不需要唯一,并且可以有特殊字符和非英语字符。 字母和其他文档片段与其标题(如果可用)一起引用,例如在缩略图和资产属性中。 数据字典引用的是其名称而非标题。
名称: 数据字典的唯一名称。在“名称”字段中,只能输入英语字符、数字和连字符。 “名称”字段会根据“标题”字段自动填充,而“标题”字段中输入的特殊字符、空格、数字和非英语字符将替换为连字符。 尽管标题字段中的值会自动复制到名称中,但您可以编辑该值。
描述:(可选)数据字典的说明。
标记: (可选)要创建自定义标记,请在文本字段中输入值,然后按Enter。您可以在标记文本字段下看到标记。 保存此文本时,还会创建新添加的标记。
扩展属性:(可选)点按 添 加字段以指定数据字典的元数据属性。在“属性名称”列中,输入唯一的属性名称。 在“值”列中,输入要与属性关联的值。
(可选)要上传数据字典的XSD模式定义,请点按“数据字典结构”窗格下的上传XML模式。 浏览到XSD文件,选择它,然后点按打开。 根据上传的XML模式创建数据字典。 您需要调整数据字典中元素的显示名称和说明。 为此,请点按元素名称,然后在右侧窗格中的字段中编辑其说明、显示名称和其他详细信息,以选择这些元素的名称。
有关计算DD元素的详细信息,请参阅计算数据字典元素。
您可以使用用户界面跳过上传模式文件并从头构建数据字典。 要执行此操作,请跳过此步骤,然后继续执行后续步骤。
点按下一步。
在“添加属性”屏幕中,将元素添加到数据字典。 如果已上传模式以获取数据字典的基本结构,则还可以添加/删除元素并编辑其详细信息。
您可以点按元素右侧的三个点,并向数据字典结构中添加元素。
选择复合元素、集合元素或基元元素。
以下是创建数据字典的一些规则:
有关复合、集合和基元元素以及使用数据字典元素的详细信息,请参阅将数据字典元素映射到XML模式。
有关数据字典中的验证的信息,请参阅数据字典编辑器验证。
(可选)选择元素后,在高级选项卡中,可以添加属性(属性)。 您也可以点按添加字段并扩展DD元素的属性。
(可选)通过点按元素右侧的三个圆点并选择删除可删除任何元素。
删除包含子节点的复合/集合元素也会删除其子节点。
(可选)在“数据字典结构”窗格和“字段和变量”列表面板中选择元素。 更改或添加与元素关联的任何必需属性。
点按保存。
要使用与现有数据字典相似的属性和元素快速创建一个或多个数据字典,可复制并粘贴它们。
在编辑或查看数据字典时,您可以看到数据字典中引用哪些元素,其中包括文本、条件、字母和交互通信。
执行以下操作之一以编辑数据字典:
或者点击数据字典以视图它。
在数据字典中,点按一个简单元素以选择它。 复合元素和集合元素没有引用。
此外,还会显示元素的“基本”和“高级”属性,以及“借出内容”。
点按借出内容。
此时将显示“借出内容”选项卡,其中包含以下内容:文本、条件、信件和交互式通信。 每个标题还显示对所选元素的引用数。
点按标题以查看引用元素的资产名称。
要视图为其他元素借出的内容,请点按该元素。
要显示引用元素的资产,请点按其名称。 浏览器会显示资产、信函或交互式通信。
在“数据字典”页上,点按选择。
点按要下载测试数据的数据字典,然后点按下载示例XML数据。
点按警报消息中的确定。 下载XML文件。
使用记事本或其他XML编辑器打开XML文件。 XML文件的结构与元素中的数据字典和占位符字符串的结构相同。 将占位符字符串替换为要测试字母的数据。
<?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>
在此示例中,XML为集合元素创建三个值的空间,但可以根据需要增加/减少值的数量。
创建数据条目后,在预览包含测试数据的字母时,可以使用此XML文件。
可以使用DD添加此测试数据(选择DD,然后点按上传测试数据并上传此xml文件)
因此,当您正常预览字母(非自定义)后,此XML数据将用于字母。 您也可以点按“自定义”,然后上传此XML。
以下代码示例显示数据字典的实现详细信息。
<?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>
下表详细列出了与DDE关联的常用属性:
属性 | 类型 | 描述 |
名称 | 字符串 | 必填. DDE的名称。一定是独一无二的。 |
引用 名称 |
字符串 | 必填. DDE的唯一引用名称允许对DDE的引用,这些引用与对数据字典的层次结构或结构的更改无关。 文本模块已使用此名称进行映射 |
displayname | 字符串 | DDE的可选用户友好名称。 |
描述 | 字符串 | DDE的说明。 |
elementType | 字符串 | 必填. DDE的类型:字符串、数字、日期、布尔、复合、集合。 |
elementSubType | 字符串 | DDE的子类型:枚举。 仅允许用于STRING和NUMBER元素类型。 |
键 | 布尔型 | 一个布尔字段,用于指示DDE是否为关键元素。 |
已计算 | 布尔型 | 指示是否计算DDE的布尔字段。 计算的DDE值是其他DDE值的函数。 默认情况下,支持jsp表达式。 |
表达式 | 字符串 | “计算”DDE的表达式。 默认情况下,发售的表达式评估服务支持JSP EL表达式。 您可以用自定义实现替换表达式服务。 |
valueSet | 列表 | 枚举类型DDE的一组允许值。 例如,帐户类型只能具有(保存,当前)值。 |
extendedProperties | Object | 添加到DDE的自定义属性的映射(特定于用户界面或任何其他信息)。 |
必填 | 布尔型 | 标志指示与数据字典对应的实例数据源必须包含此特定DDE的值。 |
捆绑 | BindingElement | 元素的XML或Java绑定。 |
数据字典还可以包括计算元素。 计算数据字典元素始终与表达式关联。 计算此表达式以在运行时获得数据字典元素的值。 计算的DDE值是其他DDE值或文本的函数。 默认情况下,支持JSP表达式语言(EL)表达式。 EL表达式使用${ }字符,有效表达式可以包括文字、运算符、变量(数据字典元素引用)和函数调用。 在表达式中引用数据字典元素时,将使用DDE的引用名称。 引用名称对于数据字典中的每个数据字典元素是唯一的。
计算的DDE PersonFullName可以与EL连接表达式(如${PersonFirstName} ${PersonLastName})关联。
导出XSD需要特定的数据映射,下表将详细介绍该映射。 DDI列指示DDI中可用的DDE值的类型。
XSD |
数据字典 |
DDI(实例值数据类型) |
xs:类型元素——复合类型 |
DDE类型- COMPOSITE |
java.util.Map |
xs:element where maxOccurs > 1 |
DDE类型- COLLECTION- |
java.util.List |
类型属性- xs:id |
DDE类型- STRING |
java.lang.String |
xs:属性/xs:类型元素- xs:string |
类型DDE - STRING |
java.lang.String |
xs:attribute /xs:type - xs:布尔 |
DDE类型——布尔 |
java.lang.Boolean |
xs:属性/xs:类型元素- xs:date | DDE类型- DATE | java.lang.String |
xs:属性/xs:类型元素- xs:integer | DDE类型- NUMBER | java.lang.Double |
xs:attribute /xs:type - xs:long | DDE类型- NUMBER | java.lang.Double |
xs:attribute /xs:type的元素- xs:多次 | DDE类型- NUMBER | java.lang.Double |
枚举类型和baseType的元素- xs:string | DDE,类型为 - STRING 子类型- ENUM valueSet - ENUM 的允许值 |
java.lang.String |
创建数据字典后,可以将其作为XML范例数据文件下载,以在其中生成文本条目。
在“数据字典”页中,点按选择,然后点按数据字典以选择它。
选择下载示例XML数据。
点按警报消息中的确定。
“对应管理”根据所选数据字典的结构创建XML文件,并将其下载到名为<data-dictionary-name>-SampleData的计算机。 现在,您可以在创建字母时,在XML或文本编辑器中编辑此文件以进行数据条目。
当您希望以不同语言向客户发送同一字母时,您可以本地化数据字典和数据字典元素的显示名称、说明和枚举值集。
在“数据字典”页上,点按选择,然后点按数据字典以选择它。
点按下载本地化数据。
点按警报中的确定。 Corresponcements Management将名为DataDictionary-<DDname>.zip的zip文件下载到您的计算机。
Zip文件包含。properties文件。 此文件定义下载的数据字典。 属性文件的内容类似于以下内容:
#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
属性文件的结构为描述和数据字典以及数据字典中的每个数据字典元素的显示名称定义一行。 此外,属性文件为每个数据字典元素的枚举值设置定义一行。 与数据字典一样,相应的属性文件可以具有多个数据字典元素定义。 此外,文件可包含一个或多个枚举值集的定义。
要在其他区域设置中更新。properties文件,请更新文件中的显示名称和说明值。 为要本地化的每种语言创建更多文件实例。 仅支持法语、德语、日语和英语语言。
使用以下名称保存不同的已更新属性文件:
_fr_FR.properties法语
_de_DE.properties德语
_ja_JA.properties日语
_en_EN.properties英语
将。properties文件(或多个语言环境的文件)存档为单个。zip文件。
在“本地化字典”页中,选择更多 > 上载数据,然后选择包含本地化属性文件的zip文件。
要视图本地化更改,请更改浏览器区域设置。
数据字典编辑器在创建或更新数据字典时强制执行以下验证。
在数据字典级别应用的验证
在数据字典元素级别应用的验证。
您可以从XML模式创建数据字典,也可以使用数据字典用户界面构建它。 数据字典中的所有数据字典元素(DDE)都有一个XML绑定字段,用于存储DDE与XML模式中元素的绑定。 每个DDE中的绑定相对于父DDE。
以下详细信息示例模型和代码示例显示数据字典的实施详细信息。
基元DDE表示本质上是原子的字段或属性。 在复杂类型(复合DDE)或重复元素(集合DDE)的范围外定义的基本DDE可以存储在XML模式中的任何位置。 与基元DDE对应的数据的位置不取决于其父DDE的映射。 Primitive DDE使用XML绑定字段中的映射信息确定其值,映射转换为以下任一内容:
以下示例展示了一个简单的模式。
<?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>
数据字典元素 | 默认XML绑定 |
---|---|
年龄 | /年龄 |
价格 | /价格 |
组合元素不支持绑定,如果提供绑定,则忽略它。 所有原始类型的构成子DDE的绑定必须是绝对的。 允许对复合DDE的子元素进行绝对映射在XPath绑定方面提供了更大的灵活性。 将复合DDE映射到XML模式中的复杂类型元素会限制其子元素的绑定范围。
以下示例显示了备注的模式。
<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>
数据字典元素 | 默认XML绑定 |
附注 | 空(null) |
到 | /note/to |
从 | /note/from |
标题 | /note/heading |
身体 | /note/body |
集合元素仅映射到其他基数> 1的集合元素。 集合DDE的子DDE与其父项的XML绑定相关(本地)XML绑定。 由于集合元素的子DDE必须与父元素的基数相同,因此要求相对绑定以确保基数约束,以使子DDE不指向非重复的XML模式元素。 在以下示例中,“TokenID”的基数必须与“Tokens”相同,后者是其父集合DDE。
将集合DDE映射到XML模式元素时:
与Collection元素对应的DDE绑定必须是绝对XPath
不为表示集合元素类型的DDE提供任何绑定。 如果提供,则忽略绑定。
集合元素的所有子DDE的绑定必须相对于父集合元素。
下面的XML模式声明一个名为Tokens的元素,并且maxOccurs属性为“unbounded”。 因此,令牌是集合元素。
<?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>
与此示例关联的Token.xsd为:
<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>
数据字典元素 | 默认XML绑定 |
---|---|
根 | 空(null) |
令牌 | /根/令牌 |
复合 | 空(null) |
令牌ID | 令牌ID |
TokenText | 空(null) |
令牌标题 | TokenText/TextHeading |
TokenBody | TokenText/TextBody |