Object Role Modelling, UML, UDDI
Date: Tue, 13 Feb 2001 14:29:06 -0700 From: Dave Carlson <firstname.lastname@example.org> To: email@example.com Subject: Re: Object Role Modelling (ORM) or UML or ?? for designing Schemas
Hello, I'd like to clarify one point before commenting. By "approaches of UDDI," I assume that you are referring to the white paper that I wrote on modeling UDDI schema with UML. These are not approaches of UDDI per se, but rather conventions that I follow when using UML to model schemas. The UDDI was just one example of this.
The use of UML attributes vs associations to other classes are both perfectly valid models in UML. The mapping that I use for UML to schema is based on the OMG specification of XMI, which defines a complete UML to DTD mapping. I've adapted this for a mapping to XSD, then I proposed a set of UML stereotypes and tagged values (based on XML Schema) that allow customization of the mapping, starting with the XMI mapping as a basis. The Rational white paper had a much more limited UML profile based on DTD. (I am preparing a new white paper that contains the full UML profile description for my proposal.)
My suggestion for best practices is to use UML attributes for properties having simple datatypes, and to use associations to other complexTypes. I find that this lead to *much* more readable UML diagrams compared to using assoications for everything. One of my primary goals in using UML do model schemas is to improve our ability to communicate the conceptual models with non-XML-savvy stakeholders.
I do occassionally use UML attributes with a UML class as its type (also valid in UML). In that case the attribute type is a XSD complexType. I have found this to be useful in limited situations where the complexType is a simple struct (e.g. Money that has two attributes for amount and currency). For example, I used this approach in the UDDI white paper to model a complexType named "StringI18N" that was a string with an xml:lang attribute.
From: "Inga Eckermann" <firstname.lastname@example.org> To: <email@example.com> Sent: Monday, February 12, 2001 7:44 AM Subject: Object Role Modelling (ORM) or UML or ?? for designing Schemas
I would like to hear, which modelling languages and/or methods you use when developing Schemas. In an article "Object Role Modelling and XML-Schema" was written that the data modeling support is richer than other notations, i.e. UML. My first thought is, that it has more advantages to stick to a widely used modelling language like UML particularly as the ORM-Diagram is quite confusing when complex relations are expressed.
But the approaches of UDDI and the Specification from Rational seems to be different. For example, elements of one complexTpye are displayed in Rational specification as role-names and in UDDI they are either attributes (simple) or other classes which are linked with an association.
I would be glad, to hear from best practices, experiences and maybe other ressources about this topic. Thank you!!
Mit freundlichen Grussen von Inga Eckermann ProFI Consult Gesellschaft fur Unternehmensberatung mbH -Anwendungsmanagement- Rendsburger Str. 34 * 30659 Hannover Tel.: 0511-9020-308 mailto:firstname.lastname@example.org