Skip to content
This repository was archived by the owner on Apr 29, 2023. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@
*.wxs
test.log
/build/
/dist/
/PyXB.egg-info/
1 change: 1 addition & 0 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ PyXB includes patches from the following Contributors:

Michael van der Westhuizen
Jon Foster
Eurofins Digital Testing (https://www.eurofins-digitaltesting.com/)

For details on these patches see the git software configuration logs.

Expand Down
15 changes: 14 additions & 1 deletion README.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
PyXB -- Python W3C XML Schema Bindings
Version 1.2.7-DEV
Version 1.2.7.dev1

------------------------------------------------
What is this fork for?:

At work, I use a few closed-source tools that use PyXB - some of which I maintain. This repository has the necessary patches to make PyXB work for me.

I don't have the time, inclination or the knowledge of PyXB's internals to be a proper open-source maintainer for PyXB. This fork is just getting bugfixes as I need them. I will accept small pull requests that fix bugs, but not anything big or risky or hard-to-test. I have no interest in doing formal public releases or submitting this to PyPy.

My experience is that PyXB is very complex and seriously lacking documentation, and does not have a stable API, but it can be made to work with some trial-and-error. The concept is great, and it works, and I'm not aware of anything better (though I haven't looked for a couple of years).

-- Jon Foster
------------------------------------------------
Original (upstream) PyXB README follows:

The source releases includes pre-built bundles for common XML namespaces,
assorted web service namespaces, and SAML. A bundle with over 75 namespaces
Expand Down
Empty file modified doc/Images/BindingModel.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/CTDValidationExceptions.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/ComponentModel.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/ContentModel.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/FACAutomaton.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/Namespace.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/NamespaceArchive.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/NamespaceCore.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/RuntimeExceptions.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified doc/Images/ScopedDeclarations.jpg
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@

# General information about the project.
project = 'PyXB'
copyright = '2009-2017, Peter A. Bigot'
copyright = '2009-2018, Peter A. Bigot'

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
Expand All @@ -52,7 +52,7 @@
# The short X.Y version.
version = '1.2'
# The full version, including alpha/beta/rc tags.
release = '1.2.7-DEV'
release = '1.2.7.dev1'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
Empty file modified doc/pyxb.eap
100755 → 100644
Empty file.
Empty file modified editix-pyxb.pre
100755 → 100644
Empty file.
2 changes: 2 additions & 0 deletions examples/cablelabs/disabled-test.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

rm -f cablelabs.wxs
sh genbindings.sh \
&& python demo.py
2 changes: 2 additions & 0 deletions examples/cablelabs/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

# Note: Module order is in increasing dependency order so schema are
# downloaded and saved only once.
[ -f cablelabs.wxs ] \
Expand Down
2 changes: 2 additions & 0 deletions examples/dictionary/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

URI='http://services.aonaware.com/DictService/DictService.asmx?WSDL'
PREFIX='dict'
WSDL="${PREFIX}.wsdl"
Expand Down
2 changes: 2 additions & 0 deletions examples/geocoder/disabled-test.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
#! /bin/sh

sh genbindings.sh \
&& python client.py
2 changes: 2 additions & 0 deletions examples/geocoder/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

GEO_WSDL_URI='http://geocoder.us/dist/eg/clients/GeoCoder.wsdl'
GEO_PREFIX=GeoCoder
GEO_WSDL="${GEO_PREFIX}.wsdl"
Expand Down
2 changes: 2 additions & 0 deletions examples/kml/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

PYTHONPATH=../..
export PYTHONPATH

Expand Down
2 changes: 2 additions & 0 deletions examples/manual/demo.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

rm -f *.wxs po?.py *.pyc
sh demo1.sh \
&& python demo1.py > demo1.out \
Expand Down
2 changes: 2 additions & 0 deletions examples/manual/demo1.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
#! /bin/sh

pyxbgen \
-u po1.xsd -m po1
2 changes: 2 additions & 0 deletions examples/manual/demo2.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
#! /bin/sh

pyxbgen \
-u po2.xsd -m po2
2 changes: 2 additions & 0 deletions examples/manual/demo3a.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
#! /bin/sh

pyxbgen \
-u po3.xsd -m po3
2 changes: 2 additions & 0 deletions examples/manual/demo3b.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

pyxbgen \
-u po3.xsd -m po3 \
-u nsaddress.xsd -m address
2 changes: 2 additions & 0 deletions examples/manual/demo3c1.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

pyxbgen \
-u nsaddress.xsd -m address \
--archive-to-file address.wxs
2 changes: 2 additions & 0 deletions examples/manual/demo3c2.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

pyxbgen \
-u po3.xsd -m po3 \
--archive-path .:+
2 changes: 2 additions & 0 deletions examples/manual/demo4.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

pyxbgen \
-u po4.xsd -m po4 \
--archive-path=.:+
Expand Down
2 changes: 2 additions & 0 deletions examples/manual/demo4b.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

pyxbgen \
-u po3.xsd -m po3 \
--archive-path .:+
2 changes: 2 additions & 0 deletions examples/ndfd/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

URI='http://graphical.weather.gov/xml/DWMLgen/schema/DWML.xsd'
PREFIX='DWML'

Expand Down
2 changes: 2 additions & 0 deletions examples/tmsxtvd/disabled-test.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
#! /bin/sh

sh genbindings.sh
python dumpsample.py
2 changes: 2 additions & 0 deletions examples/tmsxtvd/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

URI='http://docs.tms.tribune.com/tech/xml/schemas/tmsxtvd.xsd'
PREFIX='tmstvd'

Expand Down
2 changes: 2 additions & 0 deletions examples/weather/disabled-test.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
#! /bin/sh

sh genbindings.sh \
&& python client_get.py
2 changes: 2 additions & 0 deletions examples/weather/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

WSDL_URI='http://ws.cdyne.com/WeatherWS/Weather.asmx?wsdl'
WSDL_URI='http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL'
wget -O weather.wsdl "${WSDL_URI}"
Expand Down
2 changes: 2 additions & 0 deletions examples/xsdprimer/genbindings.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

PYTHONPATH=../..
export PYTHONPATH
rm -rf raw
Expand Down
2 changes: 2 additions & 0 deletions maintainer/bundlesupport.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

# This module is sourced by genbind scripts in bundle directories to
# initialize a bundle area and provide a function to translate schema.

Expand Down
2 changes: 2 additions & 0 deletions maintainer/genpd.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

find pyxb/bundles -name __init__.py \
| sed -e 's@^@"@' -e 's@/[^/]*$@",@' -e 's@/@.@g' \
| fmt
Expand Down
2 changes: 2 additions & 0 deletions maintainer/getw3c.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

# Download a mirror of the W3C technical archive
# --backup-converted

Expand Down
2 changes: 2 additions & 0 deletions maintainer/usepyxb.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#! /bin/sh

PYXB_ROOT=${PYXB_ROOT:-/mnt/devel/pyxb}
PYTHONPATH=${PYXB_ROOT}:${PYTHONPATH:+:${PYTHONPATH}}
PATH="${PYXB_ROOT}/scripts:${PYXB_ROOT}/bin:${PATH}"
Expand Down
2 changes: 1 addition & 1 deletion pyxb/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ def __init__ (self, *args, **kw):
if issubclass(self.__class__.mro()[-2], ( list, dict )):
super(cscRoot, self).__init__(*args)

__version__ = '1.2.7-DEV'
__version__ = '1.2.7.dev1'
"""The version of PyXB"""

__url__ = 'http://pyxb.sourceforge.net'
Expand Down
3 changes: 2 additions & 1 deletion pyxb/binding/basis.py
Original file line number Diff line number Diff line change
Expand Up @@ -1023,7 +1023,8 @@ def XsdSuperType (cls):
# otherwise directly descends from a Python type; return
# the recorded XSD supertype.
return cls._XsdBaseType
if issubclass(sc, simpleTypeDefinition):
if (not sc.__name__.startswith('_')) \
and issubclass(sc, simpleTypeDefinition):
return sc
raise pyxb.LogicError('No supertype found for %s' % (cls,))

Expand Down
Loading