a repository for materials related to teaching and writing on technologies of up-conversion and project development with the XML family of languages, featuring regex, XPath, XQuery, XSLT, and Schematron.
A regular expression (regex) is a pattern that can be used to match a string of text. They are a standard feature of many programming languages that are used for text-processing purposes (and they have the inconvenient habit of being implemented ever-so-slightly differently in different languages).
An XSLT stylesheet is an XML document. The root element is <xsl:stylesheet> and the elements inside the root are primarily <xsl:template> elements. When you apply an XSLT stylesheet to an XML document (such as by running it through the <oXygen/> debugger), the stylesheet finds the document node in the XML (above the root element; every XML document has one) and looks for a template rule to process it. It then follows the instructions it receives inside that template rule, which may involve generating output, applying template rules to other elements, etc. When it runs out of things to do, it ends.
XSLT is a declarative language, which means that the template rules describe what happens if and when an element of a particular type happens to float past. The programming languages you may have used in the past are likely to have been procedural languages, which describe what to do in order. The XSLT paradigm is very different. For example, the order of the template rules in your stylesheet doesn’t matter because the rules don’t apply in any particular order; they just fire whenever the element to which they apply happens to show up. Elements "show up" most often when they’re summoned by an <xsl:apply-templates/> element inside another template.
The W3C's XSL Formatting Objects technology provides an XML language for specifying the layout of documents. In the first article of our XSL FO tutorial series we show you how to set up your pages.
This document gives a quick, learn-by-example introduction to XSL FO and provides examples of how to perform routine tasks with XEP - RenderX's XSL formatter.
These pages are all about XSLT, an XML-based language for translating one set of XML into another set of XML, or into HTML. Of course, there are all sorts of other pages around that cover XSLT. Jeni's XSLT pages, though, are dedicated to helping people understand and make the most of using XSLT.
ycoon is a Python WSGI web development framework which allows XML processing pipelines to handle HTTP requests based on URI pattern matching. It is similar in intention to the Apache Cocoon framework. Pycoon uses sitemap file format compatible with Apache Cocoon Sitemap
EXPath - Collaboratively Defining Open Standards for Portable XPath Extensions
ServletX ( www.expath.org ), a small web container for executing xslt, xproc, xquery, and such
he Saxon-EE product includes within a single package:
A schema-aware XSLT 2.0 processor
A schema-aware XQuery 1.0 processor
An XPath processor that can be called from Java applications
A free-standing XML Schema validator.
Saxon is written in 100% Java and therefore runs on any popular platform
EPUB 3.0, which is the latest revision of the industry-standard XML e-book format, jumps into modern web technology by embracing HTML5 and CSS3. It retains its focus on XML-driven toolkits by requiring XHTML serialization and adding supplementary XML vocabularies, such as MathML and SVG. EPUB 3 offers a variety of options for developing advanced, digital-native publications. In this article, learn to create rich-layout pages using some new features in EPUB 3.
The type-aware and schema-aware features of XSLT 2.0 can greatly assist you when you debug a stylesheet, and improve stylesheet quality and robustness in handling all input data. Learn how to use type-aware and schema-aware XSLT 2.0 during the debugging and testing process to avoid common issues with invalid paths, incorrect assumptions about data types, and cardinalities. Also, find examples of XSLT stylesheets that contain errors that would not be caught if schema-aware features were not in use, and discover how explicitly specifying types results in useful error messages.
The eXtensible Text Framework (XTF) is a powerful open source platform for providing access to digital content. Developed and maintained by the California Digital Library (CDL), XTF functions as the primary access technology for the CDL's digital collections and other digital projects worldwide.
The libferris virtual filesystem presents both files and their metadata as a virtual filesystem. The boundaries of what is considered a filesystem by libferris include such interesting data sources as PostgreSQL, LDAP and Firefox as well as standard Web items, such as HTTP, FTP and RDF.
Carrot is not the first XSLT-inspired project to provide a shorter syntax than XSLT itself. Syntax shorthands have included Paul Tchistopolskii's XSLScript, Sam Wilmott's RXSLT, and another project called XSLTXT. Although none of these projects provided direct inspiration for Carrot, they all address one of the same desires that Carrot addresses: being able to program in XSLT more concisely
YAPP XSLT is a lexical scanner and recursive descent parser generator, implemented in XSLT. No language extensions or non-standard features are used apart from the nodeset() function. Grammars are expressed in XML form and transformed by the generator stylesheet into another XSLT. A lexical scanner may also be generated from the same grammar.
TEI Boilerplate is a lightweight solution for publishing styled TEI (Text Encoding Initiative) P5 content directly in modern browsers. With TEI Boilerplate, TEI XML files can be served directly to the web without server-side processing or translation to HTML. Our TEI Boilerplate Demo illustrates many TEI features rendered by TEI Boilerplate.
The mission of the edtf project is to develop a lightweight and easy to use open-source Event Driven Testing / Monitoring Framework based on XTemp / ATML standards, with a first application on BPEL testing / monitoring.
Stop learning proprietary languages and memorizing template tags. Symphony leverages open standards like XML and XSLT, and good old XHTML and CSS. Even the admin interface employs the widely-used jQuery library, so extension developers don’t have to learn a whole new framework when extending the back end.
A better approach is to parse the XSLT stylesheet into memory once, compile it to machine-format, and then preserve that machine representation in memory for repeated use. This is called stylesheet compilation and is no different in concept than the compilation of any programming language.
The TEIViewer is a browser-based application built on a modification of the XHTML branch of the Text Encoding Initiative XSL stylesheet family and the jQuery JavaScript Library.
The eXtensible Text Framework (XTF) is a powerful open source platform for providing access to digital content. Developed and maintained by the California Digital Library (CDL), XTF functions as the primary access technology for the CDL’s digital collections and other digital projects worldwide.
XTF consists of Java and XSLT 2.0 code that indexes, queries, and displays digital objects
In his latest Transforming XML column Bob DuCharme begins a multipart exploration of some of the features of the forthcoming XSLT 2.0 release. In this column DuCharme discusses the new support for tokenizing strings.
AJAXSLT is an implementation of XSL-T in JavaScript, intended for use in fat web pages, which are nowadays referred to as AJAX applications. Because XSL-T uses XPath, it is also an implementation of XPath that can be used independently of XSL-T.
The so-called identity template that copies everything from input.xml to output.xml, element for element, attribute for attribute, is the most important of all templates in combination with templates of exceptions.
XML is text and yet more than just text -- sometimes you want to work with just the content rather than the tags and other markup. In this tip, Uche Ogbuji demonstrates simple techniques for counting the words in XML content using XSLT with or without additional tools.
AtomicWiki is entirely based on the Atom Publishing Protocol and syndication format. All entries are stored as Atom feeds. The Atom Publishing Protocol is used to create and manipulate feeds and entries. The entire system is implemented in XQuery and XSLT with the help of some Javascript for the AJAX goodies (like in-page comment editing). What makes the software really powerful is its tight integration with XQuery and XML databases. Macros and extensions to the wiki syntax are implemented as XQuery functions. XQuery code can also be directly embedded into an Atom entry to generate dynamic content. The eXist weblog is powered by AtomicWiki.
<oXygen/> is a complete cross platform XML editor providing the tools for XML authoring, XML conversion, XML Schema, DTD, Relax NG and Schematron development, XPath, XSLT, XQuery debugging, SOAP and WSDL testing. The integration with the XML document repositories is made through the WebDAV, Subversion and S/FTP protocols. <oXygen/> also supports browsing, managing and querying native XML and relational databases. The <oXygen/> XML editor is also available as an Eclipse IDE plugin, bringing unique XML development features to this widely used Java IDE.
Need help converting HTML documents to PDF? This reference guide shows by example how to use XSLT templates to convert 45 commonly used HTML elements to formatting objects (from the XSL-FO vocabulary) for easy transformation to PDF using XSLT.
This matches Elems with one child. :)
If you want to match any number of children, replace the last "_" with "_*" . All part of the magic of unapplySeq. :)