[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] UML and XMI (was: RDF or UML)
----- Original Message ----- From: John F. Schlesinger <johns@s...> > Sergey wrote (in correspondence with John Borden): > > "How would you define a class say Person and serialize an instance of Person > in XMI? Maybe I'm missing something..." > > XMI is for interchanging metadata, that is models, not for creating > instances of classes (which would be code). Here is what 6.1 of the UML 1.3 > specification says (my emphasis): > > "The OMG XMI standard specifies a structure for interchanging _models_ that > uses XML. The XMI DTD generated for UML is a physical mechanism for > interchanging UML _models_ conforming to the UML _metamodel_." > This quote from the UML spec is accurate for the UML's use of XMI, but does not capture the full intent of XMI. XMI can serialize *any* model for *any* metamodel that is compliant with the MOF. UML is a MOF metamodel, but you can create another metamodel and serialize its model instances using XMI. The use of XMI by UML is only one special case of this capability. One useful way to interpret XMI Toolkit is that it takes a UML model and "promotes" it to a MOF metamodel, then serializes a model instance to an XMI file. So, if I create a UML model for a product catalog, I can read that UML model definition into XMI toolkit and (1) generate a DTD for the product catalog *metamodel*, and (2) generate an XML document instance for a product catalog *model* that is valid with respect to the product catalog DTD. I have used the IBM's XMI Toolkit in exactly this way for an example product catalog application. IBM has also embedded XMI into their SOAP implementation as a way to serialize Java objects for exchange as content in SOAP messages. I am debugging a utility that will generate an XML Schema from any UML model. It's mostly working and I will post its availability to this list in the near future. I am using XSLT for this utility; it's not dependent on IBM's XMI Toolkit. > If I have a model that includes the class Person, what I serialize using XMI > is the class definition Person (among other things). This allows me, for > instance, to store the model in a repository (the MS Repository say) or to > import the model into another tool (from Rational Rose to Visual UML say). > Do you know of any way to import an XMI file for a UML model into MS's Repository? MS invented their own non-XMI format, called XIF, and I have not seen any support for importing or exporting XMI from their repository. Regards, Dave Carlson
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|