├── .gitignore ├── .travis.yml ├── README.md ├── build.gradle ├── docs └── README ├── gradle.properties ├── lib └── README ├── resources ├── README ├── asciidoc-report.xsl ├── format-report.xsl ├── izpack-filter.xsl ├── loaders │ ├── xpc1.ebnf │ ├── xpc1.xpl │ ├── xpc1.xqy │ ├── xpc1.xsl │ ├── xpc2.ebnf │ ├── xpc2.xpl │ ├── xpc2.xqy │ ├── xpc2.xsl │ └── xpl.xpl ├── notices │ ├── APACHE-ANT.txt │ ├── APACHE-CODEC.txt │ ├── APACHE-HTTPCLIENT.txt │ ├── APACHE-IO.txt │ ├── APACHE-LOGGING.txt │ ├── CDDL+GPL.txt │ ├── GPL.txt │ ├── HAMCREST.txt │ ├── HTMLPARSER.txt │ ├── MIT.txt │ ├── NOTICES │ ├── RESTLET.txt │ ├── SAXON9HE.txt │ └── SLF4J.txt └── schemas │ └── configuration.rnc ├── src ├── main │ ├── izpack │ │ └── install.xml │ ├── java │ │ ├── com │ │ │ └── xmlcalabash │ │ │ │ ├── config │ │ │ │ ├── CssProcessor.java │ │ │ │ ├── FoProcessor.java │ │ │ │ ├── JaxpConfigurer.java │ │ │ │ ├── JingConfigurer.java │ │ │ │ ├── SaxonConfigurer.java │ │ │ │ ├── XMLCalabashConfigurer.java │ │ │ │ └── XProcConfigurer.java │ │ │ │ ├── core │ │ │ │ ├── XMLCalabash.java │ │ │ │ ├── XProcConfiguration.java │ │ │ │ ├── XProcConstants.java │ │ │ │ ├── XProcData.java │ │ │ │ ├── XProcException.java │ │ │ │ ├── XProcMessageListener.java │ │ │ │ ├── XProcRunnable.java │ │ │ │ ├── XProcRuntime.java │ │ │ │ └── XProcStep.java │ │ │ │ ├── drivers │ │ │ │ ├── CalabashTask.java │ │ │ │ ├── Main.java │ │ │ │ ├── Piperack.java │ │ │ │ └── RunTestReport.java │ │ │ │ ├── extensions │ │ │ │ ├── CollectionManager.java │ │ │ │ ├── Compress.java │ │ │ │ ├── CssFormatter.java │ │ │ │ ├── Eval.java │ │ │ │ ├── GetCookies.java │ │ │ │ ├── JavaProperties.java │ │ │ │ ├── Message.java │ │ │ │ ├── NVDL.java │ │ │ │ ├── NamespaceDelete.java │ │ │ │ ├── PrettyPrint.java │ │ │ │ ├── ReportErrors.java │ │ │ │ ├── SetBaseURI.java │ │ │ │ ├── SetCookies.java │ │ │ │ ├── Uncompress.java │ │ │ │ ├── UntilUnchanged.java │ │ │ │ ├── Unzip.java │ │ │ │ ├── UriInfo.java │ │ │ │ ├── WaitForUpdate.java │ │ │ │ ├── Zip.java │ │ │ │ ├── fileutils │ │ │ │ │ ├── Copy.java │ │ │ │ │ ├── Delete.java │ │ │ │ │ ├── Head.java │ │ │ │ │ ├── Info.java │ │ │ │ │ ├── Mkdir.java │ │ │ │ │ ├── Move.java │ │ │ │ │ ├── Tail.java │ │ │ │ │ ├── Tempfile.java │ │ │ │ │ └── Touch.java │ │ │ │ └── osutils │ │ │ │ │ ├── Cwd.java │ │ │ │ │ ├── Env.java │ │ │ │ │ └── Info.java │ │ │ │ ├── functions │ │ │ │ ├── BaseURI.java │ │ │ │ ├── Cwd.java │ │ │ │ ├── IterationPosition.java │ │ │ │ ├── IterationSize.java │ │ │ │ ├── ResolveURI.java │ │ │ │ ├── StepAvailable.java │ │ │ │ ├── SystemProperty.java │ │ │ │ ├── ValueAvailable.java │ │ │ │ ├── VersionAvailable.java │ │ │ │ ├── XPathVersionAvailable.java │ │ │ │ └── XProcExtensionFunctionDefinition.java │ │ │ │ ├── io │ │ │ │ ├── DataStore.java │ │ │ │ ├── DocumentSequence.java │ │ │ │ ├── FallbackDataStore.java │ │ │ │ ├── FileDataStore.java │ │ │ │ ├── HttpClientDataStore.java │ │ │ │ ├── Pipe.java │ │ │ │ ├── PipeLogger.java │ │ │ │ ├── ReadableData.java │ │ │ │ ├── ReadableDocument.java │ │ │ │ ├── ReadableEmpty.java │ │ │ │ ├── ReadableInline.java │ │ │ │ ├── ReadablePipe.java │ │ │ │ ├── Select.java │ │ │ │ ├── URLDataStore.java │ │ │ │ ├── WritableDocument.java │ │ │ │ └── WritablePipe.java │ │ │ │ ├── library │ │ │ │ ├── AddAttribute.java │ │ │ │ ├── AddXmlBase.java │ │ │ │ ├── Compare.java │ │ │ │ ├── Count.java │ │ │ │ ├── DefaultStep.java │ │ │ │ ├── Delete.java │ │ │ │ ├── DirectoryList.java │ │ │ │ ├── Error.java │ │ │ │ ├── EscapeMarkup.java │ │ │ │ ├── Exec.java │ │ │ │ ├── Filter.java │ │ │ │ ├── Hash.java │ │ │ │ ├── HttpRequest.java │ │ │ │ ├── Identity.java │ │ │ │ ├── InScopeNames.java │ │ │ │ ├── Insert.java │ │ │ │ ├── LabelElements.java │ │ │ │ ├── Load.java │ │ │ │ ├── MakeAbsoluteURIs.java │ │ │ │ ├── NamespaceRename.java │ │ │ │ ├── Pack.java │ │ │ │ ├── Parameters.java │ │ │ │ ├── Rename.java │ │ │ │ ├── Replace.java │ │ │ │ ├── SetAttributes.java │ │ │ │ ├── Sink.java │ │ │ │ ├── SplitSequence.java │ │ │ │ ├── Store.java │ │ │ │ ├── StringReplace.java │ │ │ │ ├── Template.java │ │ │ │ ├── UUID.java │ │ │ │ ├── UnescapeMarkup.java │ │ │ │ ├── Unwrap.java │ │ │ │ ├── ValidateJing.java │ │ │ │ ├── ValidateWithRNG.java │ │ │ │ ├── ValidateWithSCH.java │ │ │ │ ├── ValidateWithXSD.java │ │ │ │ ├── WWWFormURLDecode.java │ │ │ │ ├── WWWFormURLEncode.java │ │ │ │ ├── Wrap.java │ │ │ │ ├── WrapSequence.java │ │ │ │ ├── XInclude.java │ │ │ │ ├── XQuery.java │ │ │ │ ├── XSLFormatter.java │ │ │ │ └── XSLT.java │ │ │ │ ├── model │ │ │ │ ├── Binding.java │ │ │ │ ├── Catch.java │ │ │ │ ├── Choose.java │ │ │ │ ├── CompoundStep.java │ │ │ │ ├── ComputableValue.java │ │ │ │ ├── DataBinding.java │ │ │ │ ├── DeclareStep.java │ │ │ │ ├── DocumentBinding.java │ │ │ │ ├── EmptyBinding.java │ │ │ │ ├── EndPoint.java │ │ │ │ ├── Environment.java │ │ │ │ ├── ErrorBinding.java │ │ │ │ ├── ForEach.java │ │ │ │ ├── Group.java │ │ │ │ ├── Import.java │ │ │ │ ├── InlineBinding.java │ │ │ │ ├── Input.java │ │ │ │ ├── Log.java │ │ │ │ ├── NamespaceBinding.java │ │ │ │ ├── Option.java │ │ │ │ ├── Otherwise.java │ │ │ │ ├── Output.java │ │ │ │ ├── Parameter.java │ │ │ │ ├── Parser.java │ │ │ │ ├── PipeBinding.java │ │ │ │ ├── PipeNameBinding.java │ │ │ │ ├── Pipeline.java │ │ │ │ ├── PipelineLibrary.java │ │ │ │ ├── Port.java │ │ │ │ ├── RuntimeValue.java │ │ │ │ ├── Serialization.java │ │ │ │ ├── SourceArtifact.java │ │ │ │ ├── Step.java │ │ │ │ ├── Try.java │ │ │ │ ├── Variable.java │ │ │ │ ├── Viewport.java │ │ │ │ └── When.java │ │ │ │ ├── piperack │ │ │ │ ├── BaseResource.java │ │ │ │ ├── BaseStatus.java │ │ │ │ ├── Help.java │ │ │ │ ├── Input.java │ │ │ │ ├── Option.java │ │ │ │ ├── Options.java │ │ │ │ ├── Output.java │ │ │ │ ├── Parameter.java │ │ │ │ ├── Parameters.java │ │ │ │ ├── Pipeline.java │ │ │ │ ├── PipelineConfiguration.java │ │ │ │ ├── PipelineSource.java │ │ │ │ ├── Pipelines.java │ │ │ │ ├── PiperackApplication.java │ │ │ │ ├── Reset.java │ │ │ │ ├── Run.java │ │ │ │ ├── Status.java │ │ │ │ └── Stop.java │ │ │ │ ├── runtime │ │ │ │ ├── XAtomicStep.java │ │ │ │ ├── XCatch.java │ │ │ │ ├── XChoose.java │ │ │ │ ├── XCompoundStep.java │ │ │ │ ├── XForEach.java │ │ │ │ ├── XGroup.java │ │ │ │ ├── XInput.java │ │ │ │ ├── XLibrary.java │ │ │ │ ├── XOtherwise.java │ │ │ │ ├── XOutput.java │ │ │ │ ├── XPipeline.java │ │ │ │ ├── XPipelineCall.java │ │ │ │ ├── XRootStep.java │ │ │ │ ├── XSelect.java │ │ │ │ ├── XStep.java │ │ │ │ ├── XTry.java │ │ │ │ ├── XUntilUnchanged.java │ │ │ │ ├── XViewport.java │ │ │ │ └── XWhen.java │ │ │ │ └── util │ │ │ │ ├── AxisNodes.java │ │ │ │ ├── Base64.java │ │ │ │ ├── Closer.java │ │ │ │ ├── CollectionResolver.java │ │ │ │ ├── DebugProcessMatchingNodes.java │ │ │ │ ├── DefaultJaxpConfigurer.java │ │ │ │ ├── DefaultJingConfigurer.java │ │ │ │ ├── DefaultSaxonConfigurer.java │ │ │ │ ├── DefaultTestReporter.java │ │ │ │ ├── DefaultXMLCalabashConfigurer.java │ │ │ │ ├── DefaultXProcConfigurer.java │ │ │ │ ├── DefaultXProcMessageListener.java │ │ │ │ ├── DocumentSequenceIterator.java │ │ │ │ ├── HttpUtils.java │ │ │ │ ├── Input.java │ │ │ │ ├── JSONtoXML.java │ │ │ │ ├── LogOptions.java │ │ │ │ ├── MIMEReader.java │ │ │ │ ├── MessageFormatter.java │ │ │ │ ├── NodeToBytes.java │ │ │ │ ├── Output.java │ │ │ │ ├── ParseArgs.java │ │ │ │ ├── ProcessMatch.java │ │ │ │ ├── ProcessMatchingNodes.java │ │ │ │ ├── Reporter.java │ │ │ │ ├── RuntimeRegistry.java │ │ │ │ ├── S9apiUtils.java │ │ │ │ ├── SilentErrorListener.java │ │ │ │ ├── SilentTestReporter.java │ │ │ │ ├── StderrResource.java │ │ │ │ ├── StdinResource.java │ │ │ │ ├── StdinoutResource.java │ │ │ │ ├── StdoutResource.java │ │ │ │ ├── StepErrorListener.java │ │ │ │ ├── TestReporter.java │ │ │ │ ├── TreeWriter.java │ │ │ │ ├── TypeUtils.java │ │ │ │ ├── URIUtils.java │ │ │ │ ├── UserArgs.java │ │ │ │ ├── XMLtoJSON.java │ │ │ │ ├── XPointer.java │ │ │ │ ├── XPointerScheme.java │ │ │ │ ├── XProcLocationProvider.java │ │ │ │ ├── XProcNamespaceContext.java │ │ │ │ ├── XProcSystemPropertySet.java │ │ │ │ └── XProcURIResolver.java │ │ └── org │ │ │ └── json │ │ │ ├── CDL.java │ │ │ ├── Cookie.java │ │ │ ├── CookieList.java │ │ │ ├── HTTP.java │ │ │ ├── HTTPTokener.java │ │ │ ├── JSONArray.java │ │ │ ├── JSONException.java │ │ │ ├── JSONML.java │ │ │ ├── JSONObject.java │ │ │ ├── JSONString.java │ │ │ ├── JSONStringer.java │ │ │ ├── JSONTokener.java │ │ │ ├── JSONWriter.java │ │ │ ├── Test.java │ │ │ ├── XML.java │ │ │ └── XMLTokener.java │ └── resources │ │ ├── com │ │ └── xmlcalabash │ │ │ └── antlib.xml │ │ ├── etc │ │ ├── configuration.xml │ │ ├── error-list.xml │ │ ├── extension-library.xml │ │ ├── install-proto.xsl │ │ ├── log4j2.xml │ │ ├── patch-profile.xsl │ │ ├── pipeline-library.xml │ │ ├── prettyprint.xpl │ │ ├── prettyprint.xsl │ │ ├── schematron │ │ │ ├── iso_abstract_expand.xsl │ │ │ ├── iso_dsdl_include.xsl │ │ │ ├── iso_schematron_message_xslt2.xsl │ │ │ ├── iso_schematron_skeleton_for_saxon.xsl │ │ │ ├── iso_svrl_for_xslt2.xsl │ │ │ ├── readme.txt │ │ │ └── sch-messages-en.xhtml │ │ ├── serializepr.xsl │ │ └── usage.txt │ │ └── log4j2.xml └── test │ └── java │ └── com │ └── xmlcalabash │ ├── drivers │ ├── BaseURITest.java │ ├── EmbeddedTest.java │ └── ValidBaseURITest.java │ ├── io │ └── FileDataStoreTest.java │ ├── testsuite │ ├── SuiteRunner.java │ ├── TestExtension.java │ ├── TestOptional.java │ ├── TestRequired.java │ ├── TestSerialization.java │ └── TestXMLCalabash.java │ └── util │ ├── ProcessMatchTest.java │ ├── TestAxisNodes.java │ └── XPointerTest.java ├── test └── testsuite │ ├── doc │ ├── address-invalid-sample.xml │ ├── address-nonexistent-dtd.xml │ ├── address-valid-sample.xml │ ├── address.dtd │ ├── chaps │ │ ├── div.xml │ │ └── div2.xml │ ├── compoundDoc.xml │ ├── compoundEntity.xml │ ├── directory-list-test │ │ ├── adir │ │ │ └── cfile │ │ ├── afile │ │ └── bfile │ ├── divs │ │ ├── div.xml │ │ └── p.xml │ ├── docbook-invalid.xml │ ├── docbook-phases.sch │ ├── docbook-valid.xml │ ├── docbook.sch │ ├── document-attr.xsd │ ├── document-ns.xml │ ├── document-ns.xsd │ ├── document.rnc │ ├── document.xml │ ├── document.xsd │ ├── document2.xml │ ├── envelope.fo │ ├── envelope.xml │ ├── envelope.xsl │ ├── html-utf8.data │ ├── input-cs.xml │ ├── input-en-cs.xml │ ├── input-en.xml │ ├── input-xinclude-loop-source.xml │ ├── input-xinclude-loop-target.xml │ ├── input-xinclude-recursive-1.xml │ ├── input-xinclude.xml │ ├── input.xml │ ├── invalid.xml │ ├── nfc-input.xml │ ├── nfkc-input.xml │ ├── nfkd-input.xml │ ├── non-well-formed.xml │ ├── pqhref.rnc │ ├── pqhref.xsd │ ├── s-input.dtd │ ├── s-input.xml │ ├── s-input2.xml │ ├── textdata-utf8.data │ ├── textdata-utf8.txt │ ├── windows-1252.txt │ ├── xhtml-ct.html │ ├── xhtml.html │ ├── xidoc.xml │ ├── xinclude │ │ ├── input-xinclude-recursive-2.xml │ │ └── para.xml │ ├── xml-base-chap.xml │ ├── xml-base-test.xml │ ├── xml11.xml │ ├── xmldata.xml │ └── xpath-xinclude-doc.xml │ ├── extension │ ├── test-suite.xml │ └── unimpl-001.xml │ ├── lib │ ├── exclude-inline-prefixes.xpl │ ├── externalxml.xpl │ ├── l1.xpl │ ├── l1a.xpl │ ├── l2.xpl │ ├── l3.xpl │ ├── l4.xpl │ ├── l5.xpl │ ├── l6.xpl │ ├── pipeline.xpl │ └── pipeline2.xpl │ ├── optional │ ├── err-c0033-001.xml │ ├── err-c0034-001.xml │ ├── err-c0035-001.xml │ ├── err-c0035-002.xml │ ├── err-c0036-001.xml │ ├── err-c0036-002.xml │ ├── err-c0036-003.xml │ ├── err-c0036-004.xml │ ├── err-c0036-005.xml │ ├── err-c0037-001.xml │ ├── err-c0037-002.xml │ ├── err-c0037-003.xml │ ├── err-c0053-001.xml │ ├── err-c0053-002.xml │ ├── err-c0053-003.xml │ ├── err-c0053-004.xml │ ├── err-c0054-001.xml │ ├── err-c0057-001.xml │ ├── err-c0060-001.xml │ ├── err-c0061-001.xml │ ├── err-c0063-001.xml │ ├── err-c0063-002.xml │ ├── err-c0064-001.xml │ ├── err-c0066-001.xml │ ├── err-c0066-002.xml │ ├── exec-001.xml │ ├── exec-002.xml │ ├── exec-003.xml │ ├── exec-004.xml │ ├── exec-005.xml │ ├── exec-006.xml │ ├── exec-007.xml │ ├── exec-008.xml │ ├── exec-009.xml │ ├── exec-010.xml │ ├── exec-011.xml │ ├── exec-012.xml │ ├── exec-013.xml │ ├── exec-014.xml │ ├── exec-015.xml │ ├── exec-016.xml │ ├── exec-017.xml │ ├── hash-001.xml │ ├── hash-002.xml │ ├── hash-003.xml │ ├── hash-004.xml │ ├── hash-005.xml │ ├── hash-006.xml │ ├── in-scope-names-001.xml │ ├── in-scope-names-002.xml │ ├── psvi-required-001.xml │ ├── template-001.xml │ ├── template-002.xml │ ├── template-003.xml │ ├── template-004.xml │ ├── template-005.xml │ ├── template-006.xml │ ├── template-007.xml │ ├── template-008.xml │ ├── template-009.xml │ ├── template-010.xml │ ├── template-011.xml │ ├── template-012.xml │ ├── template-013.xml │ ├── template-014.xml │ ├── template-015.xml │ ├── template-016.xml │ ├── template-017.xml │ ├── template-018.xml │ ├── test-suite.xml │ ├── uuid-001.xml │ ├── validrng-001.xml │ ├── validrng-002.xml │ ├── validrng-003.xml │ ├── validrng-004.xml │ ├── validrng-005.xml │ ├── validrng-006.xml │ ├── validrng-008.xml │ ├── validrng-009.xml │ ├── validsch-001.xml │ ├── validsch-002.xml │ ├── validsch-003.xml │ ├── validsch-004.xml │ ├── validsch-005.xml │ ├── validxsd-001.xml │ ├── validxsd-002.xml │ ├── validxsd-003.xml │ ├── validxsd-004.xml │ ├── validxsd-005.xml │ ├── validxsd-006.xml │ ├── validxsd-007.xml │ ├── validxsd-008.xml │ ├── validxsd-009.xml │ ├── validxsd-010.xml │ ├── validxsd-011.xml │ ├── validxsd-012.xml │ ├── validxsd-013.xml │ ├── www-form-urldecode-001.xml │ ├── www-form-urlencode-001.xml │ ├── xinclude-001.xml │ ├── xinclude-002.xml │ ├── xinclude-003.xml │ ├── xinclude-004.xml │ ├── xinclude-005.xml │ ├── xinclude-006.xml │ ├── xquery-001.xml │ ├── xquery-002.xml │ ├── xquery-003.xml │ ├── xquery-004.xml │ ├── xquery-005.xml │ ├── xquery-006.xml │ ├── xquery.xq │ ├── xsl-formatter-001.xml │ ├── xslt2-001.xml │ ├── xslt2-002.xml │ ├── xslt2-002.xpl │ └── xslt2-003.xml │ ├── required │ ├── add-attribute-001.xml │ ├── add-attribute-002.xml │ ├── add-attribute-003.xml │ ├── add-attribute-004.xml │ ├── add-attribute-005.xml │ ├── add-attribute-006.xml │ ├── add-attribute-007.xml │ ├── add-xml-base-001.xml │ ├── add-xml-base-002.xml │ ├── add-xml-base-003.xml │ ├── add-xml-base-004.xml │ ├── add-xml-base-005.xml │ ├── add-xml-base-006.xml │ ├── atomic-imported.xpl │ ├── base-uri-001.xml │ ├── base-uri-002.xml │ ├── base-uri-003.xml │ ├── choose-001.xml │ ├── choose-002.xml │ ├── choose-003.xml │ ├── choose-004.xml │ ├── choose-005.xml │ ├── choose-006.xml │ ├── choose-007.xml │ ├── choose-008.xml │ ├── compare-001.xml │ ├── compare-002.xml │ ├── compare-003.xml │ ├── compare-004.xml │ ├── compare-005.xml │ ├── count-001.xml │ ├── count-002.xml │ ├── count-003.xml │ ├── count-004.xml │ ├── data-001.xml │ ├── data-002.xml │ ├── data-003.xml │ ├── data-004.xml │ ├── data-005.xml │ ├── data-006.xml │ ├── data-007.xml │ ├── data-008.xml │ ├── declare-step-001.xml │ ├── declare-step-002.xml │ ├── declare-step-003.xml │ ├── declare-step-004.xml │ ├── declare-step-005.xml │ ├── declare-step-006.xml │ ├── declare-step-007.xml │ ├── declare-step-008.xml │ ├── declare-step-009.xml │ ├── declare-step-010.xml │ ├── declare-step-011.xml │ ├── delete-001.xml │ ├── delete-002.xml │ ├── delete-003.xml │ ├── delete-004.xml │ ├── delete-005.xml │ ├── directory-list-001.xml │ ├── directory-list-002.xml │ ├── document-001.xml │ ├── ebv-001.xml │ ├── ebv-002.xml │ ├── err-c0002-001.xml │ ├── err-c0003-001.xml │ ├── err-c0003-002.xml │ ├── err-c0004-001.xml │ ├── err-c0005-001.xml │ ├── err-c0005-002.xml │ ├── err-c0006-001.xml │ ├── err-c0010-001.xml │ ├── err-c0010-002.xml │ ├── err-c0012-001.xml │ ├── err-c0013-001.xml │ ├── err-c0014-001.xml │ ├── err-c0014-002.xml │ ├── err-c0017-001.xml │ ├── err-c0019-001.xml │ ├── err-c0020-001.xml │ ├── err-c0020-003.xml │ ├── err-c0020-004.xml │ ├── err-c0020-005.xml │ ├── err-c0020-006.xml │ ├── err-c0020-007.xml │ ├── err-c0022-001.xml │ ├── err-c0023-001.xml │ ├── err-c0023-002.xml │ ├── err-c0023-003.xml │ ├── err-c0023-004.xml │ ├── err-c0023-005.xml │ ├── err-c0023-006.xml │ ├── err-c0023-007.xml │ ├── err-c0023-008.xml │ ├── err-c0023-009.xml │ ├── err-c0025-001.xml │ ├── err-c0025-002.xml │ ├── err-c0027-001.xml │ ├── err-c0027-002.xml │ ├── err-c0027-003.xml │ ├── err-c0028-001.xml │ ├── err-c0029-001.xml │ ├── err-c0029-002.xml │ ├── err-c0030-001.xml │ ├── err-c0039-001.xml │ ├── err-c0040-001.xml │ ├── err-c0050-001.xml │ ├── err-c0051-001.xml │ ├── err-c0052-001.xml │ ├── err-c0052-002.xml │ ├── err-c0056-001.xml │ ├── err-c0056-002.xml │ ├── err-c0058-001.xml │ ├── err-c0059-001.xml │ ├── err-c0059-002.xml │ ├── err-c0062-001.xml │ ├── err-d0001-001.xml │ ├── err-d0001-002.xml │ ├── err-d0003-001.xml │ ├── err-d0004-001.xml │ ├── err-d0005-001.xml │ ├── err-d0006-001.xml │ ├── err-d0007-001.xml │ ├── err-d0007-002.xml │ ├── err-d0007-003.xml │ ├── err-d0007-004.xml │ ├── err-d0007-004.xml~ │ ├── err-d0008-001.xml │ ├── err-d0009-001.xml │ ├── err-d0009-002.xml │ ├── err-d0010-001.xml │ ├── err-d0011-001.xml │ ├── err-d0011-002.xml │ ├── err-d0011-003.xml │ ├── err-d0012-001.xml │ ├── err-d0012-002.xml │ ├── err-d0012-003.xml │ ├── err-d0013-001.xml │ ├── err-d0013-002.xml │ ├── err-d0014-001.xml │ ├── err-d0014-002.xml │ ├── err-d0015-001.xml │ ├── err-d0016-001.xml │ ├── err-d0016-002.xml │ ├── err-d0018-001.xml │ ├── err-d0019-001.xml │ ├── err-d0019-002.xml │ ├── err-d0020-001.xml │ ├── err-d0020-002.xml │ ├── err-d0021-001.xml │ ├── err-d0021-002.xml │ ├── err-d0022-001.xml │ ├── err-d0023-001.xml │ ├── err-d0023-002.xml │ ├── err-d0023-003.xml │ ├── err-d0023-004.xml │ ├── err-d0023-005.xml │ ├── err-d0023-006.xml │ ├── err-d0023-007.xml │ ├── err-d0023-008.xml │ ├── err-d0023-009.xml │ ├── err-d0025-001.xml │ ├── err-d0026-001.xml │ ├── err-d0026-002.xml │ ├── err-d0026-003.xml │ ├── err-d0026-004.xml │ ├── err-d0026-005.xml │ ├── err-d0027-001.xml │ ├── err-d0028-001.xml │ ├── err-d0028-002.xml │ ├── err-d0028-003.xml │ ├── err-d0028-004.xml │ ├── err-d0029-001.xml │ ├── err-d0029-002.xml │ ├── err-d0030-001.xml │ ├── err-d0030-002.xml │ ├── err-d0031-001.xml │ ├── err-d0031-002.xml │ ├── err-d0033-001.xml │ ├── err-d0033-002.xml │ ├── err-d0034-001.xml │ ├── err-d0034-002.xml │ ├── err-d0034-003.xml │ ├── err-d0034-004.xml │ ├── err-d0034-005.xml │ ├── err-d0034-006.xml │ ├── err-d0034-007.xml │ ├── err-d0034-008.xml │ ├── err-d0034-009.xml │ ├── err-d0034-010.xml │ ├── err-d0034-011.xml │ ├── err-d0034-012.xml │ ├── err-d0034-013.xml │ ├── err-d0034-014.xml │ ├── err-d0034-015.xml │ ├── err-d0034-016.xml │ ├── err-d0034-017.xml │ ├── err-d0034-018.xml │ ├── err-primary-001.xml │ ├── err-s0001-001.xml │ ├── err-s0001-002.xml │ ├── err-s0001-003.xml │ ├── err-s0001-004.xml │ ├── err-s0001-005.xml │ ├── err-s0001-006.xml │ ├── err-s0001-007.xml │ ├── err-s0001-008.xml │ ├── err-s0001-010.xml │ ├── err-s0001-011.xml │ ├── err-s0002-001.xml │ ├── err-s0002-002.xml │ ├── err-s0003-001.xml │ ├── err-s0003-002.xml │ ├── err-s0003-004.xml │ ├── err-s0004-001.xml │ ├── err-s0004-002.xml │ ├── err-s0004-003.xml │ ├── err-s0004-004.xml │ ├── err-s0005-001.xml │ ├── err-s0005-002.xml │ ├── err-s0005-003.xml │ ├── err-s0005-004.xml │ ├── err-s0005-005.xml │ ├── err-s0005-006.xml │ ├── err-s0005-007.xml │ ├── err-s0005-008.xml │ ├── err-s0005-009.xml │ ├── err-s0005-010.xml │ ├── err-s0005-011.xml │ ├── err-s0005-012.xml │ ├── err-s0005-013.xml │ ├── err-s0006-001.xml │ ├── err-s0007-001.xml │ ├── err-s0007-002.xml │ ├── err-s0007-003.xml │ ├── err-s0008-001.xml │ ├── err-s0009-001.xml │ ├── err-s0009-002.xml │ ├── err-s0009-004.xml │ ├── err-s0009-005.xml │ ├── err-s0010-001.xml │ ├── err-s0010-002.xml │ ├── err-s0010-003.xml │ ├── err-s0011-001.xml │ ├── err-s0011-002.xml │ ├── err-s0011-003.xml │ ├── err-s0011-004.xml │ ├── err-s0014-001.xml │ ├── err-s0015-001.xml │ ├── err-s0017-001.xml │ ├── err-s0018-001.xml │ ├── err-s0018-002.xml │ ├── err-s0018-003.xml │ ├── err-s0019-001.xml │ ├── err-s0020-001.xml │ ├── err-s0020-002.xml │ ├── err-s0020-003.xml │ ├── err-s0022-001.xml │ ├── err-s0022-002.xml │ ├── err-s0022-003.xml │ ├── err-s0022-004.xml │ ├── err-s0022-005.xml │ ├── err-s0022-006.xml │ ├── err-s0024-001.xml │ ├── err-s0024-002.xml │ ├── err-s0025-001.xml │ ├── err-s0025-002.xml │ ├── err-s0025-003.xml │ ├── err-s0025-004.xml │ ├── err-s0026-001.xml │ ├── err-s0026-002.xml │ ├── err-s0027-001.xml │ ├── err-s0028-001.xml │ ├── err-s0028-002.xml │ ├── err-s0029-001.xml │ ├── err-s0030-001.xml │ ├── err-s0031-001.xml │ ├── err-s0031-002.xml │ ├── err-s0032-001.xml │ ├── err-s0033-001.xml │ ├── err-s0034-001.xml │ ├── err-s0034-002.xml │ ├── err-s0035-001.xml │ ├── err-s0035-002.xml │ ├── err-s0036-001.xml │ ├── err-s0036-002.xml │ ├── err-s0036-003.xml │ ├── err-s0036-004.xml │ ├── err-s0036-005.xml │ ├── err-s0037-001.xml │ ├── err-s0037-002.xml │ ├── err-s0037-003.xml │ ├── err-s0038-001.xml │ ├── err-s0038-002.xml │ ├── err-s0039-001.xml │ ├── err-s0039-002.xml │ ├── err-s0040-001.xml │ ├── err-s0041-001.xml │ ├── err-s0042-001.xml │ ├── err-s0044-001.xml │ ├── err-s0044-002.xml │ ├── err-s0044-003.xml │ ├── err-s0048-001.xml │ ├── err-s0051-001.xml │ ├── err-s0051-002.xml │ ├── err-s0052-001.xml │ ├── err-s0052-002.xml │ ├── err-s0053-001.xml │ ├── err-s0055-001.xml │ ├── err-s0055-002.xml │ ├── err-s0057-001.xml │ ├── err-s0057-002.xml │ ├── err-s0058-001.xml │ ├── err-s0059-001.xml │ ├── err-s0061-001.xml │ ├── err-s0061-001.xpl │ ├── err-s0062-001.xml │ ├── err-s0062-002.xml │ ├── err-s0063-001.xml │ ├── error-001.xml │ ├── error-002.xml │ ├── error-003.xml │ ├── escape-markup-001.xml │ ├── escape-markup-001.xpl │ ├── evaluation-order-001.xml │ ├── evaluation-order-002.xml │ ├── evaluation-order-003.xml │ ├── exclude-inline-prefixes-001.xml │ ├── exclude-inline-prefixes-002.xml │ ├── exclude-inline-prefixes-003.xml │ ├── exclude-inline-prefixes-004.xml │ ├── exclude-inline-prefixes-005.xml │ ├── exclude-inline-prefixes-006.xml │ ├── exclude-inline-prefixes-007.xml │ ├── exclude-inline-prefixes-008.xml │ ├── exclude-inline-prefixes-009.xml │ ├── exclude-inline-prefixes-010.xml │ ├── fibonacci.xml │ ├── filter-001.xml │ ├── filter-002.xml │ ├── filter-003.xml │ ├── for-each-001.xml │ ├── for-each-002.xml │ ├── for-each-003.xml │ ├── for-each-004.xml │ ├── for-each-005.xml │ ├── for-each-006.xml │ ├── for-each-007.xml │ ├── for-each-008.xml │ ├── for-each-009.xml │ ├── for-each-010.xml │ ├── for-each-011.xml │ ├── for-each-012.xml │ ├── group-001.xml │ ├── group-002.xml │ ├── group-003.xml │ ├── http-request-001.xml │ ├── http-request-002.xml │ ├── http-request-003.xml │ ├── http-request-004.xml │ ├── http-request-005.xml │ ├── http-request-006.xml │ ├── http-request-007.xml │ ├── http-request-008.xml │ ├── http-request-009.xml │ ├── http-request-010.xml │ ├── http-request-011.xml │ ├── http-request-012.xml │ ├── http-request-013.xml │ ├── http-request-014.xml │ ├── identity-001.xml │ ├── identity-002.xml │ ├── identity-003.xml │ ├── identity-004.xml │ ├── identity-005.xml │ ├── import-001.xml │ ├── import-002.xml │ ├── import-003.xml │ ├── import-004.xml │ ├── import-005.xml │ ├── import-006.xml │ ├── import-007.xml │ ├── import-008.xml │ ├── import-009.xml │ ├── import-010.xml │ ├── import-011.xml │ ├── input-001.xml │ ├── input-002.xml │ ├── input-003.xml │ ├── input-004.xml │ ├── input-005.xml │ ├── input-006.xml │ ├── input-007.xml │ ├── input-008.xml │ ├── input-009.xml │ ├── input-010.xml │ ├── input-011.xml │ ├── input-012.xml │ ├── insert-001.xml │ ├── insert-001.xpl │ ├── insert-002.xml │ ├── insert-002.xpl │ ├── insert-003.xml │ ├── insert-003.xpl │ ├── insert-004.xml │ ├── insert-004.xpl │ ├── insert-005.xml │ ├── insert-006.xml │ ├── insert-007.xml │ ├── insert-008.xml │ ├── insert-009.xml │ ├── insert-010.xml │ ├── iteration-001.xml │ ├── iteration-002.xml │ ├── labelelements-001.xml │ ├── labelelements-002.xml │ ├── labelelements-003.xml │ ├── labelelements-004.xml │ ├── labelelements-005.xml │ ├── labelelements-006.xml │ ├── labelelements-007.xml │ ├── labelelements-008.xml │ ├── labelelements-009.xml │ ├── labelelements-010.xml │ ├── labelelements-011.xml │ ├── library-imported.xpl │ ├── library-missing-version.xpl │ ├── library-v2.xpl │ ├── library.xpl │ ├── load-001.xml │ ├── load-002.xml │ ├── load-003.xml │ ├── load-004.xml │ ├── log-001.xml │ ├── log-002.xml │ ├── make-absolute-uris-001.xml │ ├── make-absolute-uris-002.xml │ ├── make-absolute-uris-003.xml │ ├── make-sequence.xml │ ├── multipart-001.xml │ ├── multipart-002.xml │ ├── multipart-003.xml │ ├── multipart-004.xml │ ├── multipart-005.xml │ ├── namespace-rename-001.xml │ ├── namespace-rename-002.xml │ ├── namespace-rename-003.xml │ ├── namespace-rename-004.xml │ ├── namespace-rename-005.xml │ ├── namespace-rename-006.xml │ ├── namespace-rename-007.xml │ ├── namespace-rename-008.xml │ ├── namespace-rename-009.xml │ ├── namespace-rename-010.xml │ ├── namespace-rename-011.xml │ ├── namespace-rename-012.xml │ ├── namespace-rename-013.xml │ ├── namespace-rename-014.xml │ ├── namespace-rename-015.xml │ ├── namespace-rename-016.xml │ ├── namespace-rename-017.xml │ ├── namespaces-001.xml │ ├── namespaces-002.xml │ ├── namespaces-003.xml │ ├── namespaces-004.xml │ ├── namespaces-005.xml │ ├── namespaces-006.xml │ ├── namespaces-007.xml │ ├── namespaces-008.xml │ ├── namespaces-009.xml │ ├── namespaces-010.xml │ ├── nested-pipeline-001.xml │ ├── option-001.xml │ ├── option-002.xml │ ├── option-004.xml │ ├── output-001.xml │ ├── output-002.xml │ ├── pack-001.xml │ ├── pack-002.xml │ ├── pack-003.xml │ ├── pack-004.xml │ ├── pack-005.xml │ ├── pack-006.xml │ ├── param-001.xml │ ├── param-002.xml │ ├── param-003.xml │ ├── param-004.xml │ ├── param-005.xml │ ├── parameters-001.xml │ ├── parameters-002.xml │ ├── parameters-003.xml │ ├── pipe-001.xml │ ├── pipeinfo-001.xml │ ├── pipeline-imported.xpl │ ├── pipeline-no-type.xpl │ ├── preserve-base-uri-001.xml │ ├── preserve-base-uri-002.xml │ ├── rename-001.xml │ ├── rename-002.xml │ ├── rename-003.xml │ ├── rename-004.xml │ ├── rename-005.xml │ ├── rename-006.xml │ ├── rename-007.xml │ ├── replace-001.xml │ ├── resolve-uri-001.xml │ ├── resolve-uri-002.xml │ ├── set-attributes-001.xml │ ├── set-attributes-002.xml │ ├── sink-001.xml │ ├── sink-002.xml │ ├── sink-003.xml │ ├── split-sequence-001.xml │ ├── split-sequence-002.xml │ ├── split-sequence-003.xml │ ├── split-sequence-004.xml │ ├── split-sequence-005.xml │ ├── split-sequence-006.xml │ ├── split-sequence-007.xml │ ├── step-available-001.xml │ ├── step-available-002.xml │ ├── step-available-003.xml │ ├── step-available-004.xml │ ├── step-available-005.xml │ ├── step-available-006.xml │ ├── store-001.xml │ ├── string-replace-001.xml │ ├── string-replace-002.xml │ ├── string-replace-003.xml │ ├── string-replace-004.xml │ ├── string-replace-005.xml │ ├── system-property-001.xml │ ├── system-property-002.xml │ ├── test-suite.xml │ ├── try-001.xml │ ├── try-001.xpl │ ├── try-002.xml │ ├── try-003.xml │ ├── try-004.xml │ ├── try-005.xml │ ├── try-006.xml │ ├── unescapemarkup-001.xml │ ├── unescapemarkup-002.xml │ ├── unescapemarkup-003.xml │ ├── unescapemarkup-004.xml │ ├── unescapemarkup-005.xml │ ├── unescapemarkup-006.xml │ ├── unescapemarkup-007.xml │ ├── unwrap-001.xml │ ├── unwrap-002.xml │ ├── use-when-001.xml │ ├── use-when-002.xml │ ├── use-when-003.xml │ ├── use-when-004.xml │ ├── value-available-001.xml │ ├── value-available-002.xml │ ├── value-available-003.xml │ ├── value-available-004.xml │ ├── value-available-005.xml │ ├── value-available-006.xml │ ├── variable-001.xml │ ├── variable-002.xml │ ├── variable-003.xml │ ├── variable-004.xml │ ├── variable-005.xml │ ├── variable-006.xml │ ├── variable-007.xml │ ├── variable-008.xml │ ├── version-available-001.xml │ ├── version-available-002.xml │ ├── versioning-001.xml │ ├── versioning-002.xml │ ├── versioning-003.xml │ ├── versioning-004.xml │ ├── versioning-005.xml │ ├── versioning-006.xml │ ├── versioning-007.xml │ ├── viewport-001.xml │ ├── viewport-002.xml │ ├── viewport-003.xml │ ├── viewport-004.xml │ ├── viewport-005.xml │ ├── viewport-006.xml │ ├── viewport-007.xml │ ├── viewport-008.xml │ ├── viewport-009.xml │ ├── viewport-010.xml │ ├── viewport-011.xml │ ├── wrap-001.xml │ ├── wrap-002.xml │ ├── wrap-003.xml │ ├── wrap-004.xml │ ├── wrap-005.xml │ ├── wrap-006.xml │ ├── wrap-007.xml │ ├── wrap-008.xml │ ├── wrap-009.xml │ ├── wrap-010.xml │ ├── wrap-011.xml │ ├── wrap-sequence-001.xml │ ├── wrap-sequence-002.xml │ ├── wrap-sequence-003.xml │ ├── wrap-sequence-004.xml │ ├── wrap-sequence-005.xml │ ├── xinclude-001.xml │ ├── xinclude-002.xml │ ├── xinclude-003.xml │ ├── xinclude-004.xml │ ├── xinclude-005.xml │ ├── xml-id-001.xml │ ├── xml-id-002.xml │ ├── xpath-version-available-001.xml │ ├── xpath-version-available-002.xml │ ├── xslt-001.xml │ ├── xslt-002.xml │ ├── xslt-003.xml │ ├── xslt-004.xml │ ├── xslt-005.xml │ └── xslt-006.xml │ ├── serialization │ ├── byte-order-mark-001.xml │ ├── byte-order-mark-002.xml │ ├── cdata-section-elements-001.xml │ ├── cdata-section-elements-002.xml │ ├── doctype-public-001.xml │ ├── doctype-system-001.xml │ ├── encoding-001.xml │ ├── err-d0020-001.xml │ ├── escape-uri-001.xml │ ├── escape-uri-002.xml │ ├── include-content-type-001.xml │ ├── include-content-type-002.xml │ ├── indent-001.xml │ ├── indent-002.xml │ ├── media-type-001.xml │ ├── normalization-form-001.xml │ ├── normalization-form-002.xml │ ├── normalization-form-003.xml │ ├── omit-xml-declaration-001.xml │ ├── omit-xml-declaration-002.xml │ ├── results │ │ ├── .htaccess │ │ ├── byte-order-mark-001.xml │ │ ├── byte-order-mark-002.xml │ │ ├── cdata-section-elements-001.xml │ │ ├── cdata-section-elements-002.xml │ │ ├── doctype-public-001.xml │ │ ├── doctype-system-001.xml │ │ ├── encoding-001.xml │ │ ├── escape-uri-attributes-001.html │ │ ├── escape-uri-attributes-002.html │ │ ├── include-content-type-001.html │ │ ├── include-content-type-002.html │ │ ├── indent-001.xml │ │ ├── indent-002.xml │ │ ├── media-type-001.xml │ │ ├── normalization-form-001.xml │ │ ├── normalization-form-002.xml │ │ ├── normalization-form-003.xml │ │ ├── omit-xml-declaration-001.xml │ │ ├── omit-xml-declaration-002.xml │ │ ├── standalone-001.xml │ │ ├── standalone-002.xml │ │ ├── standalone-003.xml │ │ ├── undeclare-prefixes-001.xml │ │ └── version-001.xml │ ├── standalone-001.xml │ ├── standalone-002.xml │ ├── standalone-003.xml │ ├── test-suite.xml │ ├── undeclare-prefixes-001.xml │ └── version-001.xml │ └── xmlcalabash │ ├── adhoc-query-001.xml │ ├── collection-manager-001.xml │ ├── collection.xsl │ ├── compare-001.xml │ ├── compress-001.xml │ ├── copy-001.xml │ ├── css-formatter-001.xml │ ├── data │ ├── book.xml │ ├── chapter.xml │ ├── nwalsh.com.html │ └── nwn.rdf │ ├── delete-001.xml │ ├── delta-xml-001.xml │ ├── eval-001.xml │ ├── exf-cwd-001.xml │ ├── get-cookies-001.xml │ ├── head-001.xml │ ├── info-001.xml │ ├── insert-document-001.xml │ ├── invoke-module-001.xml │ ├── java-properties-001.xml │ ├── java.properties │ ├── message-001.xml │ ├── metadata-extractor-001.xml │ ├── namespace-delete-001.xml │ ├── pipe.xpl │ ├── pipe2.xpl │ ├── pretty-print-001.xml │ ├── pxp-set-base-uri-001.xml │ ├── rdf-load-001.xml │ ├── rdfa-001.xml │ ├── sample-tests.zip │ ├── set-cookies-001.xml │ ├── sparql-001.xml │ ├── test-suite.xml │ ├── unzip-001.xml │ ├── unzip-002.xml │ ├── uri-info-001.xml │ └── xinclude-001.xml └── xpl ├── git-log-summary.xpl ├── pipe.xpl └── submit-test-report.xpl /.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore these files. Note to self: Files in .git/info/exclude are also ignored. 2 | # 3 | /.gradle/ 4 | /build/ 5 | /target/ 6 | /src/main/resources/etc/version.properties 7 | /test/errors.txt 8 | /test/report.xml 9 | -------------------------------------------------------------------------------- /docs/README: -------------------------------------------------------------------------------- 1 | The documentation is now in its own branch: docs 2 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | version=1.1.19 2 | snapshot= 3 | docsVersion=1.1.13 4 | builtBy=Norman Walsh 5 | 6 | saxonVersion=9.6.0-4 7 | 8 | docsBaseURI=https://ndw.github.io/xmlcalabash1-docs/download/ 9 | 10 | testsRoot=http://tests.xproc.org 11 | testsReport=test/report.xml 12 | testsErrors=test/errors.txt 13 | testsFormat=test/report.html 14 | testsADoc=test/report.adoc 15 | testsFailADoc=test/report-fail.adoc 16 | 17 | sonatypeUsername= 18 | sonatypePassword= 19 | 20 | -------------------------------------------------------------------------------- /lib/README: -------------------------------------------------------------------------------- 1 | Some of these jars are copied into the installer. Ideally, I suppose 2 | I'd copy them all (plus others, perhaps), but I haven't worked out the 3 | licensing issues. 4 | 5 | The jars in here that aren't copied are used for the ant build 6 | process. Make sure they're up-to-date with respect to the 7 | distributions that you have on your CLASSPATH or you may get runtime 8 | exceptions. 9 | -------------------------------------------------------------------------------- /resources/README: -------------------------------------------------------------------------------- 1 | README 2 | 3 | What is XML Calabash? 4 | 5 | XML Calabash is an implementation of XProc: An XML Pipeline Language, 6 | http://www.w3.org/TR/xproc/ 7 | 8 | For more details, see docs/reference/index.html 9 | 10 | Online documentation is available at http://xmlcalabash.com/docs/ 11 | 12 | See also legal notices in docs/notices 13 | -------------------------------------------------------------------------------- /resources/loaders/xpc1.xpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /resources/loaders/xpc2.xpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /resources/loaders/xpl.xpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /resources/notices/APACHE-ANT.txt: -------------------------------------------------------------------------------- 1 | This notice is included in the distribution of XML Calabash because 2 | the XML Calabash distribution includes a copy of ant.jar. 3 | Source code, documentation, and further resources are available from 4 | http://ant.apache.org/ 5 | 6 | Apache Ant 7 | Copyright 1999-2012 The Apache Software Foundation 8 | 9 | The task is based on code Copyright (c) 2002, Landmark 10 | Graphics Corp that has been kindly donated to the Apache Software 11 | Foundation. 12 | -------------------------------------------------------------------------------- /resources/notices/CDDL+GPL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ndw/xmlcalabash1/1042cf66f3a4d2f1ca78ec090e045f3f60137179/resources/notices/CDDL+GPL.txt -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/config/CssProcessor.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.config; 2 | 3 | import com.xmlcalabash.core.XProcRuntime; 4 | import com.xmlcalabash.runtime.XStep; 5 | import net.sf.saxon.s9api.XdmNode; 6 | 7 | import java.io.OutputStream; 8 | import java.util.Properties; 9 | 10 | /** 11 | * Created by IntelliJ IDEA. 12 | * User: ndw 13 | * Date: 9/1/11 14 | * Time: 6:39 AM 15 | * To change this template use File | Settings | File Templates. 16 | */ 17 | public interface CssProcessor { 18 | public void initialize(XProcRuntime runtime, XStep step, Properties options); 19 | public void addStylesheet(XdmNode doc); 20 | public void addStylesheet(String uri); 21 | public void format(XdmNode doc, OutputStream out, String contentType); 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/config/FoProcessor.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.config; 2 | 3 | import com.xmlcalabash.core.XProcRuntime; 4 | import com.xmlcalabash.runtime.XStep; 5 | import java.io.OutputStream; 6 | import java.util.Properties; 7 | 8 | import net.sf.saxon.s9api.XdmNode; 9 | 10 | /** 11 | * Created by IntelliJ IDEA. 12 | * User: ndw 13 | * Date: 9/1/11 14 | * Time: 6:39 AM 15 | * To change this template use File | Settings | File Templates. 16 | */ 17 | public interface FoProcessor { 18 | public void initialize(XProcRuntime runtime, XStep step, Properties options); 19 | public void format(XdmNode doc, OutputStream out, String contentType); 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/config/JaxpConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.config; 2 | 3 | import javax.xml.validation.SchemaFactory; 4 | 5 | /** 6 | * Created by IntelliJ IDEA. 7 | * User: ndw 8 | * Date: 9/1/11 9 | * Time: 8:41 AM 10 | * To change this template use File | Settings | File Templates. 11 | */ 12 | public interface JaxpConfigurer { 13 | public void configSchemaFactory(SchemaFactory factory); 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/config/JingConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.config; 2 | 3 | import com.thaiopensource.util.PropertyMapBuilder; 4 | 5 | /** 6 | * Created by IntelliJ IDEA. 7 | * User: ndw 8 | * Date: 9/1/11 9 | * Time: 8:42 AM 10 | * To change this template use File | Settings | File Templates. 11 | */ 12 | public interface JingConfigurer { 13 | public void configRNC(PropertyMapBuilder properties); 14 | public void configRNG(PropertyMapBuilder properties); 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/config/SaxonConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.config; 2 | 3 | import net.sf.saxon.Configuration; 4 | import net.sf.saxon.Controller; 5 | 6 | /** 7 | * Created by IntelliJ IDEA. 8 | * User: ndw 9 | * Date: 9/1/11 10 | * Time: 8:43 AM 11 | * To change this template use File | Settings | File Templates. 12 | */ 13 | public interface SaxonConfigurer { 14 | public void configSchematron(Configuration config); 15 | public void configXSD(Configuration config); 16 | public void configXQuery(Configuration config); 17 | public void configXSLT(Configuration config); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/config/XMLCalabashConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.config; 2 | 3 | import com.xmlcalabash.core.XProcRuntime; 4 | import com.xmlcalabash.io.ReadablePipe; 5 | import com.xmlcalabash.library.Load; 6 | import com.xmlcalabash.model.DataBinding; 7 | import com.xmlcalabash.model.DocumentBinding; 8 | import net.sf.saxon.s9api.XdmNode; 9 | 10 | /** 11 | * Created by IntelliJ IDEA. 12 | * User: ndw 13 | * Date: 9/1/11 14 | * Time: 8:36 AM 15 | * To change this template use File | Settings | File Templates. 16 | */ 17 | public interface XMLCalabashConfigurer { 18 | public void configRuntime(XProcRuntime runtime); 19 | public XdmNode loadDocument(Load load); 20 | public ReadablePipe makeReadableData(XProcRuntime runtime, DataBinding binding); 21 | public ReadablePipe makeReadableDocument(XProcRuntime runtime, DocumentBinding binding); 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/config/XProcConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.config; 2 | 3 | /** 4 | * Created by IntelliJ IDEA. 5 | * User: ndw 6 | * Date: 9/1/11 7 | * Time: 8:45 AM 8 | * To change this template use File | Settings | File Templates. 9 | */ 10 | public interface XProcConfigurer { 11 | public XMLCalabashConfigurer getXMLCalabashConfigurer(); 12 | public SaxonConfigurer getSaxonConfigurer(); 13 | public JingConfigurer getJingConfigurer(); 14 | public JaxpConfigurer getJaxpConfigurer(); 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/core/XMLCalabash.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.core; 2 | 3 | import org.atteo.classindex.IndexAnnotated; 4 | 5 | import java.lang.annotation.ElementType; 6 | import java.lang.annotation.Retention; 7 | import java.lang.annotation.RetentionPolicy; 8 | import java.lang.annotation.Target; 9 | 10 | /** 11 | * Created by ndw on 2/15/15. 12 | */ 13 | 14 | @Retention(RetentionPolicy.RUNTIME) 15 | @IndexAnnotated 16 | public @interface XMLCalabash { 17 | String name() default "unnamed"; 18 | String type(); 19 | } 20 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/core/XProcRunnable.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.core; 2 | 3 | import net.sf.saxon.s9api.SaxonApiException; 4 | 5 | /** 6 | * Created by IntelliJ IDEA. 7 | * User: ndw 8 | * Date: Dec 19, 2009 9 | * Time: 2:56:33 PM 10 | * To change this template use File | Settings | File Templates. 11 | */ 12 | public interface XProcRunnable { 13 | public void reset(); 14 | public void run() throws SaxonApiException; 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/functions/XProcExtensionFunctionDefinition.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.functions; 2 | 3 | import com.xmlcalabash.core.XProcRuntime; 4 | import com.xmlcalabash.util.RuntimeRegistry; 5 | import net.sf.saxon.lib.ExtensionFunctionCall; 6 | import net.sf.saxon.lib.ExtensionFunctionDefinition; 7 | import net.sf.saxon.om.StructuredQName; 8 | import net.sf.saxon.value.SequenceType; 9 | 10 | /** 11 | * Created with IntelliJ IDEA. 12 | * User: ndw 13 | * Date: 1/27/13 14 | * Time: 9:36 AM 15 | * To change this template use File | Settings | File Templates. 16 | */ 17 | public abstract class XProcExtensionFunctionDefinition extends ExtensionFunctionDefinition { 18 | protected RuntimeRegistry registry = RuntimeRegistry.getInstance(); 19 | 20 | public void close() { 21 | registry.unregisterRuntime(this); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/piperack/PipelineSource.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.piperack; 2 | 3 | /** 4 | * Ths file is part of XMLCalabash. 5 | * Created by ndw on 10/25/13. 6 | */ 7 | public class PipelineSource { 8 | public String uri = null; 9 | public String name = null; 10 | public int expires = -1; 11 | 12 | public PipelineSource(String uri, String name, int expires) { 13 | this.uri = uri; 14 | this.name = name; 15 | this.expires = expires; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/piperack/Stop.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.piperack; 2 | 3 | import com.xmlcalabash.core.XProcException; 4 | import org.restlet.representation.Representation; 5 | import org.restlet.representation.Variant; 6 | 7 | /** 8 | * Ths file is part of XMLCalabash. 9 | * Created by ndw on 10/25/13. 10 | */ 11 | public class Stop extends BaseResource { 12 | @Override 13 | protected Representation post(Representation entity, Variant variant) { 14 | try { 15 | ((PiperackApplication) getApplication()).stop(); 16 | } catch (Exception e) { 17 | throw new XProcException(e); 18 | } 19 | 20 | return okResponse("Stopping", variant.getMediaType()); 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/runtime/XGroup.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.runtime; 2 | 3 | import com.xmlcalabash.core.XProcRuntime; 4 | import com.xmlcalabash.model.Step; 5 | 6 | /** 7 | * Created by IntelliJ IDEA. 8 | * User: ndw 9 | * Date: Oct 13, 2008 10 | * Time: 7:23:25 PM 11 | * To change this template use File | Settings | File Templates. 12 | */ 13 | public class XGroup extends XCompoundStep { 14 | public XGroup(XProcRuntime runtime, Step step, XCompoundStep parent) { 15 | super(runtime, step, parent); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/runtime/XOtherwise.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.runtime; 2 | 3 | import com.xmlcalabash.core.XProcRuntime; 4 | import com.xmlcalabash.model.Step; 5 | 6 | /** 7 | * Created by IntelliJ IDEA. 8 | * User: ndw 9 | * Date: Oct 13, 2008 10 | * Time: 4:58:10 PM 11 | * To change this template use File | Settings | File Templates. 12 | */ 13 | public class XOtherwise extends XCompoundStep { 14 | public XOtherwise(XProcRuntime runtime, Step step, XCompoundStep parent) { 15 | super(runtime, step, parent); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/Closer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import java.io.Closeable; 4 | import java.io.IOException; 5 | 6 | /** 7 | * Utility methods for closing objects that implement the Closeable interface. 8 | */ 9 | public final class Closer { 10 | 11 | // prevent utility class from being created 12 | private Closer() { 13 | } 14 | 15 | /* 16 | * Closes the given Closeable, protecting against nulls. 17 | */ 18 | public static void close(Closeable c) throws IOException { 19 | if (c != null) { 20 | c.close(); 21 | } 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/DefaultJaxpConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import com.xmlcalabash.config.JaxpConfigurer; 4 | 5 | import javax.xml.validation.SchemaFactory; 6 | 7 | /** 8 | * Created by IntelliJ IDEA. 9 | * User: ndw 10 | * Date: 9/1/11 11 | * Time: 9:09 AM 12 | * To change this template use File | Settings | File Templates. 13 | */ 14 | public class DefaultJaxpConfigurer implements JaxpConfigurer { 15 | public void configSchemaFactory(SchemaFactory factory) { 16 | // do nothing 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/DefaultJingConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import com.thaiopensource.util.PropertyMapBuilder; 4 | import com.xmlcalabash.config.JingConfigurer; 5 | 6 | /** 7 | * Created by IntelliJ IDEA. 8 | * User: ndw 9 | * Date: 9/1/11 10 | * Time: 9:10 AM 11 | * To change this template use File | Settings | File Templates. 12 | */ 13 | public class DefaultJingConfigurer implements JingConfigurer { 14 | public void configRNC(PropertyMapBuilder properties) { 15 | // Do nothing 16 | } 17 | 18 | public void configRNG(PropertyMapBuilder properties) { 19 | // Do nothing 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/DefaultSaxonConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import com.xmlcalabash.config.SaxonConfigurer; 4 | import net.sf.saxon.Configuration; 5 | 6 | /** 7 | * Created by IntelliJ IDEA. 8 | * User: ndw 9 | * Date: 9/1/11 10 | * Time: 9:11 AM 11 | * To change this template use File | Settings | File Templates. 12 | */ 13 | public class DefaultSaxonConfigurer implements SaxonConfigurer { 14 | public void configSchematron(Configuration config) { 15 | // Do nothing 16 | } 17 | 18 | public void configXSD(Configuration config) { 19 | // Do nothing 20 | } 21 | 22 | public void configXQuery(Configuration config) { 23 | // Do nothing 24 | } 25 | 26 | public void configXSLT(Configuration config) { 27 | // Do nothing 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/LogOptions.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | /** 4 | * Created by IntelliJ IDEA. 5 | * User: ndw 6 | * Date: Feb 6, 2009 7 | * Time: 8:36:59 AM 8 | * To change this template use File | Settings | File Templates. 9 | */ 10 | public enum LogOptions { 11 | OFF, PLAIN, WRAPPED, DIRECTORY; 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/StderrResource.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import java.io.OutputStream; 4 | 5 | import org.apache.tools.ant.types.Resource; 6 | 7 | public class StderrResource extends Resource { 8 | public StderrResource() { 9 | super("", true, 0, false); 10 | } 11 | 12 | @Override 13 | public OutputStream getOutputStream() { 14 | return System.err; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/StdinResource.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import java.io.IOException; 4 | import java.io.InputStream; 5 | import java.io.OutputStream; 6 | 7 | import org.apache.tools.ant.types.Resource; 8 | import org.apache.tools.ant.types.resources.ImmutableResourceException; 9 | 10 | public class StdinResource extends Resource { 11 | public StdinResource() { 12 | super("", true, 0, false); 13 | } 14 | 15 | @Override 16 | public InputStream getInputStream() { 17 | return System.in; 18 | } 19 | 20 | @Override 21 | public OutputStream getOutputStream() throws IOException { 22 | throw new ImmutableResourceException(); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/StdinoutResource.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import java.io.InputStream; 4 | import java.io.OutputStream; 5 | 6 | import org.apache.tools.ant.types.Resource; 7 | 8 | public class StdinoutResource extends Resource { 9 | public StdinoutResource() { 10 | super("", true, 0, false); 11 | } 12 | 13 | @Override 14 | public InputStream getInputStream() { 15 | return System.in; 16 | } 17 | 18 | @Override 19 | public OutputStream getOutputStream() { 20 | return System.out; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/com/xmlcalabash/util/StdoutResource.java: -------------------------------------------------------------------------------- 1 | package com.xmlcalabash.util; 2 | 3 | import java.io.OutputStream; 4 | 5 | import org.apache.tools.ant.types.Resource; 6 | 7 | public class StdoutResource extends Resource { 8 | public StdoutResource() { 9 | super("", true, 0, false); 10 | } 11 | 12 | @Override 13 | public OutputStream getOutputStream() { 14 | return System.out; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/json/JSONException.java: -------------------------------------------------------------------------------- 1 | package org.json; 2 | 3 | /** 4 | * The JSONException is thrown by the JSON.org classes when things are amiss. 5 | * @author JSON.org 6 | * @version 2008-09-18 7 | */ 8 | public class JSONException extends Exception { 9 | /** 10 | * 11 | */ 12 | private static final long serialVersionUID = 0; 13 | private Throwable cause; 14 | 15 | /** 16 | * Constructs a JSONException with an explanatory message. 17 | * @param message Detail about the reason for the exception. 18 | */ 19 | public JSONException(String message) { 20 | super(message); 21 | } 22 | 23 | public JSONException(Throwable t) { 24 | super(t.getMessage()); 25 | this.cause = t; 26 | } 27 | 28 | public Throwable getCause() { 29 | return this.cause; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/main/java/org/json/JSONString.java: -------------------------------------------------------------------------------- 1 | package org.json; 2 | /** 3 | * The JSONString interface allows a toJSONString() 4 | * method so that a class can change the behavior of 5 | * JSONObject.toString(), JSONArray.toString(), 6 | * and JSONWriter.value(Object). The 7 | * toJSONString method will be used instead of the default behavior 8 | * of using the Object's toString() method and quoting the result. 9 | */ 10 | public interface JSONString { 11 | /** 12 | * The toJSONString method allows a class to produce its own JSON 13 | * serialization. 14 | * 15 | * @return A strictly syntactically correct JSON text. 16 | */ 17 | public String toJSONString(); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/resources/com/xmlcalabash/antlib.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/main/resources/etc/configuration.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | -------------------------------------------------------------------------------- /src/main/resources/etc/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /test/testsuite/doc/address-invalid-sample.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Jon 5 | Tester 6 | 5555555555 7 | -------------------------------------------------------------------------------- /test/testsuite/doc/address-nonexistent-dtd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | Jon 5 | Tester 6 | 5555555555 7 |
-------------------------------------------------------------------------------- /test/testsuite/doc/address-valid-sample.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | Jon 5 | Tester 6 | 5555555555 7 |
-------------------------------------------------------------------------------- /test/testsuite/doc/address.dtd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/testsuite/doc/chaps/div.xml: -------------------------------------------------------------------------------- 1 |
2 |

This is a link test.

3 |
4 | -------------------------------------------------------------------------------- /test/testsuite/doc/chaps/div2.xml: -------------------------------------------------------------------------------- 1 |
2 |

This is a uri test.

3 |
4 | -------------------------------------------------------------------------------- /test/testsuite/doc/compoundDoc.xml: -------------------------------------------------------------------------------- 1 | 2 |

This document contains a couple of divs that are XIncluded and a few 3 | elements with xs:anyURI content.

4 | 6 | 8 | 10 |
11 | -------------------------------------------------------------------------------- /test/testsuite/doc/compoundEntity.xml: -------------------------------------------------------------------------------- 1 | 3 | ]> 4 | &p; 5 | 6 | -------------------------------------------------------------------------------- /test/testsuite/doc/directory-list-test/adir/cfile: -------------------------------------------------------------------------------- 1 | test -------------------------------------------------------------------------------- /test/testsuite/doc/directory-list-test/afile: -------------------------------------------------------------------------------- 1 | test -------------------------------------------------------------------------------- /test/testsuite/doc/directory-list-test/bfile: -------------------------------------------------------------------------------- 1 | test -------------------------------------------------------------------------------- /test/testsuite/doc/divs/div.xml: -------------------------------------------------------------------------------- 1 |
2 |

This is an image test.

3 |
4 | -------------------------------------------------------------------------------- /test/testsuite/doc/divs/p.xml: -------------------------------------------------------------------------------- 1 |

This is a test document

2 | -------------------------------------------------------------------------------- /test/testsuite/doc/document-attr.xsd: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/testsuite/doc/document-ns.xml: -------------------------------------------------------------------------------- 1 | 3 |

This is a test document

4 |
5 | -------------------------------------------------------------------------------- /test/testsuite/doc/document.rnc: -------------------------------------------------------------------------------- 1 | start = doc 2 | 3 | doc = element doc { title?, (\div|p)* } 4 | 5 | title = element title { text } 6 | 7 | \div = element div { (\div|p)* } 8 | 9 | p = element p { (text|a)* } 10 | 11 | a = element a { attribute href { text }?, text } 12 | 13 | -------------------------------------------------------------------------------- /test/testsuite/doc/document.xml: -------------------------------------------------------------------------------- 1 | 2 |

This is a test document

3 |
4 | -------------------------------------------------------------------------------- /test/testsuite/doc/document2.xml: -------------------------------------------------------------------------------- 1 | 3 |

This is a test document

4 |
5 | -------------------------------------------------------------------------------- /test/testsuite/doc/envelope.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | John 4 | Smith 5 | 6 |
7 | 123 Main Street 8 | Anytown 9 | SA 10 | 12345 11 |
12 |
13 |
14 | 15 | Jane 16 | Doe 17 | 18 |
19 | 456 Random Street 20 | Suite 200 21 | Othertown 22 | OA 23 | 67890 24 |
25 |
26 |
27 |
28 | -------------------------------------------------------------------------------- /test/testsuite/doc/html-utf8.data: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Page Title 5 | 6 | 7 |

Page content.

8 | 9 | 10 | -------------------------------------------------------------------------------- /test/testsuite/doc/input-cs.xml: -------------------------------------------------------------------------------- 1 | 2 | A Document 3 | Tento odstavec je česky. 4 | 5 | -------------------------------------------------------------------------------- /test/testsuite/doc/input-en-cs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/testsuite/doc/input-en.xml: -------------------------------------------------------------------------------- 1 | 2 | A Document 3 | This paragraph is in English. 4 | 5 | -------------------------------------------------------------------------------- /test/testsuite/doc/input-xinclude-loop-source.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /test/testsuite/doc/input-xinclude-loop-target.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /test/testsuite/doc/input-xinclude-recursive-1.xml: -------------------------------------------------------------------------------- 1 | 2 | some para 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/testsuite/doc/input-xinclude.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 |

Fallback: XInclude failed.

6 |
7 |
8 |
9 | -------------------------------------------------------------------------------- /test/testsuite/doc/input.xml: -------------------------------------------------------------------------------- 1 | 2 | input.xml 3 |

This is input.xml.

4 |
5 | -------------------------------------------------------------------------------- /test/testsuite/doc/invalid.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | ]> 5 | 6 | -------------------------------------------------------------------------------- /test/testsuite/doc/nfc-input.xml: -------------------------------------------------------------------------------- 1 | Priscilla Walmsley showed me an NF test with “leçon”. 2 | -------------------------------------------------------------------------------- /test/testsuite/doc/nfkc-input.xml: -------------------------------------------------------------------------------- 1 | Priscilla Walmsley showed me an NF test with “£” and “൅”. 2 | -------------------------------------------------------------------------------- /test/testsuite/doc/nfkd-input.xml: -------------------------------------------------------------------------------- 1 | Priscilla Walmsley showed me an NF test with “leçon”. 2 | -------------------------------------------------------------------------------- /test/testsuite/doc/non-well-formed.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /test/testsuite/doc/pqhref.rnc: -------------------------------------------------------------------------------- 1 | start = doc 2 | 3 | doc = element doc { title?, (p|q)* } 4 | 5 | title = element title { text } 6 | 7 | p = element p { 8 | attribute href { xsd:anyURI }?, 9 | text 10 | } 11 | 12 | q = element q { 13 | attribute href { text }?, 14 | text 15 | } 16 | -------------------------------------------------------------------------------- /test/testsuite/doc/pqhref.xsd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /test/testsuite/doc/s-input.dtd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /test/testsuite/doc/s-input.xml: -------------------------------------------------------------------------------- 1 | Document Title 2 |

Some prose.

3 | literally 4 | what should appear in this element.]]> 5 |

The Balisage conference 6 | takes place in Montréal.

7 |
8 | -------------------------------------------------------------------------------- /test/testsuite/doc/s-input2.xml: -------------------------------------------------------------------------------- 1 | Document Title 2 |

Some prose.

3 | literally 4 | what should appear in this element.]]>]]> 5 |

The Balisage conference 6 | takes place in Montréal.

7 |
8 | -------------------------------------------------------------------------------- /test/testsuite/doc/windows-1252.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ndw/xmlcalabash1/1042cf66f3a4d2f1ca78ec090e045f3f60137179/test/testsuite/doc/windows-1252.txt -------------------------------------------------------------------------------- /test/testsuite/doc/xhtml-ct.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Title 4 | 5 | 6 | 7 |

Link to Montréal. 8 |

9 | 10 | 11 | -------------------------------------------------------------------------------- /test/testsuite/doc/xhtml.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Title 4 | 5 | 6 |

Link to Montréal. 7 |

8 | 9 | 10 | -------------------------------------------------------------------------------- /test/testsuite/doc/xidoc.xml: -------------------------------------------------------------------------------- 1 | 2 |
3 |

This is a test document

4 |
5 | 6 |
7 | -------------------------------------------------------------------------------- /test/testsuite/doc/xinclude/input-xinclude-recursive-2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /test/testsuite/doc/xinclude/para.xml: -------------------------------------------------------------------------------- 1 | another para -------------------------------------------------------------------------------- /test/testsuite/doc/xml-base-chap.xml: -------------------------------------------------------------------------------- 1 |
2 |

This has a different base URI: xml-base-chap.xml.

3 | 4 |
5 | -------------------------------------------------------------------------------- /test/testsuite/doc/xml-base-test.xml: -------------------------------------------------------------------------------- 1 | 3 | ]> 4 | 5 |

This has one base URI: xml-base-test.xml

6 | 7 | &subdoc; 8 |

This has the original base URI.

9 |
10 | -------------------------------------------------------------------------------- /test/testsuite/doc/xml11.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Some text in a para. 5 | In an element in no namespace. 6 | 7 | Only in 1.1! 8 | 9 | -------------------------------------------------------------------------------- /test/testsuite/doc/xpath-xinclude-doc.xml: -------------------------------------------------------------------------------- 1 | 2 |

First p

3 |

Second p

4 |

Third p

5 |

Parenthetical (in content, I mean) p

6 |

x^2 + y^2 = z^2

7 | Last p 8 |
9 | -------------------------------------------------------------------------------- /test/testsuite/extension/test-suite.xml: -------------------------------------------------------------------------------- 1 | 2 | Extension tests 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/testsuite/lib/exclude-inline-prefixes.xpl: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /test/testsuite/lib/externalxml.xpl: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /test/testsuite/lib/l1.xpl: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /test/testsuite/lib/l1a.xpl: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /test/testsuite/lib/l2.xpl: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/testsuite/lib/l3.xpl: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/testsuite/lib/l4.xpl: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/testsuite/lib/l5.xpl: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/testsuite/lib/l6.xpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /test/testsuite/lib/pipeline.xpl: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /test/testsuite/lib/pipeline2.xpl: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0033-001.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | Test for err:XC0033 - 001 9 | 10 | 11 |

Tests if dynamic error XC003 is thrown if the command cannot be run.

12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0034-001.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | Test for err:XC0034 - 001 9 | 10 | 11 |

Tests if dynamic error XC0034 is thrown if the current 12 | working directory cannot be changed.

13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0036-001.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0036 - #001 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0036-002.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0036 - #002 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0036-003.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0036 - #003 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0036-004.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0036 - #004 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0036-005.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0036 - #005 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0037-001.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0037 - #001 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0037-002.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0037 - #002 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0037-003.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0037 - #003 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0060-001.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0060 - #001 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /test/testsuite/optional/err-c0061-001.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test err:XC0061 - #001 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /test/testsuite/optional/exec-002.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test exec-002 8 | 9 | 10 | 11 | 12 |

This is a p.

13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 |

This is a p.

30 |
31 |
32 | 33 |
34 | 35 | -------------------------------------------------------------------------------- /test/testsuite/optional/exec-003.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test exec-003 8 | 9 | 10 | some text 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 21 | 22 | 23 | 24 | 25 | 26 | some text 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /test/testsuite/optional/exec-004.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test exec-004 8 | 9 | 10 | <para>some text</para> 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | some text 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /test/testsuite/optional/exec-013.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test exec-013 8 | 9 | 10 | 11 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | one two three 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /test/testsuite/optional/exec-014.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test exec-014 8 | 9 | 10 | 11 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | one two three 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /test/testsuite/optional/exec-016.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test exec-016 8 | 9 | 10 | line1 11 | line2 12 | line3 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | line1 27 | line2 28 | line3 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /test/testsuite/optional/hash-001.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test hash-001 8 | 9 | 10 | 11 |

This is a p.

12 |
13 |
14 | 15 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

This is a p.

27 |
28 |
29 | 30 |
31 | 32 | -------------------------------------------------------------------------------- /test/testsuite/optional/hash-002.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test hash-002 8 | 9 | 10 | 11 |

This is a p.

12 |
13 |
14 | 15 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

This is a p.

27 |
28 |
29 | 30 |
31 | 32 | -------------------------------------------------------------------------------- /test/testsuite/optional/hash-003.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test hash-003 8 | 9 | 10 | 11 |

This is a p.

12 |
13 |
14 | 15 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

This is a p.

27 |
28 |
29 | 30 |
31 | 32 | -------------------------------------------------------------------------------- /test/testsuite/optional/hash-004.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test hash-004 8 | 9 | 10 | 11 |

This is a p.

12 |
13 |
14 | 15 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

This is a p.

27 |
28 |
29 | 30 |
31 | 32 | -------------------------------------------------------------------------------- /test/testsuite/optional/hash-005.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test hash-005 8 | 9 | 10 | 11 |

This is a p.

12 |
13 |
14 | 15 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

This is a p.

27 |
28 |
29 | 30 |
31 | 32 | -------------------------------------------------------------------------------- /test/testsuite/optional/hash-006.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Test hash-006 8 | 9 | 10 | 11 |

This is a p.

12 |
13 |
14 | 15 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

This is a p.

27 |
28 |
29 | 30 |
31 | 32 | -------------------------------------------------------------------------------- /test/testsuite/optional/template-004.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Test p:template-004 9 | 10 | 11 | 12 |

A para.

13 |
14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 |