The Alphabet Soup.

Gil Ross 1st May 2002

.NET formerly Next Generation Windows Services, this is expanded in detail in Appendices A.1 to A.4. Microsoft's MSDN MS Developer Network is the best technical reference for all things .NET


Application development


America Online


Application programming interface. An API is a set of function calls, argument specifications and lists which allow interaction with an existing application. The interaction might be either another program running on top of the base application, for example a GUI interface.


Application Service Provider

C# Microsoft's .NET language meld of C++ and Java see MSDN. This is a clever visual pun, which recursively uses the C++ pun. C# is Microsoft's reaction to losing the lawsuit against Sun, where they were refused permission to use newer versions of Java for 7 years after they hijacked Java in JavaScript and J++. C# has in-built handling for XML, SOAP etc. which make it particularly good for programming Web Services. Sun has (Mar 02) filed suit against MS for disenfranchising Java on .NET.


An OO (object-oriented) language developed from C. C++ is an insider's joke, it means C+1 in C. C, too, is an in-joke as it is a development of a language BCPL which became B. Funny lot - compiler writers....


Common Language Infrastructure. This is what is otherwise called .NET Framework, The CLI specifies what features high level languages should have, what the intermediate representation looks like, library linking and other things. The CLR is just the runtime system and is the implementation of the CLI. See MSDN


Common Language Runtime similar to Java's JVM Java Virtual Machine, although not multi-platform. This is the environment in which all compiled code runs, and it provides protection against rogue programs. See MSDN


Component Object Model is a software architecture that allows applications to be built from binary software components and defines the binary interfaces needed. COM is the underlying architecture that forms the foundation for higher-level software services on individual machines or over networks. Similar to CORBA but MS Proprietary software.


Common Object Request Broker Architecture OMG's open non-proprietary architecture and infrastructure that computer applications use to work together over networks. Using the standard protocol IIOP, a CORBA-based program from any vendor, on almost any computer, operating system, programming language, and network, can inter-operate with another CORBA-based program, on most other computers, operating systems, programming languages, and networks. An open equivalent to MS COM.

CSS Cascading Style Sheets (CSS) is a simple mechanism for adding style (e.g. fonts, colours, spacing) to Web documents. The mistakes made with HTML by allowing intermingling of content with display are corrected when using CSS.
DC Dublin Core. The basic elements set of Metadata defined by the DCMI
DCMI Dublin Core Metadata Initiative - The organisation defining what metadata is needed for discovery of the existence of data


Department of Justice

DOM The Document Object Model is a platform- and language-neutral interface that allows programs and scripts to access and update the content, structure and style of documents. A DOM based application maps an XML document into an internal tree structure, which allows the tree to be navigated and the document processed in different ways.
DSSSL Document Style Semantics and Specification Language. An earlier version of CSS for SGML.
DTD Document Type Definition, a DTD defines the legal building blocks of an XML document. It defines the document structure and a list of legal elements.


European Computer Manufacturers Association Originally European, now International standards body for computing.

e-GIF e-Government Interoperability Framework sets out the Government’s technical policies and specifications for achieving interoperability and information systems coherence across the public sector.
EJB Enterprise JavaBeans Open server-side component model for Java which standardises the development of middleware components to allow transactional, scalable, and portable middleware services such as transactions, security or database connectivity.
GML Geographic Markup Language From the OpenGIS organisation.


Graphical user interface

Hailstorm See My Services


Her Majesty's Government

HTML Hypertext Markup Language the lingua franca for publishing hypertext on the World Wide Web. It is a non-proprietary format based upon SGML. However it was never precisely defined, and this allowed many software suppliers to add functionality at whim. This forced browsers to have to recognise these different add-ons, giving rise to inter-operability problems and eventual stalemate.


Hypertext Transport Protocol HTTP is a data access protocol currently run over TCP and is the basis of the World-Wide Web


Integrated development environment


Internet Engineering Task Force The standards organisation which is concerned with the evolution of the Internet architecture and the smooth operation of the Internet. It issues RFCs Requests For Comment, which is the Internet mechanism for setting standards


The XML Information Set (infoset) is an abstract data set consisting of all the information items (with associated named properties) present in a well formed XML document. This can be modelled as trees, events, queries etc.

Internationalisation including the use of non-ASCII characters in URIs. More widely it is the use of different or multiple language with different character sets in XML documents
ISO derived from Greek "isos" equal, to avoid acronym changes with language - the International Standards Organisation.

There are very many standards which impinge on Met Office and there are 35 metadata standards of which ISO/DIS 19115 is the Geographic standard.


Independent software vendor

J++ Microsoft's hijack of Java 1.0. They were sued and lost the right to use J2EE and so developed C# in pique.
J2EE The Java Platform 2 Enterprise Edition. Java Mk2. J2EE bases applications on standardised, modular components, and providing a complete set of services to those components. J2EE is based on CORBA.
Java A language of the C++ family developed by Sun as an open language for software to run across multiple platforms.
JVM Java Virtual Machine. The Java Virtual Machine is the software implementation of a "CPU" designed to run compiled Java code. Written for many operating systems, it allows a Java "applet" or program to run on that system. The "sandbox" is a secure environment, entirely controlled by the JVM, preventing insecure access to the operating system functions, providing protection allowing unknown Java programs to run on that machine.
Markup Historically, the word markup has been used to describe annotation or other marks within a text intended to instruct a compositor or typist how a particular passage should be printed or laid out. Examples include wavy underlining to indicate boldface, special symbols for passages to be omitted or printed in a particular font and so forth. As the formatting and printing of texts was automated, the term was extended to cover all sorts of special markup codes inserted into electronic texts to govern formatting, printing, or other processing
MathML MathML is an XML application for describing mathematical notation and capturing both its structure and content. This is to allow mathematics to be processed on the World Wide Web, just as HTML has for text.
Metadata Metadata or "data about data" describe the content, quality, condition, location and other characteristics of data. The term is normally understood to mean structured data about digital (and non-digital) resources that can be used to help support a range of operations and functions. These might include, for example, resource description and discovery, the management of information resources (including rights management) and their long-term preservation.


a new Intermediate Language which all languages compile into, and then the programs run under CLR


Microsoft Network


Microsoft Developer's Network

My Services .NET My Services is the architecture and set of services that delivers information through the Internet to a user, to software or to devices such as PDAs. Microsoft describe it as "user centric" by which they mean personalised services such as authentication, wallet, and data tailored on his or her own behalf by an individual. An amalgamation and development of Hailstorm and Passport.
Oasis Organisation for the Advancement of Structured Information Standards Another Standards body, supporting interoperable industry specifications based on public standards such as XML and SGML. It sponsors OpenGIS which developed Geographic Markup Language GML.


Office of Government Commerce formed from the CCTA and other procurement agencies in UK government.


Object Management Group, developer of CORBA standard

OML Weather Observation Definition Format US Navy SYNOP/METAR etc definition format for distribution to USN Ships.


Object-oriented class hierarchy structure


Operating system The interface between programs and the hardware.

Passport The user identification and authorisation feature of Hotmail and MSN which MS is directing at Single Sign On and Financial payments authentication over the Internet. See My Services


Personal digital assistant


Public Key Infrastructure is a system for publishing the public-key values used in public-key cryptography, and the two operations of certification and validation. Certification is the process of binding a public-key value to an individual, organisation or other entity, or even to some other piece of information, such as a permission or even an executable file. Validation is the process of verifying that a certification is still valid.


Rapid application development


Resource Directory Description Language a document, (Resource Directory), which provides descriptive material about a target document, and a directory of related links, with descriptive material.

RDF Resource Description Framework is a language designed to support the Semantic Web, in much the same way that HTML is the language that helped initiate the original Web. RDF is a framework for supporting resource description, or metadata (data about data), for the Web. An example RDF service is Meerkat, run by O'Reilly and NewsIsFree.
RelaxNG Relax NG is a non-XML based schema language for XML from Oasis.
REST Representational State Transfer (REST) applies the principles of the Web to transaction-oriented services rather than publishing-oriented sites. REST is a model for distributed computing exemplified by the Web. When applied to web services technologies, it usually depends on a trio of technologies designed to be extremely extensible: XML, URIs, and HTTP. This is a transaction service model in opposition to SOAP, WSDL and UDDI with vociferous debates raging (29th April)
RPC Remote Procedure Call: A set of rules allowing a fixed set of interactions between applications across different computers. These interactions would be to gather , code and distribute data from one machine to the other, and a fixed set of instruction calls needed to do this.
SAX Simple API for XML SAX is an event-based API which proceeds linearly through an XML document reporting parsing events (such as the start and end of elements) directly to the application through call-backs, and does not (usually) build an internal tree.
Schematron Schematron is another XML validation language which differs from XMLSchema and other schema languages in that it not based on grammars but on finding tree patterns in the parsed document. This approach allows many kinds of structures to be represented which are inconvenient and difficult in grammar-based schema languages.
Semantic Web The Semantic Web is an extension of the current Web in which information is given well-defined meaning, better enabling computers and people to work in co-operation. The idea is to have data on the Web defined and linked in a way that it can be used for more effective discovery, automation, integration, and reuse across different applications.
SGML Standard Generalised Markup Language is an international standard for the description of marked-up electronic text. It is a meta-language, that is, a means of formally describing a language, in this case, a markup language.


Simple Object Access Protocol defines the lightweight protocol to deliver a web service (exchange of information) from the ASP (Application Service Provider) to the client. It is an XML based protocol of three parts: an envelope describing what is in a message and how to process it, a set of encoding rules for expressing instances of application-defined datatypes, and a way for representing remote procedure calls and responses.


Structured Query Language


Single Sign On: MS Passport and the very new "Sun Open Net Environment Platform for Network Identity" offer authentication across multiple systems, including across Internet. Rather than carrying multiple passwords, and having to log on with the correct password to different systems, this will allow you to log on once, and to move between different systems, while your session refers authentication queries to the identification authority.

SVG Scalar Vector Graphics SVG is a language for describing two-dimensional graphics in XML. SVG allows for three types of graphic objects: vector graphic shapes, images and text. Graphical objects can be grouped, styled, transformed and incorporated into previously rendered objects. SVG drawings can be dynamic and interactive.


Universal Description, Discovery and Integration describe the services offered by service companies. A UDDI Registry is where details of the data and services that are offered by different information providers. It is used by an ASP to discover what is available from an information provider, and the ways it can be accessed.

URI Uniform Resource Identifier. The generic set of all names/addresses that are short strings that refer to resources.
URL Uniform Resource Locator. An informal term (no longer used in technical specifications) associated with popular URI schemes: http, ftp, mailto, etc.
URN Uniform Resource Name. An URI which is guaranteed commitment to persistence, availability, etc. Note that this sort of UI may be a URL 2 A particular scheme, urn intended to serve as persistent, location-independent, resource identifiers.
Valid XML Valid XML is Well-Formed XML which conforms to a DTD or XMLSchema
VoiceXML VoiceXML is designed for creating audio dialogs that feature synthesised speech, digitised audio, recognition of spoken and telephone key input etc. The goal is to bring web-based development and content delivery to interactive voice response applications.

Visual Studio .NET

Visual Studio .NET is Microsoft's .NET IDE Integrated Development Environment. It is a very good platform for developers and programmers, and is tightly linked with any .NET and XML programming for MS Windows only.


WorldWideWebConsortium The standards organisation developing XML and much of the rest of the alphabet soup.

Web Services Web Services is the name for a set of services created from components, which are client-server applications. The communication is by means of the standards such as SOAP over HTTP (see O'Reilly Web Services primer). These services allow clients to make remote procedure calls over the Internet. For example we might offer services that allow other ASPs to extract a forecast for their client's location and provide that as part of their own service, perhaps a banking query or shopping purchase. Example Services
Well-formed XML Well-Formed XML is XML which is properly constructed. The well-formedness constraints require that elements (named content containers) are properly nested within each other and use other markup syntax correctly. This is weaker than Valid XML.
WS-I Web Services Interoperability Organisation An industry forum to agree interoperability issues with WSDL, SOAP, WSFL and UDDI. Where the standards authority have allowed optional items, there can be different ways of handling them between different software vendors. These constraints to universal adoption have to be clarified, and this aims to do just that.


Web Services Description Language describes the service mechanism. It is an XML-based specification schema for describing the operational information of a Web Service such as interface and end points. WSDL defines XML grammar for describing contracts between a set of endpoints exchanging messages. Contracts provide documentation for distributed systems and serve as a recipe for automating the details involved in applications communication. WSDL may be used to design specifications to invoke and operate Web Services on the Internet. Using WSDL, Web Services can be enabled to access and invoke remote applications and databases.


Web Services Flow Language is an XML language for the description of Web Services compositions as part of a business process definition. It has two types of Web Services compositions: a Flow Model defining the association between "activities" which participate in the control flow and operations; a Global Model describing interactions between business partners, really a mapping between inputs and outputs.


XForms is the next generation of Web Forms. The XML Forms specification separates the purpose from the presentation of a form. XForms are comprised of separate sections that describe what the form does and how the form looks. This allows for flexible presentation options, including classic XHTML forms, to be attached to an XML form definition.

XInclude XInclude is a processing model and syntax for general-purpose inclusion. Inclusion allows merging a number of XML information sets into a single composite Infoset. It is the way to break XML documents into modules.
XLink the XML Linking Language allows elements to be inserted into XML documents to create and describe links between resources. It uses XML syntax to create structures that can describe links similar to the simple unidirectional hyperlinks of today's HTML, as well as extended links with sophistications like a description of the relationship between the links.


EXtensible Markup Language a standard format for structured documents and data on the Web. Structured data includes things like spreadsheets, address books, configuration parameters, financial transactions, and technical drawings. "document" is now taken to be a generalised name for data and documents. It is a derivation and simplification of SGML. XML looks a bit like HTML, but it is not a replacement for HTML. XML is verbose by design, and is intended to be read by an application, not a human in further processing and manipulating the document.

XML Applications

Such as MathML, SVG, VoiceXML. See XML Cover pages for a reasonably comprehensive and up-to-date list.

XML Cover Pages with extensive and up-to-date descriptions and comments on things XML maintained by Robin Cover
XML Query The XML Query language provides flexible query facilities to extract data from real and virtual documents on the Web, therefore finally providing the needed interaction between the web world and the database world.
XML Pipeline XML Pipeline is an XML vocabulary for describing the processing needed for an XML document and between XML documents. A pipeline document specifies the inputs and outputs to XML processes and a pipeline controller uses this document to follow operation sequence to do a particular task.
XMLSchema XMLSchema Defines the vocabulary and syntax of an XML document. It is a replacement for the DTD, and it has considerably greater flexibility of definition, datatypes than DTD. Since it is also written in XML it can be processed like any other XML document.
XPath XPath is a language for addressing parts of an XML document, designed to be used by both XSLT and XPointer
XPointer XPointer is extended fragment identifiers used for pointing or (referring) to components of XML structured documents and to external parsed entities. It is analogous to "anchors" in HTML. It permits different internal parts to be chosen from various properties, such as element types, attribute values, character content, and relative position. It is based on XPath and using a DOM, it allows an XSLT process to select sets of components for processing.
XSLT eXtensible Stylesheel Language Transformation is a language for transforming XML documents into other XML documents. It is designed for use as part of XSL, which is a stylesheet language for XML. In addition to XSLT, XSL includes an XML vocabulary for specifying formatting. XSL specifies the styling of an XML document by using XSLT to describe how the document is transformed into another XML document that uses the formatting vocabulary.
ZVON ZVON is an excellent source of XML, XSLT, XPath, anything X Tutorials.