|
|
| About site: Data Formats/Markup Languages/XML/Style Sheets/XSL/FAQs, Help, and Tutorials - Objects by Design: XMI to HTML |
Return to Computers also Computers |
| About site: http://www.objectsbydesign.com/projects/xmi_to_html.html |
Title: Data Formats/Markup Languages/XML/Style Sheets/XSL/FAQs, Help, and Tutorials - Objects by Design: XMI to HTML Using XSL to transform an object-oriented design described in XMI (UML) to a browser-based HTML representation. Additional information on CSS is provided. |
|
|
|
|
Task_Data_System Offers workgroup software for managing task analysis data.
| Ansotech_Inc_ Remote application hosting for fax, CRM, and Microsoft Office as well as environments tailored to developers, lawyers, insurance agents, utilizing Citrix software.
| CJ_System_Solutions Help desk training for improved customer satisfaction and increased sales. Located in New Hampshire, United States.
| Gordon\'s_Linux_Links Links to distributions, news, applications, and programming resources.
| Emulation_Home_Pages_de Information regarding Macintosh emulation on DOS and Windows based systems.
| Triple_Orbit Offers design, graphics, maintenance, and consulting services.
|
|
| Alexa statistic for http://www.objectsbydesign.com/projects/xmi_to_html.html |
Please visit: http://www.objectsbydesign.com/projects/xmi_to_html.html
|
| Related sites for http://www.objectsbydesign.com/projects/xmi_to_html.html |
| Fast_PDF Web based tool to convert Microsoft Word documents to PDFs. Free conversion for limited time. | | All_About_Your_Own_Web_Site A guide to the essentials of site design, development, hosting, promotion, and maintenance. | | JFS A development environment for JFL, combining features from traditional programming languages with fuzzy logic and machine learning. Freeware for Windows 95/98/NT and Linux. | | Kozio Provider of embedded software for hardware bring-up, manufacturing test, and power-on self-test for 32-bit RISC processors. | | Dodgson,_Neil University of Cambridge - Autostereoscopic 3D imaging, rendering algorithms, compression. | | Config_Informationstechnik_eG Provides freeware with packages from battery tracking to backdrops. | | Vermont_Creative_Software Automated software testing tools for testing Windows and Web applications, web sites on Windows and user interface libraries for DOS, Unix, Linux, and VMS. [Commercial, trial version] | | POSIX_Threads_Explained,_Part_1 How to use POSIX threads to increase the responsiveness and performance of your code. | | RFC_0871 Perspective on the ARPANET Reference Model. M.A. Padlipsky. September 1982. | | RiscSearch Meta-search engine. It queries different search-engines for keywords, then presents the result in a browser window. | | Smalltalk,_Objects,_and_Design By Chamond Liu; iUniverse.com, 2000, ISBN 1583484906. Programmer's guide integrates language with object-oriented design solutions; focus: practical alternatives, trade-offs. [Amazon.com] | | Syndicate Information on syndicating a page using RSS. | | DomainInvestigator_com Domain name registration services. | | SourceProse_Corporation Provider of flood hazard information to the surveying, real estate, and insurance industries. Database covers the USA including territories and protectorates. | | Object_Oriented_Programming_extensions For MSWLogo or UCBLogo. | | RFC_2966 Domain-Wide Prefix Distribution with Two-Level IS-IS. T. Li, T. Przygienda, H. Smit. October 2000. | | Kutekitten Web based blinkie maker. | | All-Pro_Software Sports statistics tracking and scheduling software. [Win XP/2000/98]. | | Planet_Velocity Canadian web host and design firm; includes domain registration, and advanced shopping cart applications. | | Ellis,_John Services offered include design, hosting, Intranet, database integration, Javascript, and marketing. |
|
This is websites2007.org cache of m/ as retrieved on 2008.08.21 websites2007.org's cache is the snapshot that we took of the page as we crawled the web. The page may have changed since that time.
|
Objects by Design: Transforming XMI to HTML
Home
Books
Software
Projects
Forums
Transforming XMI to HTML
------>> More on XMI to HTML <<------
XMI to HTML, Part 1
XMI to HTML, Part 2
Graphics Editor Model
Class Diagram
Download Source
------------------------------
XSLT by Example
XHTML
Keys
Templates
Flow Control
XPath
In this project we will be demonstrating how to use the newly introduced XSLT stylesheet technology to transform XMI documents into HTML. Our purpose is to be able to display an object-oriented design in a web browser.
XMI is an XML-based, stream representation of a UML model which has the potential to allow models to be shared between different UML tools. Since XMI is a relatively new part of the suite of UML standards (March, 1999), support for this standard has appeared gradually over the course of the last year. For a discussion on the future role XMI can play in the O-O development process, please see our criteria for choosing a UML modeling tool.
For information of a tutorial nature on XSLT, see our companion set of pages, XSLT by Example, which is also based on the stylesheet presented herein.
There are a number of new, evolving technologies discussed in the sections which follow. Links to documents describing these technologies are provided at the end of this page for further research. The reader will benefit by delaying the navigation of these links until after the presentation of our design.
Overview
The following diagram illustrates the general process of transforming XML to HTML.
The main driver of the XML transformation is the XSLT processor. The XSLT processor reads in both the XML document and the XSLT stylesheet. The XSLT stylesheet describes a set of patterns to match within the XML document and the transformations to apply when a match is found.
Pattern matches are described in terms of the tags and attributes for elements found within an XML document. Transformations extract information from the XML document and format it into HTML. Each match-transformation pair is called an XSLT template; we will soon see them in action.
The transformation process works in a way very analogous to the way scripting languages such as Python or Perl operate - apply regular expressions to an input stream and then transform the elements that were found to an output stream. In that sense XSLT could really be called a scripting language, especially since it contains elements of control flow similar to a scripting language.
For our project, we are using Cascading Style Sheets (CSS) to provide formating information to the browser when displaying the generated HTML. CSS provides the advantage of eliminating the repetition of many formating tags for HTML elements; instead they are extracted at display time from a style in the stylesheet. This works analogously to the way stylesheets in word processors work.
Note from the diagram that the XSLT transformation produces a single HTML file. This is an artifact of the way the XSLT process works - there is no file control as in true scripting languages. However, we will utilize the single HTML file to our advantage - the resulting HTML, while potentially large, is loaded once and provides faster hyperlinking between elements of the O-O design, especially when loading from a web server.
The XSLT processor that was used for this project is an excellent Java-based, open-source tool called Xalan, a product of the open-source Apache XML project.
Design
Our initial goal is to get a handle on XSLT and XMI. As a starting point for any XSLT project, it is helpful to have a picture of what the intended HTML will look like. It is then easier to work backwards to determine which XML elements contain the information needed and to figure out which XSLT constructs can be used to do the transformation.
The basic UML elements we have set out to present in HTML are the class and interface elements. We also want to show inheritance from an interface or a class. For an interface, we want to show the operations and their signatures. For a class we want to show attributes as well as operations. And wherever a parameter or attribute type is defined elsewhere in the HTML document, we want a hyperlink to take us there. The resulting HTML produces something that looks like this:
Class
Ellipse
Supertypes:
ClosedFigure
Subtypes:
Circle
Attributes:
visibility
type
name
private
Point
focus1
private
Point
focus2
Operations:
visibility
return
name
public
float
perimeter
public
void
rotate
parameters:
Point
center
float
angle
public
void
translate
parameters:
float
x
float
y
public
void
display
Let's deconstruct this HTML to see the underlying structure. This will help later when describing the transformation process. There are basically three nested tables used here. The outer table is the container for the whole definition. The first row in this table includes the name of the element and indicates whether the element is a class or interface.
The second table is used to contain the details of the element definition, in this case the attributes and operations of a class. As will be seen, this table is used to get the effect of the grey lines between table cells as well as to offset the details from the container. Therefore, the second table is nested within the outer table.
The third table contains the input parameter definitions for an operation and is nested within the second table. This table allows us to offset the parameters from the operation name and to organize the parameter definitions with columns for the type and name.
Model
By now you are surely wondering, "So where did we get the XMI from?" Both the diagram and the XMI for this project were produced by ArgoUML, an open-source UML modeling tool developed at the University of California, Irvine (UCI). ArgoUML is still below version 1.0 (0.8) but the primary author, Jason Robbins, had the foresight to implement the model persistence using XMI. As such, it has the distinction of being one of the first UML modeling tools to implement the XMI standard.
Our example application for this project is inspired by and derived from an example used by Bertrand Meyer in his book, Object-Oriented Software Construction - the modeling of geometric shapes in an editor. The example is useful because it shows the use of inheritance, which we want to demonstrate in our HTML representation of the model. The resulting diagram for the model may be viewed in a separate window: the |
|
| |
Using | XSL | to | transform | an | object-oriented | design | described | in | XMI | (UML) | to | a | browser-based | HTML | representation. | Additional | information | on | CSS | is | provided. |
|
http://www.objectsbydesign.com/projects/xmi_to_html.html
Objects by Design: XMI to HTML 2008 August
dvd rental
dvd
Using XSL to transform an object-oriented design described in XMI (UML) to a browser-based HTML representation. Additional information on CSS is provided.
Rules
|
© 2008 Internet Explorer 5+ or Netscape 6+
|
|
Recommended Sites: 1.
Arts -
Business -
Computers -
Games -
Health -
Home -
Kids and Teens -
News -
Recreation -
Reference -
Regional -
Science -
Shopping -
Society -
Sports -
World
Miss Gallery
- Top Anime Hentai
- DVD rental by mail
- Northern Rock - Vegas Hotel - McDonalds - 0 Credit Cards - Download movies
|