Printer Friendly
The Free Library
14,694,555 articles and books
Member login
User name  
Password 
 
Join us Forgot password?

Anatomy of an XML document.


My XML-related languages, applications, and Web sites have appeared since XML XML
 in full Extensible Markup Language.

Markup language developed to be a simplified and more structural version of SGML. It incorporates features of HTML (e.g., hypertext linking), but is designed to overcome some of HTML's limitations.
 development began in e mid-1990s. The pace of development is accelerating, too, but without properly constructed XML documents, none of them can be effective.

What Are XML Documents?

Documents have evolved from files created by text applications to electronic files of any size for any media (for example, text, audio, video, and graphics) created by any application. As noted, the XML 1.0 Recommendation defines an XML document as a "data object if it is well-formed, as defined in (Extensible Markup Language See XML.

(language, text) Extensible Markup Language - (XML) An initiative from the W3C defining an "extremely simple" dialect of SGML suitable for use on the World-Wide Web.

http://w3.org/XML/.
 Recommendation). Each XML document has both a logical and a physical structure."

Expanding that definition, each XML document contains a unique instance of logically structured data, plus additional instructions A charge given to a jury by a judge after the original instructions to explain the law and guide the jury in its decision making.

Additional instructions are frequently needed after the jury has begun deliberations and finds that it has a question concerning the evidence, a
 for the parser A routine that analyzes a continuous flow of text-based input and breaks it into its constituent parts. See parse.

(language) parser - An algorithm or program to determine the syntactic structure of a sentence or string of symbols in some language.
 and the application. The data instance portion contains data components with unique values. All the components and their respective values must conform to Verb 1. conform to - satisfy a condition or restriction; "Does this paper meet the requirements for the degree?"
fit, meet

coordinate - be co-ordinated; "These activities coordinate well"
 definitions in the language's conformance-checking mechanisms-in other words, a document type definition or schema. After being processed by an XML parser Software that reads an XML document, identifies all the XML tags and passes the data to the application. See XML processor. , the data in a document is structured and then passed to the application.

However, the W3C (World Wide Web Consortium, www.w3.org) An international industry consortium founded in 1994 by Tim Berners-Lee to develop standards for the Web. It is hosted in the U.S. by the Computer Science and Artificial Intelligence Laboratory (CSAIL) at MIT (www.csail.mit.edu/index.php).  has drawn a bit of a boundary around XML documents when they refer to them as data objects. They are not quite the same as, say, Java objects, which can contain a combination of data and procedures to manipulate the data. With XML, manipulation is left to the parsers and applications. As you progress yon will begin to understand why those who think XML documents are just text documents-mostly because, on the surface, text is all they seem to contain-tend to underestimate XMLs capability to structure and integrate data of all types.

XML Document Processing Processing text documents, which includes indexing methods for text retrieval based on content. See document imaging.  

XML documents can't do anything on their own. Applications must be written to process the data contained in them. Here is an overview of the process by which applications call for and use XML documents.

Applications

Used alone, the term application means a program or group of programs intended for end users and designed to access and manipulate data (in out case, the data in XML documents). Don't confuse this term with XML application, which is one of several terms used to refer to a derivative markup language markup language

Standard text-encoding system consisting of a set of symbols inserted in a text document to control its structure, formatting, or the relationship among its parts. The most widely used markup languages are SGML, HTML, and XML.
 created according to according to
prep.
1. As stated or indicated by; on the authority of: according to historians.

2. In keeping with: according to instructions.

3.
 XML 1.0.

To clarify, consider the following comparison: A Web browser The program that serves as your front end to the Web on the Internet. In order to view a site, you type its address (URL) into the browser's Location field; for example, www.computerlanguage.com, and the home page of that site is downloaded to you.  is an application that can access and display the information from XML documents. But the Synchronized Multimedia Integration Language (hypertext, language, multimedia, text, World-Wide Web) Synchronized Multimedia Integration Language - (SMIL) A language based on Extensible Markup Language (XML), that enables people without programming or scripting backgrounds to author multimedia presentations in a simple text  (SMIL (Synchronized Multimedia Integration Language) Pronounced "smile." A format for delivering and synchronizing multimedia content on the Web. Introduced in the summer of 1998 by the W3C, it is a document type (DTD) of XML and provides the timing commands that ), is an XML application because it is its own language, developed using XML 1.0 specifications.

To process XML documents, applications must have XML parsers integrated within them.

XML Parsers

XML processors-more commonly called XML parsers-are reusable pieces of code that are integrated with computer applications. Application developers can write their own parsers, but they don't need to; several are available-for free, on the Internet-which they can include in their applications. Later when an application calls for an XML document, the parser is activated, reads the XML document, and screens it on behalf of the application. Screening means the parser performs checks on the document, creates a data structure, and passes the structured data to the application. Figure 1.0 illustrates the process.

XML parsers are of two general types: those that check only for well-formedness and those that check for well-formedness and validity. The second type, which consults DTDs or schemas to check the document for conformance con·for·mance  
n.
Conformity.

Noun 1. conformance - correspondence in form or appearance
conformity

agreement, correspondence - compatibility of observations; "there was no agreement between theory and
 to the respective XML-related language, is called a validating parser. Parsers generally contain four basic types of operators:

A content handler A software routine that performs a particular task. It often refers to a routine that "handles" an exception of some kind, such as an error, but it can refer to mainstream processes as well. The term is typically used in operating systems and other system software.  which turns the document's string of characters into a sequence of events that are then translated into a treelike data structure (Figure 1.0), which it then provides to the application.

An error handler that determines the nature of any errors in the XML document and then acts accordingly.

A DTD (Document Type Definition) A language that describes the contents of an SGML document. The DTD is also used with XML, and the DTD definitions may be embedded within an XML document or in a separate file.  and schema handler, which examines the DTD or schema and then checks the XML document for conformity with the DTD or schema. This operator only appears in validating parsers.

An entity resolver. Incorporates any data referenced within the XML document's referential markup (text) markup - In computerised document preparation, a method of adding information to the text indicating the logical components of a document, or instructions for layout of the text on the page or other information which can be interpreted by some automatic system.  that is located outside the XML document entity itself or that is not intended to be parsed in a customary manner.

Document Errors

Parsers occasionally encounter errors in XML documents. The W3C classifies errors in two ways: nonfatal and fatal errors A condition that halts processing due to faulty hardware, program bugs, read errors or other anomalies. If you get a fatal error, you generally cannot recover from it, because the operating system has encountered a condition it cannot resolve. . A nonfatal error is a violation of the rules of XML 1.0. For these errors, the W3C does not define specific penalties. They leave that up to the respective parser and application developers. They just say that "conforming software may detect and report an error and may recover from it.'

Fatal errors are a different matter. The W3C stipulates that a conforming XML parser must be able to detect fatal errors and must then report them to the application, which can then produce its own error message. It is up to the application developer to code that in. The W3C goes on to say if a parser detects a fatal error, it may continue processing, but only to look for more errors; it is not allowed to continue normal content processing.

(For a more comprehensive explanation of errors and fatal errors, consult the XML 1.0 Recommendation.)

The Structure of XML Documents

XML 1.0 states that XML documents have two kinds of structure: a logical structure and a physical structure. We will discuss the basic physical structure of an XML document in this feature together with the logical structure.

This is because:

* It's the easiest way to give you an idea of how the languages and their respective documents are supposed to work-that is, to show you how to create and structure components to achieve your objectives.

* The logical approach provides a good model for understanding, comparing, and even combining XML related vocabularies and documents.

The physical structure of XML documents tends hot to stray far from the basics we'll shown you in this feature. Before we begin discussing the logical structure, though, let's fine-tune three of our fundamental definitions. Here we've paraphrased the text, markup, and character data definitions listed by the W3C in XML 1.0:

* Text consists of intermingled markup and character data.

* Markup consists of the following:

In the prolog: XML declarations, processing instructions, document type declarations, comments, and any white space. In the data instance (that is, within the scope of the root element): start tags start tag - tag , end tags end tag - tag , empty element tags empty element tag - tag , attributes entity references, character references, and CDATA (Character DATA) A tag used to store program source code in an XML document without confusing the XML parser. Characters such as "<" and ">" are used both in programming and as delimiters for XML tags.  section delimiters.

* Character data is all text that is not markup.

The Logical Structure

The basic logical structure of an XML document consists of the following:

* The prolog

* The data instance (that is, the root element and any elements contained in the foot element)

The Prolog

The prolog is a preface or introduction to the XML document. It is the first major logical component of an XML document and, because of its content, must be inserted prior to the next major logical component, the data instance. The prolog provides initial advice to the application, the parser, and any human reader, about the document and, especially, prepares the parser to better handle the data instance.

The prolog may contain up to rive rive  
v. rived, riv·en also rived, riv·ing, rives

v.tr.
1. To rend or tear apart.

2. To break into pieces, as by a blow; cleave or split asunder.

3.
 types of components:

* An XML declaration

* Processing instructions

* A document type declaration m Comments

* White space

Refer to the simple XML Simple XML
Simple XML is a variation of XML containing only elements. All attributes are converted into elements. Not having attributes or other xml elements such as the XML declaration / DTDs allows the use of simple and fast parsers.
 document gems-excerpt-02.xml in Figure 2.0. It has a five-line prolog right at the beginning, consisting of an example of each of the five components listed previously. In tact, there are two comments. The use of white space may not be so obvious to you, but if there were no spaces or end-of-line indicators in the prolog of this document, we would have trouble recognizing the components easily and quickly; they would all run together.

The XML Declaration

The XML 1.0 Recommendation suggests that every XML document should begin with an XML declaration that states, basically, that the document is indeed an XML document. The declaration (also called the header) must be on the document's fist line. XML 1.0 also states that all prolog components are optional, but that a well-formed XML document A "well-formed" XML document is defined as an XML document that has correct XML syntax. According to W3C, this means:
  • XML documents must have a root element
  • XML elements must have a closing tag
  • XML tags are case sensitive
  • XML elements must be properly nested
 should begin with an XML declaration.

We strongly recommend that you include an XML declaration at the beginning of every XML document to help ensure that it is well formed.

Let's examine the XML declaration statement from Figure 2. The basic tag for an XML declaration statement is <?xml ... ?>. 1.0 specifies that xml must be lowercase. The XML declaration is actually a kind of processing instruction (discussed next); that is, it talks to the application, not to the parser. What it says, in a way, is "activate the XML parser; this is an XML document' and then provides additional information about the document for use by the application and the parser. The information appears in three pseudo-attributes: the XML version number (version="1.0"), the document's language encoding See encode.  designation (encoding="UTF-8'), and the standalone stand·a·lone  
adj.
Self-contained and usually independently operating: a standalone computer terminal. 
 pseudo-attribute specification (standalone="no").

In the XML declaration, the XML version pseudo-attribute refers to the version of the XML Recommendation whose specifications the document has been written to. It is mandatory to state the version number. Currently, there is only Version 1.0, corresponding to the W3C's XML Recommendation 1.0, so 1.0 is the value that must be specified.

The encoding pseudo-attribute is optional. XML supports several character sets listed on the Internet Assigned Numbers (standard) assigned numbers - The RFC STD 2 documenting the currently assigned values from several series of numbers used in network protocol implementations. This RFC is updated periodically and, in any case, current information can be obtained from the Internet Assigned Numbers  Authority's Official Names for Character Sets Web site at wwwiana.org/assignments/character-sets. Several values tan be specified for the encoding pseudo-attribute. If you do not specify a value, the parser will use the UTF-8 default value.

The third part of the declaration, the standalone pseudo-attribute, is also somewhat optional. If the document will be parsed by itself-that is, if there will be no need to refer to any external entities like DTDs or schemas that contain declarations for the components in the XM-L document-the standalone value should be yes (which is the default value if the standalone pseudo- attribute does hOt appear). If there are declarations in such external entities, however, and they must be enlisted by the XML parser before it tan process the document, specify no.
                                           < ! DOCTYPE diamonds [

Processing Instructions                      < ! ELEMENT diamonds
                                               (gem) * >

The second line of Figure 2 is an            < ! ELEMENT gem (name,
                                               carats, color, clarity,
                                               cut, cost, reserved?) >
example of a processing instruction          < ! ELEMENT name
                                               (#PCDATA) >
(PI). Pls are instructions passed by the     < ! ELEMENT carats
                                               (#PCDATA) >
XML processor to the application and,        < ! ELEMENT color
                                               (#PCDATA) >
so, are rather frowned on by  XML            < ! ELEMENT clarity
                                               (#PCDATA) >
purists. Processing instruction syntax       < ! ELEMENT cut
                                               (#PCDATA) >
looks similar to the following               < ! ELEMENT cost
                                               (#PCDATA) >
                                             < ! ELEMENT reserved
                                               (EMPTY) >
<?piname pseudo-attributes?>   ]>


Similar to the XML declaration statement, a single question mark appears at the beginning and the end of a processing instruction. The piname, also called the PI name or PI target, tells the application what type of PI it is. It is up to the application developers to code in which PI targets will be recognized. The second line of Figure 2 is a common PI that is recognized by browsers like Internet Explorer Microsoft's Web browser, which comes with Windows starting with Windows 98. Commonly called "IE," versions for Mac and Unix are also available. Internet Explorer is the most widely used Web browser on the market. It has also been the browser engine in AOL's Internet access software.  and Netscape Navigator An earlier Web browser for Windows, Macintosh and X Windows from Netscape that provided secure transmission over the Internet. Soon after its introduction in 1994, Navigator, or just "Netscape," as it was commonly called, quickly became the leading browser on the Web. . The PI name is the fairly common xml--stylesheet; we're telling the application that we are associating a style sheet with this document. The type pseudo-attribute tells the application to look for a text-type cascading style sheet cascading style sheet
Noun

computing a file recording style details, such as fonts, colours, etc., that ensures style is consistent over all the pages of a website
 that will instruct it how to display the components found in the XML document. The style sheet uniform resource identifier “URI” redirects here. For other uses, see URI (disambiguation).
A Uniform Resource Identifier (URI), is a compact string of characters used to identify or name a resource.
 (URI Uri, in the Bible
Uri (y`rī), in the Bible.

1 Father of Bezaleel (1.)

2 Father of Geber (2.)

3 Porter.
) is simply diamonds2.css meaning the name of the style sheet document is diamonds2.css and is found locally on the system because the URI contains no additional pathing information.

A PI similar to the following:

<?xml-stylesheet type="text/xsl" href="gems1.xsl"?>

points the application to a different type of style sheet, one that will help transform an XML document to an HTML HTML
 in full HyperText Markup Language

Markup language derived from SGML that is used to prepare hypertext documents. Relatively easy for nonprogrammers to master, HTML is the language used for documents on the World Wide Web.
 document.

If you are coding any other type of PI, don't use PI names beginning with the characters "XML," "xml," or similar. They have been reserved by the W3C for future XML standardization standardization

In industry, the development and application of standards that make it possible to manufacture a large volume of interchangeable parts. Standardization may focus on engineering standards, such as properties of materials, fits and tolerances, and drafting
.

The Document Type Declaration

XML does not require the inclusion of the document type of declaration in all circumstances. The document type declaration (also called a DOCTYPE definition) tells the parser what function the document's author expects the document to play: That is, it tells the parser what type of document it is, then indicates to the parser how the document's components will be defined and related to one another. Let's look at the declaration on the third line of Figure 2.

[FIGURE 2 OMITTED]

The opening keyword DOCTYPE tells the XML parser that this statement is indeed a document type declaration. "Diamonds" indicates that the name of the class that the document belongs to is diamonds; that the document is a diamonds type of document. The class name is arbitrarily specified by the document developer and often coincides with the name of document element. For example, a developer who is writing a book might name the class of the basic document book and then import other XML documents, whose class names might be chapter, section, or whatever, into the book document.

Let's deviate from the Figure 2 example for a moment. If a developer chooses to provide the appropriate component declarations and then have the parser validate the document as well as check the document for well-formedness, the DOCTYPE definition statement is the place where the declarations would be inserted. For the Figure 2 document components, the document type declaration, complete with the inserted declarations, would resemble the following:

Notice that if the DOCTYPE definition (to use the alternate name) lists these declarations within its own confines con·fine  
v. con·fined, con·fin·ing, con·fines

v.tr.
1. To keep within bounds; restrict: Please confine your remarks to the issues at hand. See Synonyms at limit.
, the developer must place the declarations between an opening square bracket square bracket
n.
One of a pair of marks, [ ], used to enclose written or printed material or to indicate a mathematical expression considered in some sense a single quantity.
 and a closing square bracket. Doing so creates an internal DTD. If such an internal DTD is constructed, the standalone pseudo-attribute in the XML declaration would have to be standalone="yes'. Returning to the Figure 2.0 example, the keyword SYSTEM indicates to the parser that the declarations for the document's components will not be found in the Figure 2.0 document, but within an external document. Further, the parser should be ready to look for that external document on the local system and then check the Figure 2.0 document for validity against the declarations in the external document. But which external document and where is it? That is specified next in the URI that appears in quotation marks quotation marks
Noun, pl

the punctuation marks used to begin and end a quotation, either `` and '' or ` and '

quotation marks nplcomillas fpl

. The parser is to look for an external document named diamonds2.dtd.

If that external document is located even further remotely, the full path to the document would have to be specified in the URI instead of just the filename file·name also file name  
n.
A name given to a computer file to distinguish it from other files, often containing an extension that classifies it by type.
.

Questions & Answers

Q: So you're saying that the declarations can be located in the XML document or in that other external document, right?

A: Not quite. We realize that, at this point, we have left you with that impression. However, declarations can exist in both places and work together. Your XML document may contain extra components in addition to those declared in the external document. Or maybe, for this document, you want to alter one or more of the component declarations from those in the external document. To do so, you would declare the additional or updated components right there in the Figure 2 document-in what is termed an internal subset-and rely on the external document-that is, the external subset-to provide the declarations for the rest of the components. The combination of the internal subset and the external subset is what you would correctly call the document type definition. In other words Adv. 1. in other words - otherwise stated; "in other words, we are broke"
put differently
, both portions would form the complete DTD.

Even though document type declarations are optional, one is required if the developer intends the parser to validate the document by internal or external markup declarations. As a best practice to avoid ambiguity, we recommend always including a document type declaration in the prolog.

Comments

The purpose of adding comment statements to an XML document is not to provide instruction to the parser or to the application, because comments are ignored by the parser. Here are three purposes for comments:

* To say something to anyone who will later examine the XML document

* combined with white space, to break a document into sections m

* To temporarily disable To turn off; deactivate. See disabled.  sections of the document

XML uses the same comment syntax as HTML. The following are two examples:
<!-- Gems Version 1--Space Gems, Inc. -->
<!-- filename: gems_excerpt_04 .xml -->


Properly constructed, comments tan be placed anywhere in a document; however, it is considered bad form to place a comment before the XML declaration statement.

After you have begun a comment, he careful not to use the literal string '-' (that is, two hyphens in a row) anywhere in it except at the very end The XML parser will otherwise see the string and presume that the comment has ended, then create errors based on any remaining characters in the rest of the intended comment.

From XML in 60 minutes a day. Wiley Tech Publishing. www.wiley.com/compbooks/60minutereading. ISBN ISBN
abbr.
International Standard Book Number


ISBN International Standard Book Number

ISBN n abbr (= International Standard Book Number) → ISBN m 
 0-471-43254-1

Book Browser

sendmail Cookbook (programming) cookbook - (From amateur electronics and radio) A book of small code segments that the reader can use to do various magic things in programs.

One current example is the "PostScript Language Tutorial and Cookbook" by Adobe Systems, Inc (Addison-Wesley, ISBN
 

The "sendmail Cookbook" by Craig Hunt provides step-by-step solutions for the administrator who needs to solve configuration problems quickly. Suppose you need to configure "sendmail to relay mail for your clients without creating an open relay Typically refers to an e-mail server (SMTP server) that is configured to deliver any incoming mail to another mail server. In the past, open relays (open relay servers) were common, but today, most e-mail servers block all e-mail that does not originate with the customers of the service  that will he abused by spammers. A recipe in the Cookbook shows you how to do just that. No more wading through pages of dense documentation and tutorials to create a custom solution-just go directly to the recipe that addresses your specific problem.

The fact that the "sendmail Cookbook' provides quick answers to common problems is of critical importance to system administrators, says Hunt. "The one thing that most system administrators do not have enough of is time," he explains. "They're swamped with other work and have very little rime to devote to sendmail. This book is for the busy administrator who needs to solve a problem fast."

Each recipe in the "sendmail Cookbook" outlines a configuration problem, presents the configuration code that solves that problem, and then explains the code in detail. The discussion of the code is critical because it provides the insight administrators need to tweak To make minor adjustments in an electronic system or in a software program in order to improve performance. See calibrate.

1. tweak - To change slightly, usually in reference to a value. Also used synonymously with twiddle.
 the code for their own circumstances.

'Readers should understand that the recipes in this book are complete solutions The "sendmail Cookbook" begins with an overview of the configuration languages, offering a quick how-to for downloading and compiling the sendmail distribution This is followed with a baseline configuration recipe upon which many of the subsequent configurations, or recipes, in the book are based. Recipes in the following chapters stand on their own and offer solutions for properly configuring important sendmail functions such as:

--Delivering and forwarding mail

--Relaying

--Masquerading

--Routing mail

--Controlling spam

--Strong authentication (1) Verifying the integrity of a transmitted message. See message integrity, e-mail authentication and MAC.

(2) Verifying the identity of a user logging into a network.
 

--Securing the mail transport "sendmail Cookbook" is more than just a new approach to discussing sendmail configuration. The book also provides lots of new material that doesn't get much coverage elsewhere-STARTTLS and AUTH AUTH Authority/Authorization/Authorized
AUTH Author
Auth Authentication
AUTH Aristotle University of Thessaloniki
AUTH Authentication Service
 are given entire chapters, and LDAP (Lightweight Directory Access Protocol) A protocol used to access a directory listing. LDAP support is implemented in Web browsers and e-mail programs, which can query an LDAP-compliant directory.  is covered in recipes throughout the book.

www.o'reilly.com

'Learning XSLT (eXtensible Stylesheet Language Transformation) Software that converts an XML document into another format such as HTML, PDF or text. It may also be used to convert one XML document to another XML document with a different set of XML tags (different schema). ", Michael Fitzgerald

"Learning XSLT helps developers find a clear path into this technology by explaining XSLT in detail, while realising that much of XSLT isn't obvious, even to experienced programmers. Readers will explore a broad range of XSLT features, from simple templates to the more obscure comers of the technology, practising the techniques along the way. The book is rich with hands-on examples to help readers begin doing useful work with XSLT the same day they start reading it.

The focus of 'Learning XSLT' is getting readers up to speed quickly. The book contains little reference material. For that, Fitzgerald recommends O'Reilly's "XSLT" by Doug Tidwell. As Fitzgerald explains, 'Learning XSLT' will get readers off to a running start. It's not bogged down in getting all the excruciating details right-it's all about getting XSLT to do stuff immediately. It will be hard for a reader hOt to feel successful in the first chapter.

"Learning XSLT" moves smoothly from the simple to the complex illustrating all aspects of XSLT 1.0 through step-by step examples. Thorough in its coverage of the language, the book makes few assumptions about what readers may already know. The book covers XSLTs template-based syntax how XSLT templates work with each other, and XSLT variables. "Learning XSLT" also explains how the XML Path Language (XPath) is used by XSLT and provides a glimpse of what the future holds for XSLT 2.0 and XPath 2.0. The ability to transform one XML vocabulary A set of XML tags for a particular industry or business function. See XML, UBl, ebXML and XML schema.

XML Vocabularies
In 2003, Robin Cover, Managing Editor of "The Cover Pages," a Web site devoted to XML and SGML references and
 to another is fundamental to exploiting the power of XML. 'Learning XSLT" is a carefully paced, bands-on introduction to the technology that will have readers understanding and using XSLT in no time, even if it's their first
COPYRIGHT 2004 A.P. Publications Ltd.
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2004, Gale Group. All rights reserved. Gale Group is a Thomson Corporation Company.

 Reader Opinion

Title:

Comment:



 

Article Details
Printer friendly Cite/link Email Feedback
Title Annotation:Teach-In
Author:McKinnon, Al
Publication:Software World
Date:Jan 1, 2004
Words:3451
Previous Article:Getting started with JAVA.(Teach-In)
Next Article:Grokker-new search, find, and display system.(IT News)



Related Articles
Teaching human anatomy in physical therapy education in the United States: a survey.
Essential Clinical Anatomy.
Printing from XML. (Monograph).(XSL-FO)
Systems integration. (Technology Tools).(XML Global Technologies Inc.,)(Altova Inc.)(world's largest XML development tool)(Brief Article)
XML Pointer fromW3C. (Internet Focus).
Anatomy and Human Movement: Structure and Function, ed 4.
Clinical Applications of Human Anatomy: a Laboratory Guide.(Book Review)
The Real-Time Enterprise.(Brief Article)(Book Review)
Reusing educational material for teaching and learning: current approaches and directions.
Geen G. Chong.(FUTURE GAY HERO)(Brief Article)

Terms of use | Copyright © 2009 Farlex, Inc. | Feedback | For webmasters | Submit articles