The ALICE software implements AIML (Artificial Intelligence Markup Language), a non-standard evolving markup language for creating chat robots. The primary design feature of AIML is minimalism. Compared with other chat robot languages, AIML is perhaps the simplest. The pattern matching language is very simple, for example permitting only one wild-card ('*') match character per pattern. AIML is an XML language, implying that it obeys certain grammatical meta-rules. The choice of XML syntax permits integration with other tools such as XML editors. Another motivation for XML is its familiar look and feel, especially to people with HTML experience.
"Ball", the Byzantine Askemos Language Layer, is an intrusion resistant and incorruptible, autonomous distributed operating system. It provides application programmers with continuations, messages, and rights management on top of a peer-to-peer network resisting byzantine failures of network nodes. The API significantly raises the level of abstraction in comparison with other operating systems: there are very few system calls, and these are expressed in XML. An alternative understanding of Askemos is that of an XML object database with stored procedures.
AutoGen is a tool designed for generating program files that contain repetitive text with varied substitutions. Its goal is to simplify the maintenance of programs that contain large amounts of repetitious text. This is especially valuable if there are several blocks of such text that must be kept synchronized. Output is specified with a Scheme-enhanced output template. Input, if required by your template, may come from AutoGen definitions, CGI data, or XML files.
Document Structure Description (DSD) is a simple but expressive grammar notation for XML documents. This new XML schema language is result of a research collaboration between AT&T Labs, NJ and BRICS at the University of Aarhus, Denmark. The technology is based on general and familiar concepts that allow much stronger document descriptions than possible with DTDs or XML schemas.
eXist is a native XML database featuring efficient, index-based XQuery processing. It provides a complete ecosystem for building applications entirely based on XML, XQuery, and related standards. The high-performance XML database engine stores textual or binary data and documents without requiring a database schema. Using XML across all layers makes mapping technologies superfluous and increases productivity. A browser-based IDE and a standardized application packaging system help developers get started quickly.
JSX serializes Java objects to XML. You can persist objects, evolve them, and send them over the network and between applications. Your object data becomes human-readable and human-writable. You can test it, search it, profile it, audit it, and edit it with ordinary text and XML tools. JSX handles all POJOs and also all classes that require Java's own object serialization. JSX also correctly and completely handles the content of Serializable classes - including when they evolve and add additional content, for both upgrading to a new version (e.g. of Java or third-party libraries) and downgrading to an older one. It does this by reusing a class's Serialization methods, which are maintained by the class's developer to handle its evolution.
Libxml2 is the XML C library developed for the Gnome project. The library code is portable (to Linux, Unix, Windows, embedded systems, etc.) and modular; most of the extensions can be compiled out. Libxml2 implements a number of existing standards related to markup languages, including the XML standard, Namespaces in XML, XML Base, Relax NG, RFC 2396, XPath, XPointer, HTML4, XInclude, SGML Catalogs, and XML Catalogs. In most cases, libxml tries to implement the specifications in a relatively strict way. To some extent, it provides support for the following specifications, but doesn't claim to implement them: DOM, FTP client, HTTP client, and SAX2. Support for W3C XML Schemas is in progress. It includes xmllint, a command line XML validator.