Commit Graph

729 Commits

Author SHA1 Message Date
Davide Brunato 7cdb230b0c Merge branch 'hotfix-0.8.1b4' into develop 2017-01-20 18:36:23 +01:00
Davide Brunato 43c160ee68 Updated facets and regular expressions parsing:
* Added character blocks and categories
  * Added parsing of character class subtraction
  * Fixed admitted_facets property into XsdAtomic class
2017-01-20 18:10:06 +01:00
Davide Brunato 82c062ed7a Restructured builtin types and added regex.py module:
* This commit includes a dictionary literal, that will be removed
    in the next commit, that represents a complete mapping of the
    unicode categories.
2017-01-18 11:56:50 +01:00
Davide Brunato 11ff631eb2 Merge branch 'hotfix-0.8.1b4' 2017-01-12 11:48:18 +01:00
Davide Brunato ab881db73b Hotfix 0.8.1b4:
* Fixed content_type parsing in xsd_complex_type_factory: deep inside only when the content_type model is None, avoiding recursion loops.

    modified:   xmlschema/factories.py
    modified:   xmlschema/structures.py
2017-01-12 11:43:08 +01:00
Davide Brunato 49ca5d52b0 Merge branch 'develop' 2016-12-23 17:12:49 +01:00
Davide Brunato af7eb7e294 Split validators.py in two files:
* XSD Facets are now in a dedicated file (facets.py)
  * renamed: xmlschema/validators.py -> xmlschema/structures.py
  * renamed: xmlschema/parse.py -> xmlschema/xsdbase.py
  * XsdBase class -> xmlschema/xsdbase.py
  * refactoring builtins and XsdAtomicType in order to
    distinguish between primitive and derived types
2016-12-23 17:08:48 +01:00
Davide Brunato 392c20f106 Merge branch 'develop' 2016-12-21 12:42:22 +01:00
Davide Brunato 5d879e4eda Improved XSD facets:
+ Completed facets builting into factories
  + Added checks for whiteSpace facets
  + Added checks for length facets
2016-12-21 12:34:55 +01:00
Davide Brunato ef30d3daca Added classes for XSD facets:
+ XsdFacet: Base class for facets
   + XsdUniqueFacet: Class for unique instance facets
   + XsdEnumerationFacet: Class for enumerations
   + XsdPatternsFacet: Class for pattern lexical constraints
2016-12-19 15:11:01 +01:00
Davide Brunato b64bf666bd Code refactoring before completing the implementation of facet constraints:
modified:   xmlschema/__init__.py
	modified:   xmlschema/builtins.py
	modified:   xmlschema/core.py
	modified:   xmlschema/etree.py
	renamed:    xmlschema/validators.py -> xmlschema/exceptions.py
	modified:   xmlschema/factories.py
	modified:   xmlschema/parse.py
	modified:   xmlschema/qnames.py
	modified:   xmlschema/resources.py
	modified:   xmlschema/schema.py
	modified:   xmlschema/tests/test_decoding.py
	modified:   xmlschema/utils.py
	renamed:    xmlschema/components.py -> xmlschema/validators.py
2016-12-16 14:44:33 +01:00
Davide Brunato 3bd9d73c24 Updated facets's validators:
modified:   xmlschema/factories.py
    modified:   xmlschema/parse.py
    modified:   xmlschema/validators.py
2016-12-09 17:15:46 +01:00
Davide Brunato 02277a7a1c Merge branch 'develop' 2016-12-07 12:28:13 +01:00
Davide Brunato 690cb21fa3 Fixed a bug in element_to_dict function:
* Now the heuristic to decode multiple list items into a list of lists seems correct.

    modified:   setup.py
    modified:   xmlschema/components.py
    modified:   xmlschema/etree.py
    modified:   xmlschema/resources.py
    modified:   xmlschema/schema.py
    modified:   xmlschema/utils.py
2016-12-07 12:24:29 +01:00
Davide Brunato 90b986c819 Merge branch 'develop' 2016-11-30 12:29:52 +01:00
Davide Brunato c8a84171c8 Switched to beta status:
* Fixed oversight bugs in element's decoding/encoding
  * Improved test scripts
  * added to_dict API and class method
2016-11-30 12:22:26 +01:00
Davide Brunato 3d22ffc841 Improving and fixing validation:
* Element declaration's 'default' and 'fixed' attributes
    set to empty string instead of None.

    modified:   ../components.py
2016-11-29 15:56:50 +01:00
Davide Brunato 0b80b2a5a7 Merge branch 'develop' 2016-11-28 15:14:19 +01:00
Davide Brunato 6ba1f13f4c Added validator functions builders for XSD facets:
* added XSD facets for restriction tags;
  * created subdirectories for examples/;
  * splitted XML Schema components from specific validator code.
2016-11-28 15:07:52 +01:00
Davide Brunato 1c9926f721 Merge branch 'release-0.8a6' 2016-10-26 08:36:36 +02:00
Davide Brunato 7be2aede6a Updated .gitignore and extra-schemas. 2016-10-26 08:24:49 +02:00
Davide Brunato b3a3a933b9 Fixed some limitations in schemas inclusions. 2016-10-25 16:43:46 +02:00
Davide Brunato c45dae906c Merge branch 'release-0.8a5' 2016-10-21 10:22:16 +02:00
Davide Brunato aeabf98de0 Modified builtins datetime types:
* Renamed is_datetime function to is_datetime_iso8601;
   * Modified is_datetime_iso8601 to check time zone suffixes;
   * Added a new test schema (collection.xsd) and xml file.
2016-10-21 10:18:21 +02:00
Davide Brunato 8a58c2bc01 Created a first version of manual using Sphinx. 2016-10-19 16:20:32 +02:00
Davide Brunato 84f6864f56 Code cleaning from development statements. 2016-10-17 16:00:39 +02:00
Davide Brunato 9607c9f47e Cleaning code 2016-10-17 15:52:26 +02:00
Davide Brunato 92bef12a1f Move tests to source subdirectory and fix PyPI publication. 2016-10-14 17:16:46 +02:00
Davide Brunato 313f41adbe Initial commit
Changes to be committed:
	new file:   .gitignore
	new file:   LICENSE
	new file:   README.rst
	new file:   setup.py
	new file:   tests/__init__.py
	new file:   tests/_test_common.py
	new file:   tests/examples/bikes.xsd
	new file:   tests/examples/cars.xsd
	new file:   tests/examples/recursive-groups.xsd
	new file:   tests/examples/testfiles
	new file:   tests/examples/types.xsd
	new file:   tests/examples/vehicles-1_error.xml
	new file:   tests/examples/vehicles-2_errors.xml
	new file:   tests/examples/vehicles-3_errors.xml
	new file:   tests/examples/vehicles-max.xsd
	new file:   tests/examples/vehicles.xml
	new file:   tests/examples/vehicles.xsd
	new file:   tests/test_decoding.py
	new file:   tests/test_schemas.py
	new file:   tests/test_validation.py
	new file:   xmlschema/__init__.py
	new file:   xmlschema/builtins.py
	new file:   xmlschema/core.py
	new file:   xmlschema/etree.py
	new file:   xmlschema/factories.py
	new file:   xmlschema/parse.py
	new file:   xmlschema/qnames.py
	new file:   xmlschema/resources.py
	new file:   xmlschema/schema.py
	new file:   xmlschema/schemas/HFP/XMLSchema-hasFacetAndProperty.xsd
	new file:   xmlschema/schemas/XML/xml.xsd
	new file:   xmlschema/schemas/XSD_1.0/XMLSchema.xsd
	new file:   xmlschema/schemas/XSD_1.0/datatypes.xsd
	new file:   xmlschema/schemas/XSD_1.1/XMLSchema.xsd
	new file:   xmlschema/schemas/XSD_1.1/datatypes.xsd
	new file:   xmlschema/schemas/XSI/XMLSchema-instance.xsd
	new file:   xmlschema/schemas/XSLT/schema-for-xslt20.xsd
	new file:   xmlschema/utils.py
	new file:   xmlschema/validators.py
2016-10-14 13:48:19 +02:00