- [X] assert error
- [X] multiple ID error in cli validator
Maybe an optional output?
- [X] Implement dispatch handler
- [X] Create assert handler
- [X] Simple tests on validator [6/6]
- [X] GET a/b
- [X] Empty machine
- [X] GET on regex
- [X] GET on an allow all regex
- [X] Method regex
- [X] Complex URI tests
- [X] Unit test steps [6/6]
- [X] Start
- [X] Accept
- [X] MethodFail
- [X] URLFail
- [X] URI
- [X] Method
- [X] Clean up console handler…should be more readable
- [X] Add Fail Matchers[5/5]
- [X] Add URL Fail Matcher
- [X] Add Method Fail Matchers
- [X] Test URL Fail Matcher
- [X] Test Method Fail Matcher
- [X] Update validation tests to use both matchers
- [X] Capture attempt in error steps
- [X] Quickly extract correct error in multi-result case
- [X] Assert that validator tests above return the correct error
- [X] Build support for method/uri fail match in schema
- [X] Populate method/uri fail match in checker conversion
- [X] Update dot conversion to accunt for method/uri fail match
- [X] Checker to scala as a handler – possibly passing to an other handler
- [X] Add support in validator
- [X] Test conversion..including new error states.
- [X] Checker should allow only one start node.
- [X] Method must always have next nodes.
- [X] Add grammar section (type, namespace, href)
- [X] Add Builder Library
- [X] Support Grammar in checker format[2/2]
- [X] Add support for grammar in checker format
- [X] Generate checker format with grammars
- [X] Simple transation tests to confirm the lib is working [6/6]
- [X] Test URI and Method from various WADL configurations[13/13]
- [X] Emtpty WADL
- [X] URL/Method single resource
- [X] URL/Method single resource (tree)
- [X] URL/Method single resource (mixed)
- [X] Method Reference
- [X] Resource Type
- [X] Resource Type with Method Reference
- [X] Multiple Resource PATHs
- [X] Multiple Resource PATHs (tree)
- [X] Multiple Resource PATHs (mixed)
- [X] Mulitple Resource PATHs (disconnected)
- [X] Multiple Resource PATHs (disconnected, tree)
- [X] Multiple Resource PATHs (disconnected, mixed)
- [X] Other misc Translation tests [2/2]
- [X] State Labels
- [X] rax:invisible extension
- [X] Ensure that input WADLs are correct before tests are run.
- [X] Test Path Templates[4/4]
- [X] String templates[7/7]
- [X] At the end of the path
- [X] At the end of the path (tree)
- [X] At the end of the path (mixed)
- [X] In between path
- [X] In between path (tree)
- [X] In between path (mixed)
- [X] Different prefix
- [X] Test Path Templates of other types[9/9]
- [X] At the end of the path
- [X] At the end of the path (tree)
- [X] At the end of the path (mixed)
- [X] In between path
- [X] In between path (tree)
- [X] In between path (mixed)
- [X] Test default QName type
- [X] Test default QName type (tree)
- [X] Test default QName type (mixed)
- [X] Resource/Parameter mismatch[4/4]
- [X] Name MisMatch
- [X] Missing parameter
- [X] Bad Parameter type
- [X] Bad QName
- [X] RegEx Encoding[2/2]
- [X] In URL
- [X] In Method
- [X] String templates[7/7]
- [X] Write tests for multi-method target
- [X] WADL Grammar[2/2]
- [X] External Grammar[6/6]
- [X] File Available, add to checker
- [X] Multiple available files
- [X] Relative paths
- [X] Missing File should fail
- [X] Should not fail with unknown XML
- [X] Should not fail with unknown unparsed-text
- [X] Inline Grammar
- [X] External Grammar[6/6]
- [X] Test URI and Method from various WADL configurations[13/13]
- [X] Add Opt as an option, by pipeing through removeDups
- [X] Simple optimization test to confirm functionality[9/9]
- [X] OPT on but no duplicates
- [X] OPT on but no duplicates (tree)
- [X] OPT on but no duplicates (mixed)
- [X] A single duplicate
- [X] A single duplicate (tree)
- [X] A single duplicate (mixed)
- [X] Multiple duplicates
- [X] Multiple duplicates (tree)
- [X] Multiple duplicates (mixed)
- [X] URLXSD node
- [X] URLXSD/URL Fail nodes
- [X] step handler – external grammar
- [X] WADL XSD tests
- [X] step handler – inline grammar
- [X] WADL XSD tests – inline
- [X] Default Servlet Result Handler
- [X] Initial Filter Project
- [X] Simple config and handler – simple WADL
- [X] Save DOT
- [X] Add support for WELL_XML, WELL_JSON, CONTET_FAIL in XSD
- [X] Add support in XSLs
- [X] Setup configuration to check for well formness
- [X] Update cli tools with new config
- [X] Write next connected step in less functional style to avoid calls
- [X] XML
- [X] Create document parse pool
- [X] Create WELL_XML state type using parse pool
- [X] Check to make sure that the XML hasn’t already been parsed.
- [X] Create CONTENT_FAIL state
- [X] JSON (Setup Skeleton Only)
- [X] Connect states with handler
- [X] Tests [5/5]
- [X] States
- [X] Validator
- [X] Checker Tests
- [X] Step Builder Tests
- [X] WADL Validation
- [X] Update sample filter / webapp
- [X] Add Parser Pool
- [X] Update JSON stage
- [X] Add JSON Tests
- [X] States
- [X] Checker Tests
- [X] Step Builder Tests
- [X] Validator
- [X] WADL Validation
- [X] Add support for XSD_CHECK in XSD
- [X] Add XSD check in config
- [X] Add support for XSD check in XSLs
- [X] Update CLI tools if nessesary
- [X] Create schema parse pool if nessesary
- [X] Transition other XSD checks to use pool
- [X] Create XSD check state
- [X] Add support for check state in the builder
- [X] Tests[7/7]
- [X] States
- [X] Checker Tests
- [X] Step Builder Tests
- [X] WADL Validator
- [X] Schema pool test
- [X] Test on parameter check / include test for WELL_FORM to
- [X] Test on grammar checks when no grammar is available.
- [X] Update sample filter / webapp
- [X] Add support for XPATH step in XSD
- [X] Add Element Check in config
- [X] Add support for Element check in XSLs
- [X] Update CLI tools
- [X] Add XPath Pool
- [X] Create XPath State
- [X] Add support XPath sate in builder
- [X] New Config XPath version [4/4]
- [X] 1.0 based on Xalan (default)
- [X] 2.0 based on Saxon (non-schema aware – unless you have license)
- [X] Allow setting of version in checker format.
- [X] Take version into account when optimizing states
- [X] Tests[6/6]
- [X] XPath parser pool
- [X] ImmutableNamespaceContext
- [X] States[2/2]
- [X] XPath 1.0
- [X] XPath 2.0
- [X] Checker Tests
- [X] Tests with XSD stages.
- [X] Tests without XSD stages.
- [X] Element test without well formed specified.
- [X] Should check case no element is specified.
- [X] Check with dups vs no-dups
- [X] Step Builder Tests
- [X] WADL Validator
- [X] XPath 1.0
- [X] XPath 2.0
- [X] Update filter / filter app
- [X] Add required plain param in config
- [X] Add support for check in XSLs
- [X] Update CLI tools
- [X] Tests[2/2]
- [X] Checker Tests[12/12]
- [X] Multiple xpaths in a single rep
- [X] Multiple rep with single xpath
- [X] Mix number of xpath and rep
- [X] Required == false
- [X] Without XSD checks
- [X] Without Element checks
- [X] With No Element, but element checks on
- [X] No Well-form checks
- [X] Without XSD and Element checks
- [X] Namespace copy test
- [X] Same element multiple representations
- [X] Dups
- [X] WADL Validator tests
- [X] XPath 1.0
- [X] XPath 2.0
- [X] XPath 2.0 (only 2.0 capa)
- [X] Checker Tests[12/12]
- [X] Update to filter-app
- [X] Add XSD transform option to config
- [X] Add support for XSD transform in XSD
- [X] Add support for XSD transform in XSD step
- [X] Add support for XSD transform in Handler
- [X] Handle config change correctly in XSL
- [X] Handle set and not set in dups options
- [X] Add support for communicationg content upstream [4/4]
- [X] Identity transform pool – just pick a factory (Xalan, XalanC, Saxon)
- [X] XML
- [X] JSON
- [X] Other / None
- [X] Update filter-app return data optionally
- [X] Tests [2/2]
- [X] Ensure that checker sets options correctly
- [X] Make sure content is communicated upstream [3/3]
- [X] Transform fatory identity test.
- [X] New validator step tests [6/6]
- [X] Existing TESTs with transform == true
- [X] Existing TESTs with transform == true (SAXON)
- [X] Confirm options are filled in
- [X] Confirm options are filled in (SAXON)
- [X] Well-Form XML – reparse XML
- [X] Well-Form JSON – reparse JSON
- [X] WADL Validator Tests [2/2]
- [X] Existing XSD tests with transform == true (Xerces / Saxon)
- [X] Validate with transforms and options on XML (Xerces / Saxon), new tests.
- [X] Add support for XSL step in XSD
- [X] Add support for preprocess in config
- [X] Add support for XSL 1.0 engine
- [X] Add support for preprocess in XSLs
- [X] Update CLI tools
- [X] Update WADL tools to handle @href in rax:* extensions
- [X] Add Transform Pool
- [X] Create Transform State
- [X] Add XSLT version (1, 2)?
- [X] Add support for preprocess in builder
- [X] Update filter / filter app
- [X] Tests[4/4]
- [X] Transform pool
- [X] Steps
- [X] XSL 1.0
- [X] XSL 2.0
- [X] Checker Tests [6/6]
- [X] Tests with XSL Stages
- [X] Tests with multiple XSLs in the same representation
- [X] Tests with multiple XSLs in different representations
- [X] Dups vs noDups
- [X] Tests without XSD stanges
- [X] Preprocess without well formed specified, etc
- [X] WADL Validator [2/2]
- [X] XSLT 1.0 (Xalan-C)
- [X] XSLT 2.0 (Saxon)
- [X] Confirm that XSL servies WADL tools translation / fix if not.
- [X] Confirm builder copies emebed xsl
- [X] Modify step handler to compile templates
- [X] Tests [3/3]
- [X] Add builder XSL test
- [X] Add validator tests: embeded namespaces
- [X] Add validator tests: parent namespaces
- [X] Create XPath join XSL
- [X] Add XPath join config option
- [X] Extend XSL stage to read from IOStream is there is no parsed XML
- [X] Add new optional stage to builder
- [X] Update CLI tools
- [X] Update Filter / Filter Test App
- [X] Extend XSL stage to handle error messages
- [X] If any step is XSL2 or XPath2, then use XPath2 for the XSL.
- [X] Test [3/3]
- [X] Enable Optimization in multi-xpath checker tests
- [X] Checker tests with xpath 2
- [X] Ensure that validaTor Xpath tests work with validator
- [X] Added option to config
- [X] Extends XSD
- [X] Add support in XSL [1/1]
- [X] Headers on resource
- [X] Handle config in CLI tools
- [X] Add support in opt XSLs
- [X] Add Header Steps
- [X] Update handler for new steps
- [X] Update filter / filter test app
- [X] Tests[4/4]
- [X] Extend HTTP request mocks to handle headers
- [X] Add step tests
- [X] Handler tests
- [X] WADL validator tests [2/2]
- [X] .* Test
- [X] XSD Test
- [X] Implement headers on request
- [X] Tests [2/2]
- [X] Handler Tests
- [X] Request header only
- [X] Request and Resource headers
- [X] WADL validator tests [3/3]
- [X] .* Test (Request)
- [X] XSD Test (Request)
- [X] Mixed Request / Resource
- [X] Handler Tests
- [X] Support /
- [X] Support type / *
- [X] Igrnore ; params
- [X] Test [3/3]
- [X] Update existing mediaType tests
- [X] Builder [3/3]
- [X] /
- [X] type / *
- [X] ; params, Specified
- [X] Validator [4/4]
- [X] /
- [X] type / *
- [X] ; params, Ignored
- [X] ; params, Specified
- [X] Add Config Option
- [X] Update CLI utils, filter test app
- [X] Handle in builder.xsl
- [X] Handler Tests
- [X] WADL validator tests
- [X] Update TO Scala 2.9.1 (Needed for yammer mettrics)
- [X] Add support for yammer metrics
- [X] Instrument [12/12]
- [X] XML Pool
- [X] JSON Pool
- [X] Transform Pool
- [X] Schema Pool
- [X] xPath Pool
- [X] Validator
- [X] Error Rates
- [X] Allow validators to be named
- [X] Instrument Handler
- [X] JMX Operation to get checker
- [X] Cleanup
- [X] Keep track of last X errors.
- [X] Extend XSD to allow message in XPath
- [X] Extend builder XSL to add message in XPath state
- [X] Extend state to accept message in XPath
- [X] Extend handler to pass message over
- [X] Add rax:message flag
- [X] Add extension to cli
- [X] Make join optimization aware of the extesion.
- [X] TESTS [3/3]
- [X] State
- [X] Builder
- [X] Validator
- [X] Allow passing code to content error state (Defualt 400)
- [X] Extend XSD to allow code in XPath
- [X] Extend builder XSL to add code in XPath state
- [X] Modify XPath State to accept code
- [X] Extend handler to pass code over
- [X] Make join optimization aware of the extension
- [X] TESTS [4/4]
- [X] State
- [X] Builder
- [X] Validator
- [X] Test XPath Join on [3/3]
- [X] XSL 2.0
- [X] Xalan 1.0
- [X] XalanC 1.0
- [X] Add support for JSON_SCHEMA_CHECK in XSD
- [X] Add JSON_SCHEMA_CHECK in configs
- [X] Add support for check in XSLs, include support for rax:ignore-jsonschema
- [X] Update CLI tools
- [X] Create JSON-Schema check state
- [X] Add support for schema check in the builder
- [X] Adjust error reporting?
- [X] Use JSON Node instead of token buffer?
- [X] Tests [4/4]
- [X] States
- [X] Checker Tests
- [X] Tests when no grammar is available
- [X] WADL Validator Tests
- [X] Multiple header checks with the same name [4/4]
- [X] Allow checks in steps via enumeration
- [X] Support for single header with comma sererated list
- [X] Add Header step tests [2/2]
- [X] Saxon
- [X] Xerces
- [X] Add WADL validator tests [2/2]
- [X] Saxon
- [X] Xerces
- [X] Handle fixed headers [6/6]
- [X] Extend XSD to support Header Any[2/2]
- [X] Header Any regex
- [X] Header Any XSD
- [X] Add support in XSL
- [X] Write HeaderAny steps[2/2]
- [X] Header Any regex
- [X] Header Any XSD
- [X] Update handler for new step
- [X] Add Tests [3/3]
- [X] Step Test
- [X] WADL Builder Tests
- [X] WADL validator Tests
- [X] Join fixed headers opt?
- [X] Extend XSD to support Header Any[2/2]
- [X] Add support for rax:code and rax:message in Header checks [6/6]
- [X] Extend XSD to allow passing code, message to Header States
- [X] Extend builder XSL to add code, message
- [X] Make sure join optimizations are aware of the extension
- [X] Modify Header states to accept code, message
- [X] Modify handler to plug in state correctly
- [X] TESTS [3/3]
- [X] State
- [X] Builder
- [X] Validator
- [ ] Handle default headers
- [ ] Preproc and XSL step should be able to change content type
- [ ] Preporc should support XSL parameters
- [ ] JSONx should be supported
- [ ] Should be able to use in not xml types
- [ ] Write test with noJoin on actual error message produced.
- [ ] Better errors when multiple XPath expressions fail – display.
- [ ] Normalize namespaces correctly in XPATHs from WADL – prune only the namespaces that you use.
- [ ] WADL extension to support XPath 2.0 (xpathversion=2.0)
- [ ] Clark notation for error messages.
- [ ] Combine XPath optimization
- [ ] Tests
- [ ] Prove that better error messages are working correctly with test.
- [ ] Tests with dups in XPath (with/without version). Dups should work well at detecting XPath with version number.
- [ ] Test Bad XPaths
- [ ] Combined XPath opt tests
- [ ] Namespace cleanup task should look into XPath expressions
- [ ] Namespace cleanup task should account for default namespaces.
- [ ] Saxon validation
- [ ] WADL Tools
| Type | /images | /image | /images/detail | /images/details | /images/de31d986-a7be-11e1-994a-bba4de7e4604 | /images/de31d986-a7be-11e1-994a-bba4de7e460z |
|---|---|---|---|---|---|---|
| XERCES | 2498.1 | 2171.2 | 1024.7 | 877.1 | 1037.0 | 777.0 |
| SAXON | 2519.3 | 2113.2 | 1898.1 | 1851.4 | 1997.1 | 1634.0 |
After schema pool and non-functional dispatch
| Type | /images | /image | /images/detail | /images/details | /images/de31d986-a7be-11e1-994a-bba4de7e4604 | /images/de31d986-a7be-11e1-994a-bba4de7e460z |
|---|---|---|---|---|---|---|
| XERCES | 2504.1 | 2274.2 | 2424.8 | 1695.0 | 2221.3 | 1667.2 |
| SAXON | 2484.3 | 2227.8 | 2329.8 | 1714.0 | 2209.6 | 1639.2 |