Q9: What skills and competencies are important?

What skills and competencies are important to technical professionals wishing to learn more about XML and XML-related technologies? Aside from learning the subject matter itself, would you recommend any additional fields of study or particular coursework?

JMM: In our case, computer science has been very useful. We haven't tried to use tools that might be appropriate for non-programmers, since our principal objective has been to build our own software. For many or most XML users, programming should not be a requirement. The tools appropriate to these audiences are not yet part of our repertoire.

MG: I teach (or review with) my students the basics of formal language theory and the Chomsky hierarchy, which applies to parsing in general. I also teach my students how to use a SAX-based parser and they are required to implement a parser that they use in a game engine that they write. People dealing with any parser should understand the fundamentals of automata, specifically finite state and push-down.

TG: A good understanding of the concepts of database redundancy and database design are essential in being efficient with XML, or any database at all. A working knowledge of HTML would also be extremely helpful, since XML could be easily considered a regular HTML page, with custom tags as opposed to predefined ones. XML has so many uses, that additional fields of study are too numerous to count, however I will emphasize some of the particulars aforementioned. ECMAScript for XML (E4X) is one of the most powerful tools for dealing with XML data, and learning how to use it should be a top priority for anyone involved with XML. XML also allows you to emulate any number of database designs, including single-linked-lists, double-linked-lists (also known as graphs) and many others. Understanding the differences between various database structures is the best recommendation I could give. Sometimes database design (or in this case, XML file structure) is such a blank sheet of paper, it's hard to know where to start.

BA: The challenge with using XML and content is to know how to structure your content. What is each piece of content and in what container does it belong. Once you have figured out that, then you can reuse content, you can organize the content, you can transform and filter the content. Whether you have a database or a content management system or just raw files, you can work with XML in a myriad of ways. But being familiar enough with the content to know how to structure it into what containers -- that's the essential skill with XML. The tools will grow and will help you with that task, so there are no specific tools you need to know up front.

SS: In the case of designing electronic manuals, users are looking for user-friendly interfaces and useful information. A working knowledge of document markup languages is extremely useful, including how to design and develop DTDs, style sheets, interface prompts, and dialogue. An XML or SGML electronic technical manual is a technical information database that stores data in modules and it provides access to numerous media and external databases. It would be beneficial for students to learn how to develop structure diagrams so that they can see the hierarchy and sequence and nested elements visually. I believe database design or basic IT principles would be highly beneficial to students who are interested in doing more than just tagging and manipulating text in XML.

Return to the List of Questions.