我需要选择一种建模方法来记录现有Web服务集合的扩展。该方法/工具需要由技术业务分析师使用。现有API在XML Schema中定义。 XML Schema适用于一个例外。以PaymentInformation类为例。一位合作伙伴可能会接受Visa和万事达卡作为示例。另一个也除了美国运通。我们希望能够为PartnerA和PartnerB扩展PaymentInformation。
class PaymentInformation
method // CASH,CC
ccNumber
ccType // MC,V,AMEX
class PaymentInformationPartnerA
method // CASH,CC,PAYPAL
ccNumber
ccType // MC, V
XML Schema的问题是,对类应用限制需要重新定义整个类型。这似乎是一场维护噩梦。 UML似乎不支持受限制的字符串(模式,长度等)。您为此推荐了什么工具/方法?我们有一个偏好,但不是Eclipse IDE的要求。
答案 0 :(得分:0)
您可以在班级上添加UML约束或条件。这可以是图形注释,也可以是直接在UML元模型上手动编码的信息。 UML模型已经是XMI 2.1,因此就像XML一样,但使用特定的规则。
答案 1 :(得分:0)
不要那样做。如果PaymentInformationPartnerA
扩展PaymentInformation
,那么对于PaymentInformation
的所有使用,您都可以使用PaymentInformationPartnerA
,而您可以说某些用途(将值分配给ccType
"AMEX"
)它不是协变的。
您可能最好将约束作为接收消息的端点的前提条件,而不是作为消息类型本身的约束。