Compare commits

..

No commits in common. "279ddc660e42b9828c8f17242e42c4542054e60d" and "09bf0d180786eef1ef0df76d73f5ecaf68488519" have entirely different histories.

8 changed files with 10 additions and 99 deletions

40
INSTALL
View File

@ -1,40 +0,0 @@
hoxsl may be used directly from the distribution archive.
To build from source (including a repository checkout), see `Configuring'
below.
Configuring
===========
If your distribution contains a `configure` file in the project root, you
may immediately run `./configure`.
Otherwise, you likely have the sources as they exist in the project
repository, which does not contain the generated `configure` script; you
may generate it by issuing the following command:
$ autoreconf -fvi
hoxsl has two dependencies, which may be cloned as such:
$ git clone https://github.com/lovullo/literate-xsl tools/literate-xsl
$ git clone https://github.com/lovullo/xspec tools/xspec
The latter is required only if running test cases (using `make check').
Once dependencies are in place, simply run:
$ ./configure
Building
========
After running `configure' above, all necessary runtime files and literate
documentation may be built by running:
$ make
To build the distribution files, run `make distdir`. To create the
distribution tarball, run `make dist`.
To run all tests, run `make check`.

View File

@ -1,7 +1,6 @@
## hoxsl Makefile
#
# Copyright (C) 2016 Mike Gerwitz
# Copyright (C) 2014 LoVullo Associates, Inc.
# Copyright (C) 2014 LoVullo Associates, Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -18,7 +17,6 @@
##
SUBDIRS = doc
EXTRA_DIST = INSTALL COPYING.FDL README.md src test doc/macros.texi
path_src := src
path_test := test
@ -37,6 +35,3 @@ check: $(test_apply)
$(JAVA) -jar "$(SAXON_CP)" \
-xsl:"$(path_src)/transform/apply-gen.xsl" \
"$<" > "$@"
clean-local:
$(RM) $(test_apply)

View File

@ -11,12 +11,13 @@
-->
# Higher-Order XSLT
hoxsl is a library for XSLT 2.0, written in pure XSLT, introducing
various higher-order operations; this includes higher-order functions and
XSLT templates that take XSLT as input and produce XSLT as output.
various types of higher-order logic; this includes higher-order
functions and XSLT templates that take XSLT as input and produce XSLT
as output.
The system is fully tested---see the test cases for additional
documentation as this project gets under way. The manual is "woven" from
literate sources; [a compiled version is available online][manual].
documentation as this project gets under way. This README will serve
as an informal manual until official documentation is produced.
## Higher-Order Functions
@ -113,5 +114,3 @@ PARTICULAR PURPOSE. See the GNU General Public License for more details.
[nova-ho]: http://conferences.idealliance.org/extreme/html/2006/Novatchev01/EML2006Novatchev01.html
[xslt-30-ho]: http://www.w3.org/TR/xslt-30/#dt-higher-order-operand
[manual]: https://mikegerwitz.com/hoxsl/manual/

View File

@ -11,8 +11,8 @@
@copying
This manual is for hoxsl, version @value{VERSION}.
Copyright @copyright{} 2015, 2016 Mike Gerwitz
Copyright @copyright{} 2014, 2015 LoVullo Associates, Inc.
Copyright @copyright{} 2015 Mike Gerwitz
@quotation
Permission is granted to copy, distribute and/or modify this document

View File

@ -62,11 +62,7 @@
<text>hoxsl; please do not modify</text>
</comment>
<out:stylesheet version="{( @version, '2.0' )[ 1 ]}">
<!-- namespaces might be referenced in strings (e.g. @as), and so may
not be copied by default -->
<sequence select="namespace::*[ name() ]" />
<out:stylesheet version="2.0">
<xsl:apply-templates mode="fgen:create" />
</out:stylesheet>
</document>

View File

@ -40,46 +40,6 @@
</variable>
<!-- while functions are only supported in version >=2, this could be run
on future versions, and we want to make sure that we don't break
anything -->
<scenario label="stylesheet version">
<scenario label="when provided">
<context>
<xsl:stylesheet version="7.05" />
</context>
<expect label="is copied to output"
test="xsl:stylesheet/@version = '7.05'" />
</scenario>
<scenario label="when empty">
<context>
<xsl:stylesheet />
</context>
<expect label="defaults to 2.0"
test="xsl:stylesheet/@version = '2.0'" />
</scenario>
</scenario>
<!-- source namespaces must be copied -->
<scenario label="source namespaces">
<context>
<xsl:stylesheet xmlns:foobar="baz">
<xsl:function name="foobar:baz">
<xsl:param name="foo" />
</xsl:function>
</xsl:stylesheet>
</context>
<expect label="are copied to destination"
test="exists( xsl:stylesheet/namespace::foobar )" />
</scenario>
<!-- basic case -->
<scenario label="given a unary function">
<context>

1
tools/xsltexi 160000

@ -0,0 +1 @@
Subproject commit 5cded3d64bec3c0c2b42b67169aa27cf5810bc50

@ -1 +1 @@
Subproject commit fcd852b0482d0a61d016867b5bfd463f7193f0cb
Subproject commit 20c6b8a32f37a6511698fe89b78b82fd1aa64bd2