模型元素的文档 |
要将模型元素的文档添加至报告设计,请将以下列映射添加至数据集: - 名称:documentation
- 表达式:getElementsWithStereotype(ownedComment, 'Default::Documentation')[1]/@body
- 类型:String
请将动态文本元素而不是标签元素用于此列。使用动态文本时,报告中文档的格式化方式与文档在模型中时相同;使用标签时,将在报告中生成 HTML 标记。
IBM Rational 产品提供了 getElementsWithStereotype 函数。
|
应用于模型的概要文件的列表 |
要获取示例,请参阅“空白 UML 模型报告” (blankUMLModelReport.rptdesign)
中的“已应用的概要文件”数据集,可以从“报告资源管理器”视图访问该报告。
|
应用于元素的构造型的列表 |
创建具有下列特征的 UML 数据集: - 参数:element
- 行映射:
- 表达式:oclEvaluate(resolveURI($element), "self.getAppliedStereotypes()")
- 类型:uml:Stereotype
在报告设计中使用该数据集时,请将参数值设置为模型元素的 URI。
|
直接存在于包中的类的列表 |
创建具有下列特征的 UML 数据集: - 参数:package
- 行映射:
- 表达式:oclQuery(resolveURI($package)/packagedElement,
"self.oclIsKindOf(uml::Class)")
- 类型:uml:Class
在报告设计中使用该数据集时,请将参数值设置为模型中包的 URI。
|
类中属性及其类型的列表 |
要获取示例,请参阅“空白 UML 模型报告” (blankUMLModelReport.rptdesign)
中的“类以及属性”数据集,可以从“报告资源管理器”视图访问该报告。
|
类中操作及其返回类型的列表 |
要获取示例,请参阅“空白 UML 模型报告” (blankUMLModelReport.rptdesign)
中的“类以及属性”数据集,可以从“报告资源管理器”视图访问该报告。
将操作列表包括在类中类似于将属性列表包括在类中,但是请使用操作来代替属性。
|
操作中的参数(“return”除外)及其类型的列表 |
创建具有下列特征的 UML 数据集: - 参数:operation
- 行映射:
- 表达式:oclQuery(resolveURI($operation)/ownedParameter,
"self.direction <> ParameterDirectionKind::return")
- 类型:uml:Parameter
- 列映射:typeName、type/@name 和 String
在报告设计中使用该数据集时,请将参数值设置为模型中操作的 URI。
|
操作抛出的异常的列表 |
创建具有下列特征的 UML 数据集: - 参数:operation
- 行映射:
- 表达式:resolveURI($operation)/raisedException
- 类型:uml:Type
在报告设计中使用该数据集时,请将参数值设置为模型中操作的 URI。
|
实现接口的所有类的列表 |
创建具有下列特征的 UML 数据集: - 参数:interface
- 行映射:
- 表达式:oclEvaluate(resolveURI($interface), "InterfaceRealization.allInstances()->select(i
| i.supplier->includes(self))")
- 类型:uml:InterfaceRealization
- 列映射:
- clientName、client[1]/@name, 和 String
- clientURI、getURI(client[1]) 和 String
在报告设计中使用该数据集时,请将参数值设置为模型中接口的 URI。
|
类实现的所有接口的列表 |
创建具有下列特征的 UML 数据集: - 参数:class
- 行映射:
- 表达式:oclEvaluate(resolveURI($class), "InterfaceRealization.allInstances()->select(i
| i.client->includes(self))")
- 类型:uml:InterfaceRealization
- 列映射:
- supplierName、supplier[1]/@name 和 String
- supplierURI、getURI(supplier[1]) 和 String
在报告设计中使用该数据集时,请将参数值设置为模型中类的 URI。
|
继承自一个类的所有类的列表 |
要获取示例,请参阅“UML 模型度量报告” (umlModelMetrics.rptdesign) 中的“子类”数据集。 |
一个类继承自的所有类的列表 |
创建具有下列特征的 UML 数据集: - 参数:class
- 行映射:
- 表达式:resolveURI($class)/superClass
- 类型:uml:Classifier
在报告设计中使用该数据集时,请将参数值设置为模型中类的 URI。
|
与一个类具有直接关联的所有类的标准名称以及目标角色名称、可视性和多重性的列表 |
创建具有下列特征的 UML 数据集: - 参数:class
- 行映射:
- 表达式:oclQuery(resolveURI($class)/ownedAttribute,
"Association.allInstances()->select(a|a.memberEnd->includes(self))->notEmpty()")
- 类型:uml:Property
- 列映射:
- targetRoleName、@name 和 String
- visibility、@visibility 和 String
- multiplicity、concat(concat(@lower,".."),
@upper) 和 String
在报告设计中使用该数据集时,请将参数值设置为模型中类的 URI。
|
与参与者相关联的用例 |
创建具有下列特征的 UML 数据集: - 参数:actor
- 行映射:
- 表达式:oclEvaluate(resolveURI($actor), "Association.allInstances()->select(a|a.endType->includes(self)
and a.endType->select(t|t.oclIsKindOf(uml::UseCase))->notEmpty())->collect(a|a.endType->select(t|t
<> self))")
- 类型:uml:UseCase
在报告设计中使用该数据集时,请将参数值设置为模型中参与者的 URI。
|
与用例相关联的参与者 |
创建具有下列特征的 UML 数据集: - 参数:usecase
- 行映射:
- 表达式:oclEvaluate(resolveURI($usecase), "Association.allInstances()->select(a|a.endType->includes(self)
and a.endType->select(t|t.oclIsKindOf(uml::Actor))->notEmpty()) ->collect(a|a.endType->select(t|t
<> self))")
- 类型:uml:Actor
在报告设计中使用该数据集时,请将参数值设置为模型中用例的 URI。
|
对于类图,这是图中类的列表 |
创建具有下列特征的 UML 数据集: - 参数:diagram
- 行映射:
- 表达式:oclEvaluate(resolveURI($diagram), "self.children->select(c|c.element.oclIsKindOf(uml::Class))->collect(c|c.element)")
- 类型:uml:Class
在报告设计中使用该数据集时,请将参数值设置为模型中图的 URI。
|
对于时序图,这是生命线的对象名和类型的列表 |
创建具有下列特征的 UML 数据集: - 参数:sequenceDiagram
- 行映射:
- 表达式:oclEvaluate(resolveURI($sequenceDiagram),
"self.element.oclAsType(uml::Interaction).lifeline->collect(l|l.represents)")
- 类型:uml:ConnectableElement
列映射:- objectName、@name 和 String
- typeName、type/@name 和 String
在报告设计中使用该数据集时,请将参数值设置为模型中时序图的 URI。
|
对于时序图的每个生命线,这是转至该生命线的消息 |
创建具有下列特征的 UML 数据集: - 参数:lifeline
- 行映射:
- 表达式:oclEvaluate(resolveURI($lifeline), "self.coveredBy->select(c|c.oclIsKindOf(uml::MessageOccurrenceSpecification))->select(m|m.oclAsType(uml::MessageOccurrenceSpecification).event->any(true).oclIsKindOf(uml::ReceiveOperationEvent))->collect(m|m.oclAsType(uml::MessageOccurrenceSpecification).message)")
- 类型:uml:Message
- 列映射:
- messageName、@name 和 String
- signatureName、signature/@name 和 String
在报告设计中使用该数据集时,请将参数值设置为模型的时序图中生命线的 URI。
|
对于时序图,这是仅顶级消息的列表 |
顶级消息是交互期间从门中发送的消息。
创建具有下列特征的 UML 数据集: - 参数:sequenceDiagram
- 行映射:
- 表达式:oclEvaluate(resolveURI($sequenceDiagram),
"self.element.oclAsType(uml::Interaction).formalGate->collect(g|g.message)")
- 类型:uml:Message
- 列映射:
- messageName、@name 和 String
- signatureName、signature/@name 和 String
在报告设计中使用该数据集时,请将参数值设置为模型中时序图的 URI。
|
对于结构化分类器,这是端口列表 |
创建具有下列特征的 UML 数据集: - 参数:structuredClassifier
- 行映射:
- 表达式:resolveURI($structuredClassifier)/ownedPort
- 类型:uml:Port
在报告设计中使用该数据集时,请将参数值设置为模型中结构化分类器的 URI。
|
对于端口,这是提供的接口的列表 |
创建具有下列特征的 UML 数据集: - 参数:port
- 行映射:
- 表达式:resolveURI($port)/provided
- 类型:uml:Interface
在报告设计中使用该数据集时,请将参数值设置为模型中端口的 URI。
|
对于端口,这是所需接口的列表 |
创建具有下列特征的 UML 数据集: - 参数:port
- 行映射:
- 表达式:resolveURI($port)/required
- 类型:uml:Interface
在报告设计中使用该数据集时,请将参数值设置为模型中端口的 URI。
|
对于活动图,这是分区列表
|
创建具有下列特征的 UML 数据集: - 参数:activityDiagram
- 行映射:
- 表达式:resolveURI($activityDiagram)/element/partition
- 类型:uml:ActivityPartition
在报告设计中使用该数据集时,请将参数值设置为模型中活动图的 URI。
|
对于活动图,这是数据存储器列表 |
创建具有下列特征的 UML 数据集: - 参数:activityDiagram
- 行映射:
- 表达式:oclEvaluate(resolveURI($activityDiagram),
"self.element.oclAsType(uml::Activity).node->select(n|n.oclIsKindOf(uml::DataStoreNode))")
- 类型:uml:DataStoreNode
在报告设计中使用该数据集时,请将参数值设置为模型中活动图的 URI。
|
对于活动图,这是其分类器具有特定构造型的中央缓冲区的列表 |
此方案中的构造型是“Business
Modeling::BusinessWorker”
创建具有下列特征的 UML 数据集: - 参数:activityDiagram
- 行映射:
- 表达式:oclEvaluate(resolveURI($activityDiagram),
"self.element.oclAsType(uml::Activity).node->select(n|n.oclIsKindOf(uml::CentralBufferNode))->select(c|c.oclAsType(uml::CentralBufferNode).type.isStereotypeApplied(c.oclAsType(uml::CentralBufferNode).type.getApplicableStereotype('Business
Modeling::BusinessWorker')))")
- 类型:uml:CentralBufferNode
在报告设计中使用该数据集时,请将参数值设置为模型中活动图的 URI。
|
对于活动图,这是对象流中类型的列表 |
创建具有下列特征的 UML 数据集: - 参数:activityDiagram
- 行映射:
- 表达式:oclEvaluate(resolveURI($activityDiagram),
"self.element.oclAsType(uml::Activity).edge->select(e|e.oclIsKindOf(uml::ObjectFlow))")
- 类型:uml:ObjectFlow
- 列映射:
- sourceType、oclEvaluate(source, "self.oclAsType(uml::ObjectNode).type")/@name 和 String
- targetType、oclEvaluate(target, "self.oclAsType(uml::ObjectNode).type")/@name 和 String
在报告设计中使用该数据集时,请将参数值设置为模型中活动图的 URI。
|
对于状态图,这是状态名称列表 |
创建具有下列特征的 UML 数据集: - 参数:statechartDiagram
- 行映射:
- 表达式:oclEvaluate(resolveURI($statechartDiagram),
"self.element.oclAsType(uml::StateMachine).region->collect(r|r.subvertex)")
- 类型:uml:State
在报告设计中使用该数据集时,请将参数值设置为模型中状态表图的 URI。
|
对于状态图中的状态,这是状态转换列表 |
创建具有下列特征的 UML 数据集: - 参数:state
- 行映射:
- 表达式:resolveURI($state)/outgoing/target
- 类型:uml:Vertex
在报告设计中使用该数据集时,请将参数值设置为模型中状态的 URI。
|
UML 图的图像 |
创建具有下列特征的 UML 数据集:
- 行映射:
- 表达式:例如,//Diagram。此表达式将映射模型中的所有图。
- 类型:Diagram
- 列映射:为图像定义列。
列映射查询依赖于下列方法中用来创建图像的方法:
此方法仅适用于 HTML 报告和其他具有无限制页大小的报告,并适用于可以通过分割成多个平铺部分来呈现的图像。
示例:getDiagramHtmlImage(".", $genPath, $tileWidth,
$tileHeight)
编写具有此查询的列定义时,请指定名称并指定 string 作为类型。
所生成报告中的图像具有图的原始大小和完整的分辨率,但是将按查询中指定的大小分割成多个平铺部分。有关该函数的其他信息,请参阅“EMF 和 UML 数据集的其他 XPath 函数”主题。
注: 定义该数据集后,可以在报告布局设计中创建“表”控件,将控件绑定该至图数据集,并在表的详细信息行中插入“动态文本”控件。设置文本表达式 row["image"]。将文本控件的宽度和高度设置为父代的 100%,以便不会截短图像。
此方法适用于所有报告格式,尤其是那些具有已定义页大小的格式(例如,PDF 和 Microsoft Word),并适用于可以使用最大分辨率呈现的图像。
示例:getDiagramImage(".", $maxResWidth,
$maxResHeight)
编写具有此查询的列定义时,请指定名称并指定 blob 作为类型。
有关该函数的其他信息,请参阅“EMF 和 UML 数据集的其他 XPath 函数”主题。
定义该数据集后,可以在报告布局设计中创建“表”控件,将控件绑定该至图数据集,并在表的详细信息行中插入“图像”控件。将图像设置为“动态”并指定 URI 为 row["image"]。确保将图像控件的宽度和高度设置为父代的 100%,以便不会截短图像。
有关设计报告的信息,请参阅 BIRT 的字段指南。
|