Commit Graph

276 Commits

Author SHA1 Message Date
Benjamin Dauvergne cdfb8887dd debian packaging 2019-10-12 21:20:21 +02:00
Davide Brunato 1556b76238 Close release v1.3.0 2019-10-11 11:19:35 +02:00
Davide Brunato d7a85cd1fd Merge branch 'master' of github.com:sissaschool/elementpath 2019-10-09 19:53:04 +02:00
Davide Brunato 583d1eb14b Fix cast() to accept tuples for XPath constructors 2019-10-09 17:19:46 +02:00
Davide Brunato d11524f50b Add __getstate__() for XPath2Parser pickling
- An XPath2Parser drops schema bind on pickling, the bind has to
    be restored by the schema objects. This is necessary because
    when a schema is bound to a parser token classes are created
    for XSD atomic types constructors.
  - Add bind_parser() to AbstractSchemaProxy
  - Add is_schema_bound() to XPath2Parser
  - Add statimethod create_tokenizer to TDOP Parser
  - Rename Parser.build_tokenizer() to build()
2019-10-09 14:00:07 +02:00
Davide Brunato 9e2e5d45e3 Use boolean_value() for 'and' and 'or' operators 2019-10-07 18:04:04 +02:00
Davide Brunato ad41660f9e Fix typed selection
- Fix XPathToken.select_results() for element selection
  - Fix XPathContext.get_parent() for typed elements
2019-10-07 17:08:47 +02:00
Davide Brunato 9c4b942700 Split and rename test_helpers module
- Unify XPathToken unit tests into class XPathTokenTest
2019-10-07 08:34:21 +02:00
Davide Brunato 526e9baa9f Add schema matching by path 2019-10-05 20:47:32 +02:00
Davide Brunato 04f63f6b4d Add LRU cached resolvers to context class
- Add get_parent() and get_path() to XPathContext
2019-10-04 20:44:39 +02:00
Davide Brunato de6955b36c Update test requirements
- Now uses xmlschema~=1.0.14
  - Update fn:in-scope-prefixes()
  - Remove module xpath_helpers.py
2019-10-04 10:00:39 +02:00
Davide Brunato 22d9f4258d Add select_results() to XPathToken 2019-09-30 17:17:05 +02:00
Davide Brunato 4aeee2bb34 Fix data_value() in XPathToken 2019-09-30 15:54:12 +02:00
Davide Brunato 72a99dc39f Adapt XPathContext to typed iterations
renamed:    tests/test_context.py -> tests/test_xpath_context.py
2019-09-30 11:17:04 +02:00
Davide Brunato 3cd4c95272 Add typed nodes for XSD decoded values processing
- Added TypedAttribute and TypedElement nametuples
2019-09-28 09:15:17 +02:00
Davide Brunato c367bdfd95 Improve node sequence operators
- Add is_root class attribute to XPathToken
  - '(name)' token yield AttributeNode objects for non-root tokens
2019-09-27 18:31:02 +02:00
Davide Brunato 93c6521a23 Add iter_results() method to XPathContext 2019-09-27 18:15:41 +02:00
Davide Brunato 03d31a0598 Add duplicate() class method to TDOP Parser 2019-09-27 18:14:05 +02:00
Davide Brunato 020fb9f071 Update XPathToken API docs 2019-09-27 18:12:57 +02:00
Davide Brunato 77afa93a15 Add validate() to XSD type interface 2019-09-26 16:24:29 +02:00
Davide Brunato 8cc023d077 Add iter_preceding() to XPathContext 2019-09-24 16:17:51 +02:00
Davide Brunato 307d638f96 Fix count() function and '//', '/' binding power 2019-09-24 11:16:23 +02:00
Davide Brunato 18871936cb Fix datatypes, context and token classes
- Fix leap year calculation into AbstractDateTime
  - Fix _iter_context for yielding AttributeNode tuples
  - Fix '|' select method for attribute matching
  - Fix get_atomized_operand() for XSD decode of untyped data
2019-09-21 15:21:25 +02:00
Davide Brunato 85856fef5a
Merge pull request #9 from scarabeusiv/patch-1
Include tests in the sdist tarball on pypi
2019-09-13 08:57:52 +02:00
Davide Brunato 23fc3542ca Fix 24-hour time for DateTime 2019-09-11 22:18:49 +02:00
Davide Brunato 52d3220f8d Fix typed selection for token '(name)'
- Check the type but yield the element
2019-09-11 06:42:57 +02:00
Tomáš Chvátal b707f42d20
Include tests in the sdist tarball on pypi
This is used by distributors to validate the sanity of their python stack.
2019-09-09 16:28:41 +02:00
Davide Brunato 04258f5c43 Fix '//' operator and text() function
- '//' without a left token has to start from the document root,
    like an absolute path.
2019-09-09 07:16:00 +02:00
Davide Brunato e87bba0224
Merge pull request #8 from libremente/master
Fix code block in publiccode.yml
2019-09-03 13:12:29 +02:00
libremente a25524206e Fix code block in publiccode.yml 2019-09-03 12:10:06 +02:00
Davide Brunato 7d0c60cbf8
Merge pull request #7 from libremente/master
Fixed typo in publiccode.yml
2019-09-02 17:12:36 +02:00
libremente 16c57e1819 Fixed typo in publiccode.yml 2019-09-02 14:46:40 +02:00
Davide Brunato 6bb5724a34 Merge branch 'master' of github.com:sissaschool/elementpath 2019-08-30 08:19:56 +02:00
Davide Brunato 910b63603a Add tests for XPathToken helpers and datatypes 2019-08-30 08:16:38 +02:00
Davide Brunato d89b2ad987 Fix xs:dayTimeDuration ad xs:duration comparison 2019-08-28 23:21:23 +02:00
Davide Brunato 37b82c97a2
Merge pull request #5 from libremente/master
Fix MIME type and description
2019-08-28 13:04:04 +02:00
libremente a274289ebb Fix MIME type and description 2019-08-28 11:28:58 +02:00
Davide Brunato 1f3bd8265a
Update README.rst 2019-08-28 11:18:03 +02:00
Davide Brunato 14fa5424a3
Update publiccode.yml 2019-08-28 09:13:26 +02:00
Davide Brunato 0e4f050abb Add hashing methods to XSD datatypes classes 2019-08-28 07:07:30 +02:00
Davide Brunato dcf950605c Add publiccode.yml for Italian Public Services registry 2019-08-27 14:02:00 +02:00
Davide Brunato 113d4025cf Update to release v1.2.0
- Added special XSD datatypes
  - Better handling of schema contexts
  - Added validators for numeric types
  - Fixed function conversion rules
2019-08-14 18:48:44 +02:00
Davide Brunato cf59d52ca9 Fix xs:language pattern and XPathToken.get_results() 2019-08-14 18:15:56 +02:00
Davide Brunato bc78682fe8 Extend fn:string() to schema nodes
- Removed node_string_value(), replaced entirely by the method
    string_value() of the class XPathToken.
2019-08-13 18:06:49 +02:00
Davide Brunato 116e43fc4a Add tests for helpers and schema proxy 2019-08-09 08:56:39 +02:00
Davide Brunato 852d50c087 Add get_operands() instance method to XPathToken class 2019-08-08 09:34:55 +02:00
Davide Brunato 5ae6d0f0ff Fix function conversion rules in XPathToken.get_argument()
- Added type proxy classes for XSD numeric and datetime data
  - Added tests for 'mod' operator token
2019-08-08 06:55:22 +02:00
Davide Brunato 9994139e17 Fix xs:decimal based datatypes validation and function converion rules 2019-08-05 17:51:33 +02:00
Davide Brunato f00732ede5 Fix XPath2Parser.parse() method
- In case of schema binding the static context evaluation uses
    the XPathToken.select() method because a context with a tree
    of nodes is provided.
2019-08-05 11:37:59 +02:00
Davide Brunato b5a0a87a3e Refactor xmlschema related tests
- XMLSchemaProxy will be moved to xmlschema package because
    it requires a specialized context class. Schema tests will
    be kept in elementpath to help integration and to test
    elementpath schema-related features.
2019-08-05 10:10:11 +02:00