summaryrefslogtreecommitdiff
path: root/xsd
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff-webhosting.net>2014-07-23 15:21:29 +0200
committerJörg Frings-Fürst <debian@jff-webhosting.net>2014-07-23 15:21:29 +0200
commitbada6666c70977a058755ccf232e7d67b24adeed (patch)
tree1e92d50cebce96abaf9bce19e36026c47f77b9ba /xsd
parenteaf34adcbd8095bc6d1f3371b1227f654c7b19fc (diff)
New upstream release
Diffstat (limited to 'xsd')
-rw-r--r--xsd/INSTALL29
-rw-r--r--xsd/NEWS143
-rw-r--r--xsd/README4
-rw-r--r--xsd/build/bootstrap.make44
-rw-r--r--xsd/build/configuration-dynamic.make3
-rw-r--r--xsd/build/configuration-rules.make3
-rw-r--r--xsd/build/configuration.make5
-rwxr-xr-xxsd/build/configure12
-rw-r--r--xsd/build/cxx/configuration-dynamic.make5
-rw-r--r--xsd/build/cxx/generic/configuration-dynamic.make16
-rw-r--r--xsd/build/cxx/gnu/configuration-dynamic.make8
-rw-r--r--xsd/build/import/cli/LICENSE21
-rw-r--r--xsd/build/import/cli/cli-cxx.make48
-rw-r--r--xsd/build/import/cli/configuration-dynamic.make3
-rw-r--r--xsd/build/import/cli/configuration-rules.make14
-rwxr-xr-xxsd/build/import/cli/configure54
-rw-r--r--xsd/build/import/cli/stub.make29
-rw-r--r--xsd/build/import/libace/configuration-rules.make1
-rwxr-xr-xxsd/build/import/libace/configure1
-rw-r--r--xsd/build/import/libace/rules.make1
-rw-r--r--xsd/build/import/libace/stub.make1
-rw-r--r--xsd/build/import/libbackend-elements/LICENSE340
-rw-r--r--xsd/build/import/libbackend-elements/configuration-dynamic.make4
-rw-r--r--xsd/build/import/libbackend-elements/configuration-rules.make15
-rwxr-xr-xxsd/build/import/libbackend-elements/configure55
-rw-r--r--xsd/build/import/libbackend-elements/stub.make32
-rw-r--r--xsd/build/import/libboost/configuration-dynamic.make8
-rw-r--r--xsd/build/import/libboost/configuration-rules.make3
-rwxr-xr-xxsd/build/import/libboost/configure3
-rw-r--r--xsd/build/import/libboost/date-time/rules.make3
-rw-r--r--xsd/build/import/libboost/date-time/stub.make3
-rw-r--r--xsd/build/import/libboost/filesystem/rules.make53
-rw-r--r--xsd/build/import/libboost/filesystem/stub.make36
-rw-r--r--xsd/build/import/libboost/regex/rules.make50
-rw-r--r--xsd/build/import/libboost/regex/stub.make36
-rw-r--r--xsd/build/import/libboost/serialization/rules.make3
-rw-r--r--xsd/build/import/libboost/serialization/stub.make3
-rw-r--r--xsd/build/import/libcult/LICENSE340
-rw-r--r--xsd/build/import/libcult/configuration-dynamic.make4
-rw-r--r--xsd/build/import/libcult/configuration-rules.make15
-rw-r--r--xsd/build/import/libcult/stub.make30
-rw-r--r--xsd/build/import/libcutl/LICENSE24
-rw-r--r--xsd/build/import/libcutl/configuration-dynamic.make8
-rw-r--r--xsd/build/import/libcutl/configuration-rules.make14
-rwxr-xr-xxsd/build/import/libcutl/configure (renamed from xsd/build/import/libcult/configure)17
-rw-r--r--xsd/build/import/libcutl/stub.make29
-rw-r--r--xsd/build/import/libdbxml/LICENSE340
-rw-r--r--xsd/build/import/libdbxml/configuration-rules.make15
-rwxr-xr-xxsd/build/import/libdbxml/configure58
-rw-r--r--xsd/build/import/libdbxml/rules.make42
-rw-r--r--xsd/build/import/libdbxml/stub.make32
-rw-r--r--xsd/build/import/libdbxml/version1
-rw-r--r--xsd/build/import/libxerces-c/configuration-rules.make1
-rwxr-xr-xxsd/build/import/libxerces-c/configure1
-rw-r--r--xsd/build/import/libxerces-c/rules.make1
-rw-r--r--xsd/build/import/libxerces-c/stub.make1
-rw-r--r--xsd/build/import/libxqilla/configuration-rules.make1
-rwxr-xr-xxsd/build/import/libxqilla/configure1
-rw-r--r--xsd/build/import/libxqilla/rules.make1
-rw-r--r--xsd/build/import/libxqilla/stub.make1
-rw-r--r--xsd/build/import/libxsd-frontend/configuration-rules.make3
-rwxr-xr-xxsd/build/import/libxsd-frontend/configure3
-rw-r--r--xsd/build/import/libxsd-frontend/stub.make5
-rw-r--r--xsd/build/import/libz/configuration-rules.make1
-rwxr-xr-xxsd/build/import/libz/configure1
-rw-r--r--xsd/build/import/libz/rules.make1
-rw-r--r--xsd/build/import/libz/stub.make1
-rw-r--r--xsd/build/xsd/parser/xsd-cxx.make5
-rw-r--r--xsd/build/xsd/tree/xsd-cxx.make5
-rw-r--r--xsd/dist/README-UNIX3
-rw-r--r--xsd/dist/README-WINDOWS138
-rw-r--r--xsd/dist/etc/vc-1x.0/xsd-cxx-parser.props (renamed from xsd/dist/etc/vc-10.0/xsd-cxx-parser.props)0
-rw-r--r--xsd/dist/etc/vc-1x.0/xsd-cxx-parser.targets (renamed from xsd/dist/etc/vc-10.0/xsd-cxx-parser.targets)0
-rw-r--r--xsd/dist/etc/vc-1x.0/xsd-cxx-parser.xml (renamed from xsd/dist/etc/vc-10.0/xsd-cxx-parser.xml)0
-rw-r--r--xsd/dist/etc/vc-1x.0/xsd-cxx-tree.props (renamed from xsd/dist/etc/vc-10.0/xsd-cxx-tree.props)4
-rw-r--r--xsd/dist/etc/vc-1x.0/xsd-cxx-tree.targets (renamed from xsd/dist/etc/vc-10.0/xsd-cxx-tree.targets)4
-rw-r--r--xsd/dist/etc/vc-1x.0/xsd-cxx-tree.xml (renamed from xsd/dist/etc/vc-10.0/xsd-cxx-tree.xml)23
-rw-r--r--xsd/dist/examples/build/cxx/compilers.make23
-rw-r--r--xsd/dist/examples/build/cxx/rules.make21
-rw-r--r--xsd/dist/examples/build/xsd/common.make3
-rw-r--r--xsd/dist/examples/build/xsd/parser-rules.make3
-rw-r--r--xsd/dist/examples/build/xsd/tree-rules.make3
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-7.1.vcproj168
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/generated/generated-10.0.vcxproj)24
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/generated/generated-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj207
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj211
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/generated/generated-8.0.vcproj)20
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/generated/generated-9.0.vcproj)20
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-xerces2-7.1.vcproj168
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-xerces2-8.0.vcproj427
-rw-r--r--xsd/dist/examples/cxx/parser/generated/generated-xerces2-9.0.vcproj424
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-7.1.vcproj162
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/hello/hello-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/hello/hello-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj205
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/hello/hello-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/hello/hello-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-xerces2-7.1.vcproj162
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-xerces2-8.0.vcproj419
-rw-r--r--xsd/dist/examples/cxx/parser/hello/hello-xerces2-9.0.vcproj416
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-7.1.vcproj178
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/library/library-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/library/library-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj.filters54
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj.filters54
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/library/library-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/library/library-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-xerces2-7.1.vcproj178
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-xerces2-8.0.vcproj440
-rw-r--r--xsd/dist/examples/cxx/parser/library/library-xerces2-9.0.vcproj437
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-7.1.vcproj165
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/mixed/mixed-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/mixed/mixed-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj206
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj.filters41
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj210
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj.filters41
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/mixed/mixed-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/mixed/mixed-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-7.1.vcproj165
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-7.1.vcproj165
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/mixin/mixin-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/mixin/mixin-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj206
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj.filters41
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj210
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj.filters41
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/mixin/mixin-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/mixin/mixin-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-7.1.vcproj165
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-7.1.vcproj173
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/multiroot/multiroot-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/multiroot/multiroot-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj212
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj.filters47
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj216
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj.filters47
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/multiroot/multiroot-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/multiroot/multiroot-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-7.1.vcproj173
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-8.0.vcproj435
-rw-r--r--xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-9.0.vcproj432
-rw-r--r--xsd/dist/examples/cxx/parser/parser-10.0.sln115
-rw-r--r--xsd/dist/examples/cxx/parser/parser-7.1.sln93
-rw-r--r--xsd/dist/examples/cxx/parser/parser-8.0.sln115
-rw-r--r--xsd/dist/examples/cxx/parser/parser-9.0.sln115
-rw-r--r--xsd/dist/examples/cxx/parser/parser-xerces2-7.1.sln93
-rw-r--r--xsd/dist/examples/cxx/parser/parser-xerces2-8.0.sln115
-rw-r--r--xsd/dist/examples/cxx/parser/parser-xerces2-9.0.sln115
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-7.1.vcproj168
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/performance/performance-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/performance/performance-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj207
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj211
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/performance/performance-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/performance/performance-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-xerces2-7.1.vcproj168
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-xerces2-8.0.vcproj427
-rw-r--r--xsd/dist/examples/cxx/parser/performance/performance-xerces2-9.0.vcproj424
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/polymorphism/polymorphism-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/polymorphism/polymorphism-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj211
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj215
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/polymorphism/polymorphism-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/polymorphism/polymorphism-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-8.0.vcproj431
-rw-r--r--xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-9.0.vcproj428
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/polyroot/polyroot-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/polyroot/polyroot-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj211
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj215
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/polyroot/polyroot-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/polyroot/polyroot-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-8.0.vcproj431
-rw-r--r--xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-9.0.vcproj428
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-7.1.vcproj162
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc10.vcxproj (renamed from xsd/dist/examples/cxx/parser/wildcard/wildcard-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/parser/wildcard/wildcard-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj205
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc8.vcproj (renamed from xsd/dist/examples/cxx/parser/wildcard/wildcard-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-vc9.vcproj (renamed from xsd/dist/examples/cxx/parser/wildcard/wildcard-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-7.1.vcproj162
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-8.0.vcproj419
-rw-r--r--xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-9.0.vcproj416
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.vcproj173
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.vcxproj)4
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj212
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj.filters47
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj216
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj.filters47
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/binary/boost/boost-8.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/binary/boost/boost-9.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.vcproj173
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.vcproj435
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.vcproj432
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.vcxproj)4
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc11.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.vcxproj.filters)6
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/binary/cdr/cdr-8.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/binary/cdr/cdr-9.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.vcxproj)4
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/binary/xdr/xdr-8.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/binary/xdr/xdr-9.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/caching/caching-10.0.vcxproj)4
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/caching/caching-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/caching/caching-8.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/caching/caching-9.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-xerces2-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-xerces2-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/tree/caching/caching-xerces2-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-10.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/compression/compression-10.0.vcxproj)4
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/compression/compression-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj.filters50
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj217
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj.filters50
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/compression/compression-8.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/compression/compression-9.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.vcproj435
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.vcproj432
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.vcproj186
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj233
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj.filters54
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj237
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj.filters54
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/calendar/calendar-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/calendar/calendar-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.vcproj186
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.vcproj456
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.vcproj453
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-7.1.vcproj192
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/custom/comments/comments-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/custom/comments/comments-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj235
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj.filters60
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj239
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj.filters60
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/comments/comments-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/comments/comments-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-7.1.vcproj192
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-8.0.vcproj464
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-9.0.vcproj461
-rw-r--r--xsd/dist/examples/cxx/tree/custom/comments/makefile8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-7.1.vcproj177
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/custom/contacts/contacts-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/custom/contacts/contacts-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj212
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj.filters51
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj216
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj.filters51
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/contacts/contacts-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/contacts/contacts-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-7.1.vcproj177
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-8.0.vcproj440
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-9.0.vcproj437
-rw-r--r--xsd/dist/examples/cxx/tree/custom/contacts/makefile8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/custom-10.0.sln75
-rw-r--r--xsd/dist/examples/cxx/tree/custom/custom-7.1.sln61
-rw-r--r--xsd/dist/examples/cxx/tree/custom/custom-8.0.sln75
-rw-r--r--xsd/dist/examples/cxx/tree/custom/custom-9.0.sln75
-rw-r--r--xsd/dist/examples/cxx/tree/custom/custom-xerces2-7.1.sln61
-rw-r--r--xsd/dist/examples/cxx/tree/custom/custom-xerces2-8.0.sln75
-rw-r--r--xsd/dist/examples/cxx/tree/custom/custom-xerces2-9.0.sln75
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-7.1.vcproj186
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/custom/double/double-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/custom/double/double-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj233
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj.filters54
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj237
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj.filters54
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/double/double-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/double/double-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-xerces2-7.1.vcproj186
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-xerces2-8.0.vcproj456
-rw-r--r--xsd/dist/examples/cxx/tree/custom/double/double-xerces2-9.0.vcproj453
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/makefile9
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-7.1.vcproj177
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/custom/mixed/mixed-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/custom/mixed/mixed-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj212
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj.filters51
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj216
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj.filters51
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/mixed/mixed-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/mixed/mixed-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-7.1.vcproj177
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-8.0.vcproj440
-rw-r--r--xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-9.0.vcproj437
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-7.1.vcproj183
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj214
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj.filters57
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj218
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj.filters57
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-7.1.vcproj183
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-8.0.vcproj448
-rw-r--r--xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-9.0.vcproj445
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/makefile10
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-7.1.vcproj177
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj212
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj.filters51
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj216
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj.filters51
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-7.1.vcproj177
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-8.0.vcproj440
-rw-r--r--xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-9.0.vcproj437
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/tree/dbxml/makefile33
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-7.1.sln30
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc10.sln (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-10.0.sln)23
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-10.0.vcxproj)6
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc11.sln (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-8.0.sln)30
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj219
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj.filters50
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc12.sln40
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj223
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj.filters50
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc8.sln (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-8.0.sln)17
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-8.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc9.sln (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-9.0.sln)7
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/embedded/embedded-9.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.sln30
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-8.0.vcproj439
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.sln38
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.vcproj436
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-7.1.vcproj127
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/embedded/xsdbin-10.0.vcxproj)4
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/embedded/xsdbin-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj186
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj.filters14
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj190
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj.filters14
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/embedded/xsdbin-8.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/embedded/xsdbin-9.0.vcproj)0
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-7.1.vcproj127
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-8.0.vcproj356
-rw-r--r--xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-9.0.vcproj353
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/hello/hello-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/hello/hello-10.0.vcxproj.filters)2
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/hello/hello-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/hello/hello-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-xerces2-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-xerces2-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/tree/hello/hello-xerces2-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-7.1.vcproj171
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/library/library-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/library/library-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj210
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj.filters45
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj214
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj.filters45
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/library/library-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/library/library-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-xerces2-7.1.vcproj171
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-xerces2-8.0.vcproj432
-rw-r--r--xsd/dist/examples/cxx/tree/library/library-xerces2-9.0.vcproj429
-rw-r--r--xsd/dist/examples/cxx/tree/makefile6
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/messaging/messaging-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/messaging/messaging-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj.filters50
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj217
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj.filters50
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/messaging/messaging-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/messaging/messaging-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-8.0.vcproj439
-rw-r--r--xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-9.0.vcproj436
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/mixed/mixed-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/mixed/mixed-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/mixed/mixed-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/mixed/mixed-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/multiroot/multiroot-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/multiroot/multiroot-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj211
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj215
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/multiroot/multiroot-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/multiroot/multiroot-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-8.0.vcproj431
-rw-r--r--xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-9.0.vcproj428
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/makefile31
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj205
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc8.vcproj423
-rw-r--r--xsd/dist/examples/cxx/tree/order/element/order-element-vc9.vcproj420
-rw-r--r--xsd/dist/examples/cxx/tree/order/makefile11
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/makefile32
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj205
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-8.0.vcproj)34
-rw-r--r--xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-9.0.vcproj)34
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-7.1.vcproj183
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/performance/performance-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/performance/performance-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj214
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj.filters57
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj218
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj.filters57
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/performance/performance-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/performance/performance-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-xerces2-7.1.vcproj183
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-xerces2-8.0.vcproj445
-rw-r--r--xsd/dist/examples/cxx/tree/performance/performance-xerces2-9.0.vcproj442
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/polymorphism/polymorphism-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/polymorphism/polymorphism-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj209
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj213
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj.filters38
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/polymorphism/polymorphism-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/polymorphism/polymorphism-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-7.1.vcproj164
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-8.0.vcproj423
-rw-r--r--xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-9.0.vcproj420
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/makefile5
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/streaming/streaming-10.0.vcxproj)16
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/streaming/streaming-10.0.vcxproj.filters)8
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj215
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj.filters56
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj219
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj.filters56
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/streaming/streaming-8.0.vcproj)14
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/streaming/streaming-9.0.vcproj)14
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-7.1.vcproj176
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-8.0.vcproj435
-rw-r--r--xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-9.0.vcproj432
-rw-r--r--xsd/dist/examples/cxx/tree/tree-10.0.sln115
-rw-r--r--xsd/dist/examples/cxx/tree/tree-7.1.sln93
-rw-r--r--xsd/dist/examples/cxx/tree/tree-8.0.sln115
-rw-r--r--xsd/dist/examples/cxx/tree/tree-9.0.sln115
-rw-r--r--xsd/dist/examples/cxx/tree/tree-xerces2-7.1.sln93
-rw-r--r--xsd/dist/examples/cxx/tree/tree-xerces2-8.0.sln115
-rw-r--r--xsd/dist/examples/cxx/tree/tree-xerces2-9.0.sln115
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-7.1.vcproj171
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/wildcard/wildcard-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/wildcard/wildcard-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj210
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj.filters45
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj214
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj.filters45
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/wildcard/wildcard-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/wildcard/wildcard-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-7.1.vcproj171
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-8.0.vcproj432
-rw-r--r--xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-9.0.vcproj429
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-10.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc10.vcxproj (renamed from xsd/dist/examples/cxx/tree/xpath/xpath-10.0.vcxproj)12
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc10.vcxproj.filters (renamed from xsd/dist/examples/cxx/tree/xpath/xpath-10.0.vcxproj.filters)0
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj211
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj215
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj.filters44
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc8.vcproj (renamed from xsd/dist/examples/cxx/tree/xpath/xpath-8.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-vc9.vcproj (renamed from xsd/dist/examples/cxx/tree/xpath/xpath-9.0.vcproj)8
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.sln21
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.vcproj170
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.vcproj431
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.sln25
-rw-r--r--xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.vcproj428
-rw-r--r--xsd/dist/examples/test.bat74
-rw-r--r--xsd/dist/examples/tester.bat47
-rw-r--r--xsd/dist/template-vc10.sln15
-rw-r--r--xsd/dist/template-vc11.sln15
-rw-r--r--xsd/dist/template-vc12.sln17
-rw-r--r--xsd/dist/template-vc8.sln15
-rw-r--r--xsd/dist/template-vc9.sln15
-rw-r--r--xsd/doc/custom-literals.xsd (renamed from xsd/documentation/custom-literals.xsd)3
-rw-r--r--xsd/doc/cxx/makefile (renamed from xsd/documentation/cxx/makefile)9
-rw-r--r--xsd/doc/cxx/parser/guide/cxx-parser-guide.pdfbin0 -> 151425 bytes
-rw-r--r--xsd/doc/cxx/parser/guide/cxx-parser-guide.ps (renamed from xsd/documentation/cxx/parser/guide/cxx-parser-guide.ps)440
-rw-r--r--xsd/doc/cxx/parser/guide/figure-1.png (renamed from xsd/documentation/cxx/parser/guide/figure-1.png)bin34195 -> 34195 bytes
-rw-r--r--xsd/doc/cxx/parser/guide/figure-1.svg (renamed from xsd/documentation/cxx/parser/guide/figure-1.svg)0
-rw-r--r--xsd/doc/cxx/parser/guide/guide.html2ps (renamed from xsd/documentation/cxx/parser/guide/guide.html2ps)2
-rw-r--r--xsd/doc/cxx/parser/guide/index.xhtml (renamed from xsd/documentation/cxx/parser/guide/index.xhtml)87
-rw-r--r--xsd/doc/cxx/parser/guide/makefile (renamed from xsd/documentation/cxx/parser/guide/makefile)13
-rw-r--r--xsd/doc/cxx/parser/makefile (renamed from xsd/documentation/cxx/parser/makefile)9
-rw-r--r--xsd/doc/cxx/tree/guide/cxx-tree-guide.pdfbin0 -> 95081 bytes
-rw-r--r--xsd/doc/cxx/tree/guide/cxx-tree-guide.ps (renamed from xsd/documentation/cxx/tree/guide/cxx-tree-guide.ps)359
-rw-r--r--xsd/doc/cxx/tree/guide/guide.html2ps (renamed from xsd/documentation/cxx/tree/guide/guide.html2ps)2
-rw-r--r--xsd/doc/cxx/tree/guide/index.xhtml (renamed from xsd/documentation/cxx/tree/guide/index.xhtml)140
-rw-r--r--xsd/doc/cxx/tree/guide/makefile (renamed from xsd/documentation/cxx/tree/guide/makefile)13
-rw-r--r--xsd/doc/cxx/tree/makefile (renamed from xsd/documentation/cxx/tree/makefile)13
-rw-r--r--xsd/doc/cxx/tree/manual/cxx-tree-manual.pdfbin0 -> 221921 bytes
-rw-r--r--xsd/doc/cxx/tree/manual/cxx-tree-manual.ps (renamed from xsd/documentation/cxx/tree/manual/cxx-tree-manual.ps)1840
-rw-r--r--xsd/doc/cxx/tree/manual/index.xhtml (renamed from xsd/documentation/cxx/tree/manual/index.xhtml)1038
-rw-r--r--xsd/doc/cxx/tree/manual/makefile (renamed from xsd/documentation/cxx/tree/manual/makefile)13
-rw-r--r--xsd/doc/cxx/tree/manual/manual.html2ps (renamed from xsd/documentation/cxx/tree/manual/manual.html2ps)2
-rw-r--r--xsd/doc/cxx/tree/reference/footer.html (renamed from xsd/documentation/cxx/tree/reference/footer.html)2
-rw-r--r--xsd/doc/cxx/tree/reference/libxsd.doxygen (renamed from xsd/documentation/cxx/tree/reference/libxsd.doxygen)12
-rw-r--r--xsd/doc/cxx/tree/reference/makefile (renamed from xsd/documentation/cxx/tree/reference/makefile)0
-rw-r--r--xsd/doc/default.css (renamed from xsd/documentation/default.css)0
-rw-r--r--xsd/doc/makefile143
-rw-r--r--xsd/doc/xsd-epilogue.1566
-rw-r--r--xsd/doc/xsd-epilogue.xhtml422
-rw-r--r--xsd/doc/xsd-parser-header.14
-rw-r--r--xsd/doc/xsd-parser-header.xhtml1
-rw-r--r--xsd/doc/xsd-prologue.1119
-rw-r--r--xsd/doc/xsd-prologue.xhtml120
-rw-r--r--xsd/doc/xsd-tree-header.14
-rw-r--r--xsd/doc/xsd-tree-header.xhtml1
-rw-r--r--xsd/doc/xsd.11648
-rw-r--r--xsd/doc/xsd.xhtml1555
-rw-r--r--xsd/documentation/cxx/parser/guide/cxx-parser-guide.pdfbin150322 -> 0 bytes
-rw-r--r--xsd/documentation/cxx/tree/dbxml/driver.cxx175
-rw-r--r--xsd/documentation/cxx/tree/dbxml/index.xhtml348
-rw-r--r--xsd/documentation/cxx/tree/dbxml/library.xsd75
-rw-r--r--xsd/documentation/cxx/tree/guide/cxx-tree-guide.pdfbin94183 -> 0 bytes
-rw-r--r--xsd/documentation/cxx/tree/manual/cxx-tree-manual.pdfbin198065 -> 0 bytes
-rw-r--r--xsd/documentation/future.xhtml103
-rw-r--r--xsd/documentation/makefile47
-rw-r--r--xsd/documentation/schema-authoring-guide.xhtml187
-rw-r--r--xsd/documentation/xsd.11893
-rw-r--r--xsd/documentation/xsd.xhtml1600
-rw-r--r--xsd/examples/cxx/parser/generated/library.xml1
-rw-r--r--xsd/examples/cxx/parser/generated/library.xsd1
-rw-r--r--xsd/examples/cxx/parser/generated/makefile11
-rw-r--r--xsd/examples/cxx/parser/hello/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/hello/hello.xml1
-rw-r--r--xsd/examples/cxx/parser/hello/hello.xsd1
-rw-r--r--xsd/examples/cxx/parser/hello/makefile9
-rw-r--r--xsd/examples/cxx/parser/library/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/library/library-pimpl.cxx1
-rw-r--r--xsd/examples/cxx/parser/library/library-pimpl.hxx1
-rw-r--r--xsd/examples/cxx/parser/library/library.hxx1
-rw-r--r--xsd/examples/cxx/parser/library/library.map1
-rw-r--r--xsd/examples/cxx/parser/library/library.xml1
-rw-r--r--xsd/examples/cxx/parser/library/library.xsd1
-rw-r--r--xsd/examples/cxx/parser/library/makefile11
-rw-r--r--xsd/examples/cxx/parser/makefile20
-rw-r--r--xsd/examples/cxx/parser/mixed/anchor.hxx1
-rw-r--r--xsd/examples/cxx/parser/mixed/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/mixed/makefile11
-rw-r--r--xsd/examples/cxx/parser/mixed/text.map1
-rw-r--r--xsd/examples/cxx/parser/mixed/text.xml1
-rw-r--r--xsd/examples/cxx/parser/mixed/text.xsd1
-rw-r--r--xsd/examples/cxx/parser/mixin/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/mixin/instance.xml1
-rw-r--r--xsd/examples/cxx/parser/mixin/makefile11
-rw-r--r--xsd/examples/cxx/parser/mixin/schema.map1
-rw-r--r--xsd/examples/cxx/parser/mixin/schema.xsd1
-rw-r--r--xsd/examples/cxx/parser/mixin/types.hxx1
-rw-r--r--xsd/examples/cxx/parser/multiroot/balance.xml1
-rw-r--r--xsd/examples/cxx/parser/multiroot/deposit.xml1
-rw-r--r--xsd/examples/cxx/parser/multiroot/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/multiroot/makefile11
-rw-r--r--xsd/examples/cxx/parser/multiroot/protocol-pimpl.cxx1
-rw-r--r--xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx1
-rw-r--r--xsd/examples/cxx/parser/multiroot/protocol.hxx1
-rw-r--r--xsd/examples/cxx/parser/multiroot/protocol.map1
-rw-r--r--xsd/examples/cxx/parser/multiroot/protocol.xsd1
-rw-r--r--xsd/examples/cxx/parser/multiroot/withdraw.xml1
-rw-r--r--xsd/examples/cxx/parser/performance/README6
-rw-r--r--xsd/examples/cxx/parser/performance/driver.cxx4
-rw-r--r--xsd/examples/cxx/parser/performance/makefile15
-rw-r--r--xsd/examples/cxx/parser/performance/test-500k.xml1
-rw-r--r--xsd/examples/cxx/parser/performance/test-5k.xml1
-rw-r--r--xsd/examples/cxx/parser/performance/test.xsd1
-rw-r--r--xsd/examples/cxx/parser/performance/time.cxx3
-rw-r--r--xsd/examples/cxx/parser/performance/time.hxx1
-rw-r--r--xsd/examples/cxx/parser/polymorphism/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/polymorphism/makefile11
-rw-r--r--xsd/examples/cxx/parser/polymorphism/supermen-pimpl.cxx1
-rw-r--r--xsd/examples/cxx/parser/polymorphism/supermen-pimpl.hxx1
-rw-r--r--xsd/examples/cxx/parser/polymorphism/supermen.xml1
-rw-r--r--xsd/examples/cxx/parser/polymorphism/supermen.xsd1
-rw-r--r--xsd/examples/cxx/parser/polyroot/batman.xml1
-rw-r--r--xsd/examples/cxx/parser/polyroot/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/polyroot/makefile11
-rw-r--r--xsd/examples/cxx/parser/polyroot/person.xml1
-rw-r--r--xsd/examples/cxx/parser/polyroot/superman.xml1
-rw-r--r--xsd/examples/cxx/parser/polyroot/supermen-pimpl.cxx1
-rw-r--r--xsd/examples/cxx/parser/polyroot/supermen-pimpl.hxx1
-rw-r--r--xsd/examples/cxx/parser/polyroot/supermen.xsd1
-rw-r--r--xsd/examples/cxx/parser/wildcard/driver.cxx1
-rw-r--r--xsd/examples/cxx/parser/wildcard/email.xml1
-rw-r--r--xsd/examples/cxx/parser/wildcard/email.xsd1
-rw-r--r--xsd/examples/cxx/parser/wildcard/makefile9
-rw-r--r--xsd/examples/cxx/tree/README12
-rw-r--r--xsd/examples/cxx/tree/binary/boost/boost-archive-extraction.hxx2
-rw-r--r--xsd/examples/cxx/tree/binary/boost/boost-archive-insertion.hxx2
-rw-r--r--xsd/examples/cxx/tree/binary/boost/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/binary/boost/library.xml1
-rw-r--r--xsd/examples/cxx/tree/binary/boost/library.xsd1
-rw-r--r--xsd/examples/cxx/tree/binary/boost/makefile27
-rw-r--r--xsd/examples/cxx/tree/binary/cdr/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/binary/cdr/library.xml1
-rw-r--r--xsd/examples/cxx/tree/binary/cdr/library.xsd1
-rw-r--r--xsd/examples/cxx/tree/binary/cdr/makefile25
-rw-r--r--xsd/examples/cxx/tree/binary/makefile5
-rw-r--r--xsd/examples/cxx/tree/binary/xdr/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/binary/xdr/library.xml1
-rw-r--r--xsd/examples/cxx/tree/binary/xdr/library.xsd1
-rw-r--r--xsd/examples/cxx/tree/binary/xdr/makefile27
-rw-r--r--xsd/examples/cxx/tree/caching/driver.cxx44
-rw-r--r--xsd/examples/cxx/tree/caching/library.xml1
-rw-r--r--xsd/examples/cxx/tree/caching/library.xsd1
-rw-r--r--xsd/examples/cxx/tree/caching/makefile10
-rw-r--r--xsd/examples/cxx/tree/compression/compressed-format-target.cxx5
-rw-r--r--xsd/examples/cxx/tree/compression/compressed-format-target.hxx5
-rw-r--r--xsd/examples/cxx/tree/compression/compressed-input-source.cxx20
-rw-r--r--xsd/examples/cxx/tree/compression/compressed-input-source.hxx11
-rw-r--r--xsd/examples/cxx/tree/compression/driver.cxx3
-rw-r--r--xsd/examples/cxx/tree/compression/library.xsd1
-rw-r--r--xsd/examples/cxx/tree/compression/makefile25
-rw-r--r--xsd/examples/cxx/tree/custom/calendar/calendar.xml1
-rw-r--r--xsd/examples/cxx/tree/custom/calendar/calendar.xsd1
-rw-r--r--xsd/examples/cxx/tree/custom/calendar/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/calendar/makefile32
-rw-r--r--xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/comments/dom-parse.cxx36
-rw-r--r--xsd/examples/cxx/tree/custom/comments/dom-parse.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/comments/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/comments/makefile14
-rw-r--r--xsd/examples/cxx/tree/custom/comments/people.xml1
-rw-r--r--xsd/examples/cxx/tree/custom/comments/people.xsd1
-rw-r--r--xsd/examples/cxx/tree/custom/comments/xml-schema-custom.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/comments/xml-schema-custom.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/contacts/contacts-custom.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/contacts/contacts-custom.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/contacts/contacts.xml1
-rw-r--r--xsd/examples/cxx/tree/custom/contacts/contacts.xsd1
-rw-r--r--xsd/examples/cxx/tree/custom/contacts/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/contacts/makefile13
-rw-r--r--xsd/examples/cxx/tree/custom/double/double-custom.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/double/double-custom.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/double/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/double/makefile16
-rw-r--r--xsd/examples/cxx/tree/custom/double/order.xsd1
-rw-r--r--xsd/examples/cxx/tree/custom/makefile17
-rw-r--r--xsd/examples/cxx/tree/custom/mixed/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/mixed/makefile13
-rw-r--r--xsd/examples/cxx/tree/custom/mixed/people-custom.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/mixed/people-custom.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/mixed/people.xml1
-rw-r--r--xsd/examples/cxx/tree/custom/mixed/people.xsd1
-rw-r--r--xsd/examples/cxx/tree/custom/taxonomy/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/taxonomy/makefile15
-rw-r--r--xsd/examples/cxx/tree/custom/taxonomy/people-custom-fwd.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/taxonomy/people-custom.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/taxonomy/people-custom.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/taxonomy/people.xml1
-rw-r--r--xsd/examples/cxx/tree/custom/taxonomy/people.xsd1
-rw-r--r--xsd/examples/cxx/tree/custom/wildcard/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/wildcard/makefile13
-rw-r--r--xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.cxx1
-rw-r--r--xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.hxx1
-rw-r--r--xsd/examples/cxx/tree/custom/wildcard/wildcard.xml1
-rw-r--r--xsd/examples/cxx/tree/custom/wildcard/wildcard.xsd1
-rw-r--r--xsd/examples/cxx/tree/dbxml/README45
-rw-r--r--xsd/examples/cxx/tree/dbxml/driver.cxx175
-rw-r--r--xsd/examples/cxx/tree/dbxml/library.xsd75
-rw-r--r--xsd/examples/cxx/tree/embedded/driver.cxx41
-rw-r--r--xsd/examples/cxx/tree/embedded/grammar-input-stream.cxx20
-rw-r--r--xsd/examples/cxx/tree/embedded/grammar-input-stream.hxx13
-rw-r--r--xsd/examples/cxx/tree/embedded/library.xml1
-rw-r--r--xsd/examples/cxx/tree/embedded/library.xsd1
-rw-r--r--xsd/examples/cxx/tree/embedded/makefile16
-rw-r--r--xsd/examples/cxx/tree/embedded/xsdbin.cxx61
-rw-r--r--xsd/examples/cxx/tree/hello/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/hello/hello.xml1
-rw-r--r--xsd/examples/cxx/tree/hello/hello.xsd1
-rw-r--r--xsd/examples/cxx/tree/hello/makefile10
-rw-r--r--xsd/examples/cxx/tree/library/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/library/library.xml1
-rw-r--r--xsd/examples/cxx/tree/library/library.xsd1
-rw-r--r--xsd/examples/cxx/tree/library/makefile11
-rw-r--r--xsd/examples/cxx/tree/makefile30
-rw-r--r--xsd/examples/cxx/tree/messaging/balance.xml1
-rw-r--r--xsd/examples/cxx/tree/messaging/deposit.xml1
-rw-r--r--xsd/examples/cxx/tree/messaging/dom-parse.cxx32
-rw-r--r--xsd/examples/cxx/tree/messaging/dom-parse.hxx1
-rw-r--r--xsd/examples/cxx/tree/messaging/dom-serialize.cxx27
-rw-r--r--xsd/examples/cxx/tree/messaging/dom-serialize.hxx1
-rw-r--r--xsd/examples/cxx/tree/messaging/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/messaging/makefile13
-rw-r--r--xsd/examples/cxx/tree/messaging/protocol.xsd1
-rw-r--r--xsd/examples/cxx/tree/messaging/withdraw.xml1
-rw-r--r--xsd/examples/cxx/tree/mixed/README6
-rw-r--r--xsd/examples/cxx/tree/mixed/driver.cxx9
-rw-r--r--xsd/examples/cxx/tree/mixed/makefile10
-rw-r--r--xsd/examples/cxx/tree/mixed/text.xml3
-rw-r--r--xsd/examples/cxx/tree/mixed/text.xsd1
-rw-r--r--xsd/examples/cxx/tree/multiroot/balance.xml1
-rw-r--r--xsd/examples/cxx/tree/multiroot/deposit.xml1
-rw-r--r--xsd/examples/cxx/tree/multiroot/dom-parse.cxx32
-rw-r--r--xsd/examples/cxx/tree/multiroot/dom-parse.hxx1
-rw-r--r--xsd/examples/cxx/tree/multiroot/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/multiroot/makefile11
-rw-r--r--xsd/examples/cxx/tree/multiroot/protocol.xsd1
-rw-r--r--xsd/examples/cxx/tree/multiroot/withdraw.xml1
-rw-r--r--xsd/examples/cxx/tree/order/README11
-rw-r--r--xsd/examples/cxx/tree/order/element/README35
-rw-r--r--xsd/examples/cxx/tree/order/element/driver.cxx147
-rw-r--r--xsd/examples/cxx/tree/order/element/makefile100
-rw-r--r--xsd/examples/cxx/tree/order/element/transactions.xml32
-rw-r--r--xsd/examples/cxx/tree/order/element/transactions.xsd58
-rw-r--r--xsd/examples/cxx/tree/order/makefile44
-rw-r--r--xsd/examples/cxx/tree/order/mixed/README45
-rw-r--r--xsd/examples/cxx/tree/order/mixed/driver.cxx89
-rw-r--r--xsd/examples/cxx/tree/order/mixed/makefile (renamed from xsd/examples/cxx/tree/dbxml/makefile)36
-rw-r--r--xsd/examples/cxx/tree/order/mixed/text.xml17
-rw-r--r--xsd/examples/cxx/tree/order/mixed/text.xsd28
-rw-r--r--xsd/examples/cxx/tree/performance/README6
-rw-r--r--xsd/examples/cxx/tree/performance/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/performance/makefile15
-rw-r--r--xsd/examples/cxx/tree/performance/parsing.cxx55
-rw-r--r--xsd/examples/cxx/tree/performance/serialization.cxx23
-rw-r--r--xsd/examples/cxx/tree/performance/test-500k.xml1
-rw-r--r--xsd/examples/cxx/tree/performance/test-5k.xml1
-rw-r--r--xsd/examples/cxx/tree/performance/test.xsd1
-rw-r--r--xsd/examples/cxx/tree/performance/time.cxx3
-rw-r--r--xsd/examples/cxx/tree/performance/time.hxx1
-rw-r--r--xsd/examples/cxx/tree/polymorphism/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/polymorphism/makefile11
-rw-r--r--xsd/examples/cxx/tree/polymorphism/supermen.xml1
-rw-r--r--xsd/examples/cxx/tree/polymorphism/supermen.xsd1
-rw-r--r--xsd/examples/cxx/tree/streaming/README23
-rw-r--r--xsd/examples/cxx/tree/streaming/driver.cxx167
-rw-r--r--xsd/examples/cxx/tree/streaming/grammar-input-stream.cxx96
-rw-r--r--xsd/examples/cxx/tree/streaming/grammar-input-stream.hxx41
-rw-r--r--xsd/examples/cxx/tree/streaming/makefile17
-rw-r--r--xsd/examples/cxx/tree/streaming/parser.cxx218
-rw-r--r--xsd/examples/cxx/tree/streaming/parser.hxx47
-rw-r--r--xsd/examples/cxx/tree/streaming/position.xml1
-rw-r--r--xsd/examples/cxx/tree/streaming/position.xsd1
-rw-r--r--xsd/examples/cxx/tree/streaming/serializer.cxx532
-rw-r--r--xsd/examples/cxx/tree/streaming/serializer.hxx138
-rw-r--r--xsd/examples/cxx/tree/wildcard/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/wildcard/email.xml1
-rw-r--r--xsd/examples/cxx/tree/wildcard/email.xsd1
-rw-r--r--xsd/examples/cxx/tree/wildcard/makefile11
-rw-r--r--xsd/examples/cxx/tree/xpath/README18
-rw-r--r--xsd/examples/cxx/tree/xpath/dom-parse.cxx32
-rw-r--r--xsd/examples/cxx/tree/xpath/dom-parse.hxx1
-rw-r--r--xsd/examples/cxx/tree/xpath/driver-2.cxx139
-rw-r--r--xsd/examples/cxx/tree/xpath/driver.cxx1
-rw-r--r--xsd/examples/cxx/tree/xpath/makefile28
-rw-r--r--xsd/examples/cxx/tree/xpath/people.xml1
-rw-r--r--xsd/examples/cxx/tree/xpath/people.xsd1
-rw-r--r--xsd/examples/makefile3
-rw-r--r--xsd/libxsd/INSTALL2
-rw-r--r--xsd/libxsd/makefile11
-rw-r--r--xsd/libxsd/xsd/cxx/auto-array.hxx25
-rw-r--r--xsd/libxsd/xsd/cxx/compilers/vc-7/post.hxx6
-rw-r--r--xsd/libxsd/xsd/cxx/compilers/vc-7/pre.hxx36
-rw-r--r--xsd/libxsd/xsd/cxx/compilers/vc-8/post.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/compilers/vc-8/pre.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/config.hxx38
-rw-r--r--xsd/libxsd/xsd/cxx/exceptions.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/document.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/document.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/elements.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/elements.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/error-handler.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/error-handler.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/exceptions.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/exceptions.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/exceptions.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/expat/elements.hxx30
-rw-r--r--xsd/libxsd/xsd/cxx/parser/expat/elements.txx11
-rw-r--r--xsd/libxsd/xsd/cxx/parser/map.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/map.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/map.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/parser.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/parser.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.hxx9
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.txx11
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.hxx11
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/schema-exceptions.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/schema-exceptions.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/schema-exceptions.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/substitution-map.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/substitution-map.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/exceptions.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/exceptions.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/exceptions.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/parser.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/parser.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.hxx13
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.txx19
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.hxx11
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/xerces/elements.hxx26
-rw-r--r--xsd/libxsd/xsd/cxx/parser/xerces/elements.txx73
-rw-r--r--xsd/libxsd/xsd/cxx/parser/xml-schema.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/xml-schema.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/parser/xml-schema.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/post.hxx6
-rw-r--r--xsd/libxsd/xsd/cxx/pre.hxx8
-rw-r--r--xsd/libxsd/xsd/cxx/ro-string.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/ro-string.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-common.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-extraction.hxx41
-rw-r--r--xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-insertion.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/bits/literals.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/bits/literals.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/buffer.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/buffer.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/comparison-map.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/comparison-map.txx26
-rw-r--r--xsd/libxsd/xsd/cxx/tree/containers-wildcard.hxx7
-rw-r--r--xsd/libxsd/xsd/cxx/tree/containers.hxx374
-rw-r--r--xsd/libxsd/xsd/cxx/tree/containers.txx62
-rw-r--r--xsd/libxsd/xsd/cxx/tree/date-time-extraction.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/date-time-insertion.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/date-time-ostream.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/date-time.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/date-time.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/date-time.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/element-map.hxx13
-rw-r--r--xsd/libxsd/xsd/cxx/tree/element-map.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/elements.hxx596
-rw-r--r--xsd/libxsd/xsd/cxx/tree/elements.ixx253
-rw-r--r--xsd/libxsd/xsd/cxx/tree/elements.txx11
-rw-r--r--xsd/libxsd/xsd/cxx/tree/error-handler.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/error-handler.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/exceptions.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/exceptions.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/facet.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/istream-fwd.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/istream.hxx200
-rw-r--r--xsd/libxsd/xsd/cxx/tree/iterator-adapter.hxx270
-rw-r--r--xsd/libxsd/xsd/cxx/tree/list.hxx28
-rw-r--r--xsd/libxsd/xsd/cxx/tree/ostream.hxx52
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing.txx125
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/boolean.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/byte.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/date-time.txx21
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/decimal.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/double.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/element-map.txx9
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/float.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/int.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/long.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/short.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/unsigned-byte.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/unsigned-int.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/unsigned-long.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/parsing/unsigned-short.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization.txx44
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/boolean.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/byte.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/date-time.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/decimal.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/double.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/element-map.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/float.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/int.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/long.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/short.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/unsigned-byte.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/unsigned-int.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/unsigned-long.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/serialization/unsigned-short.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/std-ostream-map.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/std-ostream-map.txx9
-rw-r--r--xsd/libxsd/xsd/cxx/tree/std-ostream-operators.hxx9
-rw-r--r--xsd/libxsd/xsd/cxx/tree/stream-extraction-map.hxx15
-rw-r--r--xsd/libxsd/xsd/cxx/tree/stream-extraction-map.txx42
-rw-r--r--xsd/libxsd/xsd/cxx/tree/stream-extraction.hxx26
-rw-r--r--xsd/libxsd/xsd/cxx/tree/stream-insertion-map.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/tree/stream-insertion-map.txx28
-rw-r--r--xsd/libxsd/xsd/cxx/tree/stream-insertion.hxx11
-rw-r--r--xsd/libxsd/xsd/cxx/tree/text.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/text.txx17
-rw-r--r--xsd/libxsd/xsd/cxx/tree/type-factory-map.hxx21
-rw-r--r--xsd/libxsd/xsd/cxx/tree/type-factory-map.txx22
-rw-r--r--xsd/libxsd/xsd/cxx/tree/type-serializer-map.hxx8
-rw-r--r--xsd/libxsd/xsd/cxx/tree/type-serializer-map.txx13
-rw-r--r--xsd/libxsd/xsd/cxx/tree/types.hxx190
-rw-r--r--xsd/libxsd/xsd/cxx/tree/types.txx114
-rw-r--r--xsd/libxsd/xsd/cxx/tree/xdr-stream-common.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/tree/xdr-stream-extraction.hxx18
-rw-r--r--xsd/libxsd/xsd/cxx/tree/xdr-stream-insertion.hxx16
-rw-r--r--xsd/libxsd/xsd/cxx/version.hxx7
-rw-r--r--xsd/libxsd/xsd/cxx/xml/bits/literals.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/bits/literals.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/char-iso8859-1.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/char-iso8859-1.txx18
-rw-r--r--xsd/libxsd/xsd/cxx/xml/char-lcp.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/char-lcp.txx27
-rw-r--r--xsd/libxsd/xsd/cxx/xml/char-utf8.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/char-utf8.txx18
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/auto-ptr.hxx83
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.txx15
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/elements.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/elements.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/parsing-header.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/parsing-source.hxx45
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/parsing-source.txx226
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/serialization-header.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/serialization-header.txx17
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/serialization-source.hxx21
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/serialization-source.txx189
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.hxx5
-rw-r--r--xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.txx7
-rw-r--r--xsd/libxsd/xsd/cxx/xml/elements.hxx8
-rw-r--r--xsd/libxsd/xsd/cxx/xml/elements.txx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/error-handler.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/exceptions.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/qualified-name.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.txx14
-rw-r--r--xsd/libxsd/xsd/cxx/xml/sax/std-input-source.hxx32
-rw-r--r--xsd/libxsd/xsd/cxx/xml/std-memory-manager.hxx20
-rw-r--r--xsd/libxsd/xsd/cxx/xml/string.hxx39
-rw-r--r--xsd/libxsd/xsd/cxx/xml/string.ixx3
-rw-r--r--xsd/libxsd/xsd/cxx/xml/string.txx19
-rw-r--r--xsd/libxsd/xsd/cxx/zc-istream.hxx3
-rw-r--r--xsd/libxsd/xsd/cxx/zc-istream.txx3
-rw-r--r--xsd/makefile47
-rw-r--r--xsd/tests/cxx/makefile3
-rw-r--r--xsd/tests/cxx/parser/built-in/driver.cxx9
-rw-r--r--xsd/tests/cxx/parser/built-in/makefile12
-rw-r--r--xsd/tests/cxx/parser/enumeration/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/enumeration/gender.hxx3
-rw-r--r--xsd/tests/cxx/parser/enumeration/makefile14
-rw-r--r--xsd/tests/cxx/parser/generated-impl/makefile14
-rw-r--r--xsd/tests/cxx/parser/list/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/list/makefile12
-rw-r--r--xsd/tests/cxx/parser/makefile3
-rw-r--r--xsd/tests/cxx/parser/name-clash/inheritance/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/name-clash/inheritance/makefile14
-rw-r--r--xsd/tests/cxx/parser/polymorphism/makefile5
-rw-r--r--xsd/tests/cxx/parser/polymorphism/recursive/driver.cxx69
-rw-r--r--xsd/tests/cxx/parser/polymorphism/recursive/makefile84
-rw-r--r--xsd/tests/cxx/parser/polymorphism/recursive/output22
-rw-r--r--xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.cxx148
-rw-r--r--xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.hxx95
-rw-r--r--xsd/tests/cxx/parser/polymorphism/recursive/test.xml15
-rw-r--r--xsd/tests/cxx/parser/polymorphism/recursive/test.xsd53
-rw-r--r--xsd/tests/cxx/parser/polymorphism/same-type/driver.cxx5
-rw-r--r--xsd/tests/cxx/parser/polymorphism/same-type/makefile14
-rw-r--r--xsd/tests/cxx/parser/recursive/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/recursive/makefile14
-rw-r--r--xsd/tests/cxx/parser/test-template/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/test-template/makefile12
-rw-r--r--xsd/tests/cxx/parser/union/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/union/makefile12
-rw-r--r--xsd/tests/cxx/parser/validation/all/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/all/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/any/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/any/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/attribute/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/attribute/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/any-type/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/any-type/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/binary/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/binary/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/boolean/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/boolean/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/byte/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/byte/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/date-time/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/date-time/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/float/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/float/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/int/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/int/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/integer/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/integer/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/long/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/long/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/makefile3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/qname/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/qname/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/short/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/short/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/string/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/string/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/uri/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/built-in/uri/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/choice/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/choice/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/makefile3
-rw-r--r--xsd/tests/cxx/parser/validation/restriction/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/restriction/makefile14
-rw-r--r--xsd/tests/cxx/parser/validation/sequence/driver.cxx3
-rw-r--r--xsd/tests/cxx/parser/validation/sequence/makefile14
-rw-r--r--xsd/tests/cxx/tree/any-type/driver.cxx145
-rw-r--r--xsd/tests/cxx/tree/any-type/makefile87
-rw-r--r--xsd/tests/cxx/tree/any-type/output73
-rw-r--r--xsd/tests/cxx/tree/any-type/test.xml26
-rw-r--r--xsd/tests/cxx/tree/any-type/test.xsd19
-rw-r--r--xsd/tests/cxx/tree/binary/cdr/driver.cxx17
-rw-r--r--xsd/tests/cxx/tree/binary/cdr/makefile16
-rw-r--r--xsd/tests/cxx/tree/binary/cdr/test.xml4
-rw-r--r--xsd/tests/cxx/tree/binary/cdr/test.xsd3
-rw-r--r--xsd/tests/cxx/tree/binary/makefile3
-rw-r--r--xsd/tests/cxx/tree/binary/polymorphic/driver.cxx24
-rw-r--r--xsd/tests/cxx/tree/binary/polymorphic/makefile17
-rw-r--r--xsd/tests/cxx/tree/binary/xdr/driver.cxx29
-rw-r--r--xsd/tests/cxx/tree/binary/xdr/makefile15
-rw-r--r--xsd/tests/cxx/tree/binary/xdr/test.xml4
-rw-r--r--xsd/tests/cxx/tree/binary/xdr/test.xsd3
-rw-r--r--xsd/tests/cxx/tree/built-in/driver.cxx22
-rw-r--r--xsd/tests/cxx/tree/built-in/makefile17
-rw-r--r--xsd/tests/cxx/tree/chameleon/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/chameleon/makefile14
-rw-r--r--xsd/tests/cxx/tree/comparison/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/comparison/makefile14
-rw-r--r--xsd/tests/cxx/tree/compilation/driver.cxx6
-rw-r--r--xsd/tests/cxx/tree/compilation/makefile14
-rw-r--r--xsd/tests/cxx/tree/complex/ctor/driver.cxx53
-rw-r--r--xsd/tests/cxx/tree/complex/ctor/makefile15
-rw-r--r--xsd/tests/cxx/tree/complex/makefile3
-rw-r--r--xsd/tests/cxx/tree/containment/driver.cxx48
-rw-r--r--xsd/tests/cxx/tree/containment/makefile14
-rw-r--r--xsd/tests/cxx/tree/default/general/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/default/general/makefile14
-rw-r--r--xsd/tests/cxx/tree/default/general/output13
-rw-r--r--xsd/tests/cxx/tree/default/makefile3
-rw-r--r--xsd/tests/cxx/tree/default/omit/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/default/omit/makefile14
-rw-r--r--xsd/tests/cxx/tree/default/omit/output2
-rw-r--r--xsd/tests/cxx/tree/detach/driver.cxx26
-rw-r--r--xsd/tests/cxx/tree/detach/makefile14
-rw-r--r--xsd/tests/cxx/tree/dom-association/dom-parse.cxx96
-rw-r--r--xsd/tests/cxx/tree/dom-association/dom-parse.hxx24
-rw-r--r--xsd/tests/cxx/tree/dom-association/driver.cxx72
-rw-r--r--xsd/tests/cxx/tree/dom-association/makefile92
-rw-r--r--xsd/tests/cxx/tree/dom-association/output0
-rw-r--r--xsd/tests/cxx/tree/dom-association/test.xml7
-rw-r--r--xsd/tests/cxx/tree/dom-association/test.xsd12
-rw-r--r--xsd/tests/cxx/tree/encoding/char/iso-8859-1/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/encoding/char/iso-8859-1/makefile14
-rw-r--r--xsd/tests/cxx/tree/encoding/char/iso-8859-1/test.std8
-rw-r--r--xsd/tests/cxx/tree/encoding/char/lcp/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/encoding/char/lcp/makefile14
-rw-r--r--xsd/tests/cxx/tree/encoding/char/lcp/test.std2
-rw-r--r--xsd/tests/cxx/tree/encoding/char/makefile3
-rw-r--r--xsd/tests/cxx/tree/encoding/char/utf-8/driver.cxx9
-rw-r--r--xsd/tests/cxx/tree/encoding/char/utf-8/makefile14
-rw-r--r--xsd/tests/cxx/tree/encoding/char/utf-8/test.stdbin796 -> 230 bytes
-rw-r--r--xsd/tests/cxx/tree/encoding/makefile3
-rw-r--r--xsd/tests/cxx/tree/encoding/wchar/driver.cxx9
-rw-r--r--xsd/tests/cxx/tree/encoding/wchar/makefile14
-rw-r--r--xsd/tests/cxx/tree/encoding/wchar/test.stdbin768 -> 261 bytes
-rw-r--r--xsd/tests/cxx/tree/enumeration/ctor/driver.cxx3
-rw-r--r--xsd/tests/cxx/tree/enumeration/ctor/makefile14
-rw-r--r--xsd/tests/cxx/tree/enumeration/inheritance/driver.cxx13
-rw-r--r--xsd/tests/cxx/tree/enumeration/inheritance/makefile14
-rw-r--r--xsd/tests/cxx/tree/enumeration/makefile3
-rw-r--r--xsd/tests/cxx/tree/float/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/float/makefile14
-rw-r--r--xsd/tests/cxx/tree/float/test.std33
-rw-r--r--xsd/tests/cxx/tree/list/ctor/driver.cxx3
-rw-r--r--xsd/tests/cxx/tree/list/ctor/makefile14
-rw-r--r--xsd/tests/cxx/tree/list/makefile3
-rw-r--r--xsd/tests/cxx/tree/makefile46
-rw-r--r--xsd/tests/cxx/tree/name-clash/inheritance/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/name-clash/inheritance/makefile14
-rw-r--r--xsd/tests/cxx/tree/name-clash/makefile3
-rw-r--r--xsd/tests/cxx/tree/naming/camel/driver.cxx16
-rw-r--r--xsd/tests/cxx/tree/naming/camel/makefile14
-rw-r--r--xsd/tests/cxx/tree/naming/java/driver.cxx15
-rw-r--r--xsd/tests/cxx/tree/naming/java/makefile14
-rw-r--r--xsd/tests/cxx/tree/naming/knr/driver.cxx16
-rw-r--r--xsd/tests/cxx/tree/naming/knr/makefile14
-rw-r--r--xsd/tests/cxx/tree/naming/makefile3
-rw-r--r--xsd/tests/cxx/tree/order/driver.cxx65
-rw-r--r--xsd/tests/cxx/tree/order/makefile94
-rw-r--r--xsd/tests/cxx/tree/order/output92
-rw-r--r--xsd/tests/cxx/tree/order/test.xml71
-rw-r--r--xsd/tests/cxx/tree/order/test.xsd130
-rw-r--r--xsd/tests/cxx/tree/polymorphism/comparison/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/polymorphism/comparison/makefile14
-rw-r--r--xsd/tests/cxx/tree/polymorphism/makefile3
-rw-r--r--xsd/tests/cxx/tree/polymorphism/ostream/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/polymorphism/ostream/makefile16
-rw-r--r--xsd/tests/cxx/tree/polymorphism/ostream/output5
-rw-r--r--xsd/tests/cxx/tree/polymorphism/ostream/test.xml13
-rw-r--r--xsd/tests/cxx/tree/polymorphism/ostream/test.xsd18
-rw-r--r--xsd/tests/cxx/tree/polymorphism/same-type/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/polymorphism/same-type/makefile14
-rw-r--r--xsd/tests/cxx/tree/prefix/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/prefix/makefile16
-rw-r--r--xsd/tests/cxx/tree/prefix/output4
-rw-r--r--xsd/tests/cxx/tree/test-template/driver.cxx7
-rw-r--r--xsd/tests/cxx/tree/test-template/makefile14
-rw-r--r--xsd/tests/cxx/tree/types-only/driver.cxx4
-rw-r--r--xsd/tests/cxx/tree/types-only/makefile14
-rw-r--r--xsd/tests/cxx/tree/union/ctor/driver.cxx3
-rw-r--r--xsd/tests/cxx/tree/union/ctor/makefile14
-rw-r--r--xsd/tests/cxx/tree/union/makefile3
-rw-r--r--xsd/tests/cxx/tree/wildcard/driver.cxx16
-rw-r--r--xsd/tests/cxx/tree/wildcard/makefile14
-rw-r--r--xsd/tests/makefile3
-rw-r--r--xsd/version2
-rw-r--r--xsd/xsd/cxx/elements.cxx237
-rw-r--r--xsd/xsd/cxx/elements.hxx208
-rw-r--r--xsd/xsd/cxx/literal-map.cxx80
-rw-r--r--xsd/xsd/cxx/literal-map.hxx13
-rw-r--r--xsd/xsd/cxx/option-types.cxx48
-rw-r--r--xsd/xsd/cxx/option-types.hxx35
-rw-r--r--xsd/xsd/cxx/options.cli551
-rw-r--r--xsd/xsd/cxx/options.cxx638
-rw-r--r--xsd/xsd/cxx/options.hxx440
-rw-r--r--xsd/xsd/cxx/options.ixx601
-rw-r--r--xsd/xsd/cxx/parser/attribute-validation-source.cxx45
-rw-r--r--xsd/xsd/cxx/parser/attribute-validation-source.hxx5
-rw-r--r--xsd/xsd/cxx/parser/characters-validation-source.cxx9
-rw-r--r--xsd/xsd/cxx/parser/characters-validation-source.hxx5
-rw-r--r--xsd/xsd/cxx/parser/cli.hxx154
-rw-r--r--xsd/xsd/cxx/parser/driver-source.cxx164
-rw-r--r--xsd/xsd/cxx/parser/driver-source.hxx5
-rw-r--r--xsd/xsd/cxx/parser/element-validation-source.cxx213
-rw-r--r--xsd/xsd/cxx/parser/element-validation-source.hxx5
-rw-r--r--xsd/xsd/cxx/parser/elements.cxx113
-rw-r--r--xsd/xsd/cxx/parser/elements.hxx74
-rw-r--r--xsd/xsd/cxx/parser/generator.cxx890
-rw-r--r--xsd/xsd/cxx/parser/generator.hxx28
-rw-r--r--xsd/xsd/cxx/parser/impl-header.cxx17
-rw-r--r--xsd/xsd/cxx/parser/impl-header.hxx5
-rw-r--r--xsd/xsd/cxx/parser/impl-source.cxx31
-rw-r--r--xsd/xsd/cxx/parser/impl-source.hxx5
-rw-r--r--xsd/xsd/cxx/parser/name-processor.cxx197
-rw-r--r--xsd/xsd/cxx/parser/name-processor.hxx15
-rw-r--r--xsd/xsd/cxx/parser/options.cli148
-rw-r--r--xsd/xsd/cxx/parser/options.cxx581
-rw-r--r--xsd/xsd/cxx/parser/options.hxx183
-rw-r--r--xsd/xsd/cxx/parser/options.ixx160
-rw-r--r--xsd/xsd/cxx/parser/parser-forward.cxx15
-rw-r--r--xsd/xsd/cxx/parser/parser-forward.hxx5
-rw-r--r--xsd/xsd/cxx/parser/parser-header.cxx175
-rw-r--r--xsd/xsd/cxx/parser/parser-header.hxx7
-rw-r--r--xsd/xsd/cxx/parser/parser-inline.cxx46
-rw-r--r--xsd/xsd/cxx/parser/parser-inline.hxx5
-rw-r--r--xsd/xsd/cxx/parser/parser-source.cxx139
-rw-r--r--xsd/xsd/cxx/parser/parser-source.hxx5
-rw-r--r--xsd/xsd/cxx/parser/print-impl-common.hxx89
-rw-r--r--xsd/xsd/cxx/parser/state-processor.cxx70
-rw-r--r--xsd/xsd/cxx/parser/state-processor.hxx10
-rw-r--r--xsd/xsd/cxx/parser/type-processor.cxx86
-rw-r--r--xsd/xsd/cxx/parser/type-processor.hxx19
-rw-r--r--xsd/xsd/cxx/parser/validator.cxx140
-rw-r--r--xsd/xsd/cxx/parser/validator.hxx20
-rw-r--r--xsd/xsd/cxx/tree/cli.hxx228
-rw-r--r--xsd/xsd/cxx/tree/counter.cxx64
-rw-r--r--xsd/xsd/cxx/tree/counter.hxx9
-rw-r--r--xsd/xsd/cxx/tree/default-value.cxx266
-rw-r--r--xsd/xsd/cxx/tree/default-value.hxx135
-rw-r--r--xsd/xsd/cxx/tree/elements.cxx428
-rw-r--r--xsd/xsd/cxx/tree/elements.hxx632
-rw-r--r--xsd/xsd/cxx/tree/fundamental-header.hxx160
-rw-r--r--xsd/xsd/cxx/tree/generator.cxx1470
-rw-r--r--xsd/xsd/cxx/tree/generator.hxx21
-rw-r--r--xsd/xsd/cxx/tree/name-processor.cxx622
-rw-r--r--xsd/xsd/cxx/tree/name-processor.hxx14
-rw-r--r--xsd/xsd/cxx/tree/options.cli480
-rw-r--r--xsd/xsd/cxx/tree/options.cxx1149
-rw-r--r--xsd/xsd/cxx/tree/options.hxx411
-rw-r--r--xsd/xsd/cxx/tree/options.ixx502
-rw-r--r--xsd/xsd/cxx/tree/order-processor.cxx244
-rw-r--r--xsd/xsd/cxx/tree/order-processor.hxx30
-rw-r--r--xsd/xsd/cxx/tree/parser-header.cxx39
-rw-r--r--xsd/xsd/cxx/tree/parser-header.hxx5
-rw-r--r--xsd/xsd/cxx/tree/parser-source.cxx151
-rw-r--r--xsd/xsd/cxx/tree/parser-source.hxx7
-rw-r--r--xsd/xsd/cxx/tree/polymorphism-processor.cxx216
-rw-r--r--xsd/xsd/cxx/tree/polymorphism-processor.hxx16
-rw-r--r--xsd/xsd/cxx/tree/serialization-header.cxx23
-rw-r--r--xsd/xsd/cxx/tree/serialization-header.hxx5
-rw-r--r--xsd/xsd/cxx/tree/serialization-source.cxx370
-rw-r--r--xsd/xsd/cxx/tree/serialization-source.hxx9
-rw-r--r--xsd/xsd/cxx/tree/stream-extraction-source.cxx231
-rw-r--r--xsd/xsd/cxx/tree/stream-extraction-source.hxx5
-rw-r--r--xsd/xsd/cxx/tree/stream-header.cxx19
-rw-r--r--xsd/xsd/cxx/tree/stream-header.hxx5
-rw-r--r--xsd/xsd/cxx/tree/stream-insertion-header.cxx37
-rw-r--r--xsd/xsd/cxx/tree/stream-insertion-header.hxx5
-rw-r--r--xsd/xsd/cxx/tree/stream-insertion-source.cxx173
-rw-r--r--xsd/xsd/cxx/tree/stream-insertion-source.hxx5
-rw-r--r--xsd/xsd/cxx/tree/stream-source.cxx89
-rw-r--r--xsd/xsd/cxx/tree/stream-source.hxx9
-rw-r--r--xsd/xsd/cxx/tree/tree-forward.cxx49
-rw-r--r--xsd/xsd/cxx/tree/tree-forward.hxx5
-rw-r--r--xsd/xsd/cxx/tree/tree-header.cxx689
-rw-r--r--xsd/xsd/cxx/tree/tree-header.hxx5
-rw-r--r--xsd/xsd/cxx/tree/tree-inline.cxx172
-rw-r--r--xsd/xsd/cxx/tree/tree-inline.hxx7
-rw-r--r--xsd/xsd/cxx/tree/tree-source.cxx1100
-rw-r--r--xsd/xsd/cxx/tree/tree-source.hxx7
-rw-r--r--xsd/xsd/cxx/tree/validator.cxx124
-rw-r--r--xsd/xsd/cxx/tree/validator.hxx11
-rw-r--r--xsd/xsd/elements.hxx30
-rw-r--r--xsd/xsd/makefile90
-rw-r--r--xsd/xsd/options-parser.hxx30
-rw-r--r--xsd/xsd/options.cli313
-rw-r--r--xsd/xsd/options.cxx976
-rw-r--r--xsd/xsd/options.hxx575
-rw-r--r--xsd/xsd/options.ixx462
-rw-r--r--xsd/xsd/processing/cardinality/processor.cxx105
-rw-r--r--xsd/xsd/processing/cardinality/processor.hxx11
-rw-r--r--xsd/xsd/processing/inheritance/processor.cxx95
-rw-r--r--xsd/xsd/processing/inheritance/processor.hxx11
-rw-r--r--xsd/xsd/type-map/lexer.cxx5
-rw-r--r--xsd/xsd/type-map/lexer.hxx19
-rw-r--r--xsd/xsd/type-map/parser.cxx21
-rw-r--r--xsd/xsd/type-map/parser.hxx16
-rw-r--r--xsd/xsd/type-map/type-map.hxx57
-rw-r--r--xsd/xsd/types.hxx20
-rw-r--r--xsd/xsd/usage.hxx226
-rw-r--r--xsd/xsd/xsd.cxx681
-rw-r--r--xsd/xsd/xsd.hxx81
1350 files changed, 50195 insertions, 62878 deletions
diff --git a/xsd/INSTALL b/xsd/INSTALL
index 366cda1..96e63f9 100644
--- a/xsd/INSTALL
+++ b/xsd/INSTALL
@@ -2,17 +2,16 @@ Compiler Prerequisites
build-time:
- - build >= 0.3.7 http://www.codesynthesis.com/projects/build/
- - g++ >= 3.4.3 http://gcc.gnu.org
+ - g++ >= 3.4.3 http://gcc.gnu.org
+ - build >= 0.3.10 http://www.codesynthesis.com/projects/build/
+ - cli >= 1.2.0 http://www.codesynthesis.com/projects/cli/
run-time:
- - libxsd-frontend >= 1.17.0 http://www.codesynthesis.com/projects/libxsd-frontend/
- - libbackend-elements >= 1.7.2 http://kolpackov.net/projects/libbackend-elements/
- - libcult >= 1.4.6 http://kolpackov.net/projects/libcult/
- - libxerces-c >= 2.6.0 http://xerces.apache.org/xerces-c/
- - libboost_filesystem >= 1.33.1 http://boost.org
- - libboost_regex >= 1.33.1 http://boost.org
+ - libxerces-c >= 3.0.0 http://xerces.apache.org/xerces-c/
+ - libcutl >= 1.8.0 http://www.codesynthesis.com/projects/libcutl/
+ - libxsd-frontend >= 2.0.0 http://www.codesynthesis.com/projects/libxsd-frontend/
+
Generated Code Prerequisites
@@ -22,7 +21,7 @@ Generated Code Prerequisites
run-time:
- - libxerces-c >= 2.5.0 (C++/Tree and C++/Parser mappings)
+ - libxerces-c >= 3.0.0 (C++/Tree and C++/Parser mappings)
http://xerces.apache.org/xerces-c/
- libexpat >= 1.95.8 (C++/Parser mapping, alternative to libxerces-c)
@@ -31,8 +30,14 @@ Generated Code Prerequisites
Building XSD
- To build in the source directory simply run 'make'. You can also
- build in a separate directory, e.g.,
+ First build (and optionally install) all the prerequisites listed above.
+ Alternatively, you can use the xsd+dep package that includes all the
+ prerequisites (except g++ and libxerces-c) and can be built with a
+ single 'make' invocation.
+
+ Once the prerequisites are ready, to build the XSD compiler in source
+ directory simply run 'make'. You can also build in a separate directory,
+ for example:
$ mkdir xsd-i686-pc-linux-gnu
$ cd xsd-i686-pc-linux-gnu
@@ -43,7 +48,7 @@ Installing XSD
To install XSD, run 'make install'. Use the install_prefix command
line variable to specify installation location (default is /usr/local),
- e.g.,
+ for example:
$ make install_prefix=/usr install
diff --git a/xsd/NEWS b/xsd/NEWS
index b999efb..5bb59d7 100644
--- a/xsd/NEWS
+++ b/xsd/NEWS
@@ -1,17 +1,94 @@
+Version 4.0.0
+
+ * Xerces-C++ 2-series (2.8.0 and earlier) is no longer supported.
+
+ * Visual Studio 2003 (7.1) is no longer supported.
+
+ * HP aCC3 (HP-UX/PA-RISC) is no longer supported.
+
+ * Oracle/Berkeley DB XML support has been removed since it no longer
+ supports the Xerces-C++-based document access.
+
+ * New option, --std, specifies the C++ standard that the generated code
+ should conform to. Valid values are c++98 (default) and c++11.
+
+ The C++ standard affects various aspects of the generated code that are
+ discussed in more detail in mapping-specific documentation (guides and
+ manuals). Overall, when C++11 is selected, the generated code relies on
+ the move semantics and uses std::unique_ptr instead of deprecated
+ std::auto_ptr. See also the documentation for the --std option in the
+ XSD compiler command line manual (man pages).
+
+ * New option, --fat-type-file, triggers the placement of code corresponding
+ to global elements into type files instead of schema files in the file-
+ per-type mode. This option is primarily useful when trying to minimize
+ the amount of object code that is linked to an executable by packaging
+ compiled generated code into a static (archive) library.
+
+C++/Tree
+
+ * Support for ordered types. C++/Tree flattens nested compositors which
+ sometimes can result in the loss of element ordering information that
+ could be significant to the application. Ordered types address this
+ problem. For more information, refer to Section 2.8.4, "Element Order"
+ in the C++/Tree Mapping User Manual.
+
+ * Support for mixed content in ordered types. For more information, refer
+ to Section 2.13, "Mapping for Mixed Content Models" in the C++/Tree
+ Mapping User Manual.
+
+ * xml_schema::type represents anyType content as a DOM fragment, similar
+ to wildcards. For more information, refer to Section 2.5.2, "Mapping
+ for anyType" in the C++/Tree Mapping User Manual.
+
+ * xml_schema::simple_type represents anySimpleType content as a text
+ string. For more information, refer to Section 2.5.3, "Mapping for
+ anySimpleType" in the C++/Tree Mapping User Manual.
+
+ * New option, --generate-dep, triggers the generation of the make
+ dependency files (.d) for the generated C++ files. Other options
+ controlling dependency generation are: --generate-dep-only,
+ --dep-phony, --dep-target, --dep-suffix, and --dep-regex. For
+ details on this functionality, refer to the XSD compiler command
+ line manual (man pages).
+
+ * New option, --suppress-assignment, suppresses the generation of copy
+ assignment operators for complex types. If this option is specified,
+ the copy assignment operators for such types are declared private and
+ left unimplemented.
+
+ * Binary representation now stores string-based enumerations as integer
+ values corresponding to C++ enumerators instead of string literals.
+
+ * Binary representation now pools polymorphic type-id strings in an
+ implicit string pool. The string pool support can also be used to
+ pool strings in other situations. For example, you can implement
+ string insertion/extraction operators for your stream to pool all
+ strings. This can be useful if your documents contain a large number
+ of repetitive strings.
+
+ * New option, --polymorphic-plate, allows the creation of multiple
+ polymorphic map plates in the same application. For details, refer
+ to the XSD compiler command line manual (man pages).
+
+ * To get the DOM association in the copy of an object model tree one
+ now needs to explicitly pass the xml_schema::flags::keep_dom flag as
+ the second argument to the copy constructor or clone() function.
+
Version 3.3.0
* New option, --char-encoding, allows you to specify the character encoding
that should be used in the generated code. Valid values for the 'char'
character type are 'utf8' (default), 'iso8859-1' (new), 'lcp' (Xerces-C++
- local code page), and 'custom' (provides support for custom encodings).
- Note that if you use a non-default character encoding and include some
- libxsd headers (e.g., xsd/cxx/xml/string.hxx) directly, then you will
- need to first include the correct xsd/cxx/xml/char-<enc>.hxx header,
- where <enc> is iso8859-1, lcp, etc. This mechanism replaces the
+ local code page), and 'custom' (provides support for custom encodings).
+ Note that if you use a non-default character encoding and include some
+ libxsd headers (e.g., xsd/cxx/xml/string.hxx) directly, then you will
+ need to first include the correct xsd/cxx/xml/char-<enc>.hxx header,
+ where <enc> is iso8859-1, lcp, etc. This mechanism replaces the
XSD_USE_LCP macro.
- For the wchar_t character type the only valid value for this option is
- 'auto' and the encoding is automatically selected between UTF-16 and
+ For the wchar_t character type the only valid value for this option is
+ 'auto' and the encoding is automatically selected between UTF-16 and
UTF-32, depending on the wchar_t type size.
* When the XSD compiler is built with Xerces-C++ 3.1.0 or later, the
@@ -25,7 +102,7 @@ Version 3.3.0
in the urn name is used to derive the C++ namespace name.
* New option, --schema-file-regex, in combination with the existing
- --type-file-regex, can be used to place the generated files into
+ --type-file-regex, can be used to place the generated files into
subdirectories or to resolve file name conflicts in the file-per-
type mode (--file-per-type).
@@ -34,12 +111,12 @@ Version 3.3.0
driver, P - C++/Parser mapping, T - C++/Tree mapping.
* Strings used to match regular expressions supplied with the
- --namespace-regex and --anonymous-regex options now include the file
+ --namespace-regex and --anonymous-regex options now include the file
component for the schema being compiled.
* The XSD_NO_EXPORT macro can be used to omit code generated with the
--export/import-maps and, for C++/Tree, --generate-xml-schema options
- during C++ compilation. This may be useful if you would like to use
+ during C++ compilation. This may be useful if you would like to use
the same generated code across multiple platforms.
C++/Tree
@@ -49,7 +126,7 @@ Version 3.3.0
is primarily useful to distinguish object models with the same root
type but with different root elements. For more information, refer
to the messaging example and Section 2.9.1, "Element Types" in the
- C++/Tree Mapping User Manual. To support the customization of the
+ C++/Tree Mapping User Manual. To support the customization of the
element type naming the --element-type-regex option has been added.
See the NAMING CONVENTION section in the compiler command line manual
(man pages) for details.
@@ -61,9 +138,9 @@ Version 3.3.0
example and Section 2.9.2, "Element Map" in the C++/Tree Mapping
User Manual.
- * Prior to this version, if the --generate-polymorphic option is
+ * Prior to this version, if the --generate-polymorphic option is
specified, the compiler treats all types as potentially polymorphic.
- Now by default only type hierarchies used in substitution groups and
+ Now by default only type hierarchies used in substitution groups and
those explicitly declared polymorphic with the new --polymorphic-type
option are treated as polymorphic. This results in smaller and faster
generated code. If you would like to continue using the old behavior,
@@ -71,13 +148,13 @@ Version 3.3.0
on this change see Section 2.11, "Mapping for xsi:type and Substitution
Groups" in the C++/Tree Mapping User Manual.
- * New option, --generate-detach, triggers the generation of detach
- functions for required elements and attributes. For optional and
- sequence cardinalities the detach functions are now provided by the
- respective containers even without this option. These functions, for
+ * New option, --generate-detach, triggers the generation of detach
+ functions for required elements and attributes. For optional and
+ sequence cardinalities the detach functions are now provided by the
+ respective containers even without this option. These functions, for
example, allow one to move sub-trees in the object model either within
- the same tree or between different trees without copying. For more
- information, refer to Section 2.8 "Mapping for Local Elements and
+ the same tree or between different trees without copying. For more
+ information, refer to Section 2.8 "Mapping for Local Elements and
Attributes" in the C++/Tree Mapping User Manual.
* New option, --export-xml-schema, causes the compiler to export/import
@@ -85,33 +162,33 @@ Version 3.3.0
with the --export-symbol option.
* New example, embedded, shows how to embed the binary representation of
- the schema grammar into an application and then use it to parse and
+ the schema grammar into an application and then use it to parse and
validate XML documents.
- * New example, compression, shows how to compress an XML document during
+ * New example, compression, shows how to compress an XML document during
serialization and decompress it during parsing using the zlib library.
- * New example, custom/mixed, shows how to use type customization to parse
+ * New example, custom/mixed, shows how to use type customization to parse
and serialize mixed content.
* The streaming example has been extended to show how to perform stream-
oriented, partially in-memory XML processing using the C++/Tree mapping.
With the partially in-memory parsing and serialization only a part of
the object model is in memory at any given time. With this approach one
- can process parts of the document as they become available as well as
+ can process parts of the document as they become available as well as
handle documents that are too large to fit into memory.
* New default/fixed value initialization code. Now the default/fixed values
are parsed by the XSD compiler at compile time instead of the standard
- parsing code at runtime. This will allow the compilation of schemas that
- use the default/fixed values without support for XML parsing
+ parsing code at runtime. This will allow the compilation of schemas that
+ use the default/fixed values without support for XML parsing
(--suppress-parsing option).
- * Empty XML Schema enumeration values are now mapped to the 'empty' C++
+ * Empty XML Schema enumeration values are now mapped to the 'empty' C++
enumerator name instead of 'cxx'.
- * XML Schema union types with members that are enumeration types are
- automatically converted to equivalent enumeration types with a union
+ * XML Schema union types with members that are enumeration types are
+ automatically converted to equivalent enumeration types with a union
of all the members' enumerators.
Version 3.2.0
@@ -120,7 +197,7 @@ Version 3.2.0
the specified id. Specifying 'all' for the warning id disables all
warnings.
- * New options, --export-maps and --import-maps, provide support for
+ * New options, --export-maps and --import-maps, provide support for
splitting a polymorphic type hierarchy across several Win32 DLLs.
See the compiler command line manual (man pages) for details.
@@ -149,14 +226,14 @@ Version 3.2.0
with specific cardinalities. For more information see the NAMING
CONVENTION section in the compiler command line manual (man pages).
- * Support for comparison (--generate-comparison) and printing
+ * Support for comparison (--generate-comparison) and printing
(--generate-ostream) of polymorphic object models.
* New serialization flag, xml_schema::flags::dont_pretty_print,
disables extra spaces and new lines that make the resulting XML
slightly bigger but easier to read.
- * New example, custom/double, shows how to customize parsing and
+ * New example, custom/double, shows how to customize parsing and
serialization code for the xsd:double XML Schema built-in type.
It can be used as a guide on how to customize built-in XML Schema
types that are mapped to fundamental C++ types.
@@ -164,7 +241,7 @@ Version 3.2.0
* Support for fractionDigits and totalDigits facets in serialization
of types derived from xsd:decimal.
- * New set of compile-time macros that control how the xsd:float,
+ * New set of compile-time macros that control how the xsd:float,
xsd:double, and xsd:decimal types are serialized. The following
macros control the format:
@@ -234,7 +311,7 @@ Version 3.2.0
a pointer or a reference) and 'const return type&' otherwise.
* The interface for polymorphic parsing has been simplified. Calling the
- *_parser() functions multiple times to specify several parsers is no
+ *_parser() functions multiple times to specify several parsers is no
longer supported. Instead you need to pass the xml_schema::parser_map
object which contains the parsers. For more information refer to
Section 5.4, "Support for Polymorphism" in the C++/Parser Mapping
diff --git a/xsd/README b/xsd/README
index b7d30d7..ee60cce 100644
--- a/xsd/README
+++ b/xsd/README
@@ -19,9 +19,9 @@ See the LICENSE file for distribution conditions.
See the INSTALL file for prerequisites and installation instructions.
-See the documentation/ directory for documentation.
+See the doc/ directory for documentation.
-The project page is at http://codesynthesis.com/projects/xsd/.
+The project page is at http://www.codesynthesis.com/projects/xsd/.
Send bug reports or any other feedback to the xsd-users@codesynthesis.com
mailing list.
diff --git a/xsd/build/bootstrap.make b/xsd/build/bootstrap.make
index 7b4fdb9..56c20b3 100644
--- a/xsd/build/bootstrap.make
+++ b/xsd/build/bootstrap.make
@@ -1,9 +1,8 @@
# file : build/bootstrap.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-project_name := XSD
+project_name := xsd
# First try to include the bundled bootstrap.make if it exist. If that
# fails, let make search for the external bootstrap.make.
@@ -16,10 +15,17 @@ ifeq ($(patsubst %build/bootstrap.make,,$(lastword $(MAKEFILE_LIST))),)
include $(build)/bootstrap.make
endif
+def_goal := $(.DEFAULT_GOAL)
+
# Configuration
#
$(call include,$(scf_root)/configuration.make)
+# Include C++ configuration. We need to know if we are using the generic
+# C++ compiler in which case we need to compensate for missing dependency
+# auto-generation (see below).
+#
+$(call include,$(bld_root)/cxx/configuration.make)
# Aliases
#
@@ -29,23 +35,17 @@ $(call include,$(scf_root)/configuration.make)
$(out_base)/.dist \
$(out_base)/.dist-win \
$(out_base)/.dist-common \
- $(out_base)/.clean \
- $(out_base)/.cleandoc
+ $(out_base)/.clean
ifdef %interactive%
-.PHONY: test install dist dist-win clean cleandoc
+.PHONY: test install dist dist-win clean
test: $(out_base)/.test
install: $(out_base)/.install
dist: $(out_base)/.dist
dist-win: $(out_base)/.dist-win
clean: $(out_base)/.clean
-cleandoc: $(out_base)/.cleandoc
-
-ifneq ($(filter $(.DEFAULT_GOAL),test install dist dist-win clean cleandoc),)
-.DEFAULT_GOAL :=
-endif
endif
@@ -58,14 +58,28 @@ $(error dist_prefix is not set)
endif
endif
-
-# Don't include dependency info for certain targets.
+# If we don't have dependency auto-generation then we need to manually
+# make sure that generated files are generated before C++ file are
+# compiler. To do this we make the object files ($2) depend in order-
+# only on generated files ($3).
#
+ifeq ($(cxx_id),generic)
+
+define include-dep
+$(if $2,$(eval $2: | $3))
+endef
+
+else
+
define include-dep
$(call -include,$1)
endef
-ifneq ($(filter $(MAKECMDGOALS),clean cleandoc disfigure),)
+endif
+
+# Don't include dependency info for certain targets.
+#
+ifneq ($(filter $(MAKECMDGOALS),clean disfigure),)
include-dep =
endif
@@ -84,3 +98,5 @@ include-dep =
endif
endif
+
+.DEFAULT_GOAL := $(def_goal)
diff --git a/xsd/build/configuration-dynamic.make b/xsd/build/configuration-dynamic.make
index d8f9cf3..8bebd90 100644
--- a/xsd/build/configuration-dynamic.make
+++ b/xsd/build/configuration-dynamic.make
@@ -1,7 +1,8 @@
xsd_with_zlib := n
xsd_with_ace := n
xsd_with_xdr := n
-xsd_with_dbxml := n
xsd_with_xqilla := n
xsd_with_boost_date_time := n
xsd_with_boost_serialization := n
+
+xsd_clean_gen := n
diff --git a/xsd/build/configuration-rules.make b/xsd/build/configuration-rules.make
index 6fb0155..1cf21d0 100644
--- a/xsd/build/configuration-rules.make
+++ b/xsd/build/configuration-rules.make
@@ -1,6 +1,5 @@
# file : build/configuration-rules.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
$(dcf_root)/configuration-dynamic.make: | $(dcf_root)/.
diff --git a/xsd/build/configuration.make b/xsd/build/configuration.make
index b1f5e60..3d739b9 100644
--- a/xsd/build/configuration.make
+++ b/xsd/build/configuration.make
@@ -1,6 +1,5 @@
# file : build/configuration.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
$(call include-once,$(scf_root)/configuration-rules.make,$(dcf_root))
@@ -10,7 +9,6 @@ $(call include-once,$(scf_root)/configuration-rules.make,$(dcf_root))
xsd_with_zlib :=
xsd_with_ace :=
xsd_with_xdr :=
-xsd_with_dbxml :=
xsd_with_xqilla :=
xsd_with_boost_date_time :=
xsd_with_boost_serialization :=
@@ -22,7 +20,6 @@ ifdef xsd_with_zlib
$(out_root)/%: xsd_with_zlib := $(xsd_with_zlib)
$(out_root)/%: xsd_with_ace := $(xsd_with_ace)
$(out_root)/%: xsd_with_xdr := $(xsd_with_xdr)
-$(out_root)/%: xsd_with_dbxml := $(xsd_with_dbxml)
$(out_root)/%: xsd_with_xqilla := $(xsd_with_xqilla)
$(out_root)/%: xsd_with_boost_date_time := $(xsd_with_boost_date_time)
$(out_root)/%: xsd_with_boost_serialization := $(xsd_with_boost_serialization)
diff --git a/xsd/build/configure b/xsd/build/configure
index 44cbc27..df57f07 100755
--- a/xsd/build/configure
+++ b/xsd/build/configure
@@ -1,8 +1,7 @@
#! /usr/bin/env bash
# file : build/configure
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
# $1 out file
@@ -49,7 +48,6 @@ $echo
with_boost_serialization=`read_y_n n`
-
$echo
$echo "Would you like to build optional parts of '$project_name' that require"
$echo "the boost 'date_time' library?"
@@ -59,13 +57,6 @@ with_boost_date_time=`read_y_n n`
$echo
$echo "Would you like to build optional parts of '$project_name' that require"
-$echo "the 'Berkeley DB XML' library?"
-$echo
-
-with_dbxml=`read_y_n n`
-
-$echo
-$echo "Would you like to build optional parts of '$project_name' that require"
$echo "the XQilla library?"
$echo
@@ -74,7 +65,6 @@ with_xqilla=`read_y_n n`
echo "xsd_with_zlib := $with_zlib" >$1
echo "xsd_with_ace := $with_ace" >>$1
echo "xsd_with_xdr := $with_xdr" >>$1
-echo "xsd_with_dbxml := $with_dbxml" >>$1
echo "xsd_with_xqilla := $with_xqilla" >>$1
echo "xsd_with_boost_date_time := $with_boost_date_time" >>$1
echo "xsd_with_boost_serialization := $with_boost_serialization" >>$1
diff --git a/xsd/build/cxx/configuration-dynamic.make b/xsd/build/cxx/configuration-dynamic.make
index 568ab40..83cf860 100644
--- a/xsd/build/cxx/configuration-dynamic.make
+++ b/xsd/build/cxx/configuration-dynamic.make
@@ -1,7 +1,4 @@
-cxx_id := gnu
-cxx_optimize := n
-cxx_debug := n
-cxx_rpath := n
+cxx_id := generic
cxx_pp_extra_options := $(CPPFLAGS)
cxx_extra_options := $(CXXFLAGS)
cxx_ld_extra_options := $(LDFLAGS)
diff --git a/xsd/build/cxx/generic/configuration-dynamic.make b/xsd/build/cxx/generic/configuration-dynamic.make
new file mode 100644
index 0000000..f35ea66
--- /dev/null
+++ b/xsd/build/cxx/generic/configuration-dynamic.make
@@ -0,0 +1,16 @@
+ifeq ($(filter $(origin CXX),undefined default),)
+cxx_generic := $(CXX)
+else
+cxx_generic := g++
+endif
+
+r := $(shell $(cxx_generic) $(cxx_extra_options) $(cxx_ld_extra_options) \
+-print-search-dirs 2>&1 | sed -e 's/libraries: =//p' -e d)
+
+ifneq ($r,)
+ ifeq ($(cxx_extra_lib_paths),)
+ cxx_extra_lib_paths := $r
+ else
+ cxx_extra_lib_paths := $(cxx_extra_lib_paths):$r
+ endif
+endif
diff --git a/xsd/build/cxx/gnu/configuration-dynamic.make b/xsd/build/cxx/gnu/configuration-dynamic.make
deleted file mode 100644
index f3fe64d..0000000
--- a/xsd/build/cxx/gnu/configuration-dynamic.make
+++ /dev/null
@@ -1,8 +0,0 @@
-ifneq ($(CXX),)
-cxx_gnu := $(CXX)
-else
-cxx_gnu := g++
-endif
-
-cxx_gnu_libraries :=
-cxx_gnu_optimization_options :=
diff --git a/xsd/build/import/cli/LICENSE b/xsd/build/import/cli/LICENSE
new file mode 100644
index 0000000..57ee246
--- /dev/null
+++ b/xsd/build/import/cli/LICENSE
@@ -0,0 +1,21 @@
+Copyright (c) 2009-2012 Code Synthesis Tools CC.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
diff --git a/xsd/build/import/cli/cli-cxx.make b/xsd/build/import/cli/cli-cxx.make
new file mode 100644
index 0000000..cd009d9
--- /dev/null
+++ b/xsd/build/import/cli/cli-cxx.make
@@ -0,0 +1,48 @@
+# file : build/import/cli/cli-cxx.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
+
+# Here we are operating in the importing project's space, not in
+# cli's.
+#
+
+# Get the C++ file extensions.
+#
+$(call include,$(bld_root)/cxx/configuration-static.make)
+
+cli_pattern := \
+$(out_base)/%.$(cxx_s_suffix) \
+$(out_base)/%.$(cxx_h_suffix) \
+$(out_base)/%.$(cxx_i_suffix)
+
+$(cli_pattern): cli_options := \
+--hxx-suffix .$(cxx_h_suffix) \
+--ixx-suffix .$(cxx_i_suffix) \
+--cxx-suffix .$(cxx_s_suffix)
+
+.PRECIOUS: $(cli_pattern)
+
+ifeq ($(out_base),$(src_base))
+
+$(cli_pattern): $(src_base)/%.cli
+ $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<)
+
+else
+
+$(cli_pattern): $(src_base)/%.cli | $$(dir $$@).
+ $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<)
+
+$(cli_pattern): $(out_base)/%.cli | $$(dir $$@).
+ $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<)
+endif
+
+.PHONY: $(out_base)/%.cxx.cli.clean
+
+$(out_base)/%.cxx.cli.clean: cxx_s_suffix := $(cxx_s_suffix)
+$(out_base)/%.cxx.cli.clean: cxx_h_suffix := $(cxx_h_suffix)
+$(out_base)/%.cxx.cli.clean: cxx_i_suffix := $(cxx_i_suffix)
+
+$(out_base)/%.cxx.cli.clean:
+ $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_s_suffix)))
+ $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_h_suffix)))
+ $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_i_suffix)))
diff --git a/xsd/build/import/cli/configuration-dynamic.make b/xsd/build/import/cli/configuration-dynamic.make
new file mode 100644
index 0000000..908d979
--- /dev/null
+++ b/xsd/build/import/cli/configuration-dynamic.make
@@ -0,0 +1,3 @@
+# We ship up-to-date generated files so cli normally won't be invoked.
+#
+cli_installed := y
diff --git a/xsd/build/import/cli/configuration-rules.make b/xsd/build/import/cli/configuration-rules.make
new file mode 100644
index 0000000..5fb2485
--- /dev/null
+++ b/xsd/build/import/cli/configuration-rules.make
@@ -0,0 +1,14 @@
+# file : build/import/cli/configuration-rules.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
+
+$(dcf_root)/import/cli/configuration-dynamic.make: | $(dcf_root)/import/cli/.
+ $(call message,,$(scf_root)/import/cli/configure $@)
+
+ifndef %foreign%
+
+$(dcf_root)/.disfigure::
+ $(call message,rm $(dcf_root)/import/cli/configuration-dynamic.make,\
+rm -f $(dcf_root)/import/cli/configuration-dynamic.make)
+
+endif
diff --git a/xsd/build/import/cli/configure b/xsd/build/import/cli/configure
new file mode 100755
index 0000000..ae1e512
--- /dev/null
+++ b/xsd/build/import/cli/configure
@@ -0,0 +1,54 @@
+#! /usr/bin/env bash
+
+# file : build/import/cli/configure
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
+
+
+# $1 - out file
+#
+# bld_root - build root
+# project_name - project name
+#
+
+source $bld_root/dialog.bash
+
+
+$echo
+$echo "Configuring external dependency on 'cli' for '$project_name'."
+$echo
+
+$echo
+$echo "Would you like to configure dependency on the installed "
+$echo "version of 'cli' as opposed to the development build?"
+$echo
+
+installed=`read_y_n y`
+
+path=
+
+if [ "$installed" = "n" ]; then
+
+$echo
+$echo "Please enter the src_root for 'cli'."
+$echo
+
+src_root=`read_path --directory --exist`
+
+$echo
+$echo "Please enter the out_root for 'cli'."
+$eche
+
+out_root=`read_path --directory $src_root`
+
+fi
+
+echo cli_installed := $installed >$1
+
+if [ "$installed" = "n" ]; then
+
+echo src_root := $src_root >>$1
+echo scf_root := \$\(src_root\)/build >>$1
+echo out_root := $out_root >>$1
+
+fi
diff --git a/xsd/build/import/cli/stub.make b/xsd/build/import/cli/stub.make
new file mode 100644
index 0000000..3704723
--- /dev/null
+++ b/xsd/build/import/cli/stub.make
@@ -0,0 +1,29 @@
+# file : build/import/cli/stub.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
+
+$(call include-once,$(scf_root)/import/cli/configuration-rules.make,$(dcf_root))
+
+cli_installed :=
+
+$(call -include,$(dcf_root)/import/cli/configuration-dynamic.make)
+
+ifdef cli_installed
+
+ifeq ($(cli_installed),y)
+
+$(call export,cli: cli,cli-rules: $(scf_root)/import/cli/cli-cxx.make)
+
+else
+
+# Include export stub.
+#
+$(call include,$(scf_root)/export/cli/stub.make)
+
+endif
+
+else
+
+.NOTPARALLEL:
+
+endif
diff --git a/xsd/build/import/libace/configuration-rules.make b/xsd/build/import/libace/configuration-rules.make
index 8d1230c..9073dc5 100644
--- a/xsd/build/import/libace/configuration-rules.make
+++ b/xsd/build/import/libace/configuration-rules.make
@@ -1,5 +1,4 @@
# file : build/import/libace/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libace/configure b/xsd/build/import/libace/configure
index eb7bd56..5f35228 100755
--- a/xsd/build/import/libace/configure
+++ b/xsd/build/import/libace/configure
@@ -1,7 +1,6 @@
#! /usr/bin/env bash
# file : build/import/libace/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libace/rules.make b/xsd/build/import/libace/rules.make
index 9535085..c04724d 100644
--- a/xsd/build/import/libace/rules.make
+++ b/xsd/build/import/libace/rules.make
@@ -1,5 +1,4 @@
# file : build/import/libace/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libace/stub.make b/xsd/build/import/libace/stub.make
index 9482396..ba4946d 100644
--- a/xsd/build/import/libace/stub.make
+++ b/xsd/build/import/libace/stub.make
@@ -1,5 +1,4 @@
# file : build/import/libace/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libbackend-elements/LICENSE b/xsd/build/import/libbackend-elements/LICENSE
deleted file mode 100644
index 3912109..0000000
--- a/xsd/build/import/libbackend-elements/LICENSE
+++ /dev/null
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/xsd/build/import/libbackend-elements/configuration-dynamic.make b/xsd/build/import/libbackend-elements/configuration-dynamic.make
deleted file mode 100644
index 8a6f091..0000000
--- a/xsd/build/import/libbackend-elements/configuration-dynamic.make
+++ /dev/null
@@ -1,4 +0,0 @@
-libbackend_elements_installed := n
-src_root := $(abspath $(src_root)/../libbackend-elements)
-scf_root := $(src_root)/build
-out_root := $(src_root)
diff --git a/xsd/build/import/libbackend-elements/configuration-rules.make b/xsd/build/import/libbackend-elements/configuration-rules.make
deleted file mode 100644
index 1766f03..0000000
--- a/xsd/build/import/libbackend-elements/configuration-rules.make
+++ /dev/null
@@ -1,15 +0,0 @@
-# file : build/import/libbackend-elements/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(dcf_root)/import/libbackend-elements/configuration-dynamic.make: | $(dcf_root)/import/libbackend-elements/.
- $(call message,,$(scf_root)/import/libbackend-elements/configure $@)
-
-ifndef %foreign%
-
-disfigure::
- $(call message,rm $(dcf_root)/import/libbackend-elements/configuration-dynamic.make,\
-rm -f $(dcf_root)/import/libbackend-elements/configuration-dynamic.make)
-
-endif
diff --git a/xsd/build/import/libbackend-elements/configure b/xsd/build/import/libbackend-elements/configure
deleted file mode 100755
index db3e44d..0000000
--- a/xsd/build/import/libbackend-elements/configure
+++ /dev/null
@@ -1,55 +0,0 @@
-#! /usr/bin/env bash
-
-# file : build/import/libbackend-elements/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-
-# $1 - out file
-#
-# bld_root - build root
-# project_name - project name
-#
-
-source $bld_root/dialog.bash
-
-
-$echo
-$echo "Configuring external dependency on 'libbackend-elements' for '$project_name'."
-$echo
-
-$echo
-$echo "Would you like to configure dependency on the installed version"
-$echo "of 'libbackend-elements' as opposed to the development build?"
-$echo
-
-installed=`read_y_n y`
-
-path=
-
-if [ "$installed" = "n" ]; then
-
-$echo
-$echo "Please enter the src_root for 'libbackend-elements'."
-$echo
-
-src_root=`read_path --directory --exist`
-
-$echo
-$echo "Please enter the out_root for 'libbackend-elements'."
-$echo
-
-out_root=`read_path --directory $src_root`
-
-fi
-
-echo libbackend_elements_installed := $installed >$1
-
-if [ "$installed" = "n" ]; then
-
-echo src_root := $src_root >>$1
-echo scf_root := \$\(src_root\)/build >>$1
-echo out_root := $out_root >>$1
-
-fi
diff --git a/xsd/build/import/libbackend-elements/stub.make b/xsd/build/import/libbackend-elements/stub.make
deleted file mode 100644
index b171c30..0000000
--- a/xsd/build/import/libbackend-elements/stub.make
+++ /dev/null
@@ -1,32 +0,0 @@
-# file : build/import/libbackend-elements/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(call include-once,$(scf_root)/import/libbackend-elements/configuration-rules.make,$(dcf_root))
-
-libbackend_elements_installed :=
-
-$(call -include,$(dcf_root)/import/libbackend-elements/configuration-dynamic.make)
-
-ifdef libbackend_elements_installed
-
-ifeq ($(libbackend_elements_installed),y)
-
-#-lbackend-elements
-
-$(call export,l: -lcult -lboost_regex,cpp_options: )
-
-else
-
-# Include export stub.
-#
-$(call include,$(scf_root)/export/libbackend-elements/stub.make)
-
-endif
-
-else
-
-.NOTPARALLEL:
-
-endif
diff --git a/xsd/build/import/libboost/configuration-dynamic.make b/xsd/build/import/libboost/configuration-dynamic.make
deleted file mode 100644
index ab55882..0000000
--- a/xsd/build/import/libboost/configuration-dynamic.make
+++ /dev/null
@@ -1,8 +0,0 @@
-libboost_installed := y
-libboost_suffix := $(BOOST_LIB_SUFFIX)
-
-ifeq ($(BOOST_LINK_SYSTEM),n)
-libboost_system := n
-else
-libboost_system := y
-endif
diff --git a/xsd/build/import/libboost/configuration-rules.make b/xsd/build/import/libboost/configuration-rules.make
index 40fff9f..88a3b38 100644
--- a/xsd/build/import/libboost/configuration-rules.make
+++ b/xsd/build/import/libboost/configuration-rules.make
@@ -1,6 +1,5 @@
# file : build/import/libboost/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
+# copyright : Copyright (c) 2005-2011 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
$(dcf_root)/import/libboost/configuration-dynamic.make: | $(dcf_root)/import/libboost/.
diff --git a/xsd/build/import/libboost/configure b/xsd/build/import/libboost/configure
index c924a30..361be81 100755
--- a/xsd/build/import/libboost/configure
+++ b/xsd/build/import/libboost/configure
@@ -1,8 +1,7 @@
#! /usr/bin/env bash
# file : build/import/libboost/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
+# copyright : Copyright (c) 2005-2011 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libboost/date-time/rules.make b/xsd/build/import/libboost/date-time/rules.make
index 5de56fc..7f862f5 100644
--- a/xsd/build/import/libboost/date-time/rules.make
+++ b/xsd/build/import/libboost/date-time/rules.make
@@ -1,6 +1,5 @@
# file : build/import/libboost/date-time/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
+# copyright : Copyright (c) 2005-2011 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
$(dcf_root)/import/libboost/%: root := $(libboost_root)
diff --git a/xsd/build/import/libboost/date-time/stub.make b/xsd/build/import/libboost/date-time/stub.make
index cb10dd9..64deb54 100644
--- a/xsd/build/import/libboost/date-time/stub.make
+++ b/xsd/build/import/libboost/date-time/stub.make
@@ -1,6 +1,5 @@
# file : build/import/libboost/date-time/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
+# copyright : Copyright (c) 2005-2011 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
$(call include-once,$(scf_root)/import/libboost/configuration-rules.make,$(dcf_root))
diff --git a/xsd/build/import/libboost/filesystem/rules.make b/xsd/build/import/libboost/filesystem/rules.make
deleted file mode 100644
index b5febd3..0000000
--- a/xsd/build/import/libboost/filesystem/rules.make
+++ /dev/null
@@ -1,53 +0,0 @@
-# file : build/import/libboost/filesystem/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-#@@ Should use message everywhere.
-#
-
-$(dcf_root)/import/libboost/%: root := $(libboost_root)
-
-$(dcf_root)/import/libboost/filesystem/filesystem.l: \
- | $(dcf_root)/import/libboost/filesystem/.
-
-ifeq ($(libboost_type),archive)
-
-ifeq ($(libboost_system),y)
-$(dcf_root)/import/libboost/filesystem/filesystem.l: \
- $(libboost_root)/stage/lib/libboost_filesystem$(libboost_suffix).a \
- $(libboost_root)/stage/lib/libboost_system$(libboost_suffix).a
-else
-$(dcf_root)/import/libboost/filesystem/filesystem.l: \
- $(libboost_root)/stage/lib/libboost_filesystem$(libboost_suffix).a
-endif
- @echo $^ >$@
-
-else
-
-ifeq ($(libboost_system),y)
-$(dcf_root)/import/libboost/filesystem/filesystem.l: \
- $(libboost_root)/stage/lib/libboost_filesystem$(libboost_suffix).so \
- $(libboost_root)/stage/lib/libboost_system$(libboost_suffix).so
-else
-$(dcf_root)/import/libboost/filesystem/filesystem.l: \
- $(libboost_root)/stage/lib/libboost_filesystem$(libboost_suffix).so
-endif
- @echo $^ >$@
- @echo rpath:$(root)/stage/lib >>$@
-
-endif
-
-
-$(dcf_root)/import/libboost/filesystem/filesystem.l.cpp-options: \
- | $(dcf_root)/import/libboost/filesystem/.
- @echo include: -I$(root) >$@
-
-ifndef %foreign%
-
-disfigure::
- $(call message,rm $(dcf_root)/import/libboost/filesystem/filesystem.l,\
-rm -f $(dcf_root)/import/libboost/filesystem/filesystem.l)
- $(call message,,rm -f $(dcf_root)/import/libboost/filesystem/filesystem.l.cpp-options)
-
-endif
diff --git a/xsd/build/import/libboost/filesystem/stub.make b/xsd/build/import/libboost/filesystem/stub.make
deleted file mode 100644
index fb7398d..0000000
--- a/xsd/build/import/libboost/filesystem/stub.make
+++ /dev/null
@@ -1,36 +0,0 @@
-# file : build/import/libboost/filesystem/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(call include-once,$(scf_root)/import/libboost/configuration-rules.make,$(dcf_root))
-
-libboost_installed :=
-
-$(call -include,$(dcf_root)/import/libboost/configuration-dynamic.make)
-
-ifdef libboost_installed
-
-ifeq ($(libboost_installed),y)
-
-ifeq ($(libboost_system),y)
-$(call export,l: -lboost_filesystem$(libboost_suffix) -lboost_system$(libboost_suffix),cpp_options: )
-else
-$(call export,l: -lboost_filesystem$(libboost_suffix),cpp_options: )
-endif
-
-else
-
-$(call include-once,$(scf_root)/import/libboost/filesystem/rules.make,$(dcf_root))
-
-$(call export,\
- l: $(dcf_root)/import/libboost/filesystem/filesystem.l,\
- cpp-options: $(dcf_root)/import/libboost/filesystem/filesystem.l.cpp-options)
-
-endif
-
-else
-
-.NOTPARALLEL:
-
-endif
diff --git a/xsd/build/import/libboost/regex/rules.make b/xsd/build/import/libboost/regex/rules.make
deleted file mode 100644
index 2f6b8f7..0000000
--- a/xsd/build/import/libboost/regex/rules.make
+++ /dev/null
@@ -1,50 +0,0 @@
-# file : build/import/libboost/regex/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(dcf_root)/import/libboost/%: root := $(libboost_root)
-
-$(dcf_root)/import/libboost/regex/regex.l: \
- | $(dcf_root)/import/libboost/regex/.
-
-ifeq ($(libboost_type),archive)
-
-ifeq ($(libboost_system),y)
-$(dcf_root)/import/libboost/regex/regex.l: \
- $(libboost_root)/stage/lib/libboost_regex$(libboost_suffix).a \
- $(libboost_root)/stage/lib/libboost_system$(libboost_suffix).a
-else
-$(dcf_root)/import/libboost/regex/regex.l: \
- $(libboost_root)/stage/lib/libboost_regex$(libboost_suffix).a
-endif
- @echo $^ >$@
-
-else
-
-ifeq ($(libboost_system),y)
-$(dcf_root)/import/libboost/regex/regex.l: \
- $(libboost_root)/stage/lib/libboost_regex$(libboost_suffix).so \
- $(libboost_root)/stage/lib/libboost_system$(libboost_suffix).so
-else
-$(dcf_root)/import/libboost/regex/regex.l: \
- $(libboost_root)/stage/lib/libboost_regex$(libboost_suffix).so
-endif
- @echo $^ >$@
- @echo rpath:$(root)/stage/lib >>$@
-
-endif
-
-
-$(dcf_root)/import/libboost/regex/regex.l.cpp-options: \
- | $(dcf_root)/import/libboost/regex/.
- @echo include: -I$(root) >$@
-
-ifndef %foreign%
-
-disfigure::
- $(call message,rm $(dcf_root)/import/libboost/regex/regex.l,\
-rm -f $(dcf_root)/import/libboost/regex/regex.l)
- $(call message,,rm -f $(dcf_root)/import/libboost/regex/regex.l.cpp-options)
-
-endif
diff --git a/xsd/build/import/libboost/regex/stub.make b/xsd/build/import/libboost/regex/stub.make
deleted file mode 100644
index eabc515..0000000
--- a/xsd/build/import/libboost/regex/stub.make
+++ /dev/null
@@ -1,36 +0,0 @@
-# file : build/import/libboost/regex/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(call include-once,$(scf_root)/import/libboost/configuration-rules.make,$(dcf_root))
-
-libboost_installed :=
-
-$(call -include,$(dcf_root)/import/libboost/configuration-dynamic.make)
-
-ifdef libboost_installed
-
-ifeq ($(libboost_installed),y)
-
-ifeq ($(libboost_system),y)
-$(call export,l: -lboost_regex$(libboost_suffix) -lboost_system$(libboost_suffix),cpp_options: )
-else
-$(call export,l: -lboost_regex$(libboost_suffix),cpp_options: )
-endif
-
-else
-
-$(call include-once,$(scf_root)/import/libboost/regex/rules.make,$(dcf_root))
-
-$(call export,\
- l: $(dcf_root)/import/libboost/regex/regex.l,\
- cpp-options: $(dcf_root)/import/libboost/regex/regex.l.cpp-options)
-
-endif
-
-else
-
-.NOTPARALLEL:
-
-endif
diff --git a/xsd/build/import/libboost/serialization/rules.make b/xsd/build/import/libboost/serialization/rules.make
index eab97ff..6d02b86 100644
--- a/xsd/build/import/libboost/serialization/rules.make
+++ b/xsd/build/import/libboost/serialization/rules.make
@@ -1,6 +1,5 @@
# file : build/import/libboost/serialization/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
+# copyright : Copyright (c) 2005-2011 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
$(dcf_root)/import/libboost/%: root := $(libboost_root)
diff --git a/xsd/build/import/libboost/serialization/stub.make b/xsd/build/import/libboost/serialization/stub.make
index 09d0858..b63db81 100644
--- a/xsd/build/import/libboost/serialization/stub.make
+++ b/xsd/build/import/libboost/serialization/stub.make
@@ -1,6 +1,5 @@
# file : build/import/libboost/serialization/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2010 Boris Kolpackov
+# copyright : Copyright (c) 2005-2011 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
$(call include-once,$(scf_root)/import/libboost/configuration-rules.make,$(dcf_root))
diff --git a/xsd/build/import/libcult/LICENSE b/xsd/build/import/libcult/LICENSE
deleted file mode 100644
index 3912109..0000000
--- a/xsd/build/import/libcult/LICENSE
+++ /dev/null
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/xsd/build/import/libcult/configuration-dynamic.make b/xsd/build/import/libcult/configuration-dynamic.make
deleted file mode 100644
index 73c92bb..0000000
--- a/xsd/build/import/libcult/configuration-dynamic.make
+++ /dev/null
@@ -1,4 +0,0 @@
-libcult_installed := n
-src_root := $(abspath $(src_root)/../libcult)
-scf_root := $(src_root)/build
-out_root := $(src_root)
diff --git a/xsd/build/import/libcult/configuration-rules.make b/xsd/build/import/libcult/configuration-rules.make
deleted file mode 100644
index dc19df4..0000000
--- a/xsd/build/import/libcult/configuration-rules.make
+++ /dev/null
@@ -1,15 +0,0 @@
-# file : build/import/libcult/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(dcf_root)/import/libcult/configuration-dynamic.make: | $(dcf_root)/import/libcult/.
- $(call message,,$(scf_root)/import/libcult/configure $@)
-
-ifndef %foreign%
-
-disfigure::
- $(call message,rm $(dcf_root)/import/libcult/configuration-dynamic.make,\
-rm -f $(dcf_root)/import/libcult/configuration-dynamic.make)
-
-endif
diff --git a/xsd/build/import/libcult/stub.make b/xsd/build/import/libcult/stub.make
deleted file mode 100644
index f5f7691..0000000
--- a/xsd/build/import/libcult/stub.make
+++ /dev/null
@@ -1,30 +0,0 @@
-# file : build/import/libcult/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(call include-once,$(scf_root)/import/libcult/configuration-rules.make,$(dcf_root))
-
-libcult_installed :=
-
-$(call -include,$(dcf_root)/import/libcult/configuration-dynamic.make)
-
-ifdef libcult_installed
-
-ifeq ($(libcult_installed),y)
-
-$(call export,l: -lcult,cpp-options: )
-
-else
-
-# Include export stub.
-#
-$(call include,$(scf_root)/export/libcult/stub.make)
-
-endif
-
-else
-
-.NOTPARALLEL:
-
-endif
diff --git a/xsd/build/import/libcutl/LICENSE b/xsd/build/import/libcutl/LICENSE
new file mode 100644
index 0000000..6b90d44
--- /dev/null
+++ b/xsd/build/import/libcutl/LICENSE
@@ -0,0 +1,24 @@
+Code found in the cutl/details/boost/ directory is distributed under
+the Boost Software License (see the accompanying LICENSE file).
+
+The rest is Copyright (c) 2009-2011 Code Synthesis Tools CC and is
+distributed under the following license (MIT License):
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/xsd/build/import/libcutl/configuration-dynamic.make b/xsd/build/import/libcutl/configuration-dynamic.make
new file mode 100644
index 0000000..4e4bb83
--- /dev/null
+++ b/xsd/build/import/libcutl/configuration-dynamic.make
@@ -0,0 +1,8 @@
+ifeq ($(EXTERNAL_LIBCUTL),y)
+libcutl_installed := y
+else
+libcutl_installed := n
+src_root := $(abspath $(src_root)/../libcutl)
+scf_root := $(src_root)/build
+out_root := $(src_root)
+endif
diff --git a/xsd/build/import/libcutl/configuration-rules.make b/xsd/build/import/libcutl/configuration-rules.make
new file mode 100644
index 0000000..b9fcabc
--- /dev/null
+++ b/xsd/build/import/libcutl/configuration-rules.make
@@ -0,0 +1,14 @@
+# file : build/import/libcutl/configuration-rules.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
+
+$(dcf_root)/import/libcutl/configuration-dynamic.make: | $(dcf_root)/import/libcutl/.
+ $(call message,,$(scf_root)/import/libcutl/configure $@)
+
+ifndef %foreign%
+
+$(dcf_root)/.disfigure::
+ $(call message,rm $(dcf_root)/import/libcutl/configuration-dynamic.make,\
+rm -f $(dcf_root)/import/libcutl/configuration-dynamic.make)
+
+endif
diff --git a/xsd/build/import/libcult/configure b/xsd/build/import/libcutl/configure
index afa4c9c..8adb631 100755
--- a/xsd/build/import/libcult/configure
+++ b/xsd/build/import/libcutl/configure
@@ -1,9 +1,8 @@
#! /usr/bin/env bash
-# file : build/import/libcult/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
+# file : build/import/libcutl/configure
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
# $1 - out file
@@ -16,12 +15,12 @@ source $bld_root/dialog.bash
$echo
-$echo "Configuring external dependency on 'libcult' for '$project_name'."
+$echo "Configuring external dependency on 'libcutl' for '$project_name'."
$echo
$echo
$echo "Would you like to configure dependency on the installed "
-$echo "version of 'libcult' as opposed to the development build?"
+$echo "version of 'libcutl' as opposed to the development build?"
$echo
installed=`read_y_n y`
@@ -31,20 +30,20 @@ path=
if [ "$installed" = "n" ]; then
$echo
-$echo "Please enter the src_root for 'libcult'."
+$echo "Please enter the src_root for 'libcutl'."
$echo
src_root=`read_path --directory --exist`
$echo
-$echo "Please enter the out_root for 'libcult'."
+$echo "Please enter the out_root for 'libcutl'."
$echo
out_root=`read_path --directory $src_root`
fi
-echo libcult_installed := $installed >$1
+echo libcutl_installed := $installed >$1
if [ "$installed" = "n" ]; then
diff --git a/xsd/build/import/libcutl/stub.make b/xsd/build/import/libcutl/stub.make
new file mode 100644
index 0000000..1ec4716
--- /dev/null
+++ b/xsd/build/import/libcutl/stub.make
@@ -0,0 +1,29 @@
+# file : build/import/libcutl/stub.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
+
+$(call include-once,$(scf_root)/import/libcutl/configuration-rules.make,$(dcf_root))
+
+libcutl_installed :=
+
+$(call -include,$(dcf_root)/import/libcutl/configuration-dynamic.make)
+
+ifdef libcutl_installed
+
+ifeq ($(libcutl_installed),y)
+
+$(call export,l: -lcutl,cpp-options: )
+
+else
+
+# Include export stub.
+#
+$(call include,$(scf_root)/export/libcutl/stub.make)
+
+endif
+
+else
+
+.NOTPARALLEL:
+
+endif
diff --git a/xsd/build/import/libdbxml/LICENSE b/xsd/build/import/libdbxml/LICENSE
deleted file mode 100644
index 3912109..0000000
--- a/xsd/build/import/libdbxml/LICENSE
+++ /dev/null
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/xsd/build/import/libdbxml/configuration-rules.make b/xsd/build/import/libdbxml/configuration-rules.make
deleted file mode 100644
index 823186c..0000000
--- a/xsd/build/import/libdbxml/configuration-rules.make
+++ /dev/null
@@ -1,15 +0,0 @@
-# file : build/import/libdbxml/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(dcf_root)/import/libdbxml/configuration-dynamic.make: | $(dcf_root)/import/libdbxml/.
- $(call message,,$(scf_root)/import/libdbxml/configure $@)
-
-ifndef %foreign%
-
-disfigure::
- $(call message,rm $(dcf_root)/import/libdbxml/configuration-dynamic.make,\
-rm -f $(dcf_root)/import/libdbxml/configuration-dynamic.make)
-
-endif
diff --git a/xsd/build/import/libdbxml/configure b/xsd/build/import/libdbxml/configure
deleted file mode 100755
index 73ce78c..0000000
--- a/xsd/build/import/libdbxml/configure
+++ /dev/null
@@ -1,58 +0,0 @@
-#! /usr/bin/env bash
-
-# file : build/import/libdbxml/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-
-# $1 - out config file
-#
-# bld_root - build root
-# project_name - project name
-#
-
-source $bld_root/dialog.bash
-
-
-$echo
-$echo "Configuring external dependency on 'Berkeley DB XML' for '$project_name'."
-$echo
-
-$echo
-$echo "Would you like to configure dependency on the installed version"
-$echo "of 'Berkeley DB XML' as opposed to the development build?"
-$echo
-
-installed=`read_y_n y`
-
-path=
-type=
-
-if [ "$installed" = "n" ]; then
-
- $echo
- $echo "Please enter the 'Berkeley DB XML' root directory."
- $echo
-
- root=`read_path --directory --exist`
-
- $echo
- $echo "Please select the library type you would like to use:"
- $echo
- $echo "(1) archive"
- $echo "(2) shared object"
- $echo
-
- type=`read_option "archive shared" "shared"`
-
-fi
-
-echo libdbxml_installed := $installed >$1
-
-if [ "$installed" = "n" ]; then
-
- echo libdbxml_root := $root >>$1
- echo libdbxml_type := $type >>$1
-
-fi
diff --git a/xsd/build/import/libdbxml/rules.make b/xsd/build/import/libdbxml/rules.make
deleted file mode 100644
index ac8118c..0000000
--- a/xsd/build/import/libdbxml/rules.make
+++ /dev/null
@@ -1,42 +0,0 @@
-# file : build/import/libdbxml/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-#@@ .l construction is compiler-specific
-#
-
-$(dcf_root)/import/libdbxml/%: root := $(libdbxml_root)
-
-ifeq ($(libdbxml_type),archive)
-
-$(dcf_root)/import/libdbxml/dbxml.l: \
-$(libdbxml_root)/install/lib/libdbxml.a \
-$(libdbxml_root)/install/lib/libxqilla.a \
-$(libdbxml_root)/install/lib/libxerces-c.a \
-$(libdbxml_root)/install/lib/libdb_cxx.a \
-$(libdbxml_root)/install/lib/libdb.a
-
-else
-
-$(dcf_root)/import/libdbxml/dbxml.l: \
-$(libdbxml_root)/install/lib/libdbxml.so \
-$(libdbxml_root)/install/lib/libxqilla.so \
-$(libdbxml_root)/install/lib/libxerces-c.so \
-$(libdbxml_root)/install/lib/libdb_cxx.so \
-$(libdbxml_root)/install/lib/libdb.so
- @echo $^ | xargs -n 1 echo >$@
- @echo rpath:$(root)/install/lib >>$@
-endif
-
-$(dcf_root)/import/libdbxml/dbxml.l.cpp-options:
- @echo include: -I$(root)/install/include >$@
-
-ifndef %foreign%
-
-disfigure::
- $(call message,rm $(dcf_root)/import/libdbxml/dbxml.l,\
-rm -f $(dcf_root)/import/libdbxml/dbxml.l)
- $(call message,,rm -f $(dcf_root)/import/libdbxml/dbxml.l.cpp-options)
-
-endif
diff --git a/xsd/build/import/libdbxml/stub.make b/xsd/build/import/libdbxml/stub.make
deleted file mode 100644
index f8eb9a3..0000000
--- a/xsd/build/import/libdbxml/stub.make
+++ /dev/null
@@ -1,32 +0,0 @@
-# file : build/import/libdbxml/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
-# copyright : Copyright (c) 2005-2009 Boris Kolpackov
-# license : GNU GPL v2; see accompanying LICENSE file
-
-$(call include-once,$(scf_root)/import/libdbxml/configuration-rules.make,$(dcf_root))
-
-libdbxml_installed :=
-
-$(call -include,$(dcf_root)/import/libdbxml/configuration-dynamic.make)
-
-ifdef libdbxml_installed
-
-ifeq ($(libdbxml_installed),y)
-
-$(call export,l: -ldbxml -lxqilla -lxerces-c -ldb_cxx -ldb,cpp-options: )
-
-else
-
-$(call include-once,$(scf_root)/import/libdbxml/rules.make,$(dcf_root))
-
-$(call export,\
- l: $(dcf_root)/import/libdbxml/dbxml.l,\
- cpp-options: $(dcf_root)/import/libdbxml/dbxml.l.cpp-options)
-
-endif
-
-else
-
-.NOTPARALLEL:
-
-endif
diff --git a/xsd/build/import/libdbxml/version b/xsd/build/import/libdbxml/version
deleted file mode 100644
index 9e11b32..0000000
--- a/xsd/build/import/libdbxml/version
+++ /dev/null
@@ -1 +0,0 @@
-0.3.1
diff --git a/xsd/build/import/libxerces-c/configuration-rules.make b/xsd/build/import/libxerces-c/configuration-rules.make
index fdb2263..995e6bd 100644
--- a/xsd/build/import/libxerces-c/configuration-rules.make
+++ b/xsd/build/import/libxerces-c/configuration-rules.make
@@ -1,5 +1,4 @@
# file : build/import/libxerces-c/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxerces-c/configure b/xsd/build/import/libxerces-c/configure
index 26e56a7..45cd3da 100755
--- a/xsd/build/import/libxerces-c/configure
+++ b/xsd/build/import/libxerces-c/configure
@@ -1,7 +1,6 @@
#! /usr/bin/env bash
# file : build/import/libxerces-c/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxerces-c/rules.make b/xsd/build/import/libxerces-c/rules.make
index 7cdca8c..21ac145 100644
--- a/xsd/build/import/libxerces-c/rules.make
+++ b/xsd/build/import/libxerces-c/rules.make
@@ -1,5 +1,4 @@
# file : build/import/libxerces-c/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxerces-c/stub.make b/xsd/build/import/libxerces-c/stub.make
index d4de5ec..745200d 100644
--- a/xsd/build/import/libxerces-c/stub.make
+++ b/xsd/build/import/libxerces-c/stub.make
@@ -1,5 +1,4 @@
# file : build/import/libxerces-c/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxqilla/configuration-rules.make b/xsd/build/import/libxqilla/configuration-rules.make
index c567c76..1c5578e 100644
--- a/xsd/build/import/libxqilla/configuration-rules.make
+++ b/xsd/build/import/libxqilla/configuration-rules.make
@@ -1,5 +1,4 @@
# file : build/import/libxqilla/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxqilla/configure b/xsd/build/import/libxqilla/configure
index 71cd954..1105838 100755
--- a/xsd/build/import/libxqilla/configure
+++ b/xsd/build/import/libxqilla/configure
@@ -1,7 +1,6 @@
#! /usr/bin/env bash
# file : build/import/libxqilla/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxqilla/rules.make b/xsd/build/import/libxqilla/rules.make
index 780ac50..11f442d 100644
--- a/xsd/build/import/libxqilla/rules.make
+++ b/xsd/build/import/libxqilla/rules.make
@@ -1,5 +1,4 @@
# file : build/import/libxqilla/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxqilla/stub.make b/xsd/build/import/libxqilla/stub.make
index d24f962..b7ee956 100644
--- a/xsd/build/import/libxqilla/stub.make
+++ b/xsd/build/import/libxqilla/stub.make
@@ -1,5 +1,4 @@
# file : build/import/libxqilla/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2005-2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libxsd-frontend/configuration-rules.make b/xsd/build/import/libxsd-frontend/configuration-rules.make
index eda6378..05a312a 100644
--- a/xsd/build/import/libxsd-frontend/configuration-rules.make
+++ b/xsd/build/import/libxsd-frontend/configuration-rules.make
@@ -1,6 +1,5 @@
# file : build/import/libxsd-frontend/configuration-rules.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2009 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
$(dcf_root)/import/libxsd-frontend/configuration-dynamic.make: | $(dcf_root)/import/libxsd-frontend/.
diff --git a/xsd/build/import/libxsd-frontend/configure b/xsd/build/import/libxsd-frontend/configure
index 1571a27..0c34062 100755
--- a/xsd/build/import/libxsd-frontend/configure
+++ b/xsd/build/import/libxsd-frontend/configure
@@ -1,8 +1,7 @@
#! /usr/bin/env bash
# file : build/import/libxsd-frontend/configure
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2009 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
diff --git a/xsd/build/import/libxsd-frontend/stub.make b/xsd/build/import/libxsd-frontend/stub.make
index f861eb6..cb57cef 100644
--- a/xsd/build/import/libxsd-frontend/stub.make
+++ b/xsd/build/import/libxsd-frontend/stub.make
@@ -1,6 +1,5 @@
# file : build/import/libxsd-frontend/stub.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2009 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
$(call include-once,$(scf_root)/import/libxsd-frontend/configuration-rules.make,$(dcf_root))
@@ -13,7 +12,7 @@ ifdef libxsd_frontend_installed
ifeq ($(libxsd_frontend_installed),y)
-$(call export,l: -lxsd-frontend -lfrontend-elements -lcult -lboost_filesystem -lxerces-c,cpp_options: )
+$(call export,l: -lxsd-frontend -lcutl -lxerces-c,cpp_options: )
else
diff --git a/xsd/build/import/libz/configuration-rules.make b/xsd/build/import/libz/configuration-rules.make
index c393b8b..180d3f3 100644
--- a/xsd/build/import/libz/configuration-rules.make
+++ b/xsd/build/import/libz/configuration-rules.make
@@ -1,5 +1,4 @@
# file : build/import/libz/configuration-rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libz/configure b/xsd/build/import/libz/configure
index c572910..b937a6c 100755
--- a/xsd/build/import/libz/configure
+++ b/xsd/build/import/libz/configure
@@ -1,7 +1,6 @@
#! /usr/bin/env bash
# file : build/import/libz/configure
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libz/rules.make b/xsd/build/import/libz/rules.make
index d16089b..f28a280 100644
--- a/xsd/build/import/libz/rules.make
+++ b/xsd/build/import/libz/rules.make
@@ -1,5 +1,4 @@
# file : build/import/libz/rules.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/import/libz/stub.make b/xsd/build/import/libz/stub.make
index 582fc41..8d0f8fb 100644
--- a/xsd/build/import/libz/stub.make
+++ b/xsd/build/import/libz/stub.make
@@ -1,5 +1,4 @@
# file : build/import/libz/stub.make
-# author : Boris Kolpackov <boris@kolpackov.net>
# copyright : Copyright (c) 2009 Boris Kolpackov
# license : GNU GPL v2; see accompanying LICENSE file
diff --git a/xsd/build/xsd/parser/xsd-cxx.make b/xsd/build/xsd/parser/xsd-cxx.make
index e96c29f..185718f 100644
--- a/xsd/build/xsd/parser/xsd-cxx.make
+++ b/xsd/build/xsd/parser/xsd-cxx.make
@@ -1,6 +1,5 @@
# file : build/xsd/parser/xsd-cxx.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#@@ Need to use extensions from cxx config.
@@ -28,7 +27,7 @@ endif
$(xsd_parser_pattern): xsd := xsd
$(xsd_parser_pattern): xsd_command := cxx-parser
-ops := --skel-file-suffix $(xsd_parser_skel_suffix)
+ops := --generate-inline --skel-file-suffix $(xsd_parser_skel_suffix)
ifneq ($(xsd_pimpl_suffix),)
ops += --impl-file-suffix $(xsd_parser_impl_suffix)
diff --git a/xsd/build/xsd/tree/xsd-cxx.make b/xsd/build/xsd/tree/xsd-cxx.make
index d63c651..0411820 100644
--- a/xsd/build/xsd/tree/xsd-cxx.make
+++ b/xsd/build/xsd/tree/xsd-cxx.make
@@ -1,6 +1,5 @@
# file : build/xsd/tree/xsd-cxx.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#@@ Need to use extensions from cxx config.
@@ -16,7 +15,7 @@ $(out_base)/%$(xsd_tree_suffix)-fwd.hxx
$(xsd_tree_pattern): xsd := xsd
$(xsd_tree_pattern): xsd_command := cxx-tree
-$(xsd_tree_pattern): xsd_options :=
+$(xsd_tree_pattern): xsd_options := --generate-inline
.PRECIOUS: $(xsd_tree_pattern)
diff --git a/xsd/dist/README-UNIX b/xsd/dist/README-UNIX
index 15513de..4f83a7d 100644
--- a/xsd/dist/README-UNIX
+++ b/xsd/dist/README-UNIX
@@ -66,9 +66,6 @@ WITH_BOOST - Set this variable to 1 if you would like to build examples
WITH_XQILLA - Set this variable to 1 if you would like to build examples
that depend on the XQilla library (XPath 2)
-WITH_DBXML - Set this variable to 1 if you would like to build examples
- that depend on the Berkeley DB XML library
-
Additionally, makefiles for the C++/Parser examples (examples/cxx/parser/)
allow you to choose the underlying XML parser:
diff --git a/xsd/dist/README-WINDOWS b/xsd/dist/README-WINDOWS
index d2e3925..0657c9f 100644
--- a/xsd/dist/README-WINDOWS
+++ b/xsd/dist/README-WINDOWS
@@ -5,8 +5,9 @@ Windows. For more information about XSD visit
http://www.codesynthesis.com/products/xsd/
This README file describes how to start using XSD in the Microsoft
-Windows environment with Visual Studio .NET 2003 (7.1), Visual Studio
-2005 (8.0), Visual Studio 2008 (9.0), and Visual Studio 2010 (10.0).
+Windows environment with Visual Studio 2005 (8.0), Visual Studio 2008
+(9.0), and Visual Studio 2010 (10.0), Visual Studio 2012 (11.0), and
+Visual Studio 2013 (12.0).
Prerequisites
@@ -14,9 +15,15 @@ Prerequisites
The XSD runtime library and the generated code depend on the Xerces-C++
XML parser which you can obtain from http://xerces.apache.org/xerces-c/.
-You can also download precompiled Xerces-C++ libraries for Windows from
+You can also download precompiled Xerces-C++ libraries for Windows from:
+
http://xerces.apache.org/xerces-c/download.cgi
+Note that the above download page may not contain Xerces-C++ libraries
+for the latest Visual Studio releases. The Windows Installer package
+(.msi) for XSD contains Xerces-C++ libraries for all of the above-
+mentioned Visual Studio versions.
+
Environment
-----------
@@ -34,22 +41,8 @@ Studio IDE and the System Environment.
place, you will need to adjust the paths below accordingly.
- a) For Visual Studio .NET 2003 (7.1):
-
- In the Visual Studio IDE, select "Tools"/"Options"/"Projects"/"VC++
- Directories".
-
- Then, in the "Show directories for" field, select "Include files" and
- create a new entry with the value "C:\projects\xerces-c-x.y.z\include".
-
- After that, in the "Show directories for" field, select "Library files"
- and create a new entry with the value "C:\projects\xerces-c-x.y.z\lib".
-
- After that, in the "Show directories for" field, select "Executable files"
- and create a new entry with the value "C:\projects\xerces-c-x.y.z\bin".
+ a) For Visual Studio 2005 (8.0) and Visual Studio 2008 (9.0):
- For Visual Studio 2005 (8.0) and Visual Studio 2008 (9.0):
-
In the Visual Studio IDE, select "Tools"/"Options"/"Projects and
Solution"/"VC++ Directories".
@@ -62,44 +55,44 @@ Studio IDE and the System Environment.
After that, in the "Show directories for" field, select "Executable files"
and create a new entry with the value "C:\projects\xerces-c-x.y.z\bin".
- If you are building the 64-bit version of your application, repeat the
- above steps for the 64-bit version of Xerces-C++ while selecting x64
+ If you are building the 64-bit version of your application, repeat the
+ above steps for the 64-bit version of Xerces-C++ while selecting x64
in the "Platform" drop-down list in the VC++ Directories dialog (Visual
- Studio keeps a separate set of paths for each platform).
+ Studio keeps a separate set of paths for each platform).
- For Visual Studio 2010 (10.0):
+ For Visual Studio 2010-2013 (10.0-12.0):
1. Open an existing or create a new C++ project (you can open one of
- the example solutions)
+ the example solutions that come with XSD).
- 2. Open the Property Manager view by selecting "View"->"Property
- Manager" (or "View"->"Other Windows"->"Property Manager") menu
- action
+ 2. Open the Property Manager view by selecting "View"->"Property
+ Manager" (or "View"->"Other Windows"->"Property Manager") menu
+ action.
- 3. Expand the property hierarchy for the project and find the
- Microsoft.Cpp.Win32.user property sheet
+ 3. Expand the property hierarchy for the project and find the
+ Microsoft.Cpp.Win32.user property sheet.
4. Right click on Microsoft.Cpp.Win32.user and select the "Properties"
- menu action
+ menu action.
- 5. Select the VC++ Directories tab
+ 5. Select the VC++ Directories tab.
- 6. Add the "C:\projects\xerces-c-x.y.z\include" path to the "Include
- Directories" field (the paths are separated by a semicolon)
+ 6. Add the "C:\projects\xerces-c-x.y.z\include" path to the "Include
+ Directories" field (the paths are separated by a semicolon).
- 7. Add the "C:\projects\xerces-c-x.y.z\lib" path to the "Library
- Directories" field
+ 7. Add the "C:\projects\xerces-c-x.y.z\lib" path to the "Library
+ Directories" field.
- 8. Add the "C:\projects\xerces-c-x.y.z\bin" path to the "Executable
- Directories" field
+ 8. Add the "C:\projects\xerces-c-x.y.z\bin" path to the "Executable
+ Directories" field.
- 9. Click Ok to close the dialog and then click the Save button at the
- top of the Property Manager view to save Microsoft.Cpp.Win32.user
+ 9. Click Ok to close the dialog and then click the Save button at the
+ top of the Property Manager view to save Microsoft.Cpp.Win32.user.
If you are building the 64-bit version of your application, repeat
- the above steps for the 64-bit version of Xerces-C++ but using the
+ the above steps for the 64-bit version of Xerces-C++ but using the
Microsoft.Cpp.x64.user property sheet (Visual Studio keeps a separate
- set of paths for each platform).
+ set of paths for each platform).
b) In the Control Panel, choose "System" and select the "Advanced" tab.
@@ -111,24 +104,11 @@ Studio IDE and the System Environment.
2. Setting up XSD
Now you need to set up XSD executable and include search paths. Here we
- assume that your XSD path is C:\projects\xsd-x.y.z. If you have XSD in
+ assume that your XSD path is C:\projects\xsd-x.y.z. If you have XSD in
a different place, you will need to adjust the paths below accordingly.
- For Visual Studio .NET 2003 (7.1):
-
- In the Visual Studio IDE, select "Tools"/"Options"/"Projects"/"VC++
- Directories".
-
- Then, in the "Show directories for" field, select "Include files" and
- create a new entry with the value "C:\projects\xsd-x.y.z\libxsd".
-
- After that, in the "Show directories for" field, select "Executable
- files" and create a new entry with the value "C:\projects\xsd-x.y.z\bin".
- Make sure it is the first line in the list of directories (use the
- "Up" button to move the new entry up, if necessary).
-
For Visual Studio 2005 (8.0) and Visual Studio 2008 (9.0):
-
+
In the Visual Studio IDE, select "Tools"/"Options"/"Projects and
Solution"/"VC++ Directories".
@@ -140,42 +120,42 @@ Studio IDE and the System Environment.
Make sure it is the first line in the list of directories (use the
"Up" button to move the new entry up, if necessary).
- If you are building the 64-bit version of your application, repeat the
+ If you are building the 64-bit version of your application, repeat the
above steps using the same paths while selecting x64 in the "Platform"
- drop-down list in the VC++ Directories dialog (Visual Studio keeps a
- separate set of paths for each platform).
+ drop-down list in the VC++ Directories dialog (Visual Studio keeps a
+ separate set of paths for each platform).
For Visual Studio 2010 (10.0):
1. Open an existing or create a new C++ project (you can open one of
- the example solutions)
+ the example solutions that come with XSD).
- 2. Open the Property Manager view by selecting "View"->"Property
+ 2. Open the Property Manager view by selecting "View"->"Property
Manager" (or "View"->"Other Windows"->"Property Manager") menu
- action
+ action.
- 3. Expand the property hierarchy for the project and find the
- Microsoft.Cpp.Win32.user property sheet
+ 3. Expand the property hierarchy for the project and find the
+ Microsoft.Cpp.Win32.user property sheet.
4. Right click on Microsoft.Cpp.Win32.user and select the "Properties"
- menu action
+ menu action.
- 5. Select the VC++ Directories tab
+ 5. Select the VC++ Directories tab.
- 6. Add the "C:\projects\xsd-x.y.z\libxsd" path to the "Include
- Directories" field (the paths are separated by a semicolon)
+ 6. Add the "C:\projects\xsd-x.y.z\libxsd" path to the "Include
+ Directories" field (the paths are separated by a semicolon).
- 7. Add the "C:\projects\xsd-x.y.z\bin" path to the "Executable
- Directories" field and make sure it is the first path in the
- the list of directories
+ 7. Add the "C:\projects\xsd-x.y.z\bin" path to the "Executable
+ Directories" field and make sure it is the first path in the
+ the list of directories.
- 8. Click Ok to close the dialog and then click the Save button at the
- top of the Property Manager view to save Microsoft.Cpp.Win32.user
+ 8. Click Ok to close the dialog and then click the Save button at the
+ top of the Property Manager view to save Microsoft.Cpp.Win32.user.
- If you are building the 64-bit version of your application, repeat the
- above steps using the same paths but using the Microsoft.Cpp.x64.user
- property sheet (Visual Studio keeps a separate set of paths for each
- platform).
+ If you are building the 64-bit version of your application, repeat the
+ above steps using the same paths but using the Microsoft.Cpp.x64.user
+ property sheet (Visual Studio keeps a separate set of paths for each
+ platform).
3. Restart the Visual Studio IDE.
@@ -185,7 +165,8 @@ Building Examples
-----------------
Now you are ready to build examples. Simply open the solution file
-found in the examples\cxx\tree and examples\cxx\parser directories.
+found in the examples\cxx\tree (C++/Tree mapping examples) or
+examples\cxx\parser (C++/Parser examples) directories.
Some of the examples depend on additional third-party libraries or
show a specific feature of XSD and are not included in the solutions
@@ -199,13 +180,12 @@ examples/cxx/tree/binary/boost - depends on the Boost serialization library
examples/cxx/tree/binary/cdr - depends on the ACE library
examples/cxx/tree/binary/xdr - requires a third-party XDR library
examples/cxx/tree/xpath - depends on the XQilla library (XPath 2)
-examples/cxx/tree/dbxml - depends on the Berkeley DB XML library
Using XSD in Your Projects
--------------------------
-For various ways to integrate the XSD compiler with the Visual Studio IDE
+For various ways to integrate the XSD compiler with the Visual Studio IDE
as well as other Visual Studio-specific topics, refer to the Using XSD with
Microsoft Visual Studio Wiki page:
diff --git a/xsd/dist/etc/vc-10.0/xsd-cxx-parser.props b/xsd/dist/etc/vc-1x.0/xsd-cxx-parser.props
index b167a38..b167a38 100644
--- a/xsd/dist/etc/vc-10.0/xsd-cxx-parser.props
+++ b/xsd/dist/etc/vc-1x.0/xsd-cxx-parser.props
diff --git a/xsd/dist/etc/vc-10.0/xsd-cxx-parser.targets b/xsd/dist/etc/vc-1x.0/xsd-cxx-parser.targets
index 62ad2b2..62ad2b2 100644
--- a/xsd/dist/etc/vc-10.0/xsd-cxx-parser.targets
+++ b/xsd/dist/etc/vc-1x.0/xsd-cxx-parser.targets
diff --git a/xsd/dist/etc/vc-10.0/xsd-cxx-parser.xml b/xsd/dist/etc/vc-1x.0/xsd-cxx-parser.xml
index 37202c6..37202c6 100644
--- a/xsd/dist/etc/vc-10.0/xsd-cxx-parser.xml
+++ b/xsd/dist/etc/vc-1x.0/xsd-cxx-parser.xml
diff --git a/xsd/dist/etc/vc-10.0/xsd-cxx-tree.props b/xsd/dist/etc/vc-1x.0/xsd-cxx-tree.props
index 3d66166..fc81c9b 100644
--- a/xsd/dist/etc/vc-10.0/xsd-cxx-tree.props
+++ b/xsd/dist/etc/vc-1x.0/xsd-cxx-tree.props
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup
Condition="'$(CXX_Tree_Mapping_RuleBeforeTargets)' == '' and '$(CXX_Tree_Mapping_RuleAfterTargets)' == '' and '$(ConfigurationType)' != 'Makefile'">
@@ -12,6 +12,7 @@
<ItemDefinitionGroup>
<CXX_Tree_Mapping_Rule>
<ProprietaryLicense>False</ProprietaryLicense>
+ <CxxStd>0</CxxStd>
<GenInline>False</GenInline>
<GenForward>False</GenForward>
<GenSerialization>False</GenSerialization>
@@ -25,6 +26,7 @@
<GenFromBaseCtor>False</GenFromBaseCtor>
<GenDetach>False</GenDetach>
<GenWildcard>False</GenWildcard>
+ <GenAnyType>False</GenAnyType>
<GenElementType>False</GenElementType>
<GenElementMap>False</GenElementMap>
<GenIntellisense>False</GenIntellisense>
diff --git a/xsd/dist/etc/vc-10.0/xsd-cxx-tree.targets b/xsd/dist/etc/vc-1x.0/xsd-cxx-tree.targets
index a65b559..6156ec2 100644
--- a/xsd/dist/etc/vc-10.0/xsd-cxx-tree.targets
+++ b/xsd/dist/etc/vc-1x.0/xsd-cxx-tree.targets
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<PropertyPageSchema
@@ -46,6 +46,7 @@
Condition="'@(CXX_Tree_Mapping_Rule)' != '' and '%(CXX_Tree_Mapping_Rule.ExcludedFromBuild)' != 'true'"
CommandLineTemplate="%(CXX_Tree_Mapping_Rule.CommandLineTemplate)"
ProprietaryLicense="%(CXX_Tree_Mapping_Rule.ProprietaryLicense)"
+ CxxStd="%(CXX_Tree_Mapping_Rule.CxxStd)"
GenInline="%(CXX_Tree_Mapping_Rule.GenInline)"
GenForward="%(CXX_Tree_Mapping_Rule.GenForward)"
GenSerialization="%(CXX_Tree_Mapping_Rule.GenSerialization)"
@@ -59,6 +60,7 @@
GenFromBaseCtor="%(CXX_Tree_Mapping_Rule.GenFromBaseCtor)"
GenDetach="%(CXX_Tree_Mapping_Rule.GenDetach)"
GenWildcard="%(CXX_Tree_Mapping_Rule.GenWildcard)"
+ GenAnyType="%(CXX_Tree_Mapping_Rule.GenAnyType)"
GenElementType="%(CXX_Tree_Mapping_Rule.GenElementType)"
GenElementMap="%(CXX_Tree_Mapping_Rule.GenElementMap)"
GenIntellisense="%(CXX_Tree_Mapping_Rule.GenIntellisense)"
diff --git a/xsd/dist/etc/vc-10.0/xsd-cxx-tree.xml b/xsd/dist/etc/vc-1x.0/xsd-cxx-tree.xml
index 12393ee..e37eb1c 100644
--- a/xsd/dist/etc/vc-10.0/xsd-cxx-tree.xml
+++ b/xsd/dist/etc/vc-1x.0/xsd-cxx-tree.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:transformCallback="Microsoft.Cpp.Dev10.ConvertPropertyCallback">
<Rule
Name="CXX_Tree_Mapping_Rule"
@@ -44,6 +44,20 @@
DisplayName="Proprietary License"
Description="Indicate that the generated code is licensed under a proprietary license instead of the GPL."
Switch="--proprietary-license" />
+ <EnumProperty
+ Name="CxxStd"
+ Category="Code Generation"
+ HelpContext="0"
+ DisplayName="C++ Standard"
+ Description="C++ Standard the generated code should conform to.">
+ <EnumValue
+ Name="0"
+ DisplayName="c++98" />
+ <EnumValue
+ Name="1"
+ DisplayName="c++11"
+ Switch="--std c++11" />
+ </EnumProperty>
<BoolProperty
Name="GenInline"
Category="Code Generation"
@@ -136,6 +150,13 @@
Description="Generate accessors and modifiers as well as parsing and serialization code for XML Schema wildcards (any and anyAttribute)."
Switch="--generate-wildcard" />
<BoolProperty
+ Name="GenAnyType"
+ Category="Code Generation"
+ HelpContext="0"
+ DisplayName="Generate anyType"
+ Description="Extract and store content of the XML Schema anyType type as a DOM fragment."
+ Switch="--generate-any-type" />
+ <BoolProperty
Name="GenElementType"
Category="Code Generation"
HelpContext="0"
diff --git a/xsd/dist/examples/build/cxx/compilers.make b/xsd/dist/examples/build/cxx/compilers.make
index b8d5538..a7f6296 100644
--- a/xsd/dist/examples/build/cxx/compilers.make
+++ b/xsd/dist/examples/build/cxx/compilers.make
@@ -1,6 +1,5 @@
# file : examples/build/cxx/compilers.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
CXX := g++
@@ -43,13 +42,13 @@ endif
# Clang
#
ifeq ($(cxx_id),)
-ifeq ($(shell echo '$(cxx_sign)' | sed -e 's/^.* clang .*$$//'),)
+ifeq ($(shell echo '$(cxx_sign)' | sed -e 's/^.*clang.*$$//'),)
cxx_id := clang
endif
endif
ifeq ($(cxx_id),)
-ifeq ($(shell echo '$(cxx_sign)' | sed -e 's/^.* Clang .*$$//'),)
+ifeq ($(shell echo '$(cxx_sign)' | sed -e 's/^.*Clang.*$$//'),)
cxx_id := clang
endif
endif
@@ -65,27 +64,15 @@ endif
# HP C++ (aCC)
#
-# aCC3 and aCC6 are two very different compilers so we will call them
-# hp3 and hp6.
-#
-
-# 3
-ifeq ($(cxx_id),)
-ifeq ($(shell echo '$(cxx_sign)' | sed -e 's/^[^ ]* HP ANSI C.. .* A\.03\..*$$//'),)
-cxx_id := hp3
-endif
-endif
-
-# 6
ifeq ($(cxx_id),)
ifeq ($(shell echo '$(cxx_sign)' | sed -e 's/^[^ ]* HP aC..\/ANSI C .* A\.06\..*$$//'),)
-cxx_id := hp6
+cxx_id := hp
endif
endif
ifeq ($(cxx_id),)
ifeq ($(shell echo '$(cxx_sign)' | sed -e 's/^[^ ]* HP C\/aC.. .* A\.06\..*$$//'),)
-cxx_id := hp6
+cxx_id := hp
endif
endif
diff --git a/xsd/dist/examples/build/cxx/rules.make b/xsd/dist/examples/build/cxx/rules.make
index 3e74764..3f6c38c 100644
--- a/xsd/dist/examples/build/cxx/rules.make
+++ b/xsd/dist/examples/build/cxx/rules.make
@@ -1,6 +1,5 @@
# file : examples/build/cxx/rules.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(root)/build/cxx/compilers.make
@@ -32,23 +31,11 @@ ifeq ($(cxx_id),sun)
endif
-# HP aCC3
+# HP aCC
#
-ifeq ($(cxx_id),hp3)
+ifeq ($(cxx_id),hp)
- # By default Xerces-C++ is built with -mt for aCC3.
- # 849 : symbol to long, truncated to 4000
- # 1039: incompatible vtable layout
- #
- CXXFLAGS := -AA -O -mt +W849 +W1039
-endif
-
-
-# HP aCC6
-#
-ifeq ($(cxx_id),hp6)
-
- # By default Xerces-C++ is built with -mt for aCC6.
+ # By default Xerces-C++ is built with -mt for aCC.
# 2334 no suitable copy constructor (e.g., for std::auto_ptr)
#
CXXFLAGS := -Aa -O -mt +W2334
diff --git a/xsd/dist/examples/build/xsd/common.make b/xsd/dist/examples/build/xsd/common.make
index d82cbfb..21d39e7 100644
--- a/xsd/dist/examples/build/xsd/common.make
+++ b/xsd/dist/examples/build/xsd/common.make
@@ -1,6 +1,5 @@
# file : examples/build/xsd/common.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
XSD := $(shell if test -x $(root)/../bin/xsd; \
diff --git a/xsd/dist/examples/build/xsd/parser-rules.make b/xsd/dist/examples/build/xsd/parser-rules.make
index 8da4fc6..c39b85c 100644
--- a/xsd/dist/examples/build/xsd/parser-rules.make
+++ b/xsd/dist/examples/build/xsd/parser-rules.make
@@ -1,6 +1,5 @@
# file : examples/build/xsd/parser-rules.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(root)/build/xsd/common.make
diff --git a/xsd/dist/examples/build/xsd/tree-rules.make b/xsd/dist/examples/build/xsd/tree-rules.make
index 0ea6990..7ff3529 100644
--- a/xsd/dist/examples/build/xsd/tree-rules.make
+++ b/xsd/dist/examples/build/xsd/tree-rules.make
@@ -1,6 +1,5 @@
# file : examples/build/xsd/tree-rules.make
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(root)/build/xsd/common.make
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-7.1.vcproj b/xsd/dist/examples/cxx/parser/generated/generated-7.1.vcproj
deleted file mode 100644
index 0932856..0000000
--- a/xsd/dist/examples/cxx/parser/generated/generated-7.1.vcproj
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="generated"
- ProjectGUID="{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
- RootNamespace="generated"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{6241A332-00FB-43D7-8E2D-4277B261F512}">
- <File
- RelativePath=".\library-driver.cxx">
- </File>
- <File
- RelativePath=".\library-pskel.cxx">
- </File>
- <File
- RelativePath=".\library-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7B4073-4744-4C7E-9B74-B5B7D8628B23}">
- <File
- RelativePath=".\library-pskel.hxx">
- </File>
- <File
- RelativePath=".\library-pimpl.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-10.0.vcxproj b/xsd/dist/examples/cxx/parser/generated/generated-vc10.vcxproj
index f5bdf86..c20e5be 100644
--- a/xsd/dist/examples/cxx/parser/generated/generated-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc10.vcxproj
@@ -58,10 +58,10 @@
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library-driver</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library-driver</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library-driver</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library-driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
@@ -81,17 +81,16 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(TargetPath)</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(OutDir)library-driver.pdb</ProgramDatabaseFile>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
@@ -108,17 +107,16 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(TargetPath)</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(OutDir)library-driver.pdb</ProgramDatabaseFile>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
@@ -129,11 +127,10 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -154,11 +151,10 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/generated/generated-vc10.vcxproj.filters
index b2cc277..b2cc277 100644
--- a/xsd/dist/examples/cxx/parser/generated/generated-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj b/xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj
new file mode 100644
index 0000000..1df7dd5
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj
@@ -0,0 +1,207 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>generated</ProjectName>
+ <ProjectGuid>{4277B39A-C9FB-4F10-8223-8DD38053EDA0}</ProjectGuid>
+ <RootNamespace>generated</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="library-driver.cxx" />
+ <ClCompile Include="library-pimpl.cxx" />
+ <ClCompile Include="library-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx" />
+ <ClInclude Include="library-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj.filters
new file mode 100644
index 0000000..b2cc277
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc11.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{6241A332-00FB-43D7-8E2D-4277B261F512}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{5F7B4073-4744-4C7E-9B74-B5B7D8628B23}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{64b9ddc3-e796-405a-84e3-6e33b610b7ba}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="library-driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj b/xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj
new file mode 100644
index 0000000..21bce27
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>generated</ProjectName>
+ <ProjectGuid>{4277B39A-C9FB-4F10-8223-8DD38053EDA0}</ProjectGuid>
+ <RootNamespace>generated</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="library-driver.cxx" />
+ <ClCompile Include="library-pimpl.cxx" />
+ <ClCompile Include="library-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx" />
+ <ClInclude Include="library-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj.filters
new file mode 100644
index 0000000..b2cc277
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc12.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{6241A332-00FB-43D7-8E2D-4277B261F512}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{5F7B4073-4744-4C7E-9B74-B5B7D8628B23}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{64b9ddc3-e796-405a-84e3-6e33b610b7ba}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="library-driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-8.0.vcproj b/xsd/dist/examples/cxx/parser/generated/generated-vc8.vcproj
index e1c668c..ee4e0f6 100644
--- a/xsd/dist/examples/cxx/parser/generated/generated-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -65,10 +65,10 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
SubSystem="1"
TargetMachine="1"
/>
@@ -123,7 +123,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -141,7 +141,7 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
@@ -204,7 +204,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -222,10 +222,10 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
SubSystem="1"
TargetMachine="17"
/>
@@ -281,7 +281,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -299,7 +299,7 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-9.0.vcproj b/xsd/dist/examples/cxx/parser/generated/generated-vc9.vcproj
index 3025912..2ffc6dd 100644
--- a/xsd/dist/examples/cxx/parser/generated/generated-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/generated/generated-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -66,10 +66,10 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
@@ -127,7 +127,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -145,10 +145,10 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
@@ -202,7 +202,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -220,7 +220,7 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
@@ -279,7 +279,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -297,7 +297,7 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/library-driver.exe"
+ OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/generated/generated-xerces2-7.1.vcproj
deleted file mode 100644
index caf31bb..0000000
--- a/xsd/dist/examples/cxx/parser/generated/generated-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="generated"
- ProjectGUID="{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
- RootNamespace="generated"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{6241A332-00FB-43D7-8E2D-4277B261F512}">
- <File
- RelativePath=".\library-driver.cxx">
- </File>
- <File
- RelativePath=".\library-pskel.cxx">
- </File>
- <File
- RelativePath=".\library-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7B4073-4744-4C7E-9B74-B5B7D8628B23}">
- <File
- RelativePath=".\library-pskel.hxx">
- </File>
- <File
- RelativePath=".\library-pimpl.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/generated/generated-xerces2-8.0.vcproj
deleted file mode 100644
index 14867aa..0000000
--- a/xsd/dist/examples/cxx/parser/generated/generated-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,427 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="generated"
- ProjectGUID="{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
- RootNamespace="generated"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{6241A332-00FB-43D7-8E2D-4277B261F512}"
- >
- <File
- RelativePath=".\library-driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7B4073-4744-4C7E-9B74-B5B7D8628B23}"
- >
- <File
- RelativePath=".\library-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/generated/generated-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/generated/generated-xerces2-9.0.vcproj
deleted file mode 100644
index 3cefb45..0000000
--- a/xsd/dist/examples/cxx/parser/generated/generated-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,424 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="generated"
- ProjectGUID="{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
- RootNamespace="generated"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/library-driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/library-driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{6241A332-00FB-43D7-8E2D-4277B261F512}"
- >
- <File
- RelativePath=".\library-driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7B4073-4744-4C7E-9B74-B5B7D8628B23}"
- >
- <File
- RelativePath=".\library-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-print-impl --generate-test-driver --force-overwrite library.xsd"
- Outputs="library-pskel.hxx;library-pskel.cxx;library-pimpl.hxx;library-pimpl.cxx;library-driver.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-7.1.vcproj b/xsd/dist/examples/cxx/parser/hello/hello-7.1.vcproj
deleted file mode 100644
index d0f5ca5..0000000
--- a/xsd/dist/examples/cxx/parser/hello/hello-7.1.vcproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="hello"
- ProjectGUID="{683E9D46-FCC7-4163-984B-9F399169CF7F}"
- RootNamespace="hello"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E9BF8C86-0B39-4E45-81D2-35AD75F02C5C}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\hello-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3490E63E-27F8-4E29-996F-79F99714DDB3}">
- <File
- RelativePath=".\hello-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\hello.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-10.0.vcxproj b/xsd/dist/examples/cxx/parser/hello/hello-vc10.vcxproj
index cedf9e0..8478a29 100644
--- a/xsd/dist/examples/cxx/parser/hello/hello-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc10.vcxproj
@@ -81,11 +81,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -108,11 +107,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -129,11 +127,10 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -154,11 +151,10 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/hello/hello-vc10.vcxproj.filters
index 26513bb..26513bb 100644
--- a/xsd/dist/examples/cxx/parser/hello/hello-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj b/xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj
new file mode 100644
index 0000000..48a41ac
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>hello</ProjectName>
+ <ProjectGuid>{683E9D46-FCC7-4163-984B-9F399169CF7F}</ProjectGuid>
+ <RootNamespace>hello</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="hello-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj.filters
new file mode 100644
index 0000000..26513bb
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E9BF8C86-0B39-4E45-81D2-35AD75F02C5C}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{3490E63E-27F8-4E29-996F-79F99714DDB3}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{338ac052-a215-4fe4-a66b-f6be21b5ffa4}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="hello-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj b/xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj
new file mode 100644
index 0000000..22ac525
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>hello</ProjectName>
+ <ProjectGuid>{683E9D46-FCC7-4163-984B-9F399169CF7F}</ProjectGuid>
+ <RootNamespace>hello</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="hello-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">hello-pskel.hxx;hello-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj.filters
new file mode 100644
index 0000000..26513bb
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E9BF8C86-0B39-4E45-81D2-35AD75F02C5C}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{3490E63E-27F8-4E29-996F-79F99714DDB3}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{338ac052-a215-4fe4-a66b-f6be21b5ffa4}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="hello-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-8.0.vcproj b/xsd/dist/examples/cxx/parser/hello/hello-vc8.vcproj
index 841e602..a19fb43 100644
--- a/xsd/dist/examples/cxx/parser/hello/hello-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -123,7 +123,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -204,7 +204,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -281,7 +281,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-9.0.vcproj b/xsd/dist/examples/cxx/parser/hello/hello-vc9.vcproj
index 6223e65..9d0e755 100644
--- a/xsd/dist/examples/cxx/parser/hello/hello-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/hello/hello-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -127,7 +127,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -202,7 +202,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -279,7 +279,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/hello/hello-xerces2-7.1.vcproj
deleted file mode 100644
index 51b3bdf..0000000
--- a/xsd/dist/examples/cxx/parser/hello/hello-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="hello"
- ProjectGUID="{683E9D46-FCC7-4163-984B-9F399169CF7F}"
- RootNamespace="hello"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E9BF8C86-0B39-4E45-81D2-35AD75F02C5C}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\hello-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3490E63E-27F8-4E29-996F-79F99714DDB3}">
- <File
- RelativePath=".\hello-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\hello.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/hello/hello-xerces2-8.0.vcproj
deleted file mode 100644
index ae0a8a9..0000000
--- a/xsd/dist/examples/cxx/parser/hello/hello-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,419 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="hello"
- ProjectGUID="{683E9D46-FCC7-4163-984B-9F399169CF7F}"
- RootNamespace="hello"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E9BF8C86-0B39-4E45-81D2-35AD75F02C5C}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\hello-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3490E63E-27F8-4E29-996F-79F99714DDB3}"
- >
- <File
- RelativePath=".\hello-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\hello.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/hello/hello-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/hello/hello-xerces2-9.0.vcproj
deleted file mode 100644
index fb407b9..0000000
--- a/xsd/dist/examples/cxx/parser/hello/hello-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,416 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="hello"
- ProjectGUID="{683E9D46-FCC7-4163-984B-9F399169CF7F}"
- RootNamespace="hello"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E9BF8C86-0B39-4E45-81D2-35AD75F02C5C}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\hello-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3490E63E-27F8-4E29-996F-79F99714DDB3}"
- >
- <File
- RelativePath=".\hello-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\hello.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd cxx-parser hello.xsd"
- Outputs="hello-pskel.hxx;hello-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/library/library-7.1.vcproj b/xsd/dist/examples/cxx/parser/library/library-7.1.vcproj
deleted file mode 100644
index 98dce27..0000000
--- a/xsd/dist/examples/cxx/parser/library/library-7.1.vcproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="library"
- ProjectGUID="{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
- RootNamespace="library"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4044D311-878E-4632-B816-7810045EF3F1}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library-pskel.cxx">
- </File>
- <File
- RelativePath=".\library-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{4F90DEB0-060B-4976-949A-66FFB902F598}">
- <File
- RelativePath=".\library-pskel.hxx">
- </File>
- <File
- RelativePath=".\library-pimpl.hxx">
- </File>
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\library-pskel.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/library/library-10.0.vcxproj b/xsd/dist/examples/cxx/parser/library/library-vc10.vcxproj
index 2366880..c9046d7 100644
--- a/xsd/dist/examples/cxx/parser/library/library-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/library/library-vc10.vcxproj
@@ -81,11 +81,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -108,11 +107,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -129,11 +127,10 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -154,11 +151,10 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/library/library-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/library/library-vc10.vcxproj.filters
index 30f473b..30f473b 100644
--- a/xsd/dist/examples/cxx/parser/library/library-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/library/library-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj b/xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj
new file mode 100644
index 0000000..daa5ef3
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>library</ProjectName>
+ <ProjectGuid>{D66DAC4D-133C-4DB5-923F-C88A961C3C51}</ProjectGuid>
+ <RootNamespace>library</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library-pimpl.cxx" />
+ <ClCompile Include="library-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx" />
+ <ClInclude Include="library-pskel.hxx" />
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library-pskel.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj.filters
new file mode 100644
index 0000000..30f473b
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/library/library-vc11.vcxproj.filters
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4044D311-878E-4632-B816-7810045EF3F1}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{4F90DEB0-060B-4976-949A-66FFB902F598}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{a31fd2f2-4ce6-4ee0-962d-68d213bc7b1b}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{8e9fd809-af45-49e4-95b8-d2becff77db5}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library-pskel.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj b/xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj
new file mode 100644
index 0000000..345226f
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>library</ProjectName>
+ <ProjectGuid>{D66DAC4D-133C-4DB5-923F-C88A961C3C51}</ProjectGuid>
+ <RootNamespace>library</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library-pimpl.cxx" />
+ <ClCompile Include="library-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx" />
+ <ClInclude Include="library-pskel.hxx" />
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library-pskel.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-inline --type-map library.map library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library-pskel.hxx;library-pskel.ixx;library-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj.filters
new file mode 100644
index 0000000..30f473b
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/library/library-vc12.vcxproj.filters
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4044D311-878E-4632-B816-7810045EF3F1}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{4F90DEB0-060B-4976-949A-66FFB902F598}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{a31fd2f2-4ce6-4ee0-962d-68d213bc7b1b}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{8e9fd809-af45-49e4-95b8-d2becff77db5}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library-pskel.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/library/library-8.0.vcproj b/xsd/dist/examples/cxx/parser/library/library-vc8.vcproj
index bb45f42..f5bb549 100644
--- a/xsd/dist/examples/cxx/parser/library/library-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/library/library-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -123,7 +123,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -204,7 +204,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -281,7 +281,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
diff --git a/xsd/dist/examples/cxx/parser/library/library-9.0.vcproj b/xsd/dist/examples/cxx/parser/library/library-vc9.vcproj
index 93c9f6c..1348f83 100644
--- a/xsd/dist/examples/cxx/parser/library/library-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/library/library-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -127,7 +127,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -202,7 +202,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -279,7 +279,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
diff --git a/xsd/dist/examples/cxx/parser/library/library-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/library/library-xerces2-7.1.vcproj
deleted file mode 100644
index 7585fea..0000000
--- a/xsd/dist/examples/cxx/parser/library/library-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="library"
- ProjectGUID="{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
- RootNamespace="library"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4044D311-878E-4632-B816-7810045EF3F1}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library-pskel.cxx">
- </File>
- <File
- RelativePath=".\library-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{4F90DEB0-060B-4976-949A-66FFB902F598}">
- <File
- RelativePath=".\library-pskel.hxx">
- </File>
- <File
- RelativePath=".\library-pimpl.hxx">
- </File>
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\library-pskel.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/library/library-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/library/library-xerces2-8.0.vcproj
deleted file mode 100644
index 6bd700b..0000000
--- a/xsd/dist/examples/cxx/parser/library/library-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,440 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="library"
- ProjectGUID="{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
- RootNamespace="library"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4044D311-878E-4632-B816-7810045EF3F1}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{4F90DEB0-060B-4976-949A-66FFB902F598}"
- >
- <File
- RelativePath=".\library-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\library-pskel.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/library/library-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/library/library-xerces2-9.0.vcproj
deleted file mode 100644
index 0364547..0000000
--- a/xsd/dist/examples/cxx/parser/library/library-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,437 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="library"
- ProjectGUID="{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
- RootNamespace="library"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4044D311-878E-4632-B816-7810045EF3F1}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{4F90DEB0-060B-4976-949A-66FFB902F598}"
- >
- <File
- RelativePath=".\library-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\library-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\library-pskel.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-parser --generate-inline --type-map library.map library.xsd"
- Outputs="library-pskel.hxx;library-pskel.ixx;library-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-7.1.vcproj b/xsd/dist/examples/cxx/parser/mixed/mixed-7.1.vcproj
deleted file mode 100644
index 09f05f1..0000000
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-7.1.vcproj
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixed"
- ProjectGUID="{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
- RootNamespace="mixed"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8E9A9B27-1882-4B49-9451-345FEED45AEE}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\text-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0BDCEBD5-F78D-437D-BED5-4507831FA9E8}">
- <File
- RelativePath=".\anchor.hxx">
- </File>
- <File
- RelativePath=".\text-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\text.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-10.0.vcxproj b/xsd/dist/examples/cxx/parser/mixed/mixed-vc10.vcxproj
index 8342e03..d940e8d 100644
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc10.vcxproj
@@ -81,11 +81,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -108,11 +107,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -129,11 +127,10 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -154,11 +151,10 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/mixed/mixed-vc10.vcxproj.filters
index 9d5bb36..9d5bb36 100644
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj b/xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj
new file mode 100644
index 0000000..00b00a2
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixed</ProjectName>
+ <ProjectGuid>{304FD6A7-6C73-41C3-B489-97FD5E635CCB}</ProjectGuid>
+ <RootNamespace>mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="text-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="anchor.hxx" />
+ <ClInclude Include="text-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj.filters
new file mode 100644
index 0000000..9d5bb36
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc11.vcxproj.filters
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{8E9A9B27-1882-4B49-9451-345FEED45AEE}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{0BDCEBD5-F78D-437D-BED5-4507831FA9E8}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{748ddcb3-bd88-48b4-b396-d1d3fef8a4e6}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="text-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="anchor.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="text-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj b/xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj
new file mode 100644
index 0000000..d9e63ed
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj
@@ -0,0 +1,210 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixed</ProjectName>
+ <ProjectGuid>{304FD6A7-6C73-41C3-B489-97FD5E635CCB}</ProjectGuid>
+ <RootNamespace>mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="text-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="anchor.hxx" />
+ <ClInclude Include="text-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --type-map text.map text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">text-pskel.hxx;text-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj.filters
new file mode 100644
index 0000000..9d5bb36
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc12.vcxproj.filters
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{8E9A9B27-1882-4B49-9451-345FEED45AEE}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{0BDCEBD5-F78D-437D-BED5-4507831FA9E8}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{748ddcb3-bd88-48b4-b396-d1d3fef8a4e6}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="text-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="anchor.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="text-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-8.0.vcproj b/xsd/dist/examples/cxx/parser/mixed/mixed-vc8.vcproj
index 7a3a9fc..91906be 100644
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -123,7 +123,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -204,7 +204,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -281,7 +281,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-9.0.vcproj b/xsd/dist/examples/cxx/parser/mixed/mixed-vc9.vcproj
index a283dad..f2eb5f1 100644
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/mixed/mixed-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -127,7 +127,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -202,7 +202,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -279,7 +279,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-7.1.vcproj
deleted file mode 100644
index 1aa766f..0000000
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixed"
- ProjectGUID="{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
- RootNamespace="mixed"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8E9A9B27-1882-4B49-9451-345FEED45AEE}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\text-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0BDCEBD5-F78D-437D-BED5-4507831FA9E8}">
- <File
- RelativePath=".\anchor.hxx">
- </File>
- <File
- RelativePath=".\text-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\text.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-8.0.vcproj
deleted file mode 100644
index 49476a1..0000000
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="mixed"
- ProjectGUID="{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
- RootNamespace="mixed"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8E9A9B27-1882-4B49-9451-345FEED45AEE}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\text-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0BDCEBD5-F78D-437D-BED5-4507831FA9E8}"
- >
- <File
- RelativePath=".\anchor.hxx"
- >
- </File>
- <File
- RelativePath=".\text-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\text.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-9.0.vcproj
deleted file mode 100644
index de84d74..0000000
--- a/xsd/dist/examples/cxx/parser/mixed/mixed-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="mixed"
- ProjectGUID="{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
- RootNamespace="mixed"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8E9A9B27-1882-4B49-9451-345FEED45AEE}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\text-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0BDCEBD5-F78D-437D-BED5-4507831FA9E8}"
- >
- <File
- RelativePath=".\anchor.hxx"
- >
- </File>
- <File
- RelativePath=".\text-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\text.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd cxx-parser --type-map text.map text.xsd"
- Outputs="text-pskel.hxx;text-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-7.1.vcproj b/xsd/dist/examples/cxx/parser/mixin/mixin-7.1.vcproj
deleted file mode 100644
index 0dda903..0000000
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-7.1.vcproj
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixin"
- ProjectGUID="{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
- RootNamespace="mixin"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF1C3D0-33B1-4924-9F8C-4DD7B7765D82}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\schema-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{A4012AA7-A8FE-4CE8-9BB0-1DBA14C2CEAD}">
- <File
- RelativePath=".\types.hxx">
- </File>
- <File
- RelativePath=".\schema-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\schema.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-10.0.vcxproj b/xsd/dist/examples/cxx/parser/mixin/mixin-vc10.vcxproj
index 1b2f0f9..729240e 100644
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc10.vcxproj
@@ -81,11 +81,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -108,11 +107,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -129,11 +127,10 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -154,11 +151,10 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/mixin/mixin-vc10.vcxproj.filters
index 4fd62ea..4fd62ea 100644
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj b/xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj
new file mode 100644
index 0000000..7de773e
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixin</ProjectName>
+ <ProjectGuid>{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}</ProjectGuid>
+ <RootNamespace>mixin</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="schema-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="schema-pskel.hxx" />
+ <ClInclude Include="types.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="schema.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj.filters
new file mode 100644
index 0000000..4fd62ea
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc11.vcxproj.filters
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4BF1C3D0-33B1-4924-9F8C-4DD7B7765D82}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{A4012AA7-A8FE-4CE8-9BB0-1DBA14C2CEAD}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{1772a873-01ce-415d-a4e7-b107ecfb3d0f}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="schema-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="schema-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="types.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="schema.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj b/xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj
new file mode 100644
index 0000000..83771b4
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj
@@ -0,0 +1,210 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixin</ProjectName>
+ <ProjectGuid>{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}</ProjectGuid>
+ <RootNamespace>mixin</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="schema-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="schema-pskel.hxx" />
+ <ClInclude Include="types.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="schema.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd schema.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --type-map schema.map schema.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">schema-pskel.hxx;schema-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj.filters
new file mode 100644
index 0000000..4fd62ea
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc12.vcxproj.filters
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4BF1C3D0-33B1-4924-9F8C-4DD7B7765D82}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{A4012AA7-A8FE-4CE8-9BB0-1DBA14C2CEAD}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{1772a873-01ce-415d-a4e7-b107ecfb3d0f}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="schema-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="schema-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="types.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="schema.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-8.0.vcproj b/xsd/dist/examples/cxx/parser/mixin/mixin-vc8.vcproj
index 558f449..384e122 100644
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -123,7 +123,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -204,7 +204,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -281,7 +281,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-9.0.vcproj b/xsd/dist/examples/cxx/parser/mixin/mixin-vc9.vcproj
index 2457d2f..9cdccb3 100644
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/mixin/mixin-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -127,7 +127,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -202,7 +202,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -279,7 +279,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-7.1.vcproj
deleted file mode 100644
index 39e6cdc..0000000
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixin"
- ProjectGUID="{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
- RootNamespace="mixin"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF1C3D0-33B1-4924-9F8C-4DD7B7765D82}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\schema-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{A4012AA7-A8FE-4CE8-9BB0-1DBA14C2CEAD}">
- <File
- RelativePath=".\types.hxx">
- </File>
- <File
- RelativePath=".\schema-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\schema.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-8.0.vcproj
deleted file mode 100644
index 5e4e495..0000000
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="mixin"
- ProjectGUID="{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
- RootNamespace="mixin"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF1C3D0-33B1-4924-9F8C-4DD7B7765D82}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\schema-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{A4012AA7-A8FE-4CE8-9BB0-1DBA14C2CEAD}"
- >
- <File
- RelativePath=".\schema-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\types.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\schema.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-9.0.vcproj
deleted file mode 100644
index e519aef..0000000
--- a/xsd/dist/examples/cxx/parser/mixin/mixin-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="mixin"
- ProjectGUID="{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
- RootNamespace="mixin"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF1C3D0-33B1-4924-9F8C-4DD7B7765D82}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\schema-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{A4012AA7-A8FE-4CE8-9BB0-1DBA14C2CEAD}"
- >
- <File
- RelativePath=".\schema-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\types.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\schema.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd schema.xsd"
- CommandLine="xsd cxx-parser --type-map schema.map schema.xsd"
- Outputs="schema-pskel.hxx;schema-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-7.1.vcproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-7.1.vcproj
deleted file mode 100644
index 7855b8c..0000000
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-7.1.vcproj
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="multiroot"
- ProjectGUID="{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
- RootNamespace="multiroot"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{5CA12033-B9C7-4B8D-95C9-BC1D88DFB211}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\protocol-pskel.cxx">
- </File>
- <File
- RelativePath=".\protocol-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7258C7-69F9-44AC-8651-7ABC08C70815}">
- <File
- RelativePath=".\protocol-pskel.hxx">
- </File>
- <File
- RelativePath=".\protocol-pimpl.hxx">
- </File>
- <File
- RelativePath=".\protocol.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\protocol.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-10.0.vcxproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc10.vcxproj
index bba8fd2..dac752c 100644
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc10.vcxproj.filters
index 2b80057..2b80057 100644
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj
new file mode 100644
index 0000000..9a5497d
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>multiroot</ProjectName>
+ <ProjectGuid>{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}</ProjectGuid>
+ <RootNamespace>multiroot</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="protocol-pimpl.cxx" />
+ <ClCompile Include="protocol-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="protocol-pimpl.hxx" />
+ <ClInclude Include="protocol-pskel.hxx" />
+ <ClInclude Include="protocol.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj.filters
new file mode 100644
index 0000000..2b80057
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc11.vcxproj.filters
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{5CA12033-B9C7-4B8D-95C9-BC1D88DFB211}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{5F7258C7-69F9-44AC-8651-7ABC08C70815}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{8a01b14f-5199-4686-a4e8-419ab31b3ea3}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="protocol-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj
new file mode 100644
index 0000000..a8a41dc
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>multiroot</ProjectName>
+ <ProjectGuid>{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}</ProjectGuid>
+ <RootNamespace>multiroot</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="protocol-pimpl.cxx" />
+ <ClCompile Include="protocol-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="protocol-pimpl.hxx" />
+ <ClInclude Include="protocol-pskel.hxx" />
+ <ClInclude Include="protocol.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --type-map protocol.map protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">protocol-pskel.hxx;protocol-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj.filters
new file mode 100644
index 0000000..2b80057
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc12.vcxproj.filters
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{5CA12033-B9C7-4B8D-95C9-BC1D88DFB211}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{5F7258C7-69F9-44AC-8651-7ABC08C70815}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{8a01b14f-5199-4686-a4e8-419ab31b3ea3}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="protocol-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-8.0.vcproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc8.vcproj
index be8f5ef..a37ec06 100644
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-9.0.vcproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc9.vcproj
index e77e1f7..75ef5e6 100644
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/multiroot/multiroot-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-7.1.vcproj
deleted file mode 100644
index 8510fbb..0000000
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="multiroot"
- ProjectGUID="{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
- RootNamespace="multiroot"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{5CA12033-B9C7-4B8D-95C9-BC1D88DFB211}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\protocol-pskel.cxx">
- </File>
- <File
- RelativePath=".\protocol-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7258C7-69F9-44AC-8651-7ABC08C70815}">
- <File
- RelativePath=".\protocol-pskel.hxx">
- </File>
- <File
- RelativePath=".\protocol-pimpl.hxx">
- </File>
- <File
- RelativePath=".\protocol.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\protocol.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-8.0.vcproj
deleted file mode 100644
index 6deabc8..0000000
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,435 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="multiroot"
- ProjectGUID="{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
- RootNamespace="multiroot"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{5CA12033-B9C7-4B8D-95C9-BC1D88DFB211}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7258C7-69F9-44AC-8651-7ABC08C70815}"
- >
- <File
- RelativePath=".\protocol-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\protocol.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-9.0.vcproj
deleted file mode 100644
index c2a7264..0000000
--- a/xsd/dist/examples/cxx/parser/multiroot/multiroot-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,432 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="multiroot"
- ProjectGUID="{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
- RootNamespace="multiroot"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{5CA12033-B9C7-4B8D-95C9-BC1D88DFB211}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{5F7258C7-69F9-44AC-8651-7ABC08C70815}"
- >
- <File
- RelativePath=".\protocol-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\protocol.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-parser --type-map protocol.map protocol.xsd"
- Outputs="protocol-pskel.hxx;protocol-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/parser-10.0.sln b/xsd/dist/examples/cxx/parser/parser-10.0.sln
deleted file mode 100644
index a3a35e6..0000000
--- a/xsd/dist/examples/cxx/parser/parser-10.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-10.0.vcxproj", "{683E9D46-FCC7-4163-984B-9F399169CF7F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-10.0.vcxproj", "{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixin", "mixin\mixin-10.0.vcxproj", "{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-10.0.vcxproj", "{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generated", "generated\generated-10.0.vcxproj", "{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-10.0.vcxproj", "{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-10.0.vcxproj", "{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyroot", "polyroot\polyroot-10.0.vcxproj", "{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-10.0.vcxproj", "{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-10.0.vcxproj", "{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.ActiveCfg = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.Build.0 = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.ActiveCfg = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.Build.0 = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.ActiveCfg = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.Build.0 = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.ActiveCfg = Release|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.Build.0 = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.ActiveCfg = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.Build.0 = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.ActiveCfg = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.Build.0 = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.ActiveCfg = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.Build.0 = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.ActiveCfg = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.Build.0 = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.ActiveCfg = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.Build.0 = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.ActiveCfg = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.Build.0 = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.ActiveCfg = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.Build.0 = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.ActiveCfg = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.Build.0 = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.ActiveCfg = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.Build.0 = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.ActiveCfg = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.Build.0 = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.ActiveCfg = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.Build.0 = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.ActiveCfg = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.Build.0 = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.ActiveCfg = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.Build.0 = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.ActiveCfg = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.Build.0 = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.ActiveCfg = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.Build.0 = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.ActiveCfg = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.Build.0 = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.ActiveCfg = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.Build.0 = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.ActiveCfg = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.Build.0 = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.ActiveCfg = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.Build.0 = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.ActiveCfg = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.Build.0 = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.ActiveCfg = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.Build.0 = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.ActiveCfg = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.Build.0 = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.ActiveCfg = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.Build.0 = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.ActiveCfg = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.Build.0 = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.ActiveCfg = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.Build.0 = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.ActiveCfg = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.Build.0 = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.ActiveCfg = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.Build.0 = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.ActiveCfg = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.Build.0 = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.ActiveCfg = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.Build.0 = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.ActiveCfg = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.Build.0 = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.ActiveCfg = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.Build.0 = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.ActiveCfg = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.Build.0 = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.ActiveCfg = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.Build.0 = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.ActiveCfg = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.Build.0 = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.ActiveCfg = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.Build.0 = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.ActiveCfg = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/parser/parser-7.1.sln b/xsd/dist/examples/cxx/parser/parser-7.1.sln
deleted file mode 100644
index f274b0b..0000000
--- a/xsd/dist/examples/cxx/parser/parser-7.1.sln
+++ /dev/null
@@ -1,93 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-7.1.vcproj", "{683E9D46-FCC7-4163-984B-9F399169CF7F}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-7.1.vcproj", "{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixin", "mixin\mixin-7.1.vcproj", "{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-7.1.vcproj", "{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generated", "generated\generated-7.1.vcproj", "{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-7.1.vcproj", "{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-7.1.vcproj", "{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyroot", "polyroot\polyroot-7.1.vcproj", "{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-7.1.vcproj", "{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-7.1.vcproj", "{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug.ActiveCfg = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug.Build.0 = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release.ActiveCfg = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release.Build.0 = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug.ActiveCfg = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug.Build.0 = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release.ActiveCfg = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release.Build.0 = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug.ActiveCfg = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug.Build.0 = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release.ActiveCfg = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release.Build.0 = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug.ActiveCfg = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug.Build.0 = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release.ActiveCfg = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release.Build.0 = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug.ActiveCfg = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug.Build.0 = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release.ActiveCfg = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release.Build.0 = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug.ActiveCfg = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug.Build.0 = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release.ActiveCfg = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release.Build.0 = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug.ActiveCfg = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug.Build.0 = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release.ActiveCfg = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release.Build.0 = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug.ActiveCfg = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug.Build.0 = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release.ActiveCfg = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release.Build.0 = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug.ActiveCfg = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug.Build.0 = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release.ActiveCfg = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release.Build.0 = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug.ActiveCfg = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug.Build.0 = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release.ActiveCfg = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/parser/parser-8.0.sln b/xsd/dist/examples/cxx/parser/parser-8.0.sln
deleted file mode 100644
index bbb3691..0000000
--- a/xsd/dist/examples/cxx/parser/parser-8.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-8.0.vcproj", "{683E9D46-FCC7-4163-984B-9F399169CF7F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-8.0.vcproj", "{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixin", "mixin\mixin-8.0.vcproj", "{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-8.0.vcproj", "{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generated", "generated\generated-8.0.vcproj", "{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-8.0.vcproj", "{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-8.0.vcproj", "{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyroot", "polyroot\polyroot-8.0.vcproj", "{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-8.0.vcproj", "{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-8.0.vcproj", "{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.ActiveCfg = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.Build.0 = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.ActiveCfg = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.Build.0 = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.ActiveCfg = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.Build.0 = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.ActiveCfg = Release|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.Build.0 = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.ActiveCfg = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.Build.0 = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.ActiveCfg = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.Build.0 = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.ActiveCfg = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.Build.0 = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.ActiveCfg = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.Build.0 = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.ActiveCfg = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.Build.0 = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.ActiveCfg = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.Build.0 = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.ActiveCfg = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.Build.0 = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.ActiveCfg = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.Build.0 = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.ActiveCfg = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.Build.0 = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.ActiveCfg = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.Build.0 = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.ActiveCfg = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.Build.0 = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.ActiveCfg = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.Build.0 = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.ActiveCfg = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.Build.0 = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.ActiveCfg = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.Build.0 = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.ActiveCfg = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.Build.0 = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.ActiveCfg = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.Build.0 = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.ActiveCfg = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.Build.0 = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.ActiveCfg = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.Build.0 = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.ActiveCfg = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.Build.0 = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.ActiveCfg = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.Build.0 = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.ActiveCfg = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.Build.0 = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.ActiveCfg = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.Build.0 = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.ActiveCfg = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.Build.0 = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.ActiveCfg = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.Build.0 = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.ActiveCfg = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.Build.0 = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.ActiveCfg = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.Build.0 = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.ActiveCfg = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.Build.0 = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.ActiveCfg = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.Build.0 = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.ActiveCfg = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.Build.0 = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.ActiveCfg = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.Build.0 = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.ActiveCfg = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.Build.0 = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.ActiveCfg = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.Build.0 = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.ActiveCfg = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.Build.0 = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.ActiveCfg = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.Build.0 = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.ActiveCfg = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.Build.0 = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.ActiveCfg = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/parser/parser-9.0.sln b/xsd/dist/examples/cxx/parser/parser-9.0.sln
deleted file mode 100644
index aa5f95d..0000000
--- a/xsd/dist/examples/cxx/parser/parser-9.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-9.0.vcproj", "{683E9D46-FCC7-4163-984B-9F399169CF7F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-9.0.vcproj", "{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixin", "mixin\mixin-9.0.vcproj", "{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-9.0.vcproj", "{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generated", "generated\generated-9.0.vcproj", "{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-9.0.vcproj", "{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-9.0.vcproj", "{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyroot", "polyroot\polyroot-9.0.vcproj", "{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-9.0.vcproj", "{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-9.0.vcproj", "{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.ActiveCfg = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.Build.0 = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.ActiveCfg = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.Build.0 = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.ActiveCfg = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.Build.0 = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.ActiveCfg = Release|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.Build.0 = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.ActiveCfg = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.Build.0 = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.ActiveCfg = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.Build.0 = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.ActiveCfg = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.Build.0 = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.ActiveCfg = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.Build.0 = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.ActiveCfg = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.Build.0 = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.ActiveCfg = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.Build.0 = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.ActiveCfg = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.Build.0 = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.ActiveCfg = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.Build.0 = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.ActiveCfg = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.Build.0 = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.ActiveCfg = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.Build.0 = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.ActiveCfg = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.Build.0 = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.ActiveCfg = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.Build.0 = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.ActiveCfg = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.Build.0 = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.ActiveCfg = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.Build.0 = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.ActiveCfg = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.Build.0 = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.ActiveCfg = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.Build.0 = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.ActiveCfg = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.Build.0 = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.ActiveCfg = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.Build.0 = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.ActiveCfg = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.Build.0 = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.ActiveCfg = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.Build.0 = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.ActiveCfg = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.Build.0 = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.ActiveCfg = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.Build.0 = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.ActiveCfg = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.Build.0 = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.ActiveCfg = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.Build.0 = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.ActiveCfg = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.Build.0 = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.ActiveCfg = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.Build.0 = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.ActiveCfg = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.Build.0 = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.ActiveCfg = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.Build.0 = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.ActiveCfg = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.Build.0 = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.ActiveCfg = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.Build.0 = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.ActiveCfg = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.Build.0 = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.ActiveCfg = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.Build.0 = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.ActiveCfg = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.Build.0 = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.ActiveCfg = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.Build.0 = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.ActiveCfg = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.Build.0 = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.ActiveCfg = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/parser/parser-xerces2-7.1.sln b/xsd/dist/examples/cxx/parser/parser-xerces2-7.1.sln
deleted file mode 100644
index 83886e5..0000000
--- a/xsd/dist/examples/cxx/parser/parser-xerces2-7.1.sln
+++ /dev/null
@@ -1,93 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-xerces2-7.1.vcproj", "{683E9D46-FCC7-4163-984B-9F399169CF7F}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-xerces2-7.1.vcproj", "{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixin", "mixin\mixin-xerces2-7.1.vcproj", "{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-7.1.vcproj", "{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generated", "generated\generated-xerces2-7.1.vcproj", "{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-xerces2-7.1.vcproj", "{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-xerces2-7.1.vcproj", "{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyroot", "polyroot\polyroot-xerces2-7.1.vcproj", "{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-7.1.vcproj", "{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-xerces2-7.1.vcproj", "{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug.ActiveCfg = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug.Build.0 = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release.ActiveCfg = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release.Build.0 = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug.ActiveCfg = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug.Build.0 = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release.ActiveCfg = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release.Build.0 = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug.ActiveCfg = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug.Build.0 = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release.ActiveCfg = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release.Build.0 = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug.ActiveCfg = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug.Build.0 = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release.ActiveCfg = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release.Build.0 = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug.ActiveCfg = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug.Build.0 = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release.ActiveCfg = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release.Build.0 = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug.ActiveCfg = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug.Build.0 = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release.ActiveCfg = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release.Build.0 = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug.ActiveCfg = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug.Build.0 = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release.ActiveCfg = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release.Build.0 = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug.ActiveCfg = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug.Build.0 = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release.ActiveCfg = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release.Build.0 = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug.ActiveCfg = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug.Build.0 = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release.ActiveCfg = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release.Build.0 = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug.ActiveCfg = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug.Build.0 = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release.ActiveCfg = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/parser/parser-xerces2-8.0.sln b/xsd/dist/examples/cxx/parser/parser-xerces2-8.0.sln
deleted file mode 100644
index e2e0743..0000000
--- a/xsd/dist/examples/cxx/parser/parser-xerces2-8.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-xerces2-8.0.vcproj", "{683E9D46-FCC7-4163-984B-9F399169CF7F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-xerces2-8.0.vcproj", "{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixin", "mixin\mixin-xerces2-8.0.vcproj", "{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-8.0.vcproj", "{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generated", "generated\generated-xerces2-8.0.vcproj", "{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-xerces2-8.0.vcproj", "{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-xerces2-8.0.vcproj", "{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyroot", "polyroot\polyroot-xerces2-8.0.vcproj", "{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-8.0.vcproj", "{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-xerces2-8.0.vcproj", "{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.ActiveCfg = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.Build.0 = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.ActiveCfg = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.Build.0 = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.ActiveCfg = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.Build.0 = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.ActiveCfg = Release|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.Build.0 = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.ActiveCfg = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.Build.0 = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.ActiveCfg = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.Build.0 = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.ActiveCfg = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.Build.0 = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.ActiveCfg = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.Build.0 = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.ActiveCfg = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.Build.0 = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.ActiveCfg = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.Build.0 = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.ActiveCfg = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.Build.0 = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.ActiveCfg = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.Build.0 = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.ActiveCfg = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.Build.0 = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.ActiveCfg = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.Build.0 = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.ActiveCfg = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.Build.0 = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.ActiveCfg = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.Build.0 = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.ActiveCfg = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.Build.0 = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.ActiveCfg = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.Build.0 = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.ActiveCfg = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.Build.0 = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.ActiveCfg = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.Build.0 = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.ActiveCfg = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.Build.0 = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.ActiveCfg = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.Build.0 = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.ActiveCfg = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.Build.0 = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.ActiveCfg = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.Build.0 = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.ActiveCfg = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.Build.0 = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.ActiveCfg = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.Build.0 = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.ActiveCfg = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.Build.0 = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.ActiveCfg = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.Build.0 = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.ActiveCfg = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.Build.0 = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.ActiveCfg = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.Build.0 = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.ActiveCfg = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.Build.0 = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.ActiveCfg = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.Build.0 = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.ActiveCfg = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.Build.0 = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.ActiveCfg = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.Build.0 = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.ActiveCfg = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.Build.0 = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.ActiveCfg = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.Build.0 = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.ActiveCfg = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.Build.0 = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.ActiveCfg = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.Build.0 = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.ActiveCfg = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.Build.0 = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.ActiveCfg = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/parser/parser-xerces2-9.0.sln b/xsd/dist/examples/cxx/parser/parser-xerces2-9.0.sln
deleted file mode 100644
index 39fffe1..0000000
--- a/xsd/dist/examples/cxx/parser/parser-xerces2-9.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-xerces2-9.0.vcproj", "{683E9D46-FCC7-4163-984B-9F399169CF7F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-xerces2-9.0.vcproj", "{D66DAC4D-133C-4DB5-923F-C88A961C3C51}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixin", "mixin\mixin-xerces2-9.0.vcproj", "{8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-9.0.vcproj", "{304FD6A7-6C73-41C3-B489-97FD5E635CCB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generated", "generated\generated-xerces2-9.0.vcproj", "{4277B39A-C9FB-4F10-8223-8DD38053EDA0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-xerces2-9.0.vcproj", "{3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-xerces2-9.0.vcproj", "{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyroot", "polyroot\polyroot-xerces2-9.0.vcproj", "{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-9.0.vcproj", "{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-xerces2-9.0.vcproj", "{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.ActiveCfg = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|Win32.Build.0 = Debug|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.ActiveCfg = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Debug|x64.Build.0 = Debug|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.ActiveCfg = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|Win32.Build.0 = Release|Win32
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.ActiveCfg = Release|x64
- {683E9D46-FCC7-4163-984B-9F399169CF7F}.Release|x64.Build.0 = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.ActiveCfg = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|Win32.Build.0 = Debug|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.ActiveCfg = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Debug|x64.Build.0 = Debug|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.ActiveCfg = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|Win32.Build.0 = Release|Win32
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.ActiveCfg = Release|x64
- {D66DAC4D-133C-4DB5-923F-C88A961C3C51}.Release|x64.Build.0 = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.ActiveCfg = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|Win32.Build.0 = Debug|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.ActiveCfg = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Debug|x64.Build.0 = Debug|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.ActiveCfg = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|Win32.Build.0 = Release|Win32
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.ActiveCfg = Release|x64
- {8CCA6181-F2CE-4E5E-A20E-4E1E53A35125}.Release|x64.Build.0 = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.ActiveCfg = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|Win32.Build.0 = Debug|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.ActiveCfg = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Debug|x64.Build.0 = Debug|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.ActiveCfg = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|Win32.Build.0 = Release|Win32
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.ActiveCfg = Release|x64
- {304FD6A7-6C73-41C3-B489-97FD5E635CCB}.Release|x64.Build.0 = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.ActiveCfg = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|Win32.Build.0 = Debug|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.ActiveCfg = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Debug|x64.Build.0 = Debug|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.ActiveCfg = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|Win32.Build.0 = Release|Win32
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.ActiveCfg = Release|x64
- {4277B39A-C9FB-4F10-8223-8DD38053EDA0}.Release|x64.Build.0 = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.ActiveCfg = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|Win32.Build.0 = Debug|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.ActiveCfg = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Debug|x64.Build.0 = Debug|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.ActiveCfg = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|Win32.Build.0 = Release|Win32
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.ActiveCfg = Release|x64
- {3AC187DF-4FDF-40B7-9E12-002DC0A15EDB}.Release|x64.Build.0 = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.ActiveCfg = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|Win32.Build.0 = Debug|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.ActiveCfg = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Debug|x64.Build.0 = Debug|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.ActiveCfg = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|Win32.Build.0 = Release|Win32
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.ActiveCfg = Release|x64
- {E05F914A-490B-4780-9BAB-1ED225B3DBEE}.Release|x64.Build.0 = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.ActiveCfg = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|Win32.Build.0 = Debug|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.ActiveCfg = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Debug|x64.Build.0 = Debug|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.ActiveCfg = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|Win32.Build.0 = Release|Win32
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.ActiveCfg = Release|x64
- {FB2098FC-CE8C-4A6B-A064-E2705324A16A}.Release|x64.Build.0 = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.ActiveCfg = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|Win32.Build.0 = Debug|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.ActiveCfg = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Debug|x64.Build.0 = Debug|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.ActiveCfg = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|Win32.Build.0 = Release|Win32
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.ActiveCfg = Release|x64
- {9832425B-38D5-44EC-AED6-3ED4353B24EA}.Release|x64.Build.0 = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.ActiveCfg = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|Win32.Build.0 = Debug|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.ActiveCfg = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Debug|x64.Build.0 = Debug|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.ActiveCfg = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|Win32.Build.0 = Release|Win32
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.ActiveCfg = Release|x64
- {676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-7.1.vcproj b/xsd/dist/examples/cxx/parser/performance/performance-7.1.vcproj
deleted file mode 100644
index 3326752..0000000
--- a/xsd/dist/examples/cxx/parser/performance/performance-7.1.vcproj
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="performance"
- ProjectGUID="{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
- RootNamespace="performance"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{699BF138-9DA5-4EC4-9796-4033D1E443E8}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\test-pskel.cxx">
- </File>
- <File
- RelativePath=".\time.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B5C0740-D0B1-4A08-8657-DA9977EBA68D}">
- <File
- RelativePath=".\test-pskel.hxx">
- </File>
- <File
- RelativePath=".\time.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\test.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-10.0.vcxproj b/xsd/dist/examples/cxx/parser/performance/performance-vc10.vcxproj
index 1560a07..42bc963 100644
--- a/xsd/dist/examples/cxx/parser/performance/performance-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc10.vcxproj
@@ -81,11 +81,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -108,11 +107,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -129,11 +127,10 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -154,11 +151,10 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/performance/performance-vc10.vcxproj.filters
index 43190f1..43190f1 100644
--- a/xsd/dist/examples/cxx/parser/performance/performance-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj b/xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj
new file mode 100644
index 0000000..4d02641
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj
@@ -0,0 +1,207 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>performance</ProjectName>
+ <ProjectGuid>{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}</ProjectGuid>
+ <RootNamespace>performance</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="test-pskel.cxx" />
+ <ClCompile Include="time.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test-pskel.hxx" />
+ <ClInclude Include="time.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj.filters
new file mode 100644
index 0000000..43190f1
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc11.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{699BF138-9DA5-4EC4-9796-4033D1E443E8}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{6B5C0740-D0B1-4A08-8657-DA9977EBA68D}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{d885db2b-37d2-476b-964e-0f50c5f851d4}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="test-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="time.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="time.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj b/xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj
new file mode 100644
index 0000000..b9bdd1c
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>performance</ProjectName>
+ <ProjectGuid>{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}</ProjectGuid>
+ <RootNamespace>performance</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="test-pskel.cxx" />
+ <ClCompile Include="time.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test-pskel.hxx" />
+ <ClInclude Include="time.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-inline test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">test-pskel.hxx;test-pskel.ixx;test-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj.filters
new file mode 100644
index 0000000..43190f1
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc12.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{699BF138-9DA5-4EC4-9796-4033D1E443E8}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{6B5C0740-D0B1-4A08-8657-DA9977EBA68D}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{d885db2b-37d2-476b-964e-0f50c5f851d4}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="test-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="time.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="time.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-8.0.vcproj b/xsd/dist/examples/cxx/parser/performance/performance-vc8.vcproj
index 5ff8ff0..867ecbb 100644
--- a/xsd/dist/examples/cxx/parser/performance/performance-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -123,7 +123,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -204,7 +204,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -281,7 +281,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-9.0.vcproj b/xsd/dist/examples/cxx/parser/performance/performance-vc9.vcproj
index e980e74..3fd46c7 100644
--- a/xsd/dist/examples/cxx/parser/performance/performance-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/performance/performance-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -127,7 +127,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -202,7 +202,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -279,7 +279,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/performance/performance-xerces2-7.1.vcproj
deleted file mode 100644
index 68498f8..0000000
--- a/xsd/dist/examples/cxx/parser/performance/performance-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="performance"
- ProjectGUID="{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
- RootNamespace="performance"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{699BF138-9DA5-4EC4-9796-4033D1E443E8}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\test-pskel.cxx">
- </File>
- <File
- RelativePath=".\time.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B5C0740-D0B1-4A08-8657-DA9977EBA68D}">
- <File
- RelativePath=".\test-pskel.hxx">
- </File>
- <File
- RelativePath=".\time.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\test.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/performance/performance-xerces2-8.0.vcproj
deleted file mode 100644
index c50f283..0000000
--- a/xsd/dist/examples/cxx/parser/performance/performance-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,427 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="performance"
- ProjectGUID="{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
- RootNamespace="performance"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{699BF138-9DA5-4EC4-9796-4033D1E443E8}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\test-pskel.cxx"
- >
- </File>
- <File
- RelativePath=".\time.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B5C0740-D0B1-4A08-8657-DA9977EBA68D}"
- >
- <File
- RelativePath=".\test-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\time.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\test.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/performance/performance-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/performance/performance-xerces2-9.0.vcproj
deleted file mode 100644
index 5f50ab8..0000000
--- a/xsd/dist/examples/cxx/parser/performance/performance-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,424 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="performance"
- ProjectGUID="{676CB1A8-1060-4B7F-86FA-5F8F01AB80BD}"
- RootNamespace="performance"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{699BF138-9DA5-4EC4-9796-4033D1E443E8}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\test-pskel.cxx"
- >
- </File>
- <File
- RelativePath=".\time.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B5C0740-D0B1-4A08-8657-DA9977EBA68D}"
- >
- <File
- RelativePath=".\test-pskel.hxx"
- >
- </File>
- <File
- RelativePath=".\time.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\test.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-parser --generate-inline test.xsd"
- Outputs="test-pskel.hxx;test-pskel.ixx;test-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-7.1.vcproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-7.1.vcproj
deleted file mode 100644
index 9f0724b..0000000
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="polymorphism"
- ProjectGUID="{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1B970E5F-EBC0-44A7-A542-7EBFADBF1573}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{B49CCB93-BC13-4222-A005-6785C8220E30}">
- <File
- RelativePath=".\supermen-pskel.hxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\supermen.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-10.0.vcxproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc10.vcxproj
index 8e70cfe..57c60a3 100644
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc10.vcxproj.filters
index eb84ea1..eb84ea1 100644
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj
new file mode 100644
index 0000000..19e2659
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>polymorphism</ProjectName>
+ <ProjectGuid>{E05F914A-490B-4780-9BAB-1ED225B3DBEE}</ProjectGuid>
+ <RootNamespace>polymorphism</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="supermen-pimpl.cxx" />
+ <ClCompile Include="supermen-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx" />
+ <ClInclude Include="supermen-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj.filters
new file mode 100644
index 0000000..eb84ea1
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc11.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{1B970E5F-EBC0-44A7-A542-7EBFADBF1573}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{B49CCB93-BC13-4222-A005-6785C8220E30}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{408b97b6-8a71-4f5b-976a-dc6c59b92362}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="supermen-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj
new file mode 100644
index 0000000..775d69d
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>polymorphism</ProjectName>
+ <ProjectGuid>{E05F914A-490B-4780-9BAB-1ED225B3DBEE}</ProjectGuid>
+ <RootNamespace>polymorphism</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="supermen-pimpl.cxx" />
+ <ClCompile Include="supermen-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx" />
+ <ClInclude Include="supermen-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj.filters
new file mode 100644
index 0000000..eb84ea1
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc12.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{1B970E5F-EBC0-44A7-A542-7EBFADBF1573}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{B49CCB93-BC13-4222-A005-6785C8220E30}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{408b97b6-8a71-4f5b-976a-dc6c59b92362}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="supermen-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-8.0.vcproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc8.vcproj
index d6a0503..fb4f951 100644
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-9.0.vcproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc9.vcproj
index a504d67..9759681 100644
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-7.1.vcproj
deleted file mode 100644
index c407617..0000000
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="polymorphism"
- ProjectGUID="{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1B970E5F-EBC0-44A7-A542-7EBFADBF1573}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{B49CCB93-BC13-4222-A005-6785C8220E30}">
- <File
- RelativePath=".\supermen-pskel.hxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\supermen.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-8.0.vcproj
deleted file mode 100644
index 5b478dc..0000000
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,431 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="polymorphism"
- ProjectGUID="{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1B970E5F-EBC0-44A7-A542-7EBFADBF1573}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{B49CCB93-BC13-4222-A005-6785C8220E30}"
- >
- <File
- RelativePath=".\supermen-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\supermen.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-9.0.vcproj
deleted file mode 100644
index 94d0e59..0000000
--- a/xsd/dist/examples/cxx/parser/polymorphism/polymorphism-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,428 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="polymorphism"
- ProjectGUID="{E05F914A-490B-4780-9BAB-1ED225B3DBEE}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1B970E5F-EBC0-44A7-A542-7EBFADBF1573}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{B49CCB93-BC13-4222-A005-6785C8220E30}"
- >
- <File
- RelativePath=".\supermen-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\supermen.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-7.1.vcproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-7.1.vcproj
deleted file mode 100644
index a725981..0000000
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="polyroot"
- ProjectGUID="{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
- RootNamespace="polyroot"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{00F2FCE3-0165-405E-B027-F51956F669D1}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6F6E09B9-C59E-45EE-BC77-C2F22039A485}">
- <File
- RelativePath=".\supermen-pskel.hxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\supermen.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-10.0.vcxproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc10.vcxproj
index 41906bd..897a3a1 100644
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc10.vcxproj.filters
index 5b0ee29..5b0ee29 100644
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj
new file mode 100644
index 0000000..86427ed
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>polyroot</ProjectName>
+ <ProjectGuid>{FB2098FC-CE8C-4A6B-A064-E2705324A16A}</ProjectGuid>
+ <RootNamespace>polyroot</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="supermen-pimpl.cxx" />
+ <ClCompile Include="supermen-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx" />
+ <ClInclude Include="supermen-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj.filters
new file mode 100644
index 0000000..5b0ee29
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc11.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{00F2FCE3-0165-405E-B027-F51956F669D1}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{6F6E09B9-C59E-45EE-BC77-C2F22039A485}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{91582f5b-59e2-4b82-9325-b99cf969649e}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="supermen-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj
new file mode 100644
index 0000000..079305b
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>polyroot</ProjectName>
+ <ProjectGuid>{FB2098FC-CE8C-4A6B-A064-E2705324A16A}</ProjectGuid>
+ <RootNamespace>polyroot</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="supermen-pimpl.cxx" />
+ <ClCompile Include="supermen-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx" />
+ <ClInclude Include="supermen-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser --generate-polymorphic supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">supermen-pskel.hxx;supermen-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj.filters
new file mode 100644
index 0000000..5b0ee29
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc12.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{00F2FCE3-0165-405E-B027-F51956F669D1}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{6F6E09B9-C59E-45EE-BC77-C2F22039A485}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{91582f5b-59e2-4b82-9325-b99cf969649e}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pimpl.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen-pimpl.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="supermen-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-8.0.vcproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc8.vcproj
index d62670f..322f814 100644
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-9.0.vcproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc9.vcproj
index 33d4daa..fd72439 100644
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/polyroot/polyroot-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-7.1.vcproj
deleted file mode 100644
index 1cf2d7b..0000000
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="polyroot"
- ProjectGUID="{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
- RootNamespace="polyroot"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{00F2FCE3-0165-405E-B027-F51956F669D1}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6F6E09B9-C59E-45EE-BC77-C2F22039A485}">
- <File
- RelativePath=".\supermen-pskel.hxx">
- </File>
- <File
- RelativePath=".\supermen-pimpl.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\supermen.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-8.0.vcproj
deleted file mode 100644
index 13ee0c1..0000000
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,431 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="polyroot"
- ProjectGUID="{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
- RootNamespace="polyroot"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{00F2FCE3-0165-405E-B027-F51956F669D1}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6F6E09B9-C59E-45EE-BC77-C2F22039A485}"
- >
- <File
- RelativePath=".\supermen-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\supermen.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-9.0.vcproj
deleted file mode 100644
index 792cac2..0000000
--- a/xsd/dist/examples/cxx/parser/polyroot/polyroot-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,428 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="polyroot"
- ProjectGUID="{FB2098FC-CE8C-4A6B-A064-E2705324A16A}"
- RootNamespace="polyroot"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{00F2FCE3-0165-405E-B027-F51956F669D1}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pimpl.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6F6E09B9-C59E-45EE-BC77-C2F22039A485}"
- >
- <File
- RelativePath=".\supermen-pimpl.hxx"
- >
- </File>
- <File
- RelativePath=".\supermen-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\supermen.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd cxx-parser --generate-polymorphic supermen.xsd"
- Outputs="supermen-pskel.hxx;supermen-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-7.1.vcproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-7.1.vcproj
deleted file mode 100644
index a689a5f..0000000
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-7.1.vcproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="wildcard"
- ProjectGUID="{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
- RootNamespace="wildcard"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{F05001BC-BAEB-4D9D-89E4-D19B208F34BF}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\email-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDCB25B7-BCBA-4C74-828E-09B2D7860485}">
- <File
- RelativePath=".\email-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\email.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-10.0.vcxproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc10.vcxproj
index 749e901..adb99cb 100644
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc10.vcxproj
@@ -81,11 +81,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -108,11 +107,10 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -129,11 +127,10 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -154,11 +151,10 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-10.0.vcxproj.filters b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc10.vcxproj.filters
index 756239f..756239f 100644
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj
new file mode 100644
index 0000000..e422655
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>wildcard</ProjectName>
+ <ProjectGuid>{9832425B-38D5-44EC-AED6-3ED4353B24EA}</ProjectGuid>
+ <RootNamespace>wildcard</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="email-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj.filters b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj.filters
new file mode 100644
index 0000000..756239f
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{F05001BC-BAEB-4D9D-89E4-D19B208F34BF}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{CDCB25B7-BCBA-4C74-828E-09B2D7860485}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{1b27359f-6508-4bb0-96ed-b5a3fdb228c6}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="email-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj
new file mode 100644
index 0000000..e52e9dc
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>wildcard</ProjectName>
+ <ProjectGuid>{9832425B-38D5-44EC-AED6-3ED4353B24EA}</ProjectGuid>
+ <RootNamespace>wildcard</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="email-pskel.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email-pskel.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-parser email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">email-pskel.hxx;email-pskel.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj.filters b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj.filters
new file mode 100644
index 0000000..756239f
--- /dev/null
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{F05001BC-BAEB-4D9D-89E4-D19B208F34BF}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{CDCB25B7-BCBA-4C74-828E-09B2D7860485}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{1b27359f-6508-4bb0-96ed-b5a3fdb228c6}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="email-pskel.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email-pskel.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-8.0.vcproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc8.vcproj
index a84eda5..c255eac 100644
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-8.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -123,7 +123,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -204,7 +204,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
@@ -281,7 +281,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-9.0.vcproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc9.vcproj
index a016883..e481e43 100644
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-9.0.vcproj
+++ b/xsd/dist/examples/cxx/parser/wildcard/wildcard-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -127,7 +127,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -202,7 +202,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
@@ -279,7 +279,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-7.1.vcproj
deleted file mode 100644
index b1cca07..0000000
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="wildcard"
- ProjectGUID="{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
- RootNamespace="wildcard"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{F05001BC-BAEB-4D9D-89E4-D19B208F34BF}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\email-pskel.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDCB25B7-BCBA-4C74-828E-09B2D7860485}">
- <File
- RelativePath=".\email-pskel.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\email.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-8.0.vcproj
deleted file mode 100644
index 15a62f2..0000000
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,419 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="wildcard"
- ProjectGUID="{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
- RootNamespace="wildcard"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{F05001BC-BAEB-4D9D-89E4-D19B208F34BF}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\email-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDCB25B7-BCBA-4C74-828E-09B2D7860485}"
- >
- <File
- RelativePath=".\email-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\email.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-9.0.vcproj
deleted file mode 100644
index 8ff8985..0000000
--- a/xsd/dist/examples/cxx/parser/wildcard/wildcard-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,416 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="wildcard"
- ProjectGUID="{9832425B-38D5-44EC-AED6-3ED4353B24EA}"
- RootNamespace="wildcard"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{F05001BC-BAEB-4D9D-89E4-D19B208F34BF}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\email-pskel.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDCB25B7-BCBA-4C74-828E-09B2D7860485}"
- >
- <File
- RelativePath=".\email-pskel.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\email.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-parser email.xsd"
- Outputs="email-pskel.hxx;email-pskel.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.sln b/xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.sln
deleted file mode 100644
index de4071f..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "boost-10.0.vcxproj", "{0C3A70E2-F673-46B7-B23D-9888266918D5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.ActiveCfg = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.Build.0 = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.ActiveCfg = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.Build.0 = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.ActiveCfg = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.Build.0 = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.ActiveCfg = Release|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.sln b/xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.sln
deleted file mode 100644
index a819e22..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "boost-7.1.vcproj", "{0C3A70E2-F673-46B7-B23D-9888266918D5}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug.ActiveCfg = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug.Build.0 = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release.ActiveCfg = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.vcproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.vcproj
deleted file mode 100644
index 1332c12..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-7.1.vcproj
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="boost"
- ProjectGUID="{0C3A70E2-F673-46B7-B23D-9888266918D5}"
- RootNamespace="boost"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{22FBBBBD-3A62-471C-867C-8B6F5B3531A9}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{BB6813A9-25E1-49A2-8FCC-FAC9FC4C27FB}">
- <File
- RelativePath=".\library.hxx">
- </File>
- <File
- RelativePath=".\library-prologue.hxx">
- </File>
- <File
- RelativePath=".\boost-archive-insertion.hxx">
- </File>
- <File
- RelativePath=".\boost-archive-extraction.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-8.0.sln b/xsd/dist/examples/cxx/tree/binary/boost/boost-8.0.sln
deleted file mode 100644
index 1cfe184..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "boost-8.0.vcproj", "{0C3A70E2-F673-46B7-B23D-9888266918D5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.ActiveCfg = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.Build.0 = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.ActiveCfg = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.Build.0 = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.ActiveCfg = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.Build.0 = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.ActiveCfg = Release|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-9.0.sln b/xsd/dist/examples/cxx/tree/binary/boost/boost-9.0.sln
deleted file mode 100644
index b1c69ef..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "boost-9.0.vcproj", "{0C3A70E2-F673-46B7-B23D-9888266918D5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.ActiveCfg = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.Build.0 = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.ActiveCfg = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.Build.0 = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.ActiveCfg = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.Build.0 = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.ActiveCfg = Release|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.vcxproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc10.vcxproj
index 8df3f37..8834226 100644
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc10.vcxproj
@@ -86,7 +86,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -114,7 +113,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -136,7 +134,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -162,7 +159,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc10.vcxproj.filters
index edb71a3..edb71a3 100644
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj
new file mode 100644
index 0000000..73a65d5
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>boost</ProjectName>
+ <ProjectGuid>{0C3A70E2-F673-46B7-B23D-9888266918D5}</ProjectGuid>
+ <RootNamespace>boost</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="boost-archive-extraction.hxx" />
+ <ClInclude Include="boost-archive-insertion.hxx" />
+ <ClInclude Include="library-prologue.hxx" />
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj.filters
new file mode 100644
index 0000000..edb71a3
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc11.vcxproj.filters
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{22FBBBBD-3A62-471C-867C-8B6F5B3531A9}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{BB6813A9-25E1-49A2-8FCC-FAC9FC4C27FB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{458e67fd-1629-41ef-9a2b-66709e69a9bf}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="boost-archive-extraction.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="boost-archive-insertion.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-prologue.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj
new file mode 100644
index 0000000..8c7d2c5
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>boost</ProjectName>
+ <ProjectGuid>{0C3A70E2-F673-46B7-B23D-9888266918D5}</ProjectGuid>
+ <RootNamespace>boost</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="boost-archive-extraction.hxx" />
+ <ClInclude Include="boost-archive-insertion.hxx" />
+ <ClInclude Include="library-prologue.hxx" />
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj.filters
new file mode 100644
index 0000000..edb71a3
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc12.vcxproj.filters
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{22FBBBBD-3A62-471C-867C-8B6F5B3531A9}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{BB6813A9-25E1-49A2-8FCC-FAC9FC4C27FB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{458e67fd-1629-41ef-9a2b-66709e69a9bf}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="boost-archive-extraction.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="boost-archive-insertion.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-prologue.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-8.0.vcproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc8.vcproj
index 82d23ae..82d23ae 100644
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc8.vcproj
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-9.0.vcproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc9.vcproj
index f5369af..f5369af 100644
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/binary/boost/boost-vc9.vcproj
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.sln
deleted file mode 100644
index f6493d6..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "boost-xerces2-7.1.vcproj", "{0C3A70E2-F673-46B7-B23D-9888266918D5}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug.ActiveCfg = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug.Build.0 = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release.ActiveCfg = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.vcproj
deleted file mode 100644
index 5081f38..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="boost"
- ProjectGUID="{0C3A70E2-F673-46B7-B23D-9888266918D5}"
- RootNamespace="boost"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{22FBBBBD-3A62-471C-867C-8B6F5B3531A9}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{BB6813A9-25E1-49A2-8FCC-FAC9FC4C27FB}">
- <File
- RelativePath=".\library.hxx">
- </File>
- <File
- RelativePath=".\library-prologue.hxx">
- </File>
- <File
- RelativePath=".\boost-archive-insertion.hxx">
- </File>
- <File
- RelativePath=".\boost-archive-extraction.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.sln
deleted file mode 100644
index 34ae78e..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "boost-xerces2-8.0.vcproj", "{0C3A70E2-F673-46B7-B23D-9888266918D5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.ActiveCfg = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.Build.0 = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.ActiveCfg = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.Build.0 = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.ActiveCfg = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.Build.0 = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.ActiveCfg = Release|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.vcproj
deleted file mode 100644
index a3910f4..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,435 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="boost"
- ProjectGUID="{0C3A70E2-F673-46B7-B23D-9888266918D5}"
- RootNamespace="boost"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{22FBBBBD-3A62-471C-867C-8B6F5B3531A9}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{BB6813A9-25E1-49A2-8FCC-FAC9FC4C27FB}"
- >
- <File
- RelativePath=".\boost-archive-extraction.hxx"
- >
- </File>
- <File
- RelativePath=".\boost-archive-insertion.hxx"
- >
- </File>
- <File
- RelativePath=".\library-prologue.hxx"
- >
- </File>
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.sln
deleted file mode 100644
index 9e2d81e..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "boost-xerces2-9.0.vcproj", "{0C3A70E2-F673-46B7-B23D-9888266918D5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.ActiveCfg = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|Win32.Build.0 = Debug|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.ActiveCfg = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Debug|x64.Build.0 = Debug|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.ActiveCfg = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|Win32.Build.0 = Release|Win32
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.ActiveCfg = Release|x64
- {0C3A70E2-F673-46B7-B23D-9888266918D5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.vcproj
deleted file mode 100644
index f1d01ef..0000000
--- a/xsd/dist/examples/cxx/tree/binary/boost/boost-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,432 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="boost"
- ProjectGUID="{0C3A70E2-F673-46B7-B23D-9888266918D5}"
- RootNamespace="boost"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{22FBBBBD-3A62-471C-867C-8B6F5B3531A9}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{BB6813A9-25E1-49A2-8FCC-FAC9FC4C27FB}"
- >
- <File
- RelativePath=".\boost-archive-extraction.hxx"
- >
- </File>
- <File
- RelativePath=".\boost-archive-insertion.hxx"
- >
- </File>
- <File
- RelativePath=".\library-prologue.hxx"
- >
- </File>
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --hxx-prologue-file library-prologue.hxx --generate-insertion boost::archive::text_oarchive --generate-extraction boost::archive::text_iarchive library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.sln b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.sln
deleted file mode 100644
index d3bf523..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdr", "cdr-10.0.vcxproj", "{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.ActiveCfg = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.Build.0 = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.ActiveCfg = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.Build.0 = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.ActiveCfg = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.Build.0 = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.ActiveCfg = Release|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.sln b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.sln
deleted file mode 100644
index ba99300..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdr", "cdr-7.1.vcproj", "{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug.ActiveCfg = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug.Build.0 = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release.ActiveCfg = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.vcproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.vcproj
deleted file mode 100644
index 90cc1ef..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="cdr"
- ProjectGUID="{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
- RootNamespace="cdr"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib ACEd.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib ACE.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{50AA6317-04BE-45AB-98DD-7A32AEB710CF}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E740B51E-A619-4888-B6B9-566A3C77C60B}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-8.0.sln b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-8.0.sln
deleted file mode 100644
index d56f85b..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdr", "cdr-8.0.vcproj", "{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.ActiveCfg = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.Build.0 = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.ActiveCfg = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.Build.0 = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.ActiveCfg = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.Build.0 = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.ActiveCfg = Release|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-9.0.sln b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-9.0.sln
deleted file mode 100644
index 873085c..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdr", "cdr-9.0.vcproj", "{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.ActiveCfg = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.Build.0 = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.ActiveCfg = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.Build.0 = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.ActiveCfg = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.Build.0 = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.ActiveCfg = Release|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.vcxproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc10.vcxproj
index a872d5f..5acfa0e 100644
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc10.vcxproj
@@ -86,7 +86,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;ACEd.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -114,7 +113,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;ACEd.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -136,7 +134,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;ACE.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -162,7 +159,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;ACE.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc10.vcxproj.filters
index 92ff3ee..92ff3ee 100644
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc11.vcxproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc11.vcxproj
new file mode 100644
index 0000000..c87aa4b
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>cdr</ProjectName>
+ <ProjectGuid>{A8CC2814-5056-4953-8B4C-E52E72ADD36C}</ProjectGuid>
+ <RootNamespace>cdr</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;ACEd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;ACEd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;ACE.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;ACE.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc11.vcxproj.filters
index b1f4731..92ff3ee 100644
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc11.vcxproj.filters
@@ -2,15 +2,15 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
- <UniqueIdentifier>{19D063BE-083B-4E8A-89F8-D87CC43CB197}</UniqueIdentifier>
+ <UniqueIdentifier>{50AA6317-04BE-45AB-98DD-7A32AEB710CF}</UniqueIdentifier>
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
- <UniqueIdentifier>{E11762CD-4895-44DE-AA13-48BC7AAFC419}</UniqueIdentifier>
+ <UniqueIdentifier>{E740B51E-A619-4888-B6B9-566A3C77C60B}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Schema Files">
- <UniqueIdentifier>{e64ee5c7-1fea-48c3-92f2-3b85fdd87547}</UniqueIdentifier>
+ <UniqueIdentifier>{37283c57-4a32-48ed-823b-0efdf7cdcf51}</UniqueIdentifier>
<Extensions>xsd</Extensions>
</Filter>
</ItemGroup>
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj
new file mode 100644
index 0000000..e0d6496
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>cdr</ProjectName>
+ <ProjectGuid>{A8CC2814-5056-4953-8B4C-E52E72ADD36C}</ProjectGuid>
+ <RootNamespace>cdr</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;ACEd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;ACEd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;ACE.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;ACE.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj.filters
new file mode 100644
index 0000000..92ff3ee
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{50AA6317-04BE-45AB-98DD-7A32AEB710CF}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{E740B51E-A619-4888-B6B9-566A3C77C60B}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{37283c57-4a32-48ed-823b-0efdf7cdcf51}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-8.0.vcproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc8.vcproj
index d35171a..d35171a 100644
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc8.vcproj
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-9.0.vcproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc9.vcproj
index f379d83..f379d83 100644
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-vc9.vcproj
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.sln
deleted file mode 100644
index c704679..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdr", "cdr-xerces2-7.1.vcproj", "{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug.ActiveCfg = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug.Build.0 = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release.ActiveCfg = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.vcproj
deleted file mode 100644
index 1723d58..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="cdr"
- ProjectGUID="{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
- RootNamespace="cdr"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib ACEd.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib ACE.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{50AA6317-04BE-45AB-98DD-7A32AEB710CF}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E740B51E-A619-4888-B6B9-566A3C77C60B}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.sln
deleted file mode 100644
index 3ffce8e..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdr", "cdr-xerces2-8.0.vcproj", "{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.ActiveCfg = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.Build.0 = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.ActiveCfg = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.Build.0 = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.ActiveCfg = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.Build.0 = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.ActiveCfg = Release|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.vcproj
deleted file mode 100644
index 2b469a2..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="cdr"
- ProjectGUID="{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
- RootNamespace="cdr"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib ACEd.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib ACE.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib ACEd.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib ACE.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{50AA6317-04BE-45AB-98DD-7A32AEB710CF}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E740B51E-A619-4888-B6B9-566A3C77C60B}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.sln
deleted file mode 100644
index 2ec0fbd..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdr", "cdr-xerces2-9.0.vcproj", "{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.ActiveCfg = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|Win32.Build.0 = Debug|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.ActiveCfg = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Debug|x64.Build.0 = Debug|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.ActiveCfg = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|Win32.Build.0 = Release|Win32
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.ActiveCfg = Release|x64
- {A8CC2814-5056-4953-8B4C-E52E72ADD36C}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.vcproj
deleted file mode 100644
index 21d8cd9..0000000
--- a/xsd/dist/examples/cxx/tree/binary/cdr/cdr-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="cdr"
- ProjectGUID="{A8CC2814-5056-4953-8B4C-E52E72ADD36C}"
- RootNamespace="cdr"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib ACEd.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib ACEd.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib ACE.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib ACE.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{50AA6317-04BE-45AB-98DD-7A32AEB710CF}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E740B51E-A619-4888-B6B9-566A3C77C60B}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.sln b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.sln
deleted file mode 100644
index 0477aa1..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xdr", "xdr-10.0.vcxproj", "{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.ActiveCfg = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.Build.0 = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.ActiveCfg = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.Build.0 = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.ActiveCfg = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.Build.0 = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.ActiveCfg = Release|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.sln b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.sln
deleted file mode 100644
index 0a3d261..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xdr", "xdr-7.1.vcproj", "{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug.ActiveCfg = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug.Build.0 = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release.ActiveCfg = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.vcproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.vcproj
deleted file mode 100644
index 8d43d7f..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="xdr"
- ProjectGUID="{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
- RootNamespace="xdr"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C5A0E74B-63C1-41E3-B291-B85FCC86FDF7}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FC110C72-7935-49D5-B25E-F96C87BA49E4}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-8.0.sln b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-8.0.sln
deleted file mode 100644
index 139be58..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xdr", "xdr-8.0.vcproj", "{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.ActiveCfg = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.Build.0 = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.ActiveCfg = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.Build.0 = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.ActiveCfg = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.Build.0 = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.ActiveCfg = Release|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-9.0.sln b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-9.0.sln
deleted file mode 100644
index 65f094f..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xdr", "xdr-9.0.vcproj", "{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.ActiveCfg = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.Build.0 = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.ActiveCfg = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.Build.0 = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.ActiveCfg = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.Build.0 = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.ActiveCfg = Release|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.vcxproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc10.vcxproj
index 1033991..a8cad53 100644
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc10.vcxproj
@@ -86,7 +86,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -114,7 +113,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -136,7 +134,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -162,7 +159,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc10.vcxproj.filters
index c9e491f..c9e491f 100644
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj
new file mode 100644
index 0000000..5c9f9d5
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>xdr</ProjectName>
+ <ProjectGuid>{D9696808-1B73-43C9-A3BB-18DD29776EC5}</ProjectGuid>
+ <RootNamespace>xdr</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj.filters
new file mode 100644
index 0000000..c9e491f
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{C5A0E74B-63C1-41E3-B291-B85FCC86FDF7}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{FC110C72-7935-49D5-B25E-F96C87BA49E4}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{b7ff65c1-ff9c-4e2d-869b-e4925d838adb}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj
new file mode 100644
index 0000000..e3be342
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>xdr</ProjectName>
+ <ProjectGuid>{D9696808-1B73-43C9-A3BB-18DD29776EC5}</ProjectGuid>
+ <RootNamespace>xdr</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj.filters
new file mode 100644
index 0000000..c9e491f
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{C5A0E74B-63C1-41E3-B291-B85FCC86FDF7}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{FC110C72-7935-49D5-B25E-F96C87BA49E4}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{b7ff65c1-ff9c-4e2d-869b-e4925d838adb}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-8.0.vcproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc8.vcproj
index f83c026..f83c026 100644
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc8.vcproj
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-9.0.vcproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc9.vcproj
index 34ca6b4..34ca6b4 100644
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-vc9.vcproj
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.sln
deleted file mode 100644
index 5526613..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xdr", "xdr-xerces2-7.1.vcproj", "{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug.ActiveCfg = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug.Build.0 = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release.ActiveCfg = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.vcproj
deleted file mode 100644
index c592fbd..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="xdr"
- ProjectGUID="{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
- RootNamespace="xdr"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C5A0E74B-63C1-41E3-B291-B85FCC86FDF7}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FC110C72-7935-49D5-B25E-F96C87BA49E4}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.sln
deleted file mode 100644
index 9ee2ee2..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xdr", "xdr-xerces2-8.0.vcproj", "{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.ActiveCfg = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.Build.0 = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.ActiveCfg = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.Build.0 = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.ActiveCfg = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.Build.0 = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.ActiveCfg = Release|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.vcproj
deleted file mode 100644
index 23f2030..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="xdr"
- ProjectGUID="{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
- RootNamespace="xdr"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C5A0E74B-63C1-41E3-B291-B85FCC86FDF7}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FC110C72-7935-49D5-B25E-F96C87BA49E4}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.sln
deleted file mode 100644
index 6e0a25a..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xdr", "xdr-xerces2-9.0.vcproj", "{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.ActiveCfg = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|Win32.Build.0 = Debug|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.ActiveCfg = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Debug|x64.Build.0 = Debug|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.ActiveCfg = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|Win32.Build.0 = Release|Win32
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.ActiveCfg = Release|x64
- {D9696808-1B73-43C9-A3BB-18DD29776EC5}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.vcproj
deleted file mode 100644
index 75b0331..0000000
--- a/xsd/dist/examples/cxx/tree/binary/xdr/xdr-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="xdr"
- ProjectGUID="{D9696808-1B73-43C9-A3BB-18DD29776EC5}"
- RootNamespace="xdr"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C5A0E74B-63C1-41E3-B291-B85FCC86FDF7}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FC110C72-7935-49D5-B25E-F96C87BA49E4}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-insertion XDR --generate-extraction XDR library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-7.1.vcproj b/xsd/dist/examples/cxx/tree/caching/caching-7.1.vcproj
deleted file mode 100644
index 6301d32..0000000
--- a/xsd/dist/examples/cxx/tree/caching/caching-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="caching"
- ProjectGUID="{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
- RootNamespace="caching"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8953E6CC-4E46-4D97-9704-CE8F76672843}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AA1A2DB4-3798-4A0C-9339-FAA57753A0AC}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-10.0.vcxproj b/xsd/dist/examples/cxx/tree/caching/caching-vc10.vcxproj
index 286ed09..7bb6670 100644
--- a/xsd/dist/examples/cxx/tree/caching/caching-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc10.vcxproj
@@ -86,7 +86,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -114,7 +113,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -136,7 +134,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -162,7 +159,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/caching/caching-vc10.vcxproj.filters
index 07ab0e9..07ab0e9 100644
--- a/xsd/dist/examples/cxx/tree/caching/caching-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj b/xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj
new file mode 100644
index 0000000..1e8d543
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>caching</ProjectName>
+ <ProjectGuid>{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}</ProjectGuid>
+ <RootNamespace>caching</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj.filters
new file mode 100644
index 0000000..07ab0e9
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{8953E6CC-4E46-4D97-9704-CE8F76672843}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{AA1A2DB4-3798-4A0C-9339-FAA57753A0AC}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{88b19602-75bf-44d6-a995-f5e213e36528}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj b/xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj
new file mode 100644
index 0000000..304d2c2
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>caching</ProjectName>
+ <ProjectGuid>{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}</ProjectGuid>
+ <RootNamespace>caching</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj.filters
new file mode 100644
index 0000000..07ab0e9
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{8953E6CC-4E46-4D97-9704-CE8F76672843}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{AA1A2DB4-3798-4A0C-9339-FAA57753A0AC}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{88b19602-75bf-44d6-a995-f5e213e36528}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-8.0.vcproj b/xsd/dist/examples/cxx/tree/caching/caching-vc8.vcproj
index 3d75cb6..3d75cb6 100644
--- a/xsd/dist/examples/cxx/tree/caching/caching-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc8.vcproj
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-9.0.vcproj b/xsd/dist/examples/cxx/tree/caching/caching-vc9.vcproj
index b356172..b356172 100644
--- a/xsd/dist/examples/cxx/tree/caching/caching-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/caching/caching-vc9.vcproj
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/caching/caching-xerces2-7.1.vcproj
deleted file mode 100644
index e280f2f..0000000
--- a/xsd/dist/examples/cxx/tree/caching/caching-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="caching"
- ProjectGUID="{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
- RootNamespace="caching"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8953E6CC-4E46-4D97-9704-CE8F76672843}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AA1A2DB4-3798-4A0C-9339-FAA57753A0AC}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/caching/caching-xerces2-8.0.vcproj
deleted file mode 100644
index 07d9da5..0000000
--- a/xsd/dist/examples/cxx/tree/caching/caching-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="caching"
- ProjectGUID="{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
- RootNamespace="caching"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8953E6CC-4E46-4D97-9704-CE8F76672843}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AA1A2DB4-3798-4A0C-9339-FAA57753A0AC}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/caching/caching-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/caching/caching-xerces2-9.0.vcproj
deleted file mode 100644
index 07c61ca..0000000
--- a/xsd/dist/examples/cxx/tree/caching/caching-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="caching"
- ProjectGUID="{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
- RootNamespace="caching"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{8953E6CC-4E46-4D97-9704-CE8F76672843}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AA1A2DB4-3798-4A0C-9339-FAA57753A0AC}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-10.0.sln b/xsd/dist/examples/cxx/tree/compression/compression-10.0.sln
deleted file mode 100644
index 5e7c35f..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-10.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression-10.0.vcxproj", "{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.ActiveCfg = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.Build.0 = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.ActiveCfg = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.Build.0 = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.ActiveCfg = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.Build.0 = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.ActiveCfg = Release|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-7.1.sln b/xsd/dist/examples/cxx/tree/compression/compression-7.1.sln
deleted file mode 100644
index fbb90b5..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression-7.1.vcproj", "{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug.ActiveCfg = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug.Build.0 = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release.ActiveCfg = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-7.1.vcproj b/xsd/dist/examples/cxx/tree/compression/compression-7.1.vcproj
deleted file mode 100644
index fddab79..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="compression"
- ProjectGUID="{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
- RootNamespace="compression"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E38C94E8-B473-4B88-9C42-BD34C81BC24B}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- <File
- RelativePath=".\compressed-format-target.cxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{408177AE-D480-4933-AED3-705D39F15C9F}">
- <File
- RelativePath=".\library.hxx">
- </File>
- <File
- RelativePath=".\compressed-format-target.hxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-8.0.sln b/xsd/dist/examples/cxx/tree/compression/compression-8.0.sln
deleted file mode 100644
index 5b0f577..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression-8.0.vcproj", "{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.ActiveCfg = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.Build.0 = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.ActiveCfg = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.Build.0 = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.ActiveCfg = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.Build.0 = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.ActiveCfg = Release|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-9.0.sln b/xsd/dist/examples/cxx/tree/compression/compression-9.0.sln
deleted file mode 100644
index 73d32a6..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression-9.0.vcproj", "{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.ActiveCfg = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.Build.0 = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.ActiveCfg = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.Build.0 = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.ActiveCfg = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.Build.0 = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.ActiveCfg = Release|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-10.0.vcxproj b/xsd/dist/examples/cxx/tree/compression/compression-vc10.vcxproj
index 3ecb3ab..0f084fb 100644
--- a/xsd/dist/examples/cxx/tree/compression/compression-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc10.vcxproj
@@ -86,7 +86,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -114,7 +113,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -136,7 +134,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -162,7 +159,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/compression/compression-vc10.vcxproj.filters
index 0156a51..0156a51 100644
--- a/xsd/dist/examples/cxx/tree/compression/compression-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj b/xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj
new file mode 100644
index 0000000..76c9887
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>compression</ProjectName>
+ <ProjectGuid>{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}</ProjectGuid>
+ <RootNamespace>compression</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ <ClCompile Include="compressed-format-target.cxx" />
+ <ClCompile Include="compressed-input-source.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ <ClInclude Include="compressed-format-target.hxx" />
+ <ClInclude Include="compressed-input-source.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj.filters
new file mode 100644
index 0000000..0156a51
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc11.vcxproj.filters
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E38C94E8-B473-4B88-9C42-BD34C81BC24B}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{408177AE-D480-4933-AED3-705D39F15C9F}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{0e78ae69-359d-42ea-8a3c-c60040f3aa2c}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="compressed-format-target.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="compressed-input-source.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="compressed-format-target.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="compressed-input-source.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj b/xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj
new file mode 100644
index 0000000..1e7a3b7
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj
@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>compression</ProjectName>
+ <ProjectGuid>{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}</ProjectGuid>
+ <RootNamespace>compression</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;zdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ <ClCompile Include="compressed-format-target.cxx" />
+ <ClCompile Include="compressed-input-source.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ <ClInclude Include="compressed-format-target.hxx" />
+ <ClInclude Include="compressed-input-source.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj.filters
new file mode 100644
index 0000000..0156a51
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc12.vcxproj.filters
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E38C94E8-B473-4B88-9C42-BD34C81BC24B}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{408177AE-D480-4933-AED3-705D39F15C9F}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{0e78ae69-359d-42ea-8a3c-c60040f3aa2c}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="compressed-format-target.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="compressed-input-source.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="compressed-format-target.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="compressed-input-source.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-8.0.vcproj b/xsd/dist/examples/cxx/tree/compression/compression-vc8.vcproj
index 85b45d8..85b45d8 100644
--- a/xsd/dist/examples/cxx/tree/compression/compression-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc8.vcproj
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-9.0.vcproj b/xsd/dist/examples/cxx/tree/compression/compression-vc9.vcproj
index 92ea1da..92ea1da 100644
--- a/xsd/dist/examples/cxx/tree/compression/compression-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/compression/compression-vc9.vcproj
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.sln
deleted file mode 100644
index b37e3eb..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression-xerces2-7.1.vcproj", "{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug.ActiveCfg = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug.Build.0 = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release.ActiveCfg = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.vcproj
deleted file mode 100644
index e361b62..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="compression"
- ProjectGUID="{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
- RootNamespace="compression"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E38C94E8-B473-4B88-9C42-BD34C81BC24B}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- <File
- RelativePath=".\compressed-format-target.cxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{408177AE-D480-4933-AED3-705D39F15C9F}">
- <File
- RelativePath=".\library.hxx">
- </File>
- <File
- RelativePath=".\compressed-format-target.hxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.sln
deleted file mode 100644
index a6ef4ed..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression-xerces2-8.0.vcproj", "{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.ActiveCfg = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.Build.0 = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.ActiveCfg = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.Build.0 = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.ActiveCfg = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.Build.0 = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.ActiveCfg = Release|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.vcproj
deleted file mode 100644
index fb651f6..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,435 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="compression"
- ProjectGUID="{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
- RootNamespace="compression"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E38C94E8-B473-4B88-9C42-BD34C81BC24B}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- <File
- RelativePath=".\compressed-format-target.cxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{408177AE-D480-4933-AED3-705D39F15C9F}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- <File
- RelativePath=".\compressed-format-target.hxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-intellisense --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.sln
deleted file mode 100644
index 69eb3e3..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression-xerces2-9.0.vcproj", "{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.ActiveCfg = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|Win32.Build.0 = Debug|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.ActiveCfg = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Debug|x64.Build.0 = Debug|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.ActiveCfg = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|Win32.Build.0 = Release|Win32
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.ActiveCfg = Release|x64
- {AA385EB4-7352-4865-9C5C-9F0DE7BA0060}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.vcproj
deleted file mode 100644
index 7c95a2a..0000000
--- a/xsd/dist/examples/cxx/tree/compression/compression-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,432 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="compression"
- ProjectGUID="{AA385EB4-7352-4865-9C5C-9F0DE7BA0060}"
- RootNamespace="compression"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib zdll.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E38C94E8-B473-4B88-9C42-BD34C81BC24B}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- <File
- RelativePath=".\compressed-format-target.cxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{408177AE-D480-4933-AED3-705D39F15C9F}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- <File
- RelativePath=".\compressed-format-target.hxx">
- </File>
- <File
- RelativePath=".\compressed-input-source.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.sln b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.sln
deleted file mode 100644
index 70b733c..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "calendar", "calendar-10.0.vcxproj", "{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.ActiveCfg = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.Build.0 = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.ActiveCfg = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.Build.0 = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.ActiveCfg = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.Build.0 = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.ActiveCfg = Release|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.sln b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.sln
deleted file mode 100644
index fb9c8e9..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "calendar", "calendar-7.1.vcproj", "{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug.ActiveCfg = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug.Build.0 = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release.ActiveCfg = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.vcproj
deleted file mode 100644
index c307908..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-7.1.vcproj
+++ /dev/null
@@ -1,186 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="calendar"
- ProjectGUID="{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
- RootNamespace="calendar"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="FALSE"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1F206676-7422-4DD5-94C3-7B9B2EC9C2D6}">
- <File
- RelativePath=".\calendar.cxx">
- </File>
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8D4FED5E-FA2A-44AB-94AC-C8F302E2E1F3}">
- <File
- RelativePath=".\calendar.hxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx">
- </File>
- <File
- RelativePath=".\xml-schema.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\calendar.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\calendar.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-8.0.sln b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-8.0.sln
deleted file mode 100644
index 52f98df..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "calendar", "calendar-8.0.vcproj", "{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.ActiveCfg = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.Build.0 = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.ActiveCfg = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.Build.0 = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.ActiveCfg = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.Build.0 = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.ActiveCfg = Release|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-9.0.sln b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-9.0.sln
deleted file mode 100644
index ddaadad..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "calendar", "calendar-9.0.vcproj", "{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.ActiveCfg = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.Build.0 = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.ActiveCfg = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.Build.0 = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.ActiveCfg = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.Build.0 = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.ActiveCfg = Release|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.vcxproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc10.vcxproj
index 7dc3711..5d66876 100644
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc10.vcxproj
@@ -87,12 +87,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -119,12 +118,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -145,12 +143,11 @@
</PreBuildEvent>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -175,12 +172,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc10.vcxproj.filters
index 943a2dc..943a2dc 100644
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj
new file mode 100644
index 0000000..aea4aab
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj
@@ -0,0 +1,233 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>calendar</ProjectName>
+ <ProjectGuid>{2DB41EF7-0BED-45BA-A311-44D2719BFE09}</ProjectGuid>
+ <RootNamespace>calendar</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="calendar.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="xml-schema-custom.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="calendar.hxx" />
+ <ClInclude Include="xml-schema-custom.hxx" />
+ <ClInclude Include="xml-schema.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="calendar.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="calendar.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj.filters
new file mode 100644
index 0000000..943a2dc
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc11.vcxproj.filters
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{1F206676-7422-4DD5-94C3-7B9B2EC9C2D6}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{8D4FED5E-FA2A-44AB-94AC-C8F302E2E1F3}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{5c4bcf4f-9ad2-4a82-adfb-91528fe6f2e5}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{df5d1e63-29c7-4626-853a-34fc5c7f7443}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="calendar.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="xml-schema-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="calendar.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="calendar.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="calendar.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj
new file mode 100644
index 0000000..d259aa3
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj
@@ -0,0 +1,237 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>calendar</ProjectName>
+ <ProjectGuid>{2DB41EF7-0BED-45BA-A311-44D2719BFE09}</ProjectGuid>
+ <RootNamespace>calendar</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="calendar.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="xml-schema-custom.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="calendar.hxx" />
+ <ClInclude Include="xml-schema-custom.hxx" />
+ <ClInclude Include="xml-schema.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="calendar.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="calendar.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd calendar.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">calendar.hxx;calendar.ixx;calendar.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj.filters
new file mode 100644
index 0000000..943a2dc
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc12.vcxproj.filters
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{1F206676-7422-4DD5-94C3-7B9B2EC9C2D6}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{8D4FED5E-FA2A-44AB-94AC-C8F302E2E1F3}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{5c4bcf4f-9ad2-4a82-adfb-91528fe6f2e5}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{df5d1e63-29c7-4626-853a-34fc5c7f7443}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="calendar.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="xml-schema-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="calendar.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="calendar.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="calendar.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc8.vcproj
index e04807f..ea4e64d 100644
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc8.vcproj
@@ -50,7 +50,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -129,7 +129,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -214,7 +214,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -294,7 +294,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc9.vcproj
index d3a189a..6f0186e 100644
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-vc9.vcproj
@@ -51,7 +51,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -134,7 +134,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -212,7 +212,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -292,7 +292,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.sln
deleted file mode 100644
index efc2856..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "calendar", "calendar-xerces2-7.1.vcproj", "{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug.ActiveCfg = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug.Build.0 = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release.ActiveCfg = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.vcproj
deleted file mode 100644
index 46f54ea..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,186 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="calendar"
- ProjectGUID="{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
- RootNamespace="calendar"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="FALSE"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1F206676-7422-4DD5-94C3-7B9B2EC9C2D6}">
- <File
- RelativePath=".\calendar.cxx">
- </File>
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8D4FED5E-FA2A-44AB-94AC-C8F302E2E1F3}">
- <File
- RelativePath=".\calendar.hxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx">
- </File>
- <File
- RelativePath=".\xml-schema.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\calendar.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\calendar.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.sln
deleted file mode 100644
index 5701549..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "calendar", "calendar-xerces2-8.0.vcproj", "{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.ActiveCfg = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.Build.0 = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.ActiveCfg = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.Build.0 = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.ActiveCfg = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.Build.0 = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.ActiveCfg = Release|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.vcproj
deleted file mode 100644
index 7ba96cc..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,456 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="calendar"
- ProjectGUID="{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
- RootNamespace="calendar"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-intellisense --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1F206676-7422-4DD5-94C3-7B9B2EC9C2D6}"
- >
- <File
- RelativePath=".\calendar.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8D4FED5E-FA2A-44AB-94AC-C8F302E2E1F3}"
- >
- <File
- RelativePath=".\calendar.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\calendar.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\calendar.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --extern-xml-schema xml-schema.xsd calendar.xsd"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.sln
deleted file mode 100644
index 982fa39..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "calendar", "calendar-xerces2-9.0.vcproj", "{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.ActiveCfg = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|Win32.Build.0 = Debug|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.ActiveCfg = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Debug|x64.Build.0 = Debug|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.ActiveCfg = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|Win32.Build.0 = Release|Win32
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.ActiveCfg = Release|x64
- {2DB41EF7-0BED-45BA-A311-44D2719BFE09}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.vcproj
deleted file mode 100644
index a100668..0000000
--- a/xsd/dist/examples/cxx/tree/custom/calendar/calendar-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,453 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="calendar"
- ProjectGUID="{2DB41EF7-0BED-45BA-A311-44D2719BFE09}"
- RootNamespace="calendar"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --custom-type date --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1F206676-7422-4DD5-94C3-7B9B2EC9C2D6}"
- >
- <File
- RelativePath=".\calendar.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8D4FED5E-FA2A-44AB-94AC-C8F302E2E1F3}"
- >
- <File
- RelativePath=".\calendar.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\calendar.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\calendar.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd calendar.xsd"
- CommandLine="xsd cxx-tree --generate-inline --extern-xml-schema xml-schema.xsd calendar.xsd"
- Outputs="calendar.hxx;calendar.ixx;calendar.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-7.1.vcproj
deleted file mode 100644
index 6d282c5..0000000
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-7.1.vcproj
+++ /dev/null
@@ -1,192 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="comments"
- ProjectGUID="{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
- RootNamespace="comments"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="FALSE"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{97CD019E-CFDE-4879-AB8C-97DB3B526F92}">
- <File
- RelativePath=".\people.cxx">
- </File>
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8E3E001B-1C7C-4383-A18D-B83AA525773F}">
- <File
- RelativePath=".\people.hxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx">
- </File>
- <File
- RelativePath=".\xml-schema.hxx">
- </File>
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\people.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-10.0.vcxproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc10.vcxproj
index e6ad6e5..3e7e6b4 100644
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc10.vcxproj
@@ -87,12 +87,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -119,12 +118,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -145,12 +143,11 @@
</PreBuildEvent>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -175,12 +172,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc10.vcxproj.filters
index 934cabe..934cabe 100644
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj
new file mode 100644
index 0000000..b96f28e
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj
@@ -0,0 +1,235 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>comments</ProjectName>
+ <ProjectGuid>{262E34D2-48D2-4657-9DB2-F01FFDCEA295}</ProjectGuid>
+ <RootNamespace>comments</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people.cxx" />
+ <ClCompile Include="xml-schema-custom.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="people.hxx" />
+ <ClInclude Include="xml-schema-custom.hxx" />
+ <ClInclude Include="xml-schema.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj.filters
new file mode 100644
index 0000000..934cabe
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc11.vcxproj.filters
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{97CD019E-CFDE-4879-AB8C-97DB3B526F92}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{8E3E001B-1C7C-4383-A18D-B83AA525773F}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{07ed52c5-d0a0-4659-9a65-2ee052612d2c}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{515a4811-9a34-429e-9c6d-3b771934d8db}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="xml-schema-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj
new file mode 100644
index 0000000..e237ff8
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj
@@ -0,0 +1,239 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>comments</ProjectName>
+ <ProjectGuid>{262E34D2-48D2-4657-9DB2-F01FFDCEA295}</ProjectGuid>
+ <RootNamespace>comments</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue "#include \"xml-schema-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people.cxx" />
+ <ClCompile Include="xml-schema-custom.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="people.hxx" />
+ <ClInclude Include="xml-schema-custom.hxx" />
+ <ClInclude Include="xml-schema.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj.filters
new file mode 100644
index 0000000..934cabe
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc12.vcxproj.filters
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{97CD019E-CFDE-4879-AB8C-97DB3B526F92}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{8E3E001B-1C7C-4383-A18D-B83AA525773F}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{07ed52c5-d0a0-4659-9a65-2ee052612d2c}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{515a4811-9a34-429e-9c6d-3b771934d8db}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="xml-schema-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc8.vcproj
index 1ddca35..2093acf 100644
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc8.vcproj
@@ -50,7 +50,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -129,7 +129,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -214,7 +214,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -294,7 +294,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc9.vcproj
index 54d1925..43281c6 100644
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/comments/comments-vc9.vcproj
@@ -51,7 +51,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -134,7 +134,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -212,7 +212,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -292,7 +292,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-7.1.vcproj
deleted file mode 100644
index 390f2d9..0000000
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,192 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="comments"
- ProjectGUID="{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
- RootNamespace="comments"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="FALSE"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{97CD019E-CFDE-4879-AB8C-97DB3B526F92}">
- <File
- RelativePath=".\people.cxx">
- </File>
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8E3E001B-1C7C-4383-A18D-B83AA525773F}">
- <File
- RelativePath=".\people.hxx">
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx">
- </File>
- <File
- RelativePath=".\xml-schema.hxx">
- </File>
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\people.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-8.0.vcproj
deleted file mode 100644
index 137eff8..0000000
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,464 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="comments"
- ProjectGUID="{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
- RootNamespace="comments"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{97CD019E-CFDE-4879-AB8C-97DB3B526F92}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8E3E001B-1C7C-4383-A18D-B83AA525773F}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\people.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-9.0.vcproj
deleted file mode 100644
index e1f238f..0000000
--- a/xsd/dist/examples/cxx/tree/custom/comments/comments-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,461 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="comments"
- ProjectGUID="{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
- RootNamespace="comments"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type anyType=/type_base --hxx-epilogue &quot;#include \&quot;xml-schema-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{97CD019E-CFDE-4879-AB8C-97DB3B526F92}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{8E3E001B-1C7C-4383-A18D-B83AA525773F}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\people.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/comments/makefile b/xsd/dist/examples/cxx/tree/custom/comments/makefile
index 963f262..4c231c6 100644
--- a/xsd/dist/examples/cxx/tree/custom/comments/makefile
+++ b/xsd/dist/examples/cxx/tree/custom/comments/makefile
@@ -22,9 +22,15 @@ people.cxx people.ixx people.hxx: people.xsd
# Generate header for XML Schema namespace.
#
XML_SCHEMA_XSDFLAGS := --generate-xml-schema --generate-serialization \
---custom-type anyType=/type_base \
--hxx-epilogue '\#include "xml-schema-custom.hxx"'
+ifneq ($(shell uname -o),Msys)
+XML_SCHEMA_XSDFLAGS += --custom-type anyType=/type_base
+else
+# Prevent MSYS from converting / to Windows path.
+XML_SCHEMA_XSDFLAGS += --custom-type anyType=//type_base
+endif
+
xml-schema.hxx:
$(XSD) cxx-tree $(XML_SCHEMA_XSDFLAGS) xml-schema.xsd
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-7.1.vcproj
deleted file mode 100644
index 7b2fc6a..0000000
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-7.1.vcproj
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="contacts"
- ProjectGUID="{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
- RootNamespace="contacts"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{2E28B5D5-6E1D-434A-BFE2-2162751B243B}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\contacts.cxx">
- </File>
- <File
- RelativePath=".\contacts-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{92523A51-9884-450F-A581-5618AB14A9E3}">
- <File
- RelativePath=".\contacts.hxx">
- </File>
- <File
- RelativePath=".\contacts-custom.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\contacts.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\contacts.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-10.0.vcxproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc10.vcxproj
index 6d02858..e43ef84 100644
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc10.vcxproj.filters
index 4435f19..4435f19 100644
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj
new file mode 100644
index 0000000..0059939
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>contacts</ProjectName>
+ <ProjectGuid>{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}</ProjectGuid>
+ <RootNamespace>contacts</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="contacts-custom.cxx" />
+ <ClCompile Include="contacts.cxx" />
+ <ClCompile Include="driver.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="contacts-custom.hxx" />
+ <ClInclude Include="contacts.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="contacts.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="contacts.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj.filters
new file mode 100644
index 0000000..4435f19
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc11.vcxproj.filters
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{2E28B5D5-6E1D-434A-BFE2-2162751B243B}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{92523A51-9884-450F-A581-5618AB14A9E3}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{63214694-d62f-4e29-965b-bc5ecd1ac8b8}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{8b44177f-b842-4c6c-bfb8-c25e433bc0a3}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="contacts-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="contacts.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="contacts-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="contacts.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="contacts.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="contacts.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj
new file mode 100644
index 0000000..f955bda
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>contacts</ProjectName>
+ <ProjectGuid>{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}</ProjectGuid>
+ <RootNamespace>contacts</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="contacts-custom.cxx" />
+ <ClCompile Include="contacts.cxx" />
+ <ClCompile Include="driver.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="contacts-custom.hxx" />
+ <ClInclude Include="contacts.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="contacts.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="contacts.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd contacts.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue "#include \"contacts-custom.hxx\"" contacts.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">contacts.hxx;contacts.ixx;contacts.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj.filters
new file mode 100644
index 0000000..4435f19
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc12.vcxproj.filters
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{2E28B5D5-6E1D-434A-BFE2-2162751B243B}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{92523A51-9884-450F-A581-5618AB14A9E3}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{63214694-d62f-4e29-965b-bc5ecd1ac8b8}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{8b44177f-b842-4c6c-bfb8-c25e433bc0a3}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="contacts-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="contacts.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="contacts-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="contacts.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="contacts.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="contacts.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc8.vcproj
index e98d06f..a7985ee 100644
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc9.vcproj
index 0d1c90f..6305933 100644
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-7.1.vcproj
deleted file mode 100644
index 315cdaa..0000000
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="contacts"
- ProjectGUID="{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
- RootNamespace="contacts"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{2E28B5D5-6E1D-434A-BFE2-2162751B243B}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\contacts.cxx">
- </File>
- <File
- RelativePath=".\contacts-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{92523A51-9884-450F-A581-5618AB14A9E3}">
- <File
- RelativePath=".\contacts.hxx">
- </File>
- <File
- RelativePath=".\contacts-custom.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\contacts.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\contacts.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-8.0.vcproj
deleted file mode 100644
index 08fe9cb..0000000
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,440 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="contacts"
- ProjectGUID="{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
- RootNamespace="contacts"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{2E28B5D5-6E1D-434A-BFE2-2162751B243B}"
- >
- <File
- RelativePath=".\contacts-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\contacts.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{92523A51-9884-450F-A581-5618AB14A9E3}"
- >
- <File
- RelativePath=".\contacts-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\contacts.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\contacts.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\contacts.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-intellisense --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-9.0.vcproj
deleted file mode 100644
index 08d30cc..0000000
--- a/xsd/dist/examples/cxx/tree/custom/contacts/contacts-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,437 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="contacts"
- ProjectGUID="{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
- RootNamespace="contacts"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{2E28B5D5-6E1D-434A-BFE2-2162751B243B}"
- >
- <File
- RelativePath=".\contacts-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\contacts.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{92523A51-9884-450F-A581-5618AB14A9E3}"
- >
- <File
- RelativePath=".\contacts-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\contacts.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\contacts.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\contacts.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd contacts.xsd"
- CommandLine="xsd cxx-tree --generate-inline --custom-type contact=/contact_base --hxx-epilogue &quot;#include \&quot;contacts-custom.hxx\&quot;&quot; contacts.xsd"
- Outputs="contacts.hxx;contacts.ixx;contacts.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/contacts/makefile b/xsd/dist/examples/cxx/tree/custom/contacts/makefile
index 8155d0e..845f6c3 100644
--- a/xsd/dist/examples/cxx/tree/custom/contacts/makefile
+++ b/xsd/dist/examples/cxx/tree/custom/contacts/makefile
@@ -4,9 +4,15 @@ include $(root)/build/cxx/rules.make
include $(root)/build/xsd/tree-rules.make
-override XSDFLAGS += --generate-inline --custom-type contact=/contact_base \
+override XSDFLAGS += --generate-inline \
--hxx-epilogue '\#include "contacts-custom.hxx"'
+ifneq ($(shell uname -o),Msys)
+override XSDFLAGS += --custom-type contact=/contact_base
+else
+# Prevent MSYS from converting / to Windows path.
+override XSDFLAGS += --custom-type contact=//contact_base
+endif
# Build.
#
diff --git a/xsd/dist/examples/cxx/tree/custom/custom-10.0.sln b/xsd/dist/examples/cxx/tree/custom/custom-10.0.sln
deleted file mode 100644
index ae089e7..0000000
--- a/xsd/dist/examples/cxx/tree/custom/custom-10.0.sln
+++ /dev/null
@@ -1,75 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "contacts", "contacts\contacts-10.0.vcxproj", "{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taxonomy", "taxonomy\taxonomy-10.0.vcxproj", "{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-10.0.vcxproj", "{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "comments", "comments\comments-10.0.vcxproj", "{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "double", "double\double-10.0.vcxproj", "{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-10.0.vcxproj", "{26CE0C08-7621-403A-88A7-206E64F32C66}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.ActiveCfg = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.Build.0 = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.ActiveCfg = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.Build.0 = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.ActiveCfg = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.Build.0 = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.ActiveCfg = Release|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.Build.0 = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.ActiveCfg = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.Build.0 = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.ActiveCfg = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.Build.0 = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.ActiveCfg = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.Build.0 = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.ActiveCfg = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.Build.0 = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.ActiveCfg = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.Build.0 = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.ActiveCfg = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.Build.0 = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.ActiveCfg = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.Build.0 = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.ActiveCfg = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.Build.0 = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.ActiveCfg = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.Build.0 = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.ActiveCfg = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.Build.0 = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.ActiveCfg = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.Build.0 = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.ActiveCfg = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.Build.0 = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.ActiveCfg = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.Build.0 = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.ActiveCfg = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.Build.0 = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.ActiveCfg = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.Build.0 = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.ActiveCfg = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.Build.0 = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.ActiveCfg = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.Build.0 = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.ActiveCfg = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.Build.0 = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.ActiveCfg = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.Build.0 = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.ActiveCfg = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/custom-7.1.sln b/xsd/dist/examples/cxx/tree/custom/custom-7.1.sln
deleted file mode 100644
index 86f7196..0000000
--- a/xsd/dist/examples/cxx/tree/custom/custom-7.1.sln
+++ /dev/null
@@ -1,61 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "contacts", "contacts\contacts-7.1.vcproj", "{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taxonomy", "taxonomy\taxonomy-7.1.vcproj", "{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-7.1.vcproj", "{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "comments", "comments\comments-7.1.vcproj", "{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "double", "double\double-7.1.vcproj", "{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-7.1.vcproj", "{26CE0C08-7621-403A-88A7-206E64F32C66}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug.ActiveCfg = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug.Build.0 = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release.ActiveCfg = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release.Build.0 = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug.ActiveCfg = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug.Build.0 = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release.ActiveCfg = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release.Build.0 = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug.ActiveCfg = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug.Build.0 = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release.ActiveCfg = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release.Build.0 = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug.ActiveCfg = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug.Build.0 = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release.ActiveCfg = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release.Build.0 = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug.ActiveCfg = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug.Build.0 = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release.ActiveCfg = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release.Build.0 = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug.ActiveCfg = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug.Build.0 = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release.ActiveCfg = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/custom-8.0.sln b/xsd/dist/examples/cxx/tree/custom/custom-8.0.sln
deleted file mode 100644
index 7faee8d..0000000
--- a/xsd/dist/examples/cxx/tree/custom/custom-8.0.sln
+++ /dev/null
@@ -1,75 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "contacts", "contacts\contacts-8.0.vcproj", "{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taxonomy", "taxonomy\taxonomy-8.0.vcproj", "{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-8.0.vcproj", "{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "comments", "comments\comments-8.0.vcproj", "{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "double", "double\double-8.0.vcproj", "{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-8.0.vcproj", "{26CE0C08-7621-403A-88A7-206E64F32C66}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.ActiveCfg = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.Build.0 = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.ActiveCfg = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.Build.0 = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.ActiveCfg = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.Build.0 = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.ActiveCfg = Release|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.Build.0 = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.ActiveCfg = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.Build.0 = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.ActiveCfg = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.Build.0 = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.ActiveCfg = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.Build.0 = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.ActiveCfg = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.Build.0 = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.ActiveCfg = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.Build.0 = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.ActiveCfg = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.Build.0 = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.ActiveCfg = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.Build.0 = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.ActiveCfg = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.Build.0 = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.ActiveCfg = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.Build.0 = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.ActiveCfg = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.Build.0 = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.ActiveCfg = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.Build.0 = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.ActiveCfg = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.Build.0 = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.ActiveCfg = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.Build.0 = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.ActiveCfg = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.Build.0 = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.ActiveCfg = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.Build.0 = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.ActiveCfg = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.Build.0 = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.ActiveCfg = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.Build.0 = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.ActiveCfg = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.Build.0 = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.ActiveCfg = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.Build.0 = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.ActiveCfg = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/custom-9.0.sln b/xsd/dist/examples/cxx/tree/custom/custom-9.0.sln
deleted file mode 100644
index 2def79a..0000000
--- a/xsd/dist/examples/cxx/tree/custom/custom-9.0.sln
+++ /dev/null
@@ -1,75 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "contacts", "contacts\contacts-9.0.vcproj", "{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taxonomy", "taxonomy\taxonomy-9.0.vcproj", "{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-9.0.vcproj", "{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "comments", "comments\comments-9.0.vcproj", "{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "double", "double\double-9.0.vcproj", "{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-9.0.vcproj", "{26CE0C08-7621-403A-88A7-206E64F32C66}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.ActiveCfg = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.Build.0 = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.ActiveCfg = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.Build.0 = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.ActiveCfg = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.Build.0 = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.ActiveCfg = Release|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.Build.0 = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.ActiveCfg = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.Build.0 = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.ActiveCfg = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.Build.0 = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.ActiveCfg = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.Build.0 = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.ActiveCfg = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.Build.0 = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.ActiveCfg = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.Build.0 = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.ActiveCfg = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.Build.0 = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.ActiveCfg = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.Build.0 = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.ActiveCfg = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.Build.0 = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.ActiveCfg = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.Build.0 = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.ActiveCfg = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.Build.0 = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.ActiveCfg = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.Build.0 = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.ActiveCfg = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.Build.0 = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.ActiveCfg = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.Build.0 = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.ActiveCfg = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.Build.0 = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.ActiveCfg = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.Build.0 = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.ActiveCfg = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.Build.0 = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.ActiveCfg = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.Build.0 = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.ActiveCfg = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.Build.0 = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.ActiveCfg = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.Build.0 = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.ActiveCfg = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/custom-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/custom/custom-xerces2-7.1.sln
deleted file mode 100644
index f5ace2f..0000000
--- a/xsd/dist/examples/cxx/tree/custom/custom-xerces2-7.1.sln
+++ /dev/null
@@ -1,61 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "contacts", "contacts\contacts-xerces2-7.1.vcproj", "{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taxonomy", "taxonomy\taxonomy-xerces2-7.1.vcproj", "{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-7.1.vcproj", "{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "comments", "comments\comments-xerces2-7.1.vcproj", "{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "double", "double\double-xerces2-7.1.vcproj", "{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-7.1.vcproj", "{26CE0C08-7621-403A-88A7-206E64F32C66}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug.ActiveCfg = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug.Build.0 = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release.ActiveCfg = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release.Build.0 = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug.ActiveCfg = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug.Build.0 = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release.ActiveCfg = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release.Build.0 = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug.ActiveCfg = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug.Build.0 = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release.ActiveCfg = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release.Build.0 = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug.ActiveCfg = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug.Build.0 = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release.ActiveCfg = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release.Build.0 = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug.ActiveCfg = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug.Build.0 = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release.ActiveCfg = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release.Build.0 = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug.ActiveCfg = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug.Build.0 = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release.ActiveCfg = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/custom-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/custom/custom-xerces2-8.0.sln
deleted file mode 100644
index b3e013c..0000000
--- a/xsd/dist/examples/cxx/tree/custom/custom-xerces2-8.0.sln
+++ /dev/null
@@ -1,75 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "contacts", "contacts\contacts-xerces2-8.0.vcproj", "{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taxonomy", "taxonomy\taxonomy-xerces2-8.0.vcproj", "{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-8.0.vcproj", "{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "comments", "comments\comments-xerces2-8.0.vcproj", "{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "double", "double\double-xerces2-8.0.vcproj", "{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-8.0.vcproj", "{26CE0C08-7621-403A-88A7-206E64F32C66}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.ActiveCfg = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.Build.0 = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.ActiveCfg = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.Build.0 = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.ActiveCfg = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.Build.0 = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.ActiveCfg = Release|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.Build.0 = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.ActiveCfg = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.Build.0 = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.ActiveCfg = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.Build.0 = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.ActiveCfg = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.Build.0 = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.ActiveCfg = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.Build.0 = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.ActiveCfg = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.Build.0 = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.ActiveCfg = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.Build.0 = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.ActiveCfg = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.Build.0 = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.ActiveCfg = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.Build.0 = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.ActiveCfg = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.Build.0 = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.ActiveCfg = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.Build.0 = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.ActiveCfg = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.Build.0 = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.ActiveCfg = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.Build.0 = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.ActiveCfg = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.Build.0 = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.ActiveCfg = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.Build.0 = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.ActiveCfg = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.Build.0 = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.ActiveCfg = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.Build.0 = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.ActiveCfg = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.Build.0 = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.ActiveCfg = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.Build.0 = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.ActiveCfg = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.Build.0 = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.ActiveCfg = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/custom-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/custom/custom-xerces2-9.0.sln
deleted file mode 100644
index ec151cc..0000000
--- a/xsd/dist/examples/cxx/tree/custom/custom-xerces2-9.0.sln
+++ /dev/null
@@ -1,75 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "contacts", "contacts\contacts-xerces2-9.0.vcproj", "{9FB807C1-53EE-4E71-812F-89E8BE6FCB43}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taxonomy", "taxonomy\taxonomy-xerces2-9.0.vcproj", "{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-9.0.vcproj", "{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "comments", "comments\comments-xerces2-9.0.vcproj", "{262E34D2-48D2-4657-9DB2-F01FFDCEA295}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "double", "double\double-xerces2-9.0.vcproj", "{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-9.0.vcproj", "{26CE0C08-7621-403A-88A7-206E64F32C66}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.ActiveCfg = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|Win32.Build.0 = Debug|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.ActiveCfg = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Debug|x64.Build.0 = Debug|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.ActiveCfg = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|Win32.Build.0 = Release|Win32
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.ActiveCfg = Release|x64
- {9FB807C1-53EE-4E71-812F-89E8BE6FCB43}.Release|x64.Build.0 = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.ActiveCfg = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|Win32.Build.0 = Debug|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.ActiveCfg = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Debug|x64.Build.0 = Debug|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.ActiveCfg = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|Win32.Build.0 = Release|Win32
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.ActiveCfg = Release|x64
- {B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}.Release|x64.Build.0 = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.ActiveCfg = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|Win32.Build.0 = Debug|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.ActiveCfg = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Debug|x64.Build.0 = Debug|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.ActiveCfg = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|Win32.Build.0 = Release|Win32
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.ActiveCfg = Release|x64
- {6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}.Release|x64.Build.0 = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.ActiveCfg = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|Win32.Build.0 = Debug|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.ActiveCfg = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Debug|x64.Build.0 = Debug|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.ActiveCfg = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|Win32.Build.0 = Release|Win32
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.ActiveCfg = Release|x64
- {262E34D2-48D2-4657-9DB2-F01FFDCEA295}.Release|x64.Build.0 = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.ActiveCfg = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|Win32.Build.0 = Debug|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.ActiveCfg = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Debug|x64.Build.0 = Debug|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.ActiveCfg = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|Win32.Build.0 = Release|Win32
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.ActiveCfg = Release|x64
- {CCE6AE91-39AC-49B6-8763-742B65FCD92E}.Release|x64.Build.0 = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.ActiveCfg = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|Win32.Build.0 = Debug|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.ActiveCfg = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Debug|x64.Build.0 = Debug|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.ActiveCfg = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|Win32.Build.0 = Release|Win32
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.ActiveCfg = Release|x64
- {26CE0C08-7621-403A-88A7-206E64F32C66}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/double/double-7.1.vcproj
deleted file mode 100644
index ccaa903..0000000
--- a/xsd/dist/examples/cxx/tree/custom/double/double-7.1.vcproj
+++ /dev/null
@@ -1,186 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="double"
- ProjectGUID="{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
- RootNamespace="double"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="FALSE"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{9AB5F296-2836-4A71-A39E-8D63EECB86D8}">
- <File
- RelativePath=".\order.cxx">
- </File>
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\double-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDC85F55-DEE6-4EB3-9B72-1CBDDA21CFBE}">
- <File
- RelativePath=".\order.hxx">
- </File>
- <File
- RelativePath=".\double-custom.hxx">
- </File>
- <File
- RelativePath=".\xml-schema.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\order.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\order.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="order.hxx;order.ixx;order.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- Outputs="order.hxx;order.ixx;order.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-10.0.vcxproj b/xsd/dist/examples/cxx/tree/custom/double/double-vc10.vcxproj
index 6f25ea6..fcedc48 100644
--- a/xsd/dist/examples/cxx/tree/custom/double/double-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc10.vcxproj
@@ -87,12 +87,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -119,12 +118,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -145,12 +143,11 @@
</PreBuildEvent>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -175,12 +172,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/double/double-vc10.vcxproj.filters
index b36f95b..b36f95b 100644
--- a/xsd/dist/examples/cxx/tree/custom/double/double-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj b/xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj
new file mode 100644
index 0000000..eebb33b
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj
@@ -0,0 +1,233 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>double</ProjectName>
+ <ProjectGuid>{CCE6AE91-39AC-49B6-8763-742B65FCD92E}</ProjectGuid>
+ <RootNamespace>double</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="order.cxx" />
+ <ClCompile Include="double-custom.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="order.hxx" />
+ <ClInclude Include="double-custom.hxx" />
+ <ClInclude Include="xml-schema.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="order.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="order.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj.filters
new file mode 100644
index 0000000..b36f95b
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc11.vcxproj.filters
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{9AB5F296-2836-4A71-A39E-8D63EECB86D8}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{CDC85F55-DEE6-4EB3-9B72-1CBDDA21CFBE}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{69c0bc69-f38e-42f7-8c11-cd6c1a121574}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{bad36e63-36c2-4233-87a2-68af084d612a}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="order.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="double-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="order.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="double-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="order.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="order.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj b/xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj
new file mode 100644
index 0000000..537153e
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj
@@ -0,0 +1,237 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>double</ProjectName>
+ <ProjectGuid>{CCE6AE91-39AC-49B6-8763-742B65FCD92E}</ProjectGuid>
+ <RootNamespace>double</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreBuildEventUseInBuild>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <PreBuildEvent>
+ <Message>xsd xml-schema.xsd</Message>
+ <Command>xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue "#include \"double-custom.hxx\"" xml-schema.xsd</Command>
+ </PreBuildEvent>
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="order.cxx" />
+ <ClCompile Include="double-custom.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="order.hxx" />
+ <ClInclude Include="double-custom.hxx" />
+ <ClInclude Include="xml-schema.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="order.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="order.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xml-schema.hxx;%(AdditionalInputs)</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd order.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">order.hxx;order.ixx;order.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj.filters
new file mode 100644
index 0000000..b36f95b
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc12.vcxproj.filters
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{9AB5F296-2836-4A71-A39E-8D63EECB86D8}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{CDC85F55-DEE6-4EB3-9B72-1CBDDA21CFBE}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{69c0bc69-f38e-42f7-8c11-cd6c1a121574}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{bad36e63-36c2-4233-87a2-68af084d612a}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="order.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="double-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="order.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="double-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="xml-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="order.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="order.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/double/double-vc8.vcproj
index ea63b9f..39a1945 100644
--- a/xsd/dist/examples/cxx/tree/custom/double/double-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc8.vcproj
@@ -50,7 +50,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -129,7 +129,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -214,7 +214,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -294,7 +294,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/double/double-vc9.vcproj
index 15b599b..8cb6e4e 100644
--- a/xsd/dist/examples/cxx/tree/custom/double/double-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/double/double-vc9.vcproj
@@ -51,7 +51,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -134,7 +134,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -212,7 +212,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -292,7 +292,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-7.1.vcproj
deleted file mode 100644
index d4a28aa..0000000
--- a/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,186 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="double"
- ProjectGUID="{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
- RootNamespace="double"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="FALSE"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{9AB5F296-2836-4A71-A39E-8D63EECB86D8}">
- <File
- RelativePath=".\order.cxx">
- </File>
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\double-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDC85F55-DEE6-4EB3-9B72-1CBDDA21CFBE}">
- <File
- RelativePath=".\order.hxx">
- </File>
- <File
- RelativePath=".\double-custom.hxx">
- </File>
- <File
- RelativePath=".\xml-schema.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\order.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\order.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="order.hxx;order.ixx;order.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- Outputs="order.hxx;order.ixx;order.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-8.0.vcproj
deleted file mode 100644
index 8dcfb74..0000000
--- a/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,456 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="double"
- ProjectGUID="{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
- RootNamespace="double"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --generate-intellisense --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{9AB5F296-2836-4A71-A39E-8D63EECB86D8}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\order.cxx"
- >
- </File>
- <File
- RelativePath=".\double-custom.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDC85F55-DEE6-4EB3-9B72-1CBDDA21CFBE}"
- >
- <File
- RelativePath=".\order.hxx"
- >
- </File>
- <File
- RelativePath=".\double-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\order.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\order.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --extern-xml-schema xml-schema.xsd order.xsd"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-9.0.vcproj
deleted file mode 100644
index 0915560..0000000
--- a/xsd/dist/examples/cxx/tree/custom/double/double-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,453 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="double"
- ProjectGUID="{CCE6AE91-39AC-49B6-8763-742B65FCD92E}"
- RootNamespace="double"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- ExcludedFromBuild="false"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- Description="xsd xml-schema.xsd"
- CommandLine="xsd cxx-tree --generate-xml-schema --generate-serialization --custom-type double=double --hxx-epilogue &quot;#include \&quot;double-custom.hxx\&quot;&quot; xml-schema.xsd"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{9AB5F296-2836-4A71-A39E-8D63EECB86D8}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\order.cxx"
- >
- </File>
- <File
- RelativePath=".\double-custom.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{CDC85F55-DEE6-4EB3-9B72-1CBDDA21CFBE}"
- >
- <File
- RelativePath=".\order.hxx"
- >
- </File>
- <File
- RelativePath=".\double-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\xml-schema.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\order.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\order.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd"
- AdditionalDependencies="xml-schema.hxx"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd order.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --extern-xml-schema xml-schema.xsd order.xsd"
- Outputs="order.hxx;order.ixx;order.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/makefile b/xsd/dist/examples/cxx/tree/custom/mixed/makefile
index a5ea87e..c5dac63 100644
--- a/xsd/dist/examples/cxx/tree/custom/mixed/makefile
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/makefile
@@ -5,7 +5,14 @@ include $(root)/build/xsd/tree-rules.make
override XSDFLAGS += --generate-inline --generate-serialization \
---custom-type bio=/bio_base --hxx-epilogue '\#include "people-custom.hxx"'
+--hxx-epilogue '\#include "people-custom.hxx"'
+
+ifneq ($(shell uname -o),Msys)
+override XSDFLAGS += --custom-type bio=/bio_base
+else
+# Prevent MSYS from converting / to Windows path.
+override XSDFLAGS += --custom-type bio=//bio_base
+endif
# Build.
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-7.1.vcproj
deleted file mode 100644
index 7f155fd..0000000
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-7.1.vcproj
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixed"
- ProjectGUID="{26CE0C08-7621-403A-88A7-206E64F32C66}"
- RootNamespace="mixed"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{CBA3D0E2-DDB8-4ABE-8B5A-7A28191CA323}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\people.cxx">
- </File>
- <File
- RelativePath=".\people-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{54846A6A-25CD-4C8C-A5F1-2DAC77554F47}">
- <File
- RelativePath=".\people.hxx">
- </File>
- <File
- RelativePath=".\people-custom.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\people.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-10.0.vcxproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc10.vcxproj
index 9071bcc..86258d4 100644
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc10.vcxproj.filters
index 1f317e1..1f317e1 100644
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj
new file mode 100644
index 0000000..9afcc81
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixed</ProjectName>
+ <ProjectGuid>{26CE0C08-7621-403A-88A7-206E64F32C66}</ProjectGuid>
+ <RootNamespace>mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people-custom.cxx" />
+ <ClCompile Include="people.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom.hxx" />
+ <ClInclude Include="people.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj.filters
new file mode 100644
index 0000000..1f317e1
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc11.vcxproj.filters
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{CBA3D0E2-DDB8-4ABE-8B5A-7A28191CA323}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{54846A6A-25CD-4C8C-A5F1-2DAC77554F47}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{ba5c74eb-b935-4573-98b5-2987ed135ec6}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{b02fd6d3-59e2-4819-9c5b-66ef2b5834a0}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj
new file mode 100644
index 0000000..a7b4f73
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixed</ProjectName>
+ <ProjectGuid>{26CE0C08-7621-403A-88A7-206E64F32C66}</ProjectGuid>
+ <RootNamespace>mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people-custom.cxx" />
+ <ClCompile Include="people.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom.hxx" />
+ <ClInclude Include="people.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj.filters
new file mode 100644
index 0000000..1f317e1
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc12.vcxproj.filters
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{CBA3D0E2-DDB8-4ABE-8B5A-7A28191CA323}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{54846A6A-25CD-4C8C-A5F1-2DAC77554F47}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{ba5c74eb-b935-4573-98b5-2987ed135ec6}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{b02fd6d3-59e2-4819-9c5b-66ef2b5834a0}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc8.vcproj
index ce238d4..a02149b 100644
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc9.vcproj
index 5e3c6da..331c786 100644
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-7.1.vcproj
deleted file mode 100644
index 148bc8f..0000000
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixed"
- ProjectGUID="{26CE0C08-7621-403A-88A7-206E64F32C66}"
- RootNamespace="mixed"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{CBA3D0E2-DDB8-4ABE-8B5A-7A28191CA323}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\people.cxx">
- </File>
- <File
- RelativePath=".\people-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{54846A6A-25CD-4C8C-A5F1-2DAC77554F47}">
- <File
- RelativePath=".\people.hxx">
- </File>
- <File
- RelativePath=".\people-custom.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\people.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-8.0.vcproj
deleted file mode 100644
index 94715cf..0000000
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,440 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="mixed"
- ProjectGUID="{26CE0C08-7621-403A-88A7-206E64F32C66}"
- RootNamespace="mixed"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{CBA3D0E2-DDB8-4ABE-8B5A-7A28191CA323}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\people-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{54846A6A-25CD-4C8C-A5F1-2DAC77554F47}"
- >
- <File
- RelativePath=".\people-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\people.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-9.0.vcproj
deleted file mode 100644
index bee87ae..0000000
--- a/xsd/dist/examples/cxx/tree/custom/mixed/mixed-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,437 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="mixed"
- ProjectGUID="{26CE0C08-7621-403A-88A7-206E64F32C66}"
- RootNamespace="mixed"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{CBA3D0E2-DDB8-4ABE-8B5A-7A28191CA323}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\people-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{54846A6A-25CD-4C8C-A5F1-2DAC77554F47}"
- >
- <File
- RelativePath=".\people-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\people.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --custom-type bio=/bio_base --hxx-epilogue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-7.1.vcproj
deleted file mode 100644
index 2f8b136..0000000
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-7.1.vcproj
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="taxonomy"
- ProjectGUID="{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
- RootNamespace="taxonomy"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E2FFBF97-01E8-483D-8B32-D8D6F065E4C7}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\people.cxx">
- </File>
- <File
- RelativePath=".\people-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0B3DDFAD-4254-48B9-BB24-1FC92DD1E7F6}">
- <File
- RelativePath=".\people.hxx">
- </File>
- <File
- RelativePath=".\people-fwd.hxx">
- </File>
- <File
- RelativePath=".\people-custom.hxx">
- </File>
- <File
- RelativePath=".\people-custom-fwd.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\people.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-10.0.vcxproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc10.vcxproj
index 56302f7..24040c6 100644
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc10.vcxproj.filters
index 78058c3..78058c3 100644
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj
new file mode 100644
index 0000000..f10b12a
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj
@@ -0,0 +1,214 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>taxonomy</ProjectName>
+ <ProjectGuid>{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}</ProjectGuid>
+ <RootNamespace>taxonomy</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people-custom.cxx" />
+ <ClCompile Include="people.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom-fwd.hxx" />
+ <ClInclude Include="people-custom.hxx" />
+ <ClInclude Include="people-fwd.hxx" />
+ <ClInclude Include="people.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj.filters
new file mode 100644
index 0000000..78058c3
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc11.vcxproj.filters
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E2FFBF97-01E8-483D-8B32-D8D6F065E4C7}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{0B3DDFAD-4254-48B9-BB24-1FC92DD1E7F6}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{a33f9d45-baba-483a-83c4-9421790f7d92}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{0c14530b-7a4b-4841-864e-e8da7ae18eea}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom-fwd.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people-fwd.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj
new file mode 100644
index 0000000..c5579d9
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>taxonomy</ProjectName>
+ <ProjectGuid>{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}</ProjectGuid>
+ <RootNamespace>taxonomy</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people-custom.cxx" />
+ <ClCompile Include="people.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom-fwd.hxx" />
+ <ClInclude Include="people-custom.hxx" />
+ <ClInclude Include="people-fwd.hxx" />
+ <ClInclude Include="people.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type "person=person_impl&lt;person_base&gt;/person_base" --custom-type "superman=superman_impl&lt;superman_base&gt;/superman_base" --custom-type "batman=batman_impl&lt;batman_base&gt;/batman_base" --fwd-prologue "#include \"people-custom-fwd.hxx\"" --hxx-prologue "#include \"people-custom.hxx\"" people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people-fwd.hxx;people.hxx;people.ixx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj.filters
new file mode 100644
index 0000000..78058c3
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc12.vcxproj.filters
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E2FFBF97-01E8-483D-8B32-D8D6F065E4C7}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{0B3DDFAD-4254-48B9-BB24-1FC92DD1E7F6}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{a33f9d45-baba-483a-83c4-9421790f7d92}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{0c14530b-7a4b-4841-864e-e8da7ae18eea}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="people-custom-fwd.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people-fwd.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="people.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc8.vcproj
index 72fe0ba..74744f4 100644
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc9.vcproj
index fa728e2..1ff90d3 100644
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-7.1.vcproj
deleted file mode 100644
index bb699b1..0000000
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="taxonomy"
- ProjectGUID="{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
- RootNamespace="taxonomy"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E2FFBF97-01E8-483D-8B32-D8D6F065E4C7}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\people.cxx">
- </File>
- <File
- RelativePath=".\people-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0B3DDFAD-4254-48B9-BB24-1FC92DD1E7F6}">
- <File
- RelativePath=".\people.hxx">
- </File>
- <File
- RelativePath=".\people-fwd.hxx">
- </File>
- <File
- RelativePath=".\people-custom.hxx">
- </File>
- <File
- RelativePath=".\people-custom-fwd.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\people.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-8.0.vcproj
deleted file mode 100644
index f3a8e6a..0000000
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,448 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="taxonomy"
- ProjectGUID="{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
- RootNamespace="taxonomy"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E2FFBF97-01E8-483D-8B32-D8D6F065E4C7}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\people-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0B3DDFAD-4254-48B9-BB24-1FC92DD1E7F6}"
- >
- <File
- RelativePath=".\people-custom-fwd.hxx"
- >
- </File>
- <File
- RelativePath=".\people-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\people-fwd.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\people.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --generate-intellisense --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-9.0.vcproj
deleted file mode 100644
index 77eb684..0000000
--- a/xsd/dist/examples/cxx/tree/custom/taxonomy/taxonomy-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,445 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="taxonomy"
- ProjectGUID="{B3108E70-7B4E-4DDA-8872-0DC4AFDCB2D9}"
- RootNamespace="taxonomy"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E2FFBF97-01E8-483D-8B32-D8D6F065E4C7}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\people-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{0B3DDFAD-4254-48B9-BB24-1FC92DD1E7F6}"
- >
- <File
- RelativePath=".\people-custom-fwd.hxx"
- >
- </File>
- <File
- RelativePath=".\people-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\people-fwd.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\people.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-forward --generate-polymorphic --polymorphic-type person --custom-type &quot;person=person_impl&lt;person_base&gt;/person_base&quot; --custom-type &quot;superman=superman_impl&lt;superman_base&gt;/superman_base&quot; --custom-type &quot;batman=batman_impl&lt;batman_base&gt;/batman_base&quot; --fwd-prologue &quot;#include \&quot;people-custom-fwd.hxx\&quot;&quot; --hxx-prologue &quot;#include \&quot;people-custom.hxx\&quot;&quot; people.xsd"
- Outputs="people-fwd.hxx,people.hxx;people.ixx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/makefile b/xsd/dist/examples/cxx/tree/custom/wildcard/makefile
index 20ea1d2..f7561a2 100644
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/makefile
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/makefile
@@ -5,8 +5,14 @@ include $(root)/build/xsd/tree-rules.make
override XSDFLAGS += --generate-inline --generate-ostream \
---generate-serialization --custom-type data=/data_base \
---hxx-epilogue '\#include "wildcard-custom.hxx"'
+--generate-serialization --hxx-epilogue '\#include "wildcard-custom.hxx"'
+
+ifneq ($(shell uname -o),Msys)
+override XSDFLAGS += --custom-type data=/data_base
+else
+# Prevent MSYS from converting / to Windows path.
+override XSDFLAGS += --custom-type data=//data_base
+endif
# Build.
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-7.1.vcproj
deleted file mode 100644
index 0dc9881..0000000
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-7.1.vcproj
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="wildcard"
- ProjectGUID="{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
- RootNamespace="wildcard"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{426B0A1E-659E-40E5-B93B-EF76EBBE0C0A}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\wildcard.cxx">
- </File>
- <File
- RelativePath=".\wildcard-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{42AF0399-9A66-43B2-94AA-DBF9BEEF1E92}">
- <File
- RelativePath=".\wildcard.hxx">
- </File>
- <File
- RelativePath=".\wildcard-custom.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\wildcard.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\wildcard.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-10.0.vcxproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc10.vcxproj
index 5356b27..7076dd6 100644
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc10.vcxproj.filters
index b67a77a..b67a77a 100644
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj
new file mode 100644
index 0000000..da17a00
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>wildcard</ProjectName>
+ <ProjectGuid>{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}</ProjectGuid>
+ <RootNamespace>wildcard</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="wildcard-custom.cxx" />
+ <ClCompile Include="wildcard.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="wildcard-custom.hxx" />
+ <ClInclude Include="wildcard.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="wildcard.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="wildcard.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj.filters
new file mode 100644
index 0000000..b67a77a
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc11.vcxproj.filters
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{426B0A1E-659E-40E5-B93B-EF76EBBE0C0A}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{42AF0399-9A66-43B2-94AA-DBF9BEEF1E92}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{0e336f4b-1f4c-4838-9a6a-183c80df8b67}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{228a47a0-93d7-4c99-9486-a589705ee401}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="wildcard-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="wildcard.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="wildcard-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="wildcard.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="wildcard.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="wildcard.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj
new file mode 100644
index 0000000..a6ff440
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>wildcard</ProjectName>
+ <ProjectGuid>{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}</ProjectGuid>
+ <RootNamespace>wildcard</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="wildcard-custom.cxx" />
+ <ClCompile Include="wildcard.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="wildcard-custom.hxx" />
+ <ClInclude Include="wildcard.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="wildcard.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="wildcard.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd wildcard.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue "#include \"wildcard-custom.hxx\"" wildcard.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">wildcard.hxx;wildcard.ixx;wildcard.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj.filters
new file mode 100644
index 0000000..b67a77a
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc12.vcxproj.filters
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{426B0A1E-659E-40E5-B93B-EF76EBBE0C0A}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{42AF0399-9A66-43B2-94AA-DBF9BEEF1E92}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{0e336f4b-1f4c-4838-9a6a-183c80df8b67}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{228a47a0-93d7-4c99-9486-a589705ee401}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="wildcard-custom.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="wildcard.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="wildcard-custom.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="wildcard.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="wildcard.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="wildcard.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc8.vcproj
index bfd4bb6..917fddd 100644
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc9.vcproj
index 6254390..16cab0c 100644
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-7.1.vcproj
deleted file mode 100644
index 2433f70..0000000
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="wildcard"
- ProjectGUID="{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
- RootNamespace="wildcard"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{426B0A1E-659E-40E5-B93B-EF76EBBE0C0A}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\wildcard.cxx">
- </File>
- <File
- RelativePath=".\wildcard-custom.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{42AF0399-9A66-43B2-94AA-DBF9BEEF1E92}">
- <File
- RelativePath=".\wildcard.hxx">
- </File>
- <File
- RelativePath=".\wildcard-custom.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\wildcard.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\wildcard.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-8.0.vcproj
deleted file mode 100644
index 7f982c7..0000000
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,440 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="wildcard"
- ProjectGUID="{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
- RootNamespace="wildcard"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{426B0A1E-659E-40E5-B93B-EF76EBBE0C0A}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\wildcard-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\wildcard.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{42AF0399-9A66-43B2-94AA-DBF9BEEF1E92}"
- >
- <File
- RelativePath=".\wildcard-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\wildcard.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\wildcard.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\wildcard.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-9.0.vcproj
deleted file mode 100644
index d475ac5..0000000
--- a/xsd/dist/examples/cxx/tree/custom/wildcard/wildcard-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,437 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="wildcard"
- ProjectGUID="{6CE6CDEC-F8DE-42D0-80F8-E71C0DD8F897}"
- RootNamespace="wildcard"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{426B0A1E-659E-40E5-B93B-EF76EBBE0C0A}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\wildcard-custom.cxx"
- >
- </File>
- <File
- RelativePath=".\wildcard.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{42AF0399-9A66-43B2-94AA-DBF9BEEF1E92}"
- >
- <File
- RelativePath=".\wildcard-custom.hxx"
- >
- </File>
- <File
- RelativePath=".\wildcard.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\wildcard.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\wildcard.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd wildcard.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --custom-type data=/data_base --hxx-epilogue &quot;#include \&quot;wildcard-custom.hxx\&quot;&quot; wildcard.xsd"
- Outputs="wildcard.hxx;wildcard.ixx;wildcard.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.sln b/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.sln
deleted file mode 100644
index fc08f1f..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dbxml", "dbxml-10.0.vcxproj", "{96CDC9C8-FC31-40B8-BDD0-1751712ED704}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|Win32.ActiveCfg = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|Win32.Build.0 = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|x64.ActiveCfg = Debug|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|x64.Build.0 = Debug|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|Win32.ActiveCfg = Release|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|Win32.Build.0 = Release|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|x64.ActiveCfg = Release|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.vcxproj b/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.vcxproj
deleted file mode 100644
index 69b1d32..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-10.0.vcxproj
+++ /dev/null
@@ -1,209 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>dbxml</ProjectName>
- <ProjectGuid>{96CDC9C8-FC31-40B8-BDD0-1751712ED704}</ProjectGuid>
- <RootNamespace>dbxml</RootNamespace>
- <Keyword>Win32Proj</Keyword>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;DBXML_DOM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <RuntimeTypeInfo>true</RuntimeTypeInfo>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>libdbxml23d.lib;libdb45d.lib;xerces-c_2D.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(TargetPath)</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention>
- </DataExecutionPrevention>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;DBXML_DOM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <RuntimeTypeInfo>true</RuntimeTypeInfo>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>libdbxml23d.lib;libdb45d.lib;xerces-c_2D.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(TargetPath)</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention>
- </DataExecutionPrevention>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;DBXML_DOM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <RuntimeTypeInfo>true</RuntimeTypeInfo>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>libdbxml23.lib;libdb45.lib;xerces-c_2.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(TargetPath)</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention>
- </DataExecutionPrevention>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;DBXML_DOM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <RuntimeTypeInfo>true</RuntimeTypeInfo>
- <PrecompiledHeader>
- </PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>libdbxml23.lib;libdb45.lib;xerces-c_2.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(TargetPath)</OutputFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention>
- </DataExecutionPrevention>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="driver.cxx" />
- <ClCompile Include="library.cxx" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="library.hxx" />
- </ItemGroup>
- <ItemGroup>
- <CustomBuild Include="library.xsd">
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;%(Outputs)</Outputs>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-ostream --generate-serialization library.xsd</Command>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;%(Outputs)</Outputs>
- </CustomBuild>
- </ItemGroup>
- <ItemGroup>
- <None Include="Readme.txt" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.sln b/xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.sln
deleted file mode 100644
index 8af0222..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dbxml", "dbxml-7.1.vcproj", "{96CDC9C8-FC31-40B8-BDD0-1751712ED704}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug.ActiveCfg = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug.Build.0 = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release.ActiveCfg = Release|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.vcproj b/xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.vcproj
deleted file mode 100644
index c0acf22..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="dbxml"
- ProjectGUID="{96CDC9C8-FC31-40B8-BDD0-1751712ED704}"
- RootNamespace="dbxml"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;DBXML_DOM"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23d.lib libdb45d.lib xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;DBXML_DOM"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23.lib libdb45.lib xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{19D063BE-083B-4E8A-89F8-D87CC43CB197}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E11762CD-4895-44DE-AA13-48BC7AAFC419}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.sln b/xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.sln
deleted file mode 100644
index b217889..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dbxml", "dbxml-8.0.vcproj", "{96CDC9C8-FC31-40B8-BDD0-1751712ED704}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|Win32.ActiveCfg = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|Win32.Build.0 = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|x64.ActiveCfg = Debug|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|x64.Build.0 = Debug|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|Win32.ActiveCfg = Release|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|Win32.Build.0 = Release|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|x64.ActiveCfg = Release|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.vcproj b/xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.vcproj
deleted file mode 100644
index 68ccebf..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="dbxml"
- ProjectGUID="{96CDC9C8-FC31-40B8-BDD0-1751712ED704}"
- RootNamespace="dbxml"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;DBXML_DOM"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23d.lib libdb45d.lib xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;DBXML_DOM"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23.lib libdb45.lib xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;DBXML_DOM"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23d.lib libdb45d.lib xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;DBXML_DOM"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23.lib libdb45.lib xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{19D063BE-083B-4E8A-89F8-D87CC43CB197}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E11762CD-4895-44DE-AA13-48BC7AAFC419}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.sln b/xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.sln
deleted file mode 100644
index 89e242e..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dbxml", "dbxml-9.0.vcproj", "{96CDC9C8-FC31-40B8-BDD0-1751712ED704}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|Win32.ActiveCfg = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|Win32.Build.0 = Debug|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|x64.ActiveCfg = Debug|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Debug|x64.Build.0 = Debug|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|Win32.ActiveCfg = Release|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|Win32.Build.0 = Release|Win32
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|x64.ActiveCfg = Release|x64
- {96CDC9C8-FC31-40B8-BDD0-1751712ED704}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.vcproj b/xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.vcproj
deleted file mode 100644
index 7068154..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/dbxml-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="dbxml"
- ProjectGUID="{96CDC9C8-FC31-40B8-BDD0-1751712ED704}"
- RootNamespace="dbxml"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;DBXML_DOM"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23d.lib libdb45d.lib xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;DBXML_DOM"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23d.lib libdb45d.lib xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;DBXML_DOM"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23.lib libdb45.lib xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;DBXML_DOM"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="libdbxml23.lib libdb45.lib xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{19D063BE-083B-4E8A-89F8-D87CC43CB197}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E11762CD-4895-44DE-AA13-48BC7AAFC419}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/dbxml/makefile b/xsd/dist/examples/cxx/tree/dbxml/makefile
deleted file mode 100644
index 501bddf..0000000
--- a/xsd/dist/examples/cxx/tree/dbxml/makefile
+++ /dev/null
@@ -1,33 +0,0 @@
-root := ../../..
-
-include $(root)/build/cxx/rules.make
-include $(root)/build/xsd/tree-rules.make
-
-
-override XSDFLAGS += --generate-ostream --generate-serialization
-override CPPFLAGS += -DDBXML_DOM
-override LIBS += -ldbxml -lxqilla -ldb_cxx -ldb
-
-
-# Build.
-#
-driver: driver.o library.o
-
-library.o: library.cxx library.hxx
-driver.o: driver.cxx library.hxx
-
-library.cxx library.hxx: library.xsd
-
-
-# Test
-#
-.PHONY: test
-test: driver
- ./driver
-
-
-# Clean.
-#
-.PHONY: clean
-clean:
- rm -f library.o library.?xx driver.o driver new.dbxml
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-7.1.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-7.1.sln
deleted file mode 100644
index 86e246f..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-7.1.sln
+++ /dev/null
@@ -1,30 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-7.1.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-7.1.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- ProjectSection(ProjectDependencies) = postProject
- {A3F6E060-D536-4A43-AF4B-89063F65DE91} = {A3F6E060-D536-4A43-AF4B-89063F65DE91}
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug.ActiveCfg = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug.Build.0 = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release.ActiveCfg = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release.Build.0 = Release|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug.ActiveCfg = Debug|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug.Build.0 = Debug|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release.ActiveCfg = Release|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-7.1.vcproj b/xsd/dist/examples/cxx/tree/embedded/embedded-7.1.vcproj
deleted file mode 100644
index bce7897..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="embedded"
- ProjectGUID="{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- RootNamespace="embedded"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1D046D9C-4D20-4084-A1F4-90488E0B0669}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- <File
- RelativePath=".\library-schema.cxx">
- </File>
- <File
- RelativePath=".\grammar-input-stream.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E2D458FA-56FA-4268-998B-BF3934169712}">
- <File
- RelativePath=".\library.hxx">
- </File>
- <File
- RelativePath=".\library-schema.hxx">
- </File>
- <File
- RelativePath=".\grammar-input-stream.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-10.0.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-vc10.sln
index bf8c3e2..0204487 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-10.0.sln
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc10.sln
@@ -1,8 +1,9 @@
+
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-10.0.vcxproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-vc10.vcxproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-10.0.vcxproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-vc10.vcxproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -10,16 +11,9 @@ Global
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
+
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.Build.0 = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.ActiveCfg = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.Build.0 = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.ActiveCfg = Release|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.Build.0 = Release|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.ActiveCfg = Debug|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.Build.0 = Debug|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.ActiveCfg = Debug|x64
@@ -28,6 +22,15 @@ Global
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.Build.0 = Release|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.ActiveCfg = Release|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.Build.0 = Release|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.Build.0 = Debug|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.ActiveCfg = Release|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.Build.0 = Release|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.ActiveCfg = Release|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.Build.0 = Release|x64
+
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-10.0.vcxproj b/xsd/dist/examples/cxx/tree/embedded/embedded-vc10.vcxproj
index 3cd8fd2..859b20b 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc10.vcxproj
@@ -86,7 +86,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -114,7 +113,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -136,7 +134,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -162,7 +159,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -208,7 +204,7 @@
<None Include="Readme.txt" />
</ItemGroup>
<ItemGroup>
- <ProjectReference Include="xsdbin-10.0.vcxproj">
+ <ProjectReference Include="xsdbin-vc10.vcxproj">
<Project>{a3f6e060-d536-4a43-af4b-89063f65de91}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/embedded/embedded-vc10.vcxproj.filters
index 42beedc..42beedc 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.sln
index 8f5e370..dc8273d 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-8.0.sln
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.sln
@@ -1,11 +1,9 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-xerces2-8.0.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2012
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-vc11.vcxproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-xerces2-8.0.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- ProjectSection(ProjectDependencies) = postProject
- {A3F6E060-D536-4A43-AF4B-89063F65DE91} = {A3F6E060-D536-4A43-AF4B-89063F65DE91}
- EndProjectSection
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-vc11.vcxproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -13,16 +11,9 @@ Global
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
+
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.Build.0 = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.ActiveCfg = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.Build.0 = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.ActiveCfg = Release|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.Build.0 = Release|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.ActiveCfg = Debug|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.Build.0 = Debug|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.ActiveCfg = Debug|x64
@@ -31,6 +22,15 @@ Global
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.Build.0 = Release|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.ActiveCfg = Release|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.Build.0 = Release|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.Build.0 = Debug|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.ActiveCfg = Release|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.Build.0 = Release|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.ActiveCfg = Release|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.Build.0 = Release|x64
+
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj b/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj
new file mode 100644
index 0000000..4fcc53a
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj
@@ -0,0 +1,219 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>embedded</ProjectName>
+ <ProjectGuid>{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}</ProjectGuid>
+ <RootNamespace>embedded</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ <ClCompile Include="library-schema.cxx" />
+ <ClCompile Include="grammar-input-stream.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ <ClInclude Include="library-schema.hxx" />
+ <ClInclude Include="grammar-input-stream.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="xsdbin-vc11.vcxproj">
+ <Project>{a3f6e060-d536-4a43-af4b-89063f65de91}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj.filters
new file mode 100644
index 0000000..42beedc
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc11.vcxproj.filters
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{1D046D9C-4D20-4084-A1F4-90488E0B0669}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{E2D458FA-56FA-4268-998B-BF3934169712}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{a57574af-3c36-408f-9f8e-5140fe6abbf6}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-schema.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="grammar-input-stream.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="grammar-input-stream.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.sln
new file mode 100644
index 0000000..1a70889
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.sln
@@ -0,0 +1,40 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2013
+VisualStudioVersion = 12.0.21005.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-vc12.vcxproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-vc12.vcxproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.Build.0 = Debug|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.ActiveCfg = Release|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.Build.0 = Release|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.ActiveCfg = Release|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.Build.0 = Release|x64
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.ActiveCfg = Debug|Win32
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.Build.0 = Debug|Win32
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.ActiveCfg = Debug|x64
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.Build.0 = Debug|x64
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.ActiveCfg = Release|Win32
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.Build.0 = Release|Win32
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.ActiveCfg = Release|x64
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.Build.0 = Release|x64
+
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj b/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj
new file mode 100644
index 0000000..bc2682f
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj
@@ -0,0 +1,223 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>embedded</ProjectName>
+ <ProjectGuid>{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}</ProjectGuid>
+ <RootNamespace>embedded</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ <ClCompile Include="library-schema.cxx" />
+ <ClCompile Include="grammar-input-stream.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ <ClInclude Include="library-schema.hxx" />
+ <ClInclude Include="grammar-input-stream.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.cxx;library-schema.hxx;library-schema.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="xsdbin-vc12.vcxproj">
+ <Project>{a3f6e060-d536-4a43-af4b-89063f65de91}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj.filters
new file mode 100644
index 0000000..42beedc
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc12.vcxproj.filters
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{1D046D9C-4D20-4084-A1F4-90488E0B0669}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{E2D458FA-56FA-4268-998B-BF3934169712}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{a57574af-3c36-408f-9f8e-5140fe6abbf6}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library-schema.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="grammar-input-stream.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="library-schema.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="grammar-input-stream.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-8.0.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-vc8.sln
index 50b49af..29a7c60 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-8.0.sln
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc8.sln
@@ -1,8 +1,9 @@
+
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-8.0.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-vc8.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-8.0.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-vc8.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
ProjectSection(ProjectDependencies) = postProject
{A3F6E060-D536-4A43-AF4B-89063F65DE91} = {A3F6E060-D536-4A43-AF4B-89063F65DE91}
EndProjectSection
@@ -10,27 +11,29 @@ EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
+ Debug|x64 = Debug|x64
Release|x64 = Release|x64
+
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
{A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.Build.0 = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
{A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.ActiveCfg = Release|Win32
{A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.Build.0 = Release|Win32
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
+ {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
{A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.ActiveCfg = Release|x64
{A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.Build.0 = Release|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.ActiveCfg = Debug|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.Build.0 = Debug|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.ActiveCfg = Debug|x64
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.Build.0 = Debug|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.ActiveCfg = Release|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.Build.0 = Release|Win32
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.ActiveCfg = Debug|x64
+ {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.Build.0 = Debug|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.ActiveCfg = Release|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.Build.0 = Release|x64
+
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-8.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/embedded-vc8.vcproj
index d0df22c..d0df22c 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc8.vcproj
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-9.0.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-vc9.sln
index bf0d15b..96f10ed 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-9.0.sln
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc9.sln
@@ -1,8 +1,9 @@
+
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-9.0.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-vc9.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-9.0.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-vc9.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
ProjectSection(ProjectDependencies) = postProject
{A3F6E060-D536-4A43-AF4B-89063F65DE91} = {A3F6E060-D536-4A43-AF4B-89063F65DE91}
EndProjectSection
@@ -13,6 +14,7 @@ Global
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
+
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
@@ -31,6 +33,7 @@ Global
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.Build.0 = Release|Win32
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.ActiveCfg = Release|x64
{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.Build.0 = Release|x64
+
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-9.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/embedded-vc9.vcproj
index bf5498c..bf5498c 100644
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/embedded/embedded-vc9.vcproj
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.sln
deleted file mode 100644
index aecc9e2..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.sln
+++ /dev/null
@@ -1,30 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-xerces2-7.1.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-xerces2-7.1.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- ProjectSection(ProjectDependencies) = postProject
- {A3F6E060-D536-4A43-AF4B-89063F65DE91} = {A3F6E060-D536-4A43-AF4B-89063F65DE91}
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug.ActiveCfg = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug.Build.0 = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release.ActiveCfg = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release.Build.0 = Release|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug.ActiveCfg = Debug|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug.Build.0 = Debug|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release.ActiveCfg = Release|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.vcproj
deleted file mode 100644
index 1b1b4f9..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="embedded"
- ProjectGUID="{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- RootNamespace="embedded"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1D046D9C-4D20-4084-A1F4-90488E0B0669}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- <File
- RelativePath=".\library-schema.cxx">
- </File>
- <File
- RelativePath=".\grammar-input-stream.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E2D458FA-56FA-4268-998B-BF3934169712}">
- <File
- RelativePath=".\library.hxx">
- </File>
- <File
- RelativePath=".\library-schema.hxx">
- </File>
- <File
- RelativePath=".\grammar-input-stream.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-8.0.vcproj
deleted file mode 100644
index 8f890bd..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,439 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="embedded"
- ProjectGUID="{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- RootNamespace="embedded"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1D046D9C-4D20-4084-A1F4-90488E0B0669}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- <File
- RelativePath=".\library-schema.cxx"
- >
- </File>
- <File
- RelativePath=".\grammar-input-stream.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E2D458FA-56FA-4268-998B-BF3934169712}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- <File
- RelativePath=".\library-schema.hxx"
- >
- </File>
- <File
- RelativePath=".\grammar-input-stream.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.sln
deleted file mode 100644
index f3e16d2..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.sln
+++ /dev/null
@@ -1,38 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsdbin", "xsdbin-xerces2-9.0.vcproj", "{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded", "embedded-xerces2-9.0.vcproj", "{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- ProjectSection(ProjectDependencies) = postProject
- {A3F6E060-D536-4A43-AF4B-89063F65DE91} = {A3F6E060-D536-4A43-AF4B-89063F65DE91}
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.ActiveCfg = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|Win32.Build.0 = Debug|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.ActiveCfg = Debug|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Debug|x64.Build.0 = Debug|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.ActiveCfg = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|Win32.Build.0 = Release|Win32
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.ActiveCfg = Release|x64
- {A3F6E060-D536-4A43-AF4B-89063F65DE91}.Release|x64.Build.0 = Release|x64
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.ActiveCfg = Debug|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|Win32.Build.0 = Debug|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.ActiveCfg = Debug|x64
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Debug|x64.Build.0 = Debug|x64
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.ActiveCfg = Release|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|Win32.Build.0 = Release|Win32
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.ActiveCfg = Release|x64
- {9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.vcproj
deleted file mode 100644
index dcc9fc5..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/embedded-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,436 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="embedded"
- ProjectGUID="{9C8C2AA4-DF31-4884-B3B9-A6A36F3CB429}"
- RootNamespace="embedded"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{1D046D9C-4D20-4084-A1F4-90488E0B0669}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- <File
- RelativePath=".\library-schema.cxx"
- >
- </File>
- <File
- RelativePath=".\grammar-input-stream.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E2D458FA-56FA-4268-998B-BF3934169712}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- <File
- RelativePath=".\library-schema.hxx"
- >
- </File>
- <File
- RelativePath=".\grammar-input-stream.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree library.xsd &amp;&amp; xsdbin.exe library.xsd"
- Outputs="library.hxx;library.cxx;library-schema.hxx;library-schema.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-7.1.vcproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-7.1.vcproj
deleted file mode 100644
index dea527f..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-7.1.vcproj
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="xsdbin"
- ProjectGUID="{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
- RootNamespace="xsdbin"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug\xsdbin"
- IntermediateDirectory="Debug\xsdbin"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/xsdbin.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release\xsdbin"
- IntermediateDirectory="Release\xsdbin"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{D9727125-E5B7-4777-8EB3-6EE957552516}">
- <File
- RelativePath=".\xsdbin.cxx">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-10.0.vcxproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc10.vcxproj
index d9a9da2..a57a876 100644
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc10.vcxproj
@@ -86,7 +86,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -114,7 +113,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -136,7 +134,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -162,7 +159,6 @@
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc10.vcxproj.filters
index 27abb01..27abb01 100644
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj
new file mode 100644
index 0000000..1cfce63
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>xsdbin</ProjectName>
+ <ProjectGuid>{A3F6E060-D536-4A43-AF4B-89063F65DE91}</ProjectGuid>
+ <RootNamespace>xsdbin</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsdbin</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsdbin</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsdbin</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsdbin</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)xsdbin.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)xsdbin.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="xsdbin.cxx" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj.filters
new file mode 100644
index 0000000..27abb01
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc11.vcxproj.filters
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{D9727125-E5B7-4777-8EB3-6EE957552516}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="xsdbin.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj
new file mode 100644
index 0000000..eb66e81
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj
@@ -0,0 +1,190 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>xsdbin</ProjectName>
+ <ProjectGuid>{A3F6E060-D536-4A43-AF4B-89063F65DE91}</ProjectGuid>
+ <RootNamespace>xsdbin</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsdbin</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsdbin</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsdbin</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsdbin</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\xsdbin\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)xsdbin.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)xsdbin.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="xsdbin.cxx" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj.filters
new file mode 100644
index 0000000..27abb01
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc12.vcxproj.filters
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{D9727125-E5B7-4777-8EB3-6EE957552516}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="xsdbin.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-8.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc8.vcproj
index 095024f..095024f 100644
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc8.vcproj
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-9.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc9.vcproj
index 1cb2ead..1cb2ead 100644
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/embedded/xsdbin-vc9.vcproj
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-7.1.vcproj
deleted file mode 100644
index 8d0e9ec..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="xsdbin"
- ProjectGUID="{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
- RootNamespace="xsdbin"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug\xsdbin"
- IntermediateDirectory="Debug\xsdbin"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/xsdbin.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release\xsdbin"
- IntermediateDirectory="Release\xsdbin"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{D9727125-E5B7-4777-8EB3-6EE957552516}">
- <File
- RelativePath=".\xsdbin.cxx">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-8.0.vcproj
deleted file mode 100644
index f0677fe..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,356 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="xsdbin"
- ProjectGUID="{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
- RootNamespace="xsdbin"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug\xsdbin"
- IntermediateDirectory="Debug\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/xsdbin.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release\xsdbin"
- IntermediateDirectory="Release\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/xsdbin.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{D9727125-E5B7-4777-8EB3-6EE957552516}"
- >
- <File
- RelativePath=".\xsdbin.cxx"
- >
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-9.0.vcproj
deleted file mode 100644
index e1292ea..0000000
--- a/xsd/dist/examples/cxx/tree/embedded/xsdbin-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,353 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="xsdbin"
- ProjectGUID="{A3F6E060-D536-4A43-AF4B-89063F65DE91}"
- RootNamespace="xsdbin"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug\xsdbin"
- IntermediateDirectory="Debug\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/xsdbin.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/xsdbin.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release\xsdbin"
- IntermediateDirectory="Release\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\xsdbin"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="xsdbin.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{D9727125-E5B7-4777-8EB3-6EE957552516}"
- >
- <File
- RelativePath=".\xsdbin.cxx"
- >
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-7.1.vcproj b/xsd/dist/examples/cxx/tree/hello/hello-7.1.vcproj
deleted file mode 100644
index 719f0d7..0000000
--- a/xsd/dist/examples/cxx/tree/hello/hello-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="hello"
- ProjectGUID="{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
- RootNamespace="hello"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\hello.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
- <File
- RelativePath=".\hello.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\hello.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-10.0.vcxproj b/xsd/dist/examples/cxx/tree/hello/hello-vc10.vcxproj
index 1a1ffe8..a9e0544 100644
--- a/xsd/dist/examples/cxx/tree/hello/hello-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/hello/hello-vc10.vcxproj.filters
index 620639d..732378a 100644
--- a/xsd/dist/examples/cxx/tree/hello/hello-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc10.vcxproj.filters
@@ -10,7 +10,7 @@
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Schema Files">
- <UniqueIdentifier>{d512d9c4-9ddd-4830-a487-1d87db0643d5}</UniqueIdentifier>
+ <UniqueIdentifier>{D512D9C4-9DDD-4830-A487-1D87DB0643D5}</UniqueIdentifier>
<Extensions>xsd</Extensions>
</Filter>
</ItemGroup>
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj b/xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj
new file mode 100644
index 0000000..c3f4c4f
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>hello</ProjectName>
+ <ProjectGuid>{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}</ProjectGuid>
+ <RootNamespace>hello</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="hello.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj.filters
new file mode 100644
index 0000000..732378a
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{D512D9C4-9DDD-4830-A487-1D87DB0643D5}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="hello.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj b/xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj
new file mode 100644
index 0000000..031c47e
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>hello</ProjectName>
+ <ProjectGuid>{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}</ProjectGuid>
+ <RootNamespace>hello</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="hello.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd hello.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree hello.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">hello.cxx;hello.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj.filters
new file mode 100644
index 0000000..732378a
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{D512D9C4-9DDD-4830-A487-1D87DB0643D5}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="hello.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="hello.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="hello.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-8.0.vcproj b/xsd/dist/examples/cxx/tree/hello/hello-vc8.vcproj
index 299fd53..c961754 100644
--- a/xsd/dist/examples/cxx/tree/hello/hello-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-9.0.vcproj b/xsd/dist/examples/cxx/tree/hello/hello-vc9.vcproj
index 0d85099..20eed13 100644
--- a/xsd/dist/examples/cxx/tree/hello/hello-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/hello/hello-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/hello/hello-xerces2-7.1.vcproj
deleted file mode 100644
index a2cab95..0000000
--- a/xsd/dist/examples/cxx/tree/hello/hello-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="hello"
- ProjectGUID="{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
- RootNamespace="hello"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\hello.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
- <File
- RelativePath=".\hello.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\hello.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/hello/hello-xerces2-8.0.vcproj
deleted file mode 100644
index 1b39f7c..0000000
--- a/xsd/dist/examples/cxx/tree/hello/hello-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="hello"
- ProjectGUID="{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
- RootNamespace="hello"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\hello.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
- >
- <File
- RelativePath=".\hello.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\hello.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/hello/hello-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/hello/hello-xerces2-9.0.vcproj
deleted file mode 100644
index 8b8fd22..0000000
--- a/xsd/dist/examples/cxx/tree/hello/hello-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="hello"
- ProjectGUID="{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
- RootNamespace="hello"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\hello.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
- >
- <File
- RelativePath=".\hello.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\hello.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd hello.xsd"
- CommandLine="xsd.exe cxx-tree hello.xsd"
- Outputs="hello.cxx;hello.hxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/library/library-7.1.vcproj b/xsd/dist/examples/cxx/tree/library/library-7.1.vcproj
deleted file mode 100644
index 32ea8af..0000000
--- a/xsd/dist/examples/cxx/tree/library/library-7.1.vcproj
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="library"
- ProjectGUID="{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
- RootNamespace="library"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E7CF4BC5-B0CB-4799-B64E-5AF3B67A6F0E}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FDC2B8B2-1264-427A-9D4E-5577BF295A64}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\library.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/library/library-10.0.vcxproj b/xsd/dist/examples/cxx/tree/library/library-vc10.vcxproj
index 022737f..0d82e98 100644
--- a/xsd/dist/examples/cxx/tree/library/library-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/library/library-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/library/library-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/library/library-vc10.vcxproj.filters
index e5e21e6..e5e21e6 100644
--- a/xsd/dist/examples/cxx/tree/library/library-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/library/library-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj b/xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj
new file mode 100644
index 0000000..498e9e9
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj
@@ -0,0 +1,210 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>library</ProjectName>
+ <ProjectGuid>{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}</ProjectGuid>
+ <RootNamespace>library</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj.filters
new file mode 100644
index 0000000..e5e21e6
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/library/library-vc11.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E7CF4BC5-B0CB-4799-B64E-5AF3B67A6F0E}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{FDC2B8B2-1264-427A-9D4E-5577BF295A64}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{8b40f964-53f9-4b8c-a52b-3fbe8bcfe092}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{50e811c7-6a8b-428b-8c92-0fb6c830a337}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj b/xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj
new file mode 100644
index 0000000..80fd4ae
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj
@@ -0,0 +1,214 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>library</ProjectName>
+ <ProjectGuid>{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}</ProjectGuid>
+ <RootNamespace>library</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="library.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd library.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">library.hxx;library.ixx;library.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj.filters
new file mode 100644
index 0000000..e5e21e6
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/library/library-vc12.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{E7CF4BC5-B0CB-4799-B64E-5AF3B67A6F0E}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{FDC2B8B2-1264-427A-9D4E-5577BF295A64}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{8b40f964-53f9-4b8c-a52b-3fbe8bcfe092}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{50e811c7-6a8b-428b-8c92-0fb6c830a337}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="library.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="library.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="library.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="library.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/library/library-8.0.vcproj b/xsd/dist/examples/cxx/tree/library/library-vc8.vcproj
index 0bc66af..79e3f7e 100644
--- a/xsd/dist/examples/cxx/tree/library/library-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/library/library-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/library/library-9.0.vcproj b/xsd/dist/examples/cxx/tree/library/library-vc9.vcproj
index 84d729b..d616bff 100644
--- a/xsd/dist/examples/cxx/tree/library/library-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/library/library-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/library/library-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/library/library-xerces2-7.1.vcproj
deleted file mode 100644
index 8cf6570..0000000
--- a/xsd/dist/examples/cxx/tree/library/library-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="library"
- ProjectGUID="{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
- RootNamespace="library"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E7CF4BC5-B0CB-4799-B64E-5AF3B67A6F0E}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\library.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FDC2B8B2-1264-427A-9D4E-5577BF295A64}">
- <File
- RelativePath=".\library.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\library.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\library.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/library/library-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/library/library-xerces2-8.0.vcproj
deleted file mode 100644
index fc3b99e..0000000
--- a/xsd/dist/examples/cxx/tree/library/library-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,432 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="library"
- ProjectGUID="{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
- RootNamespace="library"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E7CF4BC5-B0CB-4799-B64E-5AF3B67A6F0E}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FDC2B8B2-1264-427A-9D4E-5577BF295A64}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\library.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization --generate-intellisense library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/library/library-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/library/library-xerces2-9.0.vcproj
deleted file mode 100644
index ce9426a..0000000
--- a/xsd/dist/examples/cxx/tree/library/library-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,429 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="library"
- ProjectGUID="{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
- RootNamespace="library"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{E7CF4BC5-B0CB-4799-B64E-5AF3B67A6F0E}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\library.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FDC2B8B2-1264-427A-9D4E-5577BF295A64}"
- >
- <File
- RelativePath=".\library.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\library.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\library.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd library.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-ostream --generate-serialization library.xsd"
- Outputs="library.hxx;library.ixx;library.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/makefile b/xsd/dist/examples/cxx/tree/makefile
index 8c23fef..44e7a0f 100644
--- a/xsd/dist/examples/cxx/tree/makefile
+++ b/xsd/dist/examples/cxx/tree/makefile
@@ -1,14 +1,10 @@
dirs := binary caching embedded custom hello library messaging mixed \
-multiroot performance polymorphism streaming wildcard
+multiroot order performance polymorphism streaming wildcard
ifeq ($(WITH_ZLIB),1)
dirs += compression
endif
-ifeq ($(WITH_DBXML),1)
-dirs += dbxml
-endif
-
ifeq ($(WITH_XQILLA),1)
dirs += xpath
endif
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-7.1.vcproj b/xsd/dist/examples/cxx/tree/messaging/messaging-7.1.vcproj
deleted file mode 100644
index 1f56759..0000000
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="messaging"
- ProjectGUID="{F7696252-45B5-438B-B14F-0510137704F0}"
- RootNamespace="messaging"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0BA0A3D7-40AF-4307-8033-5BE39B33ABE5}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- <File
- RelativePath=".\dom-serialize.cxx">
- </File>
- <File
- RelativePath=".\protocol.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{F7AC5A29-8CF7-4882-89B6-1B5B81AA00F2}">
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- <File
- RelativePath=".\dom-serialize.hxx">
- </File>
- <File
- RelativePath=".\protocol.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\protocol.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-10.0.vcxproj b/xsd/dist/examples/cxx/tree/messaging/messaging-vc10.vcxproj
index 66c97bc..6016f46 100644
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/messaging/messaging-vc10.vcxproj.filters
index c94955d..c94955d 100644
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj b/xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj
new file mode 100644
index 0000000..d3403c2
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>messaging</ProjectName>
+ <ProjectGuid>{F7696252-45B5-438B-B14F-0510137704F0}</ProjectGuid>
+ <RootNamespace>messaging</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="dom-serialize.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="protocol.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="dom-serialize.hxx" />
+ <ClInclude Include="protocol.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj.filters
new file mode 100644
index 0000000..c94955d
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc11.vcxproj.filters
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{0BA0A3D7-40AF-4307-8033-5BE39B33ABE5}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{F7AC5A29-8CF7-4882-89B6-1B5B81AA00F2}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{945e9234-36d7-4bbb-a5f2-97af87338c49}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="dom-serialize.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="dom-serialize.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj b/xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj
new file mode 100644
index 0000000..35b8763
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj
@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>messaging</ProjectName>
+ <ProjectGuid>{F7696252-45B5-438B-B14F-0510137704F0}</ProjectGuid>
+ <RootNamespace>messaging</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="dom-serialize.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="protocol.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="dom-serialize.hxx" />
+ <ClInclude Include="protocol.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj.filters
new file mode 100644
index 0000000..c94955d
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc12.vcxproj.filters
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{0BA0A3D7-40AF-4307-8033-5BE39B33ABE5}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{F7AC5A29-8CF7-4882-89B6-1B5B81AA00F2}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{945e9234-36d7-4bbb-a5f2-97af87338c49}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="dom-serialize.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="dom-serialize.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-8.0.vcproj b/xsd/dist/examples/cxx/tree/messaging/messaging-vc8.vcproj
index 7f8b0e4..f006365 100644
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-9.0.vcproj b/xsd/dist/examples/cxx/tree/messaging/messaging-vc9.vcproj
index 0e2819d..debd0a3 100644
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/messaging/messaging-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-7.1.vcproj
deleted file mode 100644
index c08339a..0000000
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="messaging"
- ProjectGUID="{F7696252-45B5-438B-B14F-0510137704F0}"
- RootNamespace="messaging"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0BA0A3D7-40AF-4307-8033-5BE39B33ABE5}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- <File
- RelativePath=".\dom-serialize.cxx">
- </File>
- <File
- RelativePath=".\protocol.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{F7AC5A29-8CF7-4882-89B6-1B5B81AA00F2}">
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- <File
- RelativePath=".\dom-serialize.hxx">
- </File>
- <File
- RelativePath=".\protocol.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\protocol.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-8.0.vcproj
deleted file mode 100644
index 6406bb4..0000000
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,439 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="messaging"
- ProjectGUID="{F7696252-45B5-438B-B14F-0510137704F0}"
- RootNamespace="messaging"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0BA0A3D7-40AF-4307-8033-5BE39B33ABE5}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\dom-serialize.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{F7AC5A29-8CF7-4882-89B6-1B5B81AA00F2}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\dom-serialize.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\protocol.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-9.0.vcproj
deleted file mode 100644
index bcc81da..0000000
--- a/xsd/dist/examples/cxx/tree/messaging/messaging-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,436 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="messaging"
- ProjectGUID="{F7696252-45B5-438B-B14F-0510137704F0}"
- RootNamespace="messaging"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0BA0A3D7-40AF-4307-8033-5BE39B33ABE5}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\dom-serialize.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{F7AC5A29-8CF7-4882-89B6-1B5B81AA00F2}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\dom-serialize.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\protocol.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-element-type --generate-element-map --generate-serialization protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-7.1.vcproj b/xsd/dist/examples/cxx/tree/mixed/mixed-7.1.vcproj
deleted file mode 100644
index cfa1939..0000000
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixed"
- ProjectGUID="{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
- RootNamespace="mixed"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{590B5830-837E-4D7F-984C-173456EE7E70}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\text.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3B7C0CD8-48D5-4244-A1FB-B60D510C2359}">
- <File
- RelativePath=".\text.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\text.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
- Outputs="text.cxx;text.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
- Outputs="text.cxx;text.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-10.0.vcxproj b/xsd/dist/examples/cxx/tree/mixed/mixed-vc10.vcxproj
index 0b78b5a..c625d2c 100644
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/mixed/mixed-vc10.vcxproj.filters
index 992400e..992400e 100644
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj b/xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj
new file mode 100644
index 0000000..1380e1c
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixed</ProjectName>
+ <ProjectGuid>{6EF7868E-AA58-4615-9C1A-06B010CB4209}</ProjectGuid>
+ <RootNamespace>mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="text.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj.filters
new file mode 100644
index 0000000..992400e
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{590B5830-837E-4D7F-984C-173456EE7E70}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{3B7C0CD8-48D5-4244-A1FB-B60D510C2359}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{ba06cc21-c20a-4656-89ab-0a7b56f50871}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="text.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj b/xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj
new file mode 100644
index 0000000..7726386
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>mixed</ProjectName>
+ <ProjectGuid>{6EF7868E-AA58-4615-9C1A-06B010CB4209}</ProjectGuid>
+ <RootNamespace>mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="text.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj.filters
new file mode 100644
index 0000000..992400e
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{590B5830-837E-4D7F-984C-173456EE7E70}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{3B7C0CD8-48D5-4244-A1FB-B60D510C2359}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{ba06cc21-c20a-4656-89ab-0a7b56f50871}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="text.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-8.0.vcproj b/xsd/dist/examples/cxx/tree/mixed/mixed-vc8.vcproj
index f376bbf..d446891 100644
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-9.0.vcproj b/xsd/dist/examples/cxx/tree/mixed/mixed-vc9.vcproj
index 7e144e7..5c5843a 100644
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/mixed/mixed-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-7.1.vcproj
deleted file mode 100644
index 510a1d5..0000000
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="mixed"
- ProjectGUID="{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
- RootNamespace="mixed"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{590B5830-837E-4D7F-984C-173456EE7E70}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\text.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3B7C0CD8-48D5-4244-A1FB-B60D510C2359}">
- <File
- RelativePath=".\text.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\text.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
- Outputs="text.cxx;text.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
- Outputs="text.cxx;text.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-7.1.vcproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-7.1.vcproj
deleted file mode 100644
index 675fe8b..0000000
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="multiroot"
- ProjectGUID="{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
- RootNamespace="multiroot"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{761DEBB9-455C-4599-A11D-66D602C486C3}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- <File
- RelativePath=".\protocol.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AAF07268-FD5E-485F-8EB8-1AFDDE8BFD57}">
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- <File
- RelativePath=".\protocol.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\protocol.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-10.0.vcxproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc10.vcxproj
index acc0e93..3a10c32 100644
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc10.vcxproj.filters
index 148c832..148c832 100644
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj
new file mode 100644
index 0000000..61c6a44
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>multiroot</ProjectName>
+ <ProjectGuid>{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}</ProjectGuid>
+ <RootNamespace>multiroot</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="protocol.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="protocol.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj.filters
new file mode 100644
index 0000000..148c832
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc11.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{761DEBB9-455C-4599-A11D-66D602C486C3}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{AAF07268-FD5E-485F-8EB8-1AFDDE8BFD57}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{770136e0-0d08-4ab1-b67b-eabbde953e47}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj
new file mode 100644
index 0000000..1b0e268
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>multiroot</ProjectName>
+ <ProjectGuid>{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}</ProjectGuid>
+ <RootNamespace>multiroot</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="protocol.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="protocol.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd protocol.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --root-element-all protocol.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">protocol.hxx;protocol.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj.filters
new file mode 100644
index 0000000..148c832
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc12.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{761DEBB9-455C-4599-A11D-66D602C486C3}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{AAF07268-FD5E-485F-8EB8-1AFDDE8BFD57}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{770136e0-0d08-4ab1-b67b-eabbde953e47}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="protocol.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="protocol.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="protocol.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-8.0.vcproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc8.vcproj
index 915953a..54e196d 100644
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-9.0.vcproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc9.vcproj
index a6458ba..95aa025 100644
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/multiroot/multiroot-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-7.1.vcproj
deleted file mode 100644
index 8d42356..0000000
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="multiroot"
- ProjectGUID="{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
- RootNamespace="multiroot"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{761DEBB9-455C-4599-A11D-66D602C486C3}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- <File
- RelativePath=".\protocol.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AAF07268-FD5E-485F-8EB8-1AFDDE8BFD57}">
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- <File
- RelativePath=".\protocol.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\protocol.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-8.0.vcproj
deleted file mode 100644
index 489e8ff..0000000
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,431 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="multiroot"
- ProjectGUID="{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
- RootNamespace="multiroot"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{761DEBB9-455C-4599-A11D-66D602C486C3}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AAF07268-FD5E-485F-8EB8-1AFDDE8BFD57}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\protocol.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all --generate-intellisense protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-9.0.vcproj
deleted file mode 100644
index c39bd06..0000000
--- a/xsd/dist/examples/cxx/tree/multiroot/multiroot-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,428 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="multiroot"
- ProjectGUID="{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
- RootNamespace="multiroot"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{761DEBB9-455C-4599-A11D-66D602C486C3}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\protocol.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{AAF07268-FD5E-485F-8EB8-1AFDDE8BFD57}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\protocol.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\protocol.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd protocol.xsd"
- CommandLine="xsd cxx-tree --root-element-all protocol.xsd"
- Outputs="protocol.hxx;protocol.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/order/element/makefile b/xsd/dist/examples/cxx/tree/order/element/makefile
new file mode 100644
index 0000000..31f5ec5
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/makefile
@@ -0,0 +1,31 @@
+root := ../../../..
+
+include $(root)/build/cxx/rules.make
+include $(root)/build/xsd/tree-rules.make
+
+
+override XSDFLAGS += --generate-serialization --generate-wildcard --ordered-type batch
+
+
+# Build.
+#
+driver: driver.o transactions.o
+
+transactions.o: transactions.cxx transactions.hxx
+driver.o: driver.cxx transactions.hxx
+
+transactions.cxx transactions.hxx: transactions.xsd
+
+
+# Test
+#
+.PHONY: test
+test: driver transactions.xml
+ ./driver transactions.xml
+
+
+# Clean.
+#
+.PHONY: clean
+clean:
+ rm -f transactions.o transactions.?xx driver.o driver
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj b/xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj
new file mode 100644
index 0000000..100f0e8
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>order-element</ProjectName>
+ <ProjectGuid>{9488E872-8E09-4B68-9715-AF68534164C4}</ProjectGuid>
+ <RootNamespace>order-element</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="transactions.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="transactions.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="transactions.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj.filters b/xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj.filters
new file mode 100644
index 0000000..aefc2be
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc10.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{FF0C69B7-2DFB-402A-9AEB-A13D354EB9D2}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{9761A910-7322-4EBD-AD00-4FCC4C4F6586}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{2264FACD-618F-417C-B291-7E2A1BD11536}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="transactions.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="transactions.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="transactions.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj b/xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj
new file mode 100644
index 0000000..da8304c
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>order-element</ProjectName>
+ <ProjectGuid>{9488E872-8E09-4B68-9715-AF68534164C4}</ProjectGuid>
+ <RootNamespace>order-element</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="transactions.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="transactions.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="transactions.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj.filters
new file mode 100644
index 0000000..aefc2be
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{FF0C69B7-2DFB-402A-9AEB-A13D354EB9D2}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{9761A910-7322-4EBD-AD00-4FCC4C4F6586}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{2264FACD-618F-417C-B291-7E2A1BD11536}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="transactions.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="transactions.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="transactions.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj b/xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj
new file mode 100644
index 0000000..2364e27
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>order-element</ProjectName>
+ <ProjectGuid>{9488E872-8E09-4B68-9715-AF68534164C4}</ProjectGuid>
+ <RootNamespace>order-element</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="transactions.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="transactions.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="transactions.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd transactions.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">transactions.cxx;transactions.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj.filters
new file mode 100644
index 0000000..aefc2be
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{FF0C69B7-2DFB-402A-9AEB-A13D354EB9D2}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{9761A910-7322-4EBD-AD00-4FCC4C4F6586}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{2264FACD-618F-417C-B291-7E2A1BD11536}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="transactions.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="transactions.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="transactions.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc8.vcproj b/xsd/dist/examples/cxx/tree/order/element/order-element-vc8.vcproj
new file mode 100644
index 0000000..06dd76d
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc8.vcproj
@@ -0,0 +1,423 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="order-element"
+ ProjectGUID="{B6118FC1-3886-4F01-BECE-44B3BDD92CA6}"
+ RootNamespace="order-element"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ <Platform
+ Name="x64"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3D.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
+ SubSystem="1"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug|x64"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3D.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
+ SubSystem="1"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|x64"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{084F9FF2-F141-40BC-8D7D-7A78CC6707B0}"
+ >
+ <File
+ RelativePath=".\driver.cxx"
+ >
+ </File>
+ <File
+ RelativePath=".\transactions.cxx"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{F9AFEC3B-B8A5-47F6-BD3B-316A28A94B1F}"
+ >
+ <File
+ RelativePath=".\transactions.hxx"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Schema Files"
+ Filter="xsd"
+ >
+ <File
+ RelativePath=".\transactions.xsd"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|x64"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|x64"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <File
+ RelativePath=".\Readme.txt"
+ >
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/order/element/order-element-vc9.vcproj b/xsd/dist/examples/cxx/tree/order/element/order-element-vc9.vcproj
new file mode 100644
index 0000000..74a0266
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/element/order-element-vc9.vcproj
@@ -0,0 +1,420 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="order-element"
+ ProjectGUID="{06AAEF42-6C6F-4707-B82C-3962232A456E}"
+ RootNamespace="order-element"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ <Platform
+ Name="x64"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="Debug"
+ IntermediateDirectory="Debug"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3D.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug|x64"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3D.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/driver.pdb"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="Release"
+ IntermediateDirectory="Release"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|x64"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="1"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ RuntimeTypeInfo="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="xerces-c_3.lib"
+ OutputFile="$(OutDir)/driver.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{A2B29337-F8F7-492A-A290-721BCAFA3B33}"
+ >
+ <File
+ RelativePath=".\driver.cxx"
+ >
+ </File>
+ <File
+ RelativePath=".\transactions.cxx"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{2ECA1E85-7EF7-4BE8-899C-5006EEBE3A9F}"
+ >
+ <File
+ RelativePath=".\transactions.hxx"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Schema Files"
+ Filter="xsd"
+ >
+ <File
+ RelativePath=".\transactions.xsd"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|x64"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|x64"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ Description="xsd transactions.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --generate-wildcard --ordered-type batch transactions.xsd"
+ Outputs="transactions.cxx;transactions.hxx"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <File
+ RelativePath=".\Readme.txt"
+ >
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/order/makefile b/xsd/dist/examples/cxx/tree/order/makefile
new file mode 100644
index 0000000..2713b6e
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/makefile
@@ -0,0 +1,11 @@
+dirs := element mixed
+
+.PHONY: all $(dirs)
+
+all: $(dirs)
+
+$(dirs):
+ @$(MAKE) -C $@ $(MAKECMDGOALS)
+
+makefile: ;
+% :: $(dirs) ;
diff --git a/xsd/dist/examples/cxx/tree/order/mixed/makefile b/xsd/dist/examples/cxx/tree/order/mixed/makefile
new file mode 100644
index 0000000..b7929d9
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/mixed/makefile
@@ -0,0 +1,32 @@
+root := ../../../..
+
+include $(root)/build/cxx/rules.make
+include $(root)/build/xsd/tree-rules.make
+
+
+override XSDFLAGS += --generate-serialization --ordered-type-mixed
+
+
+# Build.
+#
+driver: driver.o text.o
+
+text.o: text.cxx text.hxx
+driver.o: driver.cxx text.hxx
+
+text.cxx text.hxx: text.xsd
+
+
+# Test
+#
+.PHONY: test
+test: driver text.xml
+ ./driver text.xml
+
+
+# Clean.
+#
+.PHONY: clean
+clean:
+ rm -f text.o text.?xx driver.o driver
+
diff --git a/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj
new file mode 100644
index 0000000..69ed120
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>order-mixed</ProjectName>
+ <ProjectGuid>{94A74673-C980-426B-B5BB-00744559EAD1}</ProjectGuid>
+ <RootNamespace>order-mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="text.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj.filters b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj.filters
new file mode 100644
index 0000000..422115b
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc10.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{02F42C11-BDFB-4E9B-8E93-745AE1451A73}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{789E7294-E4D2-41DC-BDDA-4A333C3C2ED7}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{BF59FE93-D0AC-48C0-998A-7AB994AFD9FE}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="text.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj
new file mode 100644
index 0000000..6f4ba84
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>order-mixed</ProjectName>
+ <ProjectGuid>{94A74673-C980-426B-B5BB-00744559EAD1}</ProjectGuid>
+ <RootNamespace>order-mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="text.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj.filters
new file mode 100644
index 0000000..422115b
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{02F42C11-BDFB-4E9B-8E93-745AE1451A73}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{789E7294-E4D2-41DC-BDDA-4A333C3C2ED7}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{BF59FE93-D0AC-48C0-998A-7AB994AFD9FE}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="text.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj
new file mode 100644
index 0000000..7408bef
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>order-mixed</ProjectName>
+ <ProjectGuid>{94A74673-C980-426B-B5BB-00744559EAD1}</ProjectGuid>
+ <RootNamespace>order-mixed</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="text.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd text.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">text.cxx;text.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj.filters
new file mode 100644
index 0000000..422115b
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{02F42C11-BDFB-4E9B-8E93-745AE1451A73}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{789E7294-E4D2-41DC-BDDA-4A333C3C2ED7}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{BF59FE93-D0AC-48C0-998A-7AB994AFD9FE}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="text.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="text.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="text.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc8.vcproj
index 5dfbf16..20cfe65 100644
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc8.vcproj
@@ -2,9 +2,9 @@
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
- Name="mixed"
- ProjectGUID="{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
- RootNamespace="mixed"
+ Name="order-mixed"
+ ProjectGUID="{84319CCF-087B-468D-ABA9-C8253098FAA0}"
+ RootNamespace="order-mixed"
Keyword="Win32Proj"
>
<Platforms>
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -65,7 +65,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
+ AdditionalDependencies="xerces-c_3D.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -142,7 +142,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
+ AdditionalDependencies="xerces-c_3.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -224,7 +224,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
+ AdditionalDependencies="xerces-c_3D.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -302,7 +302,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
+ AdditionalDependencies="xerces-c_3.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
@@ -343,7 +343,7 @@
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{590B5830-837E-4D7F-984C-173456EE7E70}"
+ UniqueIdentifier="{D18F10AE-C028-4A42-AEA9-64D5307C758C}"
>
<File
RelativePath=".\driver.cxx"
@@ -357,7 +357,7 @@
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3B7C0CD8-48D5-4244-A1FB-B60D510C2359}"
+ UniqueIdentifier="{E341B637-99E8-40BF-88C6-C8FDCB749474}"
>
<File
RelativePath=".\text.hxx"
@@ -377,7 +377,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
@@ -387,7 +387,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
@@ -397,7 +397,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
@@ -407,7 +407,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree --generate-intellisense text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-intellisense --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
diff --git a/xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc9.vcproj
index 4e6ff97..c6861d9 100644
--- a/xsd/dist/examples/cxx/tree/mixed/mixed-xerces2-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/order/mixed/order-mixed-vc9.vcproj
@@ -2,9 +2,9 @@
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
- Name="mixed"
- ProjectGUID="{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
- RootNamespace="mixed"
+ Name="order-mixed"
+ ProjectGUID="{B58CABEE-0A5C-43F3-B22B-53D060763B67}"
+ RootNamespace="order-mixed"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -66,7 +66,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
+ AdditionalDependencies="xerces-c_3D.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -146,7 +146,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
+ AdditionalDependencies="xerces-c_3D.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -222,7 +222,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
+ AdditionalDependencies="xerces-c_3.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -300,7 +300,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
+ AdditionalDependencies="xerces-c_3.lib"
OutputFile="$(OutDir)/driver.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
@@ -340,7 +340,7 @@
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{590B5830-837E-4D7F-984C-173456EE7E70}"
+ UniqueIdentifier="{49DCF246-346C-4532-8D81-B3D8943C51A3}"
>
<File
RelativePath=".\driver.cxx"
@@ -354,7 +354,7 @@
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{3B7C0CD8-48D5-4244-A1FB-B60D510C2359}"
+ UniqueIdentifier="{0317763E-1AA4-4187-8ED7-58C87F59E051}"
>
<File
RelativePath=".\text.hxx"
@@ -374,7 +374,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
@@ -384,7 +384,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
@@ -394,7 +394,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
@@ -404,7 +404,7 @@
<Tool
Name="VCCustomBuildTool"
Description="xsd text.xsd"
- CommandLine="xsd.exe cxx-tree text.xsd"
+ CommandLine="xsd.exe cxx-tree --generate-serialization --ordered-type-mixed text.xsd"
Outputs="text.cxx;text.hxx"
/>
</FileConfiguration>
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-7.1.vcproj b/xsd/dist/examples/cxx/tree/performance/performance-7.1.vcproj
deleted file mode 100644
index f5eace8..0000000
--- a/xsd/dist/examples/cxx/tree/performance/performance-7.1.vcproj
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="performance"
- ProjectGUID="{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
- RootNamespace="performance"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF3D33D-891D-402D-A26F-AEBC35E127DE}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\test.cxx">
- </File>
- <File
- RelativePath=".\time.cxx">
- </File>
- <File
- RelativePath=".\parsing.cxx">
- </File>
- <File
- RelativePath=".\serialization.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FD93B741-02F9-48B5-BE59-E5DD2C73CC7A}">
- <File
- RelativePath=".\test.hxx">
- </File>
- <File
- RelativePath=".\time.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\test.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\test.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-10.0.vcxproj b/xsd/dist/examples/cxx/tree/performance/performance-vc10.vcxproj
index 46de693..6651012 100644
--- a/xsd/dist/examples/cxx/tree/performance/performance-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/performance/performance-vc10.vcxproj.filters
index 6fc7fa3..6fc7fa3 100644
--- a/xsd/dist/examples/cxx/tree/performance/performance-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj b/xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj
new file mode 100644
index 0000000..8e3aa7c
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj
@@ -0,0 +1,214 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>performance</ProjectName>
+ <ProjectGuid>{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}</ProjectGuid>
+ <RootNamespace>performance</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="test.cxx" />
+ <ClCompile Include="time.cxx" />
+ <ClCompile Include="parsing.cxx" />
+ <ClCompile Include="serialization.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test.hxx" />
+ <ClInclude Include="time.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="test.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj.filters
new file mode 100644
index 0000000..6fc7fa3
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc11.vcxproj.filters
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4BF3D33D-891D-402D-A26F-AEBC35E127DE}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{FD93B741-02F9-48B5-BE59-E5DD2C73CC7A}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{e0558eb1-4ecb-42e8-b50b-e07487e59072}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{47ef7335-e3a1-4832-bff0-c59ac4d25088}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="test.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="time.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="parsing.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="serialization.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="time.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="test.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj b/xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj
new file mode 100644
index 0000000..38193f7
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>performance</ProjectName>
+ <ProjectGuid>{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}</ProjectGuid>
+ <RootNamespace>performance</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="test.cxx" />
+ <ClCompile Include="time.cxx" />
+ <ClCompile Include="parsing.cxx" />
+ <ClCompile Include="serialization.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test.hxx" />
+ <ClInclude Include="time.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="test.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd test.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization test.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">test.hxx;test.ixx;test.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj.filters
new file mode 100644
index 0000000..6fc7fa3
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc12.vcxproj.filters
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4BF3D33D-891D-402D-A26F-AEBC35E127DE}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{FD93B741-02F9-48B5-BE59-E5DD2C73CC7A}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{e0558eb1-4ecb-42e8-b50b-e07487e59072}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{47ef7335-e3a1-4832-bff0-c59ac4d25088}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="test.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="time.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="parsing.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="serialization.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="test.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="time.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="test.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="test.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-8.0.vcproj b/xsd/dist/examples/cxx/tree/performance/performance-vc8.vcproj
index 88d0e7c..e49587d 100644
--- a/xsd/dist/examples/cxx/tree/performance/performance-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-9.0.vcproj b/xsd/dist/examples/cxx/tree/performance/performance-vc9.vcproj
index 907e153..fa23a74 100644
--- a/xsd/dist/examples/cxx/tree/performance/performance-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/performance/performance-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/performance/performance-xerces2-7.1.vcproj
deleted file mode 100644
index 9fb5f98..0000000
--- a/xsd/dist/examples/cxx/tree/performance/performance-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="performance"
- ProjectGUID="{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
- RootNamespace="performance"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF3D33D-891D-402D-A26F-AEBC35E127DE}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\test.cxx">
- </File>
- <File
- RelativePath=".\time.cxx">
- </File>
- <File
- RelativePath=".\parsing.cxx">
- </File>
- <File
- RelativePath=".\serialization.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FD93B741-02F9-48B5-BE59-E5DD2C73CC7A}">
- <File
- RelativePath=".\test.hxx">
- </File>
- <File
- RelativePath=".\time.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\test.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\test.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/performance/performance-xerces2-8.0.vcproj
deleted file mode 100644
index 0feba16..0000000
--- a/xsd/dist/examples/cxx/tree/performance/performance-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,445 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="performance"
- ProjectGUID="{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
- RootNamespace="performance"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF3D33D-891D-402D-A26F-AEBC35E127DE}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\test.cxx"
- >
- </File>
- <File
- RelativePath=".\time.cxx">
- </File>
- <File
- RelativePath=".\parsing.cxx">
- </File>
- <File
- RelativePath=".\serialization.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FD93B741-02F9-48B5-BE59-E5DD2C73CC7A}"
- >
- <File
- RelativePath=".\test.hxx"
- >
- </File>
- <File
- RelativePath=".\time.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\test.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\test.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-intellisense test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/performance/performance-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/performance/performance-xerces2-9.0.vcproj
deleted file mode 100644
index 561e294..0000000
--- a/xsd/dist/examples/cxx/tree/performance/performance-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,442 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="performance"
- ProjectGUID="{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
- RootNamespace="performance"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4BF3D33D-891D-402D-A26F-AEBC35E127DE}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\test.cxx"
- >
- </File>
- <File
- RelativePath=".\time.cxx">
- </File>
- <File
- RelativePath=".\parsing.cxx">
- </File>
- <File
- RelativePath=".\serialization.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{FD93B741-02F9-48B5-BE59-E5DD2C73CC7A}"
- >
- <File
- RelativePath=".\test.hxx"
- >
- </File>
- <File
- RelativePath=".\time.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\test.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\test.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd test.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization test.xsd"
- Outputs="test.hxx;test.ixx;test.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-7.1.vcproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-7.1.vcproj
deleted file mode 100644
index c47b133..0000000
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="polymorphism"
- ProjectGUID="{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{A02BB28E-3A7B-4E9E-A2AC-AA264C62525C}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\supermen.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B2184D0-2125-48EB-AE80-64E24055DCE4}">
- <File
- RelativePath=".\supermen.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\supermen.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-10.0.vcxproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc10.vcxproj
index 184ebe9..4a693ec 100644
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc10.vcxproj.filters
index 4459d2c..4459d2c 100644
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj
new file mode 100644
index 0000000..d8f0aa0
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>polymorphism</ProjectName>
+ <ProjectGuid>{03224289-FD3C-4A58-A6D7-E8D658B0E45A}</ProjectGuid>
+ <RootNamespace>polymorphism</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="supermen.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj.filters
new file mode 100644
index 0000000..4459d2c
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc11.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{A02BB28E-3A7B-4E9E-A2AC-AA264C62525C}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{6B2184D0-2125-48EB-AE80-64E24055DCE4}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{e32c9352-17dd-4c6c-b9fa-fadaf6eee928}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj
new file mode 100644
index 0000000..040d657
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>polymorphism</ProjectName>
+ <ProjectGuid>{03224289-FD3C-4A58-A6D7-E8D658B0E45A}</ProjectGuid>
+ <RootNamespace>polymorphism</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="supermen.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd supermen.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">supermen.cxx;supermen.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj.filters
new file mode 100644
index 0000000..4459d2c
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc12.vcxproj.filters
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{A02BB28E-3A7B-4E9E-A2AC-AA264C62525C}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{6B2184D0-2125-48EB-AE80-64E24055DCE4}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{e32c9352-17dd-4c6c-b9fa-fadaf6eee928}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="supermen.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="supermen.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="supermen.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-8.0.vcproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc8.vcproj
index 6e5478c..d146d0e 100644
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-9.0.vcproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc9.vcproj
index dd033ab..3d56cf8 100644
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-7.1.vcproj
deleted file mode 100644
index 47a0568..0000000
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="polymorphism"
- ProjectGUID="{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{A02BB28E-3A7B-4E9E-A2AC-AA264C62525C}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\supermen.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B2184D0-2125-48EB-AE80-64E24055DCE4}">
- <File
- RelativePath=".\supermen.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\supermen.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-8.0.vcproj
deleted file mode 100644
index 539f395..0000000
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="polymorphism"
- ProjectGUID="{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{A02BB28E-3A7B-4E9E-A2AC-AA264C62525C}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B2184D0-2125-48EB-AE80-64E24055DCE4}"
- >
- <File
- RelativePath=".\supermen.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\supermen.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --generate-intellisense --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-9.0.vcproj
deleted file mode 100644
index cc48260..0000000
--- a/xsd/dist/examples/cxx/tree/polymorphism/polymorphism-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="polymorphism"
- ProjectGUID="{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
- RootNamespace="polymorphism"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{A02BB28E-3A7B-4E9E-A2AC-AA264C62525C}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\supermen.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{6B2184D0-2125-48EB-AE80-64E24055DCE4}"
- >
- <File
- RelativePath=".\supermen.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\supermen.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd supermen.xsd"
- CommandLine="xsd.exe cxx-tree --generate-polymorphic --generate-serialization --root-element-last supermen.xsd"
- Outputs="supermen.cxx;supermen.hxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/streaming/makefile b/xsd/dist/examples/cxx/tree/streaming/makefile
index ed32b83..4c7acd2 100644
--- a/xsd/dist/examples/cxx/tree/streaming/makefile
+++ b/xsd/dist/examples/cxx/tree/streaming/makefile
@@ -9,12 +9,13 @@ override XSDFLAGS += --generate-serialization
# Build.
#
-driver: driver.o parser.o serializer.o position.o
+driver: driver.o parser.o serializer.o grammar-input-stream.o position.o
position.o: position.cxx position.hxx
driver.o: driver.cxx position.hxx parser.hxx serializer.hxx
parser.o: parser.cxx parser.hxx
serializer.o: serializer.cxx serializer.hxx
+grammar-input-stream.o: grammar-input-stream.cxx grammar-input-stream.hxx
position.cxx position.hxx: position.xsd
@@ -30,4 +31,4 @@ test: driver position.xml
#
.PHONY: clean
clean:
- rm -f position.o position.?xx parser.o serializer.o driver.o driver out.xml
+ rm -f position.o position.?xx parser.o serializer.o grammar-input-stream.o driver.o driver out.xml
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-7.1.vcproj b/xsd/dist/examples/cxx/tree/streaming/streaming-7.1.vcproj
deleted file mode 100644
index 7a11fe9..0000000
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="streaming"
- ProjectGUID="{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
- RootNamespace="streaming"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4F684AD4-DFB2-4488-BA73-8625AECC91A3}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\position.cxx">
- </File>
- <File
- RelativePath=".\parser.cxx">
- </File>
- <File
- RelativePath=".\serializer.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{94F3375D-5EB8-4D2C-8739-4D47E9AB7072}">
- <File
- RelativePath=".\position.hxx">
- </File>
- <File
- RelativePath=".\parser.hxx">
- </File>
- <File
- RelativePath=".\serializer.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\position.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-10.0.vcxproj b/xsd/dist/examples/cxx/tree/streaming/streaming-vc10.vcxproj
index fb74ff1..cf23e2a 100644
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc10.vcxproj
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -182,11 +178,13 @@
<ClCompile Include="position.cxx" />
<ClCompile Include="parser.cxx" />
<ClCompile Include="serializer.cxx" />
+ <ClCompile Include="grammar-input-stream.cxx" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="position.hxx" />
<ClInclude Include="parser.hxx" />
<ClInclude Include="serializer.hxx" />
+ <ClInclude Include="grammar-input-stream.hxx" />
</ItemGroup>
<ItemGroup>
<CustomBuild Include="position.xsd">
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/streaming/streaming-vc10.vcxproj.filters
index cf8b190..3597703 100644
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc10.vcxproj.filters
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
@@ -27,6 +27,9 @@
<ClCompile Include="serializer.cxx">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="grammar-input-stream.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="position.hxx">
@@ -38,6 +41,9 @@
<ClInclude Include="serializer.hxx">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="grammar-input-stream.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="Readme.txt" />
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj b/xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj
new file mode 100644
index 0000000..28f008c
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>streaming</ProjectName>
+ <ProjectGuid>{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}</ProjectGuid>
+ <RootNamespace>streaming</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="position.cxx" />
+ <ClCompile Include="parser.cxx" />
+ <ClCompile Include="serializer.cxx" />
+ <ClCompile Include="grammar-input-stream.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="position.hxx" />
+ <ClInclude Include="parser.hxx" />
+ <ClInclude Include="serializer.hxx" />
+ <ClInclude Include="grammar-input-stream.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="position.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj.filters
new file mode 100644
index 0000000..3597703
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc11.vcxproj.filters
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4F684AD4-DFB2-4488-BA73-8625AECC91A3}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{94F3375D-5EB8-4D2C-8739-4D47E9AB7072}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{b73125d6-60b1-4f32-9cfb-d11e709d0d14}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="position.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="parser.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="serializer.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="grammar-input-stream.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="position.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="parser.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="serializer.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="grammar-input-stream.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="position.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj b/xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj
new file mode 100644
index 0000000..5e69c30
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj
@@ -0,0 +1,219 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>streaming</ProjectName>
+ <ProjectGuid>{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}</ProjectGuid>
+ <RootNamespace>streaming</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="position.cxx" />
+ <ClCompile Include="parser.cxx" />
+ <ClCompile Include="serializer.cxx" />
+ <ClCompile Include="grammar-input-stream.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="position.hxx" />
+ <ClInclude Include="parser.hxx" />
+ <ClInclude Include="serializer.hxx" />
+ <ClInclude Include="grammar-input-stream.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="position.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd position.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd.exe cxx-tree --generate-serialization position.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">position.cxx;position.hxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj.filters
new file mode 100644
index 0000000..3597703
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc12.vcxproj.filters
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4F684AD4-DFB2-4488-BA73-8625AECC91A3}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{94F3375D-5EB8-4D2C-8739-4D47E9AB7072}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{b73125d6-60b1-4f32-9cfb-d11e709d0d14}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="position.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="parser.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="serializer.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="grammar-input-stream.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="position.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="parser.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="serializer.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="grammar-input-stream.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="position.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-8.0.vcproj b/xsd/dist/examples/cxx/tree/streaming/streaming-vc8.vcproj
index b7f65d0..354c0ff 100644
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -359,6 +359,9 @@
<File
RelativePath=".\serializer.cxx">
</File>
+ <File
+ RelativePath=".\grammar-input-stream.cxx">
+ </File>
</Filter>
<Filter
Name="Header Files"
@@ -375,6 +378,9 @@
<File
RelativePath=".\serializer.hxx">
</File>
+ <File
+ RelativePath=".\grammar-input-stream.hxx">
+ </File>
</Filter>
<Filter
Name="Schema Files"
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-9.0.vcproj b/xsd/dist/examples/cxx/tree/streaming/streaming-vc9.vcproj
index cbfec59..e6b75f3 100644
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/streaming/streaming-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -356,6 +356,9 @@
<File
RelativePath=".\serializer.cxx">
</File>
+ <File
+ RelativePath=".\grammar-input-stream.cxx">
+ </File>
</Filter>
<Filter
Name="Header Files"
@@ -372,6 +375,9 @@
<File
RelativePath=".\serializer.hxx">
</File>
+ <File
+ RelativePath=".\grammar-input-stream.hxx">
+ </File>
</Filter>
<Filter
Name="Schema Files"
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-7.1.vcproj
deleted file mode 100644
index b606b8f..0000000
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="streaming"
- ProjectGUID="{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
- RootNamespace="streaming"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4F684AD4-DFB2-4488-BA73-8625AECC91A3}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\position.cxx">
- </File>
- <File
- RelativePath=".\parser.cxx">
- </File>
- <File
- RelativePath=".\serializer.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{94F3375D-5EB8-4D2C-8739-4D47E9AB7072}">
- <File
- RelativePath=".\position.hxx">
- </File>
- <File
- RelativePath=".\parser.hxx">
- </File>
- <File
- RelativePath=".\serializer.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\position.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-8.0.vcproj
deleted file mode 100644
index fbd555e..0000000
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,435 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="streaming"
- ProjectGUID="{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
- RootNamespace="streaming"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4F684AD4-DFB2-4488-BA73-8625AECC91A3}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\position.cxx"
- >
- </File>
- <File
- RelativePath=".\parser.cxx">
- </File>
- <File
- RelativePath=".\serializer.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{94F3375D-5EB8-4D2C-8739-4D47E9AB7072}"
- >
- <File
- RelativePath=".\position.hxx"
- >
- </File>
- <File
- RelativePath=".\parser.hxx">
- </File>
- <File
- RelativePath=".\serializer.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\position.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization --generate-intellisense position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-9.0.vcproj
deleted file mode 100644
index e3da54b..0000000
--- a/xsd/dist/examples/cxx/tree/streaming/streaming-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,432 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="streaming"
- ProjectGUID="{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
- RootNamespace="streaming"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4F684AD4-DFB2-4488-BA73-8625AECC91A3}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\position.cxx"
- >
- </File>
- <File
- RelativePath=".\parser.cxx">
- </File>
- <File
- RelativePath=".\serializer.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{94F3375D-5EB8-4D2C-8739-4D47E9AB7072}"
- >
- <File
- RelativePath=".\position.hxx"
- >
- </File>
- <File
- RelativePath=".\parser.hxx">
- </File>
- <File
- RelativePath=".\serializer.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\position.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd position.xsd"
- CommandLine="xsd.exe cxx-tree --generate-serialization position.xsd"
- Outputs="position.cxx;position.hxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/tree-10.0.sln b/xsd/dist/examples/cxx/tree/tree-10.0.sln
deleted file mode 100644
index 3f9d2e2..0000000
--- a/xsd/dist/examples/cxx/tree/tree-10.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-10.0.vcxproj", "{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-10.0.vcxproj", "{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-10.0.vcxproj", "{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-10.0.vcxproj", "{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "streaming", "streaming\streaming-10.0.vcxproj", "{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-10.0.vcxproj", "{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "caching", "caching\caching-10.0.vcxproj", "{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-10.0.vcxproj", "{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-10.0.vcxproj", "{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "messaging", "messaging\messaging-10.0.vcxproj", "{F7696252-45B5-438B-B14F-0510137704F0}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.ActiveCfg = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.Build.0 = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.ActiveCfg = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.Build.0 = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.ActiveCfg = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.Build.0 = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.ActiveCfg = Release|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.Build.0 = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.ActiveCfg = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.Build.0 = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.ActiveCfg = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.Build.0 = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.ActiveCfg = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.Build.0 = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.ActiveCfg = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.Build.0 = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.ActiveCfg = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.Build.0 = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.ActiveCfg = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.Build.0 = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.ActiveCfg = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.Build.0 = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.ActiveCfg = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.Build.0 = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.ActiveCfg = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.Build.0 = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.ActiveCfg = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.Build.0 = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.ActiveCfg = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.Build.0 = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.ActiveCfg = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.Build.0 = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.ActiveCfg = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.Build.0 = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.ActiveCfg = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.Build.0 = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.ActiveCfg = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.Build.0 = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.ActiveCfg = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.Build.0 = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.ActiveCfg = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.Build.0 = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.ActiveCfg = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.Build.0 = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.ActiveCfg = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.Build.0 = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.ActiveCfg = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.Build.0 = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.ActiveCfg = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.Build.0 = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.ActiveCfg = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.Build.0 = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.ActiveCfg = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.Build.0 = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.ActiveCfg = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.Build.0 = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.ActiveCfg = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.Build.0 = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.ActiveCfg = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.Build.0 = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.ActiveCfg = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.Build.0 = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.ActiveCfg = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.Build.0 = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.ActiveCfg = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.Build.0 = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.ActiveCfg = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.Build.0 = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.ActiveCfg = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.Build.0 = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.ActiveCfg = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.Build.0 = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.ActiveCfg = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.Build.0 = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.ActiveCfg = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.Build.0 = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.ActiveCfg = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.Build.0 = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.ActiveCfg = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/tree-7.1.sln b/xsd/dist/examples/cxx/tree/tree-7.1.sln
deleted file mode 100644
index fc5147b..0000000
--- a/xsd/dist/examples/cxx/tree/tree-7.1.sln
+++ /dev/null
@@ -1,93 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-7.1.vcproj", "{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-7.1.vcproj", "{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-7.1.vcproj", "{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-7.1.vcproj", "{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "streaming", "streaming\streaming-7.1.vcproj", "{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-7.1.vcproj", "{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "caching", "caching\caching-7.1.vcproj", "{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-7.1.vcproj", "{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-7.1.vcproj", "{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "messaging", "messaging\messaging-7.1.vcproj", "{F7696252-45B5-438B-B14F-0510137704F0}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug.ActiveCfg = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug.Build.0 = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release.ActiveCfg = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release.Build.0 = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug.ActiveCfg = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug.Build.0 = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release.ActiveCfg = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release.Build.0 = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug.ActiveCfg = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug.Build.0 = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release.ActiveCfg = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release.Build.0 = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug.ActiveCfg = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug.Build.0 = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release.ActiveCfg = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release.Build.0 = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug.ActiveCfg = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug.Build.0 = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release.ActiveCfg = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release.Build.0 = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug.ActiveCfg = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug.Build.0 = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release.ActiveCfg = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release.Build.0 = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug.ActiveCfg = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug.Build.0 = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release.ActiveCfg = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release.Build.0 = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug.ActiveCfg = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug.Build.0 = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release.ActiveCfg = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release.Build.0 = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug.ActiveCfg = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug.Build.0 = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release.ActiveCfg = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release.Build.0 = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug.ActiveCfg = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug.Build.0 = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release.ActiveCfg = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/tree-8.0.sln b/xsd/dist/examples/cxx/tree/tree-8.0.sln
deleted file mode 100644
index f504aa6..0000000
--- a/xsd/dist/examples/cxx/tree/tree-8.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-8.0.vcproj", "{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-8.0.vcproj", "{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-8.0.vcproj", "{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-8.0.vcproj", "{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "streaming", "streaming\streaming-8.0.vcproj", "{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-8.0.vcproj", "{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "caching", "caching\caching-8.0.vcproj", "{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-8.0.vcproj", "{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-8.0.vcproj", "{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "messaging", "messaging\messaging-8.0.vcproj", "{F7696252-45B5-438B-B14F-0510137704F0}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.ActiveCfg = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.Build.0 = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.ActiveCfg = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.Build.0 = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.ActiveCfg = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.Build.0 = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.ActiveCfg = Release|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.Build.0 = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.ActiveCfg = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.Build.0 = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.ActiveCfg = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.Build.0 = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.ActiveCfg = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.Build.0 = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.ActiveCfg = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.Build.0 = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.ActiveCfg = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.Build.0 = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.ActiveCfg = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.Build.0 = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.ActiveCfg = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.Build.0 = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.ActiveCfg = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.Build.0 = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.ActiveCfg = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.Build.0 = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.ActiveCfg = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.Build.0 = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.ActiveCfg = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.Build.0 = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.ActiveCfg = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.Build.0 = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.ActiveCfg = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.Build.0 = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.ActiveCfg = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.Build.0 = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.ActiveCfg = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.Build.0 = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.ActiveCfg = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.Build.0 = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.ActiveCfg = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.Build.0 = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.ActiveCfg = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.Build.0 = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.ActiveCfg = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.Build.0 = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.ActiveCfg = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.Build.0 = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.ActiveCfg = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.Build.0 = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.ActiveCfg = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.Build.0 = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.ActiveCfg = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.Build.0 = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.ActiveCfg = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.Build.0 = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.ActiveCfg = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.Build.0 = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.ActiveCfg = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.Build.0 = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.ActiveCfg = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.Build.0 = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.ActiveCfg = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.Build.0 = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.ActiveCfg = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.Build.0 = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.ActiveCfg = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.Build.0 = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.ActiveCfg = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.Build.0 = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.ActiveCfg = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.Build.0 = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.ActiveCfg = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.Build.0 = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.ActiveCfg = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.Build.0 = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.ActiveCfg = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.Build.0 = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.ActiveCfg = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/tree-9.0.sln b/xsd/dist/examples/cxx/tree/tree-9.0.sln
deleted file mode 100644
index 6bc073e..0000000
--- a/xsd/dist/examples/cxx/tree/tree-9.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-9.0.vcproj", "{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-9.0.vcproj", "{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-9.0.vcproj", "{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-9.0.vcproj", "{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "streaming", "streaming\streaming-9.0.vcproj", "{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-9.0.vcproj", "{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "caching", "caching\caching-9.0.vcproj", "{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-9.0.vcproj", "{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-9.0.vcproj", "{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "messaging", "messaging\messaging-9.0.vcproj", "{F7696252-45B5-438B-B14F-0510137704F0}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.ActiveCfg = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.Build.0 = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.ActiveCfg = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.Build.0 = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.ActiveCfg = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.Build.0 = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.ActiveCfg = Release|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.Build.0 = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.ActiveCfg = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.Build.0 = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.ActiveCfg = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.Build.0 = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.ActiveCfg = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.Build.0 = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.ActiveCfg = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.Build.0 = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.ActiveCfg = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.Build.0 = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.ActiveCfg = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.Build.0 = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.ActiveCfg = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.Build.0 = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.ActiveCfg = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.Build.0 = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.ActiveCfg = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.Build.0 = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.ActiveCfg = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.Build.0 = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.ActiveCfg = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.Build.0 = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.ActiveCfg = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.Build.0 = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.ActiveCfg = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.Build.0 = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.ActiveCfg = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.Build.0 = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.ActiveCfg = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.Build.0 = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.ActiveCfg = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.Build.0 = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.ActiveCfg = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.Build.0 = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.ActiveCfg = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.Build.0 = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.ActiveCfg = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.Build.0 = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.ActiveCfg = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.Build.0 = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.ActiveCfg = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.Build.0 = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.ActiveCfg = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.Build.0 = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.ActiveCfg = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.Build.0 = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.ActiveCfg = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.Build.0 = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.ActiveCfg = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.Build.0 = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.ActiveCfg = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.Build.0 = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.ActiveCfg = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.Build.0 = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.ActiveCfg = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.Build.0 = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.ActiveCfg = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.Build.0 = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.ActiveCfg = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.Build.0 = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.ActiveCfg = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.Build.0 = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.ActiveCfg = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.Build.0 = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.ActiveCfg = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.Build.0 = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.ActiveCfg = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.Build.0 = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.ActiveCfg = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.Build.0 = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.ActiveCfg = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/tree-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/tree-xerces2-7.1.sln
deleted file mode 100644
index f19b237..0000000
--- a/xsd/dist/examples/cxx/tree/tree-xerces2-7.1.sln
+++ /dev/null
@@ -1,93 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-xerces2-7.1.vcproj", "{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-xerces2-7.1.vcproj", "{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-7.1.vcproj", "{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-xerces2-7.1.vcproj", "{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "streaming", "streaming\streaming-xerces2-7.1.vcproj", "{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-7.1.vcproj", "{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "caching", "caching\caching-xerces2-7.1.vcproj", "{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-xerces2-7.1.vcproj", "{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-xerces2-7.1.vcproj", "{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "messaging", "messaging\messaging-xerces2-7.1.vcproj", "{F7696252-45B5-438B-B14F-0510137704F0}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug.ActiveCfg = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug.Build.0 = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release.ActiveCfg = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release.Build.0 = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug.ActiveCfg = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug.Build.0 = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release.ActiveCfg = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release.Build.0 = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug.ActiveCfg = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug.Build.0 = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release.ActiveCfg = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release.Build.0 = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug.ActiveCfg = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug.Build.0 = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release.ActiveCfg = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release.Build.0 = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug.ActiveCfg = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug.Build.0 = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release.ActiveCfg = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release.Build.0 = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug.ActiveCfg = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug.Build.0 = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release.ActiveCfg = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release.Build.0 = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug.ActiveCfg = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug.Build.0 = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release.ActiveCfg = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release.Build.0 = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug.ActiveCfg = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug.Build.0 = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release.ActiveCfg = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release.Build.0 = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug.ActiveCfg = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug.Build.0 = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release.ActiveCfg = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release.Build.0 = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug.ActiveCfg = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug.Build.0 = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release.ActiveCfg = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/tree-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/tree-xerces2-8.0.sln
deleted file mode 100644
index d3fd49b..0000000
--- a/xsd/dist/examples/cxx/tree/tree-xerces2-8.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-xerces2-8.0.vcproj", "{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-xerces2-8.0.vcproj", "{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-8.0.vcproj", "{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-xerces2-8.0.vcproj", "{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "streaming", "streaming\streaming-xerces2-8.0.vcproj", "{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-8.0.vcproj", "{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "caching", "caching\caching-xerces2-8.0.vcproj", "{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-xerces2-8.0.vcproj", "{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-xerces2-8.0.vcproj", "{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "messaging", "messaging\messaging-xerces2-8.0.vcproj", "{F7696252-45B5-438B-B14F-0510137704F0}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.ActiveCfg = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.Build.0 = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.ActiveCfg = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.Build.0 = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.ActiveCfg = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.Build.0 = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.ActiveCfg = Release|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.Build.0 = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.ActiveCfg = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.Build.0 = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.ActiveCfg = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.Build.0 = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.ActiveCfg = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.Build.0 = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.ActiveCfg = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.Build.0 = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.ActiveCfg = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.Build.0 = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.ActiveCfg = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.Build.0 = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.ActiveCfg = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.Build.0 = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.ActiveCfg = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.Build.0 = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.ActiveCfg = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.Build.0 = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.ActiveCfg = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.Build.0 = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.ActiveCfg = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.Build.0 = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.ActiveCfg = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.Build.0 = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.ActiveCfg = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.Build.0 = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.ActiveCfg = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.Build.0 = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.ActiveCfg = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.Build.0 = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.ActiveCfg = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.Build.0 = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.ActiveCfg = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.Build.0 = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.ActiveCfg = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.Build.0 = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.ActiveCfg = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.Build.0 = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.ActiveCfg = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.Build.0 = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.ActiveCfg = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.Build.0 = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.ActiveCfg = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.Build.0 = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.ActiveCfg = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.Build.0 = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.ActiveCfg = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.Build.0 = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.ActiveCfg = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.Build.0 = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.ActiveCfg = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.Build.0 = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.ActiveCfg = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.Build.0 = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.ActiveCfg = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.Build.0 = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.ActiveCfg = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.Build.0 = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.ActiveCfg = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.Build.0 = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.ActiveCfg = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.Build.0 = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.ActiveCfg = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.Build.0 = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.ActiveCfg = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.Build.0 = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.ActiveCfg = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.Build.0 = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.ActiveCfg = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.Build.0 = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.ActiveCfg = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/tree-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/tree-xerces2-9.0.sln
deleted file mode 100644
index ed9bace..0000000
--- a/xsd/dist/examples/cxx/tree/tree-xerces2-9.0.sln
+++ /dev/null
@@ -1,115 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello\hello-xerces2-9.0.vcproj", "{538CCAB6-984B-4602-B0D0-985E8FD4FEB9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "library", "library\library-xerces2-9.0.vcproj", "{D661AD5B-5FF4-4AFD-A656-429BA348E9EF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mixed", "mixed\mixed-xerces2-9.0.vcproj", "{6EF7868E-AA58-4615-9C1A-06B010CB4209}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polymorphism", "polymorphism\polymorphism-xerces2-9.0.vcproj", "{03224289-FD3C-4A58-A6D7-E8D658B0E45A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "streaming", "streaming\streaming-xerces2-9.0.vcproj", "{3950B11C-AEB1-4E9C-BCB3-2E7133818C79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wildcard", "wildcard\wildcard-xerces2-9.0.vcproj", "{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "caching", "caching\caching-xerces2-9.0.vcproj", "{932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multiroot", "multiroot\multiroot-xerces2-9.0.vcproj", "{1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "performance", "performance\performance-xerces2-9.0.vcproj", "{C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "messaging", "messaging\messaging-xerces2-9.0.vcproj", "{F7696252-45B5-438B-B14F-0510137704F0}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.ActiveCfg = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|Win32.Build.0 = Debug|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.ActiveCfg = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Debug|x64.Build.0 = Debug|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.ActiveCfg = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|Win32.Build.0 = Release|Win32
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.ActiveCfg = Release|x64
- {538CCAB6-984B-4602-B0D0-985E8FD4FEB9}.Release|x64.Build.0 = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.ActiveCfg = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|Win32.Build.0 = Debug|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.ActiveCfg = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Debug|x64.Build.0 = Debug|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.ActiveCfg = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|Win32.Build.0 = Release|Win32
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.ActiveCfg = Release|x64
- {D661AD5B-5FF4-4AFD-A656-429BA348E9EF}.Release|x64.Build.0 = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.ActiveCfg = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|Win32.Build.0 = Debug|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.ActiveCfg = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Debug|x64.Build.0 = Debug|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.ActiveCfg = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|Win32.Build.0 = Release|Win32
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.ActiveCfg = Release|x64
- {6EF7868E-AA58-4615-9C1A-06B010CB4209}.Release|x64.Build.0 = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.ActiveCfg = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|Win32.Build.0 = Debug|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.ActiveCfg = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Debug|x64.Build.0 = Debug|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.ActiveCfg = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|Win32.Build.0 = Release|Win32
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.ActiveCfg = Release|x64
- {03224289-FD3C-4A58-A6D7-E8D658B0E45A}.Release|x64.Build.0 = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.ActiveCfg = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|Win32.Build.0 = Debug|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.ActiveCfg = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Debug|x64.Build.0 = Debug|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.ActiveCfg = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|Win32.Build.0 = Release|Win32
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.ActiveCfg = Release|x64
- {3950B11C-AEB1-4E9C-BCB3-2E7133818C79}.Release|x64.Build.0 = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.ActiveCfg = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|Win32.Build.0 = Debug|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.ActiveCfg = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Debug|x64.Build.0 = Debug|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.ActiveCfg = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|Win32.Build.0 = Release|Win32
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.ActiveCfg = Release|x64
- {13C21A83-CC75-459E-9B01-E9EC36D1524B}.Release|x64.Build.0 = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.ActiveCfg = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|Win32.Build.0 = Debug|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.ActiveCfg = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Debug|x64.Build.0 = Debug|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.ActiveCfg = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|Win32.Build.0 = Release|Win32
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.ActiveCfg = Release|x64
- {932D8CD0-4E11-4C3A-9084-4D30DE75C2B7}.Release|x64.Build.0 = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.ActiveCfg = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|Win32.Build.0 = Debug|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.ActiveCfg = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Debug|x64.Build.0 = Debug|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.ActiveCfg = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|Win32.Build.0 = Release|Win32
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.ActiveCfg = Release|x64
- {1CFBC9C5-5F9C-4B60-A2A3-0A79BCDD2670}.Release|x64.Build.0 = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.ActiveCfg = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|Win32.Build.0 = Debug|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.ActiveCfg = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Debug|x64.Build.0 = Debug|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.ActiveCfg = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|Win32.Build.0 = Release|Win32
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.ActiveCfg = Release|x64
- {C60700D1-DB4B-4EFF-8EE9-97BD716BCB89}.Release|x64.Build.0 = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.ActiveCfg = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|Win32.Build.0 = Debug|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.ActiveCfg = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Debug|x64.Build.0 = Debug|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.ActiveCfg = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|Win32.Build.0 = Release|Win32
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.ActiveCfg = Release|x64
- {F7696252-45B5-438B-B14F-0510137704F0}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-7.1.vcproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-7.1.vcproj
deleted file mode 100644
index 431b94e..0000000
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-7.1.vcproj
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="wildcard"
- ProjectGUID="{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
- RootNamespace="wildcard"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C8C63C87-F9B5-4EDF-B4BF-2701982EFCE6}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\email.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E8933542-EAF8-45F5-94AE-AE8D55E47565}">
- <File
- RelativePath=".\email.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\email.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\email.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-10.0.vcxproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc10.vcxproj
index a2e7d28..6d5b02e 100644
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc10.vcxproj.filters
index 541b946..541b946 100644
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj
new file mode 100644
index 0000000..8043842
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj
@@ -0,0 +1,210 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>wildcard</ProjectName>
+ <ProjectGuid>{13C21A83-CC75-459E-9B01-E9EC36D1524B}</ProjectGuid>
+ <RootNamespace>wildcard</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="email.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="email.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj.filters
new file mode 100644
index 0000000..541b946
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc11.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{C8C63C87-F9B5-4EDF-B4BF-2701982EFCE6}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{E8933542-EAF8-45F5-94AE-AE8D55E47565}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{79291748-08c5-4298-a090-a210ea0e7161}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{e83a7a6b-3537-4eea-bf81-494a6fcee412}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="email.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="email.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj
new file mode 100644
index 0000000..e324659
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj
@@ -0,0 +1,214 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>wildcard</ProjectName>
+ <ProjectGuid>{13C21A83-CC75-459E-9B01-E9EC36D1524B}</ProjectGuid>
+ <RootNamespace>wildcard</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="email.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="email.ixx" />
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd email.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">email.hxx;email.ixx;email.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj.filters
new file mode 100644
index 0000000..541b946
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc12.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{C8C63C87-F9B5-4EDF-B4BF-2701982EFCE6}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{E8933542-EAF8-45F5-94AE-AE8D55E47565}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Inline Files">
+ <UniqueIdentifier>{79291748-08c5-4298-a090-a210ea0e7161}</UniqueIdentifier>
+ <Extensions>ixx</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{e83a7a6b-3537-4eea-bf81-494a6fcee412}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="email.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="email.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="email.ixx">
+ <Filter>Inline Files</Filter>
+ </None>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="email.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-8.0.vcproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc8.vcproj
index 4f61b88..046230a 100644
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-9.0.vcproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc9.vcproj
index 0cbc382..08c2b1d 100644
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/wildcard/wildcard-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-7.1.vcproj
deleted file mode 100644
index f26ea1b..0000000
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="wildcard"
- ProjectGUID="{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
- RootNamespace="wildcard"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C8C63C87-F9B5-4EDF-B4BF-2701982EFCE6}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\email.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E8933542-EAF8-45F5-94AE-AE8D55E47565}">
- <File
- RelativePath=".\email.hxx">
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx">
- <File
- RelativePath=".\email.ixx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\email.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-8.0.vcproj
deleted file mode 100644
index d6f5487..0000000
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,432 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="wildcard"
- ProjectGUID="{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
- RootNamespace="wildcard"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C8C63C87-F9B5-4EDF-B4BF-2701982EFCE6}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\email.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E8933542-EAF8-45F5-94AE-AE8D55E47565}"
- >
- <File
- RelativePath=".\email.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\email.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\email.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --generate-intellisense --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-9.0.vcproj
deleted file mode 100644
index 312731a..0000000
--- a/xsd/dist/examples/cxx/tree/wildcard/wildcard-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,429 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="wildcard"
- ProjectGUID="{13C21A83-CC75-459E-9B01-E9EC36D1524B}"
- RootNamespace="wildcard"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{C8C63C87-F9B5-4EDF-B4BF-2701982EFCE6}"
- >
- <File
- RelativePath=".\driver.cxx"
- >
- </File>
- <File
- RelativePath=".\email.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{E8933542-EAF8-45F5-94AE-AE8D55E47565}"
- >
- <File
- RelativePath=".\email.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Inline Files"
- Filter="ixx"
- >
- <File
- RelativePath=".\email.ixx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\email.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd email.xsd"
- CommandLine="xsd cxx-tree --generate-inline --generate-serialization --generate-wildcard --root-element message email.xsd"
- Outputs="email.hxx;email.ixx;email.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-10.0.sln b/xsd/dist/examples/cxx/tree/xpath/xpath-10.0.sln
deleted file mode 100644
index 0776baf..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-10.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xpath", "xpath-10.0.vcxproj", "{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.ActiveCfg = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.Build.0 = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.ActiveCfg = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.Build.0 = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.ActiveCfg = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.Build.0 = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.ActiveCfg = Release|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-7.1.sln b/xsd/dist/examples/cxx/tree/xpath/xpath-7.1.sln
deleted file mode 100644
index 905aaf9..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xpath", "xpath-7.1.vcproj", "{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug.ActiveCfg = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug.Build.0 = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release.ActiveCfg = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-7.1.vcproj b/xsd/dist/examples/cxx/tree/xpath/xpath-7.1.vcproj
deleted file mode 100644
index bd070b6..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="xpath"
- ProjectGUID="{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
- RootNamespace="xpath"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3D.lib xqilla22d.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_3.lib xqilla22.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0A690AC0-4B5A-4FCA-B2CC-A61C00F01283}">
- <File
- RelativePath=".\driver.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- <File
- RelativePath=".\people.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{19387534-A72F-4C3F-A9FB-F5B8909AEB29}">
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- <File
- RelativePath=".\people.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-8.0.sln b/xsd/dist/examples/cxx/tree/xpath/xpath-8.0.sln
deleted file mode 100644
index db1eeea..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xpath", "xpath-8.0.vcproj", "{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.ActiveCfg = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.Build.0 = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.ActiveCfg = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.Build.0 = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.ActiveCfg = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.Build.0 = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.ActiveCfg = Release|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-9.0.sln b/xsd/dist/examples/cxx/tree/xpath/xpath-9.0.sln
deleted file mode 100644
index c568474..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xpath", "xpath-9.0.vcproj", "{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.ActiveCfg = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.Build.0 = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.ActiveCfg = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.Build.0 = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.ActiveCfg = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.Build.0 = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.ActiveCfg = Release|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-10.0.vcxproj b/xsd/dist/examples/cxx/tree/xpath/xpath-vc10.vcxproj
index f776b11..60ef726 100644
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-10.0.vcxproj
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc10.vcxproj
@@ -81,12 +81,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;xqilla22d.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -109,12 +108,11 @@
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3D.lib;xqilla22d.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -131,12 +129,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;xqilla22.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -157,12 +154,11 @@
</Midl>
<ClCompile>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeTypeInfo>true</RuntimeTypeInfo>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>xerces-c_3.lib;xqilla22.lib;%(AdditionalDependencies)</AdditionalDependencies>
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-10.0.vcxproj.filters b/xsd/dist/examples/cxx/tree/xpath/xpath-vc10.vcxproj.filters
index d038587..d038587 100644
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-10.0.vcxproj.filters
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc10.vcxproj.filters
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj b/xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj
new file mode 100644
index 0000000..b758594
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>xpath</ProjectName>
+ <ProjectGuid>{EC26ACF9-0103-48D2-B7BA-0222C2175B28}</ProjectGuid>
+ <RootNamespace>xpath</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;xqilla22d.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;xqilla22d.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;xqilla22.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;xqilla22.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="people.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj.filters b/xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj.filters
new file mode 100644
index 0000000..d038587
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc11.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{0A690AC0-4B5A-4FCA-B2CC-A61C00F01283}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{19387534-A72F-4C3F-A9FB-F5B8909AEB29}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{807745b4-2087-4ccb-8fdc-8160206a3042}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj b/xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj
new file mode 100644
index 0000000..ff81b9e
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectName>xpath</ProjectName>
+ <ProjectGuid>{EC26ACF9-0103-48D2-B7BA-0222C2175B28}</ProjectGuid>
+ <RootNamespace>xpath</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">driver</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">driver</TargetName>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;xqilla22d.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3D.lib;xqilla22d.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)driver.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;xqilla22.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Midl>
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <RuntimeTypeInfo>true</RuntimeTypeInfo>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>xerces-c_3.lib;xqilla22.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(TargetPath)</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx" />
+ <ClCompile Include="driver.cxx" />
+ <ClCompile Include="people.cxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx" />
+ <ClInclude Include="people.hxx" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd people.xsd</Message>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">xsd cxx-tree people.xsd</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">people.hxx;people.cxx;%(Outputs)</Outputs>
+ </CustomBuild>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj.filters b/xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj.filters
new file mode 100644
index 0000000..d038587
--- /dev/null
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc12.vcxproj.filters
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{0A690AC0-4B5A-4FCA-B2CC-A61C00F01283}</UniqueIdentifier>
+ <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{19387534-A72F-4C3F-A9FB-F5B8909AEB29}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Schema Files">
+ <UniqueIdentifier>{807745b4-2087-4ccb-8fdc-8160206a3042}</UniqueIdentifier>
+ <Extensions>xsd</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dom-parse.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="driver.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="people.cxx">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dom-parse.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="people.hxx">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Readme.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <CustomBuild Include="people.xsd">
+ <Filter>Schema Files</Filter>
+ </CustomBuild>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-8.0.vcproj b/xsd/dist/examples/cxx/tree/xpath/xpath-vc8.vcproj
index 29377fb..3900265 100644
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-8.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc8.vcproj
@@ -47,7 +47,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -124,7 +124,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -206,7 +206,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -284,7 +284,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-9.0.vcproj b/xsd/dist/examples/cxx/tree/xpath/xpath-vc9.vcproj
index 89d3d0f..b21a65e 100644
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-9.0.vcproj
+++ b/xsd/dist/examples/cxx/tree/xpath/xpath-vc9.vcproj
@@ -48,7 +48,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -128,7 +128,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ RuntimeLibrary="3"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -204,7 +204,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -282,7 +282,7 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
+ RuntimeLibrary="2"
RuntimeTypeInfo="true"
UsePrecompiledHeader="0"
WarningLevel="3"
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.sln b/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.sln
deleted file mode 100644
index 7b6985c..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xpath", "xpath-xerces2-7.1.vcproj", "{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
- ProjectSection(ProjectDependencies) = postProject
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- Debug = Debug
- Release = Release
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug.ActiveCfg = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug.Build.0 = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release.ActiveCfg = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.vcproj b/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.vcproj
deleted file mode 100644
index 9aebc49..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-7.1.vcproj
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.10"
- Name="xpath"
- ProjectGUID="{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
- RootNamespace="xpath"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="5"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="4"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib xqilla21d.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
- RuntimeTypeInfo="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="TRUE"
- DebugInformationFormat="3"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib xqilla21.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCXMLDataGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- <Tool
- Name="VCManagedWrapperGeneratorTool"/>
- <Tool
- Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0A690AC0-4B5A-4FCA-B2CC-A61C00F01283}">
- <File
- RelativePath=".\driver-2.cxx">
- </File>
- <File
- RelativePath=".\dom-parse.cxx">
- </File>
- <File
- RelativePath=".\people.cxx">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{19387534-A72F-4C3F-A9FB-F5B8909AEB29}">
- <File
- RelativePath=".\dom-parse.hxx">
- </File>
- <File
- RelativePath=".\people.hxx">
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd">
- <File
- RelativePath=".\people.xsd">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"/>
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt">
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.sln b/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.sln
deleted file mode 100644
index f759a95..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xpath", "xpath-xerces2-8.0.vcproj", "{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.ActiveCfg = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.Build.0 = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.ActiveCfg = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.Build.0 = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.ActiveCfg = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.Build.0 = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.ActiveCfg = Release|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.vcproj b/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.vcproj
deleted file mode 100644
index d79f2aa..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-8.0.vcproj
+++ /dev/null
@@ -1,431 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="xpath"
- ProjectGUID="{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
- RootNamespace="xpath"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib xqilla21d.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib xqilla21.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib xqilla21d.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib xqilla21.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0A690AC0-4B5A-4FCA-B2CC-A61C00F01283}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\driver-2.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{19387534-A72F-4C3F-A9FB-F5B8909AEB29}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree --generate-intellisense people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.sln b/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.sln
deleted file mode 100644
index 97e2209..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xpath", "xpath-xerces2-9.0.vcproj", "{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.ActiveCfg = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|Win32.Build.0 = Debug|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.ActiveCfg = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Debug|x64.Build.0 = Debug|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.ActiveCfg = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|Win32.Build.0 = Release|Win32
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.ActiveCfg = Release|x64
- {EC26ACF9-0103-48D2-B7BA-0222C2175B28}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.vcproj b/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.vcproj
deleted file mode 100644
index 8f3938e..0000000
--- a/xsd/dist/examples/cxx/tree/xpath/xpath-xerces2-9.0.vcproj
+++ /dev/null
@@ -1,428 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="xpath"
- ProjectGUID="{EC26ACF9-0103-48D2-B7BA-0222C2175B28}"
- RootNamespace="xpath"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib xqilla21d.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2D.lib xqilla21d.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="2"
- GenerateDebugInformation="true"
- ProgramDatabaseFile="$(OutDir)/driver.pdb"
- SubSystem="1"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib xqilla21.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
- ConfigurationType="1"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="0"
- RuntimeTypeInfo="true"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="xerces-c_2.lib xqilla21.lib"
- OutputFile="$(OutDir)/driver.exe"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{0A690AC0-4B5A-4FCA-B2CC-A61C00F01283}"
- >
- <File
- RelativePath=".\dom-parse.cxx"
- >
- </File>
- <File
- RelativePath=".\driver-2.cxx"
- >
- </File>
- <File
- RelativePath=".\people.cxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{19387534-A72F-4C3F-A9FB-F5B8909AEB29}"
- >
- <File
- RelativePath=".\dom-parse.hxx"
- >
- </File>
- <File
- RelativePath=".\people.hxx"
- >
- </File>
- </Filter>
- <Filter
- Name="Schema Files"
- Filter="xsd"
- >
- <File
- RelativePath=".\people.xsd"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- >
- <Tool
- Name="VCCustomBuildTool"
- Description="xsd people.xsd"
- CommandLine="xsd cxx-tree people.xsd"
- Outputs="people.hxx;people.cxx"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <File
- RelativePath=".\Readme.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/xsd/dist/examples/test.bat b/xsd/dist/examples/test.bat
new file mode 100644
index 0000000..97b0b88
--- /dev/null
+++ b/xsd/dist/examples/test.bat
@@ -0,0 +1,74 @@
+@echo off
+rem file : examples/test.bat
+rem copyright : Copyright (c) 2013-2014 Code Synthesis Tools CC
+rem license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+setlocal
+
+set "tests=__path__(dirs)"
+set "confs=__path__(configurations)"
+set "plats=__path__(platforms)"
+set "curdir=%CD%"
+set "topdir=%curdir%\..\.."
+set "failed="
+
+goto start
+
+rem
+rem %1 - test directory
+rem %2 - configuration
+rem %3 - platform
+rem
+:run_test
+ cd %1
+
+ if "_%3_" == "_Win32_" (
+ set "dir=%2"
+ ) else (
+ set "dir=%3\%2"
+ )
+
+ if exist %dir%\driver.exe (
+ echo %1\%3\%2
+ call %topdir%\tester.bat %2 %3
+ if errorlevel 1 (
+ set "failed=%failed% %1\%3\%2"
+ )
+ )
+
+ cd %curdir%
+goto :eof
+
+:start
+
+for %%t in (%tests%) do (
+ for %%c in (%confs%) do (
+ for %%p in (%plats%) do (
+ call :run_test %%t %%c %%p
+ )
+ )
+)
+
+if not "_%failed%_" == "__" goto error
+
+echo.
+echo ALL EXAMPLES PASSED
+echo.
+goto end
+
+:usage
+echo.
+echo usage: test.bat
+echo.
+
+:error
+if not "_%failed%_" == "__" (
+ echo.
+ for %%t in (%failed%) do echo FAILED: %%t
+ echo.
+)
+endlocal
+exit /b 1
+
+:end
+endlocal
diff --git a/xsd/dist/examples/tester.bat b/xsd/dist/examples/tester.bat
new file mode 100644
index 0000000..ae6f683
--- /dev/null
+++ b/xsd/dist/examples/tester.bat
@@ -0,0 +1,47 @@
+@echo off
+rem file : examples/tester.bat
+rem copyright : Copyright (c) 2013-2014 Code Synthesis Tools CC
+rem license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+rem
+rem Run example. The example directory is the current directory.
+rem
+rem %1 configuration, for example, Debug or Release
+rem %2 platform, for example Win32 or x64
+rem
+
+setlocal
+
+if "_%DIFF%_" == "__" set DIFF=fc
+
+if "_%2_" == "_Win32_" (
+ set "dir=%1"
+) else (
+ set "dir=%2\%1"
+)
+
+rem Globbing returns files in alphabetic order. We also need to cover
+rem compressed XML files (.xml.gz).
+rem
+if exist *.xml* (
+ for %%f in (*.xml*) do (
+ if NOT "%%f" == "out.xml" (
+ if NOT "%%f" == "out.xml.gz" (
+ %dir%\driver.exe %%f
+ if errorlevel 1 goto error
+ )
+ )
+ )
+) else (
+ %dir%\driver.exe
+ if errorlevel 1 goto error
+)
+
+goto end
+
+:error
+endlocal
+exit /b 1
+
+:end
+endlocal
diff --git a/xsd/dist/template-vc10.sln b/xsd/dist/template-vc10.sln
new file mode 100644
index 0000000..9a5dc32
--- /dev/null
+++ b/xsd/dist/template-vc10.sln
@@ -0,0 +1,15 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+__projects__
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+__solution_configurations__
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+__project_configurations__
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/xsd/dist/template-vc11.sln b/xsd/dist/template-vc11.sln
new file mode 100644
index 0000000..436eeea
--- /dev/null
+++ b/xsd/dist/template-vc11.sln
@@ -0,0 +1,15 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2012
+__projects__
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+__solution_configurations__
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+__project_configurations__
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/xsd/dist/template-vc12.sln b/xsd/dist/template-vc12.sln
new file mode 100644
index 0000000..446d701
--- /dev/null
+++ b/xsd/dist/template-vc12.sln
@@ -0,0 +1,17 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2013
+VisualStudioVersion = 12.0.21005.1
+MinimumVisualStudioVersion = 10.0.40219.1
+__projects__
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+__solution_configurations__
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+__project_configurations__
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/xsd/dist/template-vc8.sln b/xsd/dist/template-vc8.sln
new file mode 100644
index 0000000..f38bad2
--- /dev/null
+++ b/xsd/dist/template-vc8.sln
@@ -0,0 +1,15 @@
+
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+__projects__
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+__solution_configurations__
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+__project_configurations__
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/xsd/dist/template-vc9.sln b/xsd/dist/template-vc9.sln
new file mode 100644
index 0000000..2ec9432
--- /dev/null
+++ b/xsd/dist/template-vc9.sln
@@ -0,0 +1,15 @@
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+__projects__
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+__solution_configurations__
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+__project_configurations__
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/xsd/documentation/custom-literals.xsd b/xsd/doc/custom-literals.xsd
index ab2d649..c6f7613 100644
--- a/xsd/documentation/custom-literals.xsd
+++ b/xsd/doc/custom-literals.xsd
@@ -2,8 +2,7 @@
<!--
-file : documentation/custom-literals.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
+file : doc/custom-literals.xsd
copyright : not copyrighted - public domain
This schema describes the XML format used to provide the custom string
diff --git a/xsd/documentation/cxx/makefile b/xsd/doc/cxx/makefile
index e039e23..0369b66 100644
--- a/xsd/documentation/cxx/makefile
+++ b/xsd/doc/cxx/makefile
@@ -1,6 +1,5 @@
-# file : documentation/cxx/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# file : doc/cxx/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../build/bootstrap.make
@@ -11,12 +10,12 @@ default := $(out_base)/
install := $(out_base)/.install
dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
-cleandoc := $(out_base)/.cleandoc
+clean := $(out_base)/.clean
$(default): $(addprefix $(out_base)/,$(addsuffix /,$(docs)))
$(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(docs)))
$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(docs)))
$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(docs)))
-$(cleandoc): $(addprefix $(out_base)/,$(addsuffix /.cleandoc,$(docs)))
+$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(docs)))
$(foreach m,$(docs),$(call import,$(src_base)/$m/makefile))
diff --git a/xsd/doc/cxx/parser/guide/cxx-parser-guide.pdf b/xsd/doc/cxx/parser/guide/cxx-parser-guide.pdf
new file mode 100644
index 0000000..f031009
--- /dev/null
+++ b/xsd/doc/cxx/parser/guide/cxx-parser-guide.pdf
Binary files differ
diff --git a/xsd/documentation/cxx/parser/guide/cxx-parser-guide.ps b/xsd/doc/cxx/parser/guide/cxx-parser-guide.ps
index 0dcd6d7..c3f171c 100644
--- a/xsd/documentation/cxx/parser/guide/cxx-parser-guide.ps
+++ b/xsd/doc/cxx/parser/guide/cxx-parser-guide.ps
@@ -1,6 +1,6 @@
%!PS
%%Title: C++/Parser Mapping Getting Started Guide
-%%Creator: html2ps version 1.0 beta5
+%%Creator: html2ps version 1.0 beta7
%%EndComments
save
2000 dict begin
@@ -37,7 +37,7 @@ save
/EU [-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0] D
/NO f D
/YY [[{()}{ h }][{ h }{()}][{()}{()}]] D
-/ZZ [[{ (January 2010) }{ Pn }][{ Pn }{ (January 2010) }][{ Ti }{ Ti }]] D
+/ZZ [[{ (July 2014) }{ Pn }][{ Pn }{ (July 2014) }][{ Ti }{ Ti }]] D
/Ts EZ 0 get D
/TU f D
/Xp t D
@@ -104,7 +104,7 @@ save
) 0 1 -1 H ( ) EH (
) 0 1 -1 H ( ) EH (
) Ea()BR (
- ) 0 P (Copyright © 2005-2010 CODE SYNTHESIS TOOLS CC) EP (
+ ) 0 P (Copyright © 2005-2014 CODE SYNTHESIS TOOLS CC) EP (
) 0 P (Permission is granted to copy, distribute and/or modify this
document under the terms of the
@@ -16422,15 +16422,15 @@ c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8
c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c5ddf8c7def8dceafb
f8fbfe
-[/Creator (html2ps version 1.0 beta5) /Author () /Keywords (xsd, xml, schema, c++, mapping, data, binding, parser, validation) /Subject ()
+[/Creator (html2ps version 1.0 beta7) /Author () /Keywords (xsd, xml, schema, c++, mapping, data, binding, parser, validation) /Subject ()
/Title (C++/Parser Mapping Getting Started Guide) /DOCINFO pdfmark
/ND 1 D
/HN [(1) (1) (1) (1) (1) (1) (1) (1) (2) (3) (3) (4) (6) (8) (8) (9) (12) (13)
-(14) (18) (18) (21) (24) (27) (27) (28) (28) (28) (35) (??) (37) (38) (39)
-(40) (41) (42) (43) (45) (45) (46) (47) (47) (48) (49) (49) (55) (58) (63)
-(??) (1) (1) (1) (1) (1) (2) (3) (3) (4) (6) (8) (8) (9) (12) (13) (14)
-(18) (18) (21) (24) (27) (27) (28) (28) (28) (35) (37) (38) (39) (40) (41)
-(42) (43) (45) (45) (46) (47) (47) (48) (49) (49) (55) (58) (63)] D
+(14) (18) (18) (21) (24) (27) (27) (28) (28) (28) (29) (35) (??) (38) (39)
+(39) (41) (42) (43) (44) (45) (46) (47) (47) (48) (49) (50) (50) (55) (59)
+(63) (??) (1) (1) (1) (1) (1) (2) (3) (3) (4) (6) (8) (8) (9) (12) (13)
+(14) (18) (18) (21) (24) (27) (27) (28) (28) (28) (29) (35) (38) (39) (39)
+(41) (42) (43) (44) (45) (46) (47) (47) (48) (49) (50) (50) (55) (59) (63)] D
/h0 [()(Table of Contents)] D
/h1 [(1\240\240)(Preface)] D
/h2 [(1.1\240\240)(About This Document)] D
@@ -16453,35 +16453,36 @@ f8fbfe
/h19 [(5.2\240\240)(4.2 Type Map File Format)] D
/h20 [(5.3\240\240)(4.3 Parser Implementations)] D
/h21 [(6\240\240)(5 Mapping Configuration)] D
-/h22 [(6.1\240\240)(5.1 Character Type and Encoding)] D
-/h23 [(6.2\240\240)(5.2 Underlying XML Parser)] D
-/h24 [(6.3\240\240)(5.3 XML Schema Validation)] D
-/h25 [(6.4\240\240)(5.4 Support for Polymorphism)] D
-/h26 [(7\240\240)(6 Built-In XML Schema Type Parsers)] D
-/h27 [(7.1\240\240)(6.1 QName Parser)] D
-/h28 [(7.2\240\240)(6.2 NMTOKENS and IDREFS Parsers)] D
-/h29 [(7.3\240\240)(6.3 base64Binary and hexBinary Parsers)] D
-/h30 [(7.4\240\240)(6.4 Time Zone Representation)] D
-/h31 [(7.5\240\240)(6.5 date Parser)] D
-/h32 [(7.6\240\240)(6.6 dateTime Parser)] D
-/h33 [(7.7\240\240)(6.7 duration Parser)] D
-/h34 [(7.8\240\240)(6.8 gDay Parser)] D
-/h35 [(7.9\240\240)(6.9 gMonth Parser)] D
-/h36 [(7.10\240\240)(6.10 gMonthDay Parser)] D
-/h37 [(7.11\240\240)(6.11 gYear Parser)] D
-/h38 [(7.12\240\240)(6.12 gYearMonth Parser)] D
-/h39 [(7.13\240\240)(6.13 time Parser)] D
-/h40 [(8\240\240)(7 Document Parser and Error Handling)] D
-/h41 [(8.1\240\240)(7.1 Xerces-C++ Document Parser)] D
-/h42 [(8.2\240\240)(7.2 Expat Document Parser)] D
-/h43 [(8.3\240\240)(7.3 Error Handling)] D
-/h44 [(9\240\240)(Appendix A \236 Supported XML Schema Constructs)] D
-/Hr [49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
-71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92]D
-/HV [1 2 2 1 2 2 1 2 2 2 2 1 2 2 2 2 1 2 2 2 1 2 2 2 2 1 2 2 2 2 2 2 2
-2 2 2 2 2 2 1 2 2 2 1]D
-/Cn [2 0 0 2 0 0 4 0 0 0 0 4 0 0 0 0 3 0 0 0 4 0 0 0 0 13 0 0 0 0 0 0 0
-0 0 0 0 0 0 3 0 0 0 0]D
+/h22 [(6.1\240\240)(5.1 C++ Standard)] D
+/h23 [(6.2\240\240)(5.2 Character Type and Encoding)] D
+/h24 [(6.3\240\240)(5.3 Underlying XML Parser)] D
+/h25 [(6.4\240\240)(5.4 XML Schema Validation)] D
+/h26 [(6.5\240\240)(5.5 Support for Polymorphism)] D
+/h27 [(7\240\240)(6 Built-In XML Schema Type Parsers)] D
+/h28 [(7.1\240\240)(6.1 QName Parser)] D
+/h29 [(7.2\240\240)(6.2 NMTOKENS and IDREFS Parsers)] D
+/h30 [(7.3\240\240)(6.3 base64Binary and hexBinary Parsers)] D
+/h31 [(7.4\240\240)(6.4 Time Zone Representation)] D
+/h32 [(7.5\240\240)(6.5 date Parser)] D
+/h33 [(7.6\240\240)(6.6 dateTime Parser)] D
+/h34 [(7.7\240\240)(6.7 duration Parser)] D
+/h35 [(7.8\240\240)(6.8 gDay Parser)] D
+/h36 [(7.9\240\240)(6.9 gMonth Parser)] D
+/h37 [(7.10\240\240)(6.10 gMonthDay Parser)] D
+/h38 [(7.11\240\240)(6.11 gYear Parser)] D
+/h39 [(7.12\240\240)(6.12 gYearMonth Parser)] D
+/h40 [(7.13\240\240)(6.13 time Parser)] D
+/h41 [(8\240\240)(7 Document Parser and Error Handling)] D
+/h42 [(8.1\240\240)(7.1 Xerces-C++ Document Parser)] D
+/h43 [(8.2\240\240)(7.2 Expat Document Parser)] D
+/h44 [(8.3\240\240)(7.3 Error Handling)] D
+/h45 [(9\240\240)(Appendix A \236 Supported XML Schema Constructs)] D
+/Hr [50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
+72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94]D
+/HV [1 2 2 1 2 2 1 2 2 2 2 1 2 2 2 2 1 2 2 2 1 2 2 2 2 2 1 2 2 2 2 2 2
+2 2 2 2 2 2 2 1 2 2 2 1]D
+/Cn [2 0 0 2 0 0 4 0 0 0 0 4 0 0 0 0 3 0 0 0 5 0 0 0 0 0 13 0 0 0 0 0 0
+0 0 0 0 0 0 0 3 0 0 0 0]D
Hr length 0 gt{[/PageMode /UseOutlines /DOCVIEW pdfmark}if
/Hn 1 D
0 1 Hr length 1 sub{
@@ -17038,8 +17039,8 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(QName)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(qname_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::qname)ES()BR()0 30 1 A(Section 6.1,
- ")SM(QName)ES( Parser")30 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::qname)ES()BR()0 31 1 A(Section 6.1,
+ ")SM(QName)ES( Parser")31 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB(ID/IDREF types
@@ -17064,14 +17065,14 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(NMTO)HY(KENS)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(nmto)HY(kens)YH(_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::string_sequence)ES()BR()0 31 1 A(Section
- 6.2, ")SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers")31 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::string_sequence)ES()BR()0 32 1 A(Section
+ 6.2, ")SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers")32 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(IDREFS)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(idrefs_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::string_sequence)ES()BR()0 31 1 A(Section
- 6.2, ")SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers")31 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::string_sequence)ES()BR()0 32 1 A(Section
+ 6.2, ")SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers")32 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB(URI types
@@ -17091,14 +17092,14 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(base64Binary)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(base64_binary_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(std::auto_ptr<xml_schema::buffer>)ES()BR( )0 32 1 A(Section 6.3, ")SM(base64Binary)ES( and
- )SM(hexBi)HY(nary)YH()ES( Parsers")32 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(std::[auto|unique]_ptr< xml_schema::buffer>)ES()BR( )0 33 1 A(Section 6.3, ")SM(base64Binary)ES( and
+ )SM(hexBi)HY(nary)YH()ES( Parsers")33 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(hexBi)HY(nary)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(hex_binary_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(std::auto_ptr<xml_schema::buffer>)ES()BR( )0 32 1 A(Section 6.3, ")SM(base64Binary)ES( and
- )SM(hexBi)HY(nary)YH()ES( Parsers")32 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(std::[auto|unique]_ptr< xml_schema::buffer>)ES()BR( )0 33 1 A(Section 6.3, ")SM(base64Binary)ES( and
+ )SM(hexBi)HY(nary)YH()ES( Parsers")33 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB(date/time types
@@ -17108,56 +17109,56 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(date)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(date_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::date)ES()BR()0 34 1 A(Section 6.5,
- ")SM(date)ES( Parser")34 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::date)ES()BR()0 35 1 A(Section 6.5,
+ ")SM(date)ES( Parser")35 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(date)HY(Time)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(date_time_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::date_time)ES()BR()0 35 1 A(Section 6.6,
- ")SM(date)HY(Time)YH()ES( Parser")35 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::date_time)ES()BR()0 36 1 A(Section 6.6,
+ ")SM(date)HY(Time)YH()ES( Parser")36 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(dura)HY(tion)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(dura)HY(tion)YH(_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::dura)HY(tion)YH()ES()BR()0 36 1 A(Section 6.7,
- ")SM(dura)HY(tion)YH()ES( Parser")36 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::dura)HY(tion)YH()ES()BR()0 37 1 A(Section 6.7,
+ ")SM(dura)HY(tion)YH()ES( Parser")37 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gDay)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gday_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::gday)ES()BR()0 37 1 A(Section 6.8,
- ")SM(gDay)ES( Parser")37 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::gday)ES()BR()0 38 1 A(Section 6.8,
+ ")SM(gDay)ES( Parser")38 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gMonth)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gmonth_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::gmonth)ES()BR()0 38 1 A(Section 6.9,
- ")SM(gMonth)ES( Parser")38 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::gmonth)ES()BR()0 39 1 A(Section 6.9,
+ ")SM(gMonth)ES( Parser")39 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gMon)HY(th)HY(Day)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gmonth_day_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::gmonth_day)ES()BR()0 39 1 A(Section 6.10,
- ")SM(gMon)HY(th)HY(Day)YH()ES( Parser")39 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::gmonth_day)ES()BR()0 40 1 A(Section 6.10,
+ ")SM(gMon)HY(th)HY(Day)YH()ES( Parser")40 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gYear)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gyear_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::gyear)ES()BR()0 40 1 A(Section 6.11,
- ")SM(gYear)ES( Parser")40 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::gyear)ES()BR()0 41 1 A(Section 6.11,
+ ")SM(gYear)ES( Parser")41 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gYear)HY(Month)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gyear_month_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::gyear_month)ES()BR()0 41 1 A(Section
- 6.12, ")SM(gYear)HY(Month)YH()ES( Parser")41 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::gyear_month)ES()BR()0 42 1 A(Section
+ 6.12, ")SM(gYear)HY(Month)YH()ES( Parser")42 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(time)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(time_pimpl)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()SM(xml_schema::time)ES()BR()0 42 1 A(Section 6.13,
- ")SM(time)ES( Parser")42 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()SM(xml_schema::time)ES()BR()0 43 1 A(Section 6.13,
+ ")SM(time)ES( Parser")43 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
]]
@@ -17341,7 +17342,7 @@ ET RC ZF
] D
0 1 1{TS}for RC ZF
/Ba f D /BO 0 D Bs
-/UR (/home/boris/work/xsd/xsd/documentation/cxx/parser/guide/index.xhtml) D
+/UR (/home/boris/work/xsd/xsd/doc/cxx/parser/guide/index.xhtml) D
/Ti (C++/Parser Mapping Getting Started Guide) D
/Au () D
/Df f D
@@ -17350,55 +17351,56 @@ Pt
/BO 0 D TC /Ba f D Bs /AU f D /UR () D RC ZF
tH WB
ND 1 gt{Ts 3 mul Np 0()0 C()BD(C++/Parser Mapping Getting Started Guide)ES()0 1 TN()EA()BN}if
-1 NH le{49(1\240\240)1 C(Preface)WB 3 Sn()49 1 TN()EA()BN}if
-2 NH le{50(1.1\240\240)2 C(About)WB 4 Sn( This Docu)HY(ment)YH()50 1 TN()EA()BN}if
-2 NH le{51(1.2\240\240)2 C(More)WB 5 Sn( Infor)HY(ma)HY(tion)YH()51 1 TN()EA()BN}if
-1 NH le{52(2\240\240)1 C(1)WB 6 Sn( Intro)HY(duc)HY(tion)YH()52 1 TN()EA()BN}if
-2 NH le{53(2.1\240\240)2 C(1.1)WB 7 Sn( Mapping Overview)53 1 TN()EA()BN}if
-2 NH le{54(2.2\240\240)2 C(1.2)WB 8 Sn( Bene)HY(fits)YH()54 1 TN()EA()BN}if
-1 NH le{55(3\240\240)1 C(2)WB 9 Sn( Hello World Example)55 1 TN()EA()BN}if
-2 NH le{56(3.1\240\240)2 C(2.1)WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)56 1 TN()EA()BN}if
-2 NH le{57(3.2\240\240)2 C(2.2)WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)57 1 TN()EA()BN}if
-2 NH le{58(3.3\240\240)2 C(2.3)WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)58 1 TN()EA()BN}if
-2 NH le{59(3.4\240\240)2 C(2.4)WB 13 Sn( Compil)HY(ing)YH( and Running)59 1 TN()EA()BN}if
-1 NH le{60(4\240\240)1 C(3)WB 14 Sn( Parser Skele)HY(tons)YH()60 1 TN()EA()BN}if
-2 NH le{61(4.1\240\240)2 C(3.1)WB 15 Sn( Imple)HY(ment)HY(ing)YH( the Gender Parser)61 1 TN()EA()BN}if
-2 NH le{62(4.2\240\240)2 C(3.2)WB 16 Sn( Imple)HY(ment)HY(ing)YH( the Person Parser)62 1 TN()EA()BN}if
-2 NH le{63(4.3\240\240)2 C(3.3)WB 17 Sn( Imple)HY(ment)HY(ing)YH( the People Parser)63 1 TN()EA()BN}if
-2 NH le{64(4.4\240\240)2 C(3.4)WB 18 Sn( Connect)HY(ing)YH( the Parsers Together)64 1 TN()EA()BN}if
-1 NH le{65(5\240\240)1 C(4)WB 19 Sn( Type Maps)65 1 TN()EA()BN}if
-2 NH le{66(5.1\240\240)2 C(4.1)WB 20 Sn( Object Model)66 1 TN()EA()BN}if
-2 NH le{67(5.2\240\240)2 C(4.2)WB 21 Sn( Type Map File Format)67 1 TN()EA()BN}if
-2 NH le{68(5.3\240\240)2 C(4.3)WB 22 Sn( Parser Imple)HY(men)HY(ta)HY(tions)YH()68 1 TN()EA()BN}if
-1 NH le{69(6\240\240)1 C(5)WB 23 Sn( Mapping Config)HY(u)HY(ra)HY(tion)YH()69 1 TN()EA()BN}if
-2 NH le{70(6.1\240\240)2 C(5.1)WB 24 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()70 1 TN()EA()BN}if
-2 NH le{71(6.2\240\240)2 C(5.2)WB 25 Sn( Under)HY(ly)HY(ing)YH( XML Parser)71 1 TN()EA()BN}if
-2 NH le{72(6.3\240\240)2 C(5.3)WB 26 Sn( XML Schema Vali)HY(da)HY(tion)YH()72 1 TN()EA()BN}if
-2 NH le{73(6.4\240\240)2 C(5.4)WB 27 Sn( Support for Poly)HY(mor)HY(phism)YH()73 1 TN()EA()BN}if
-1 NH le{74(7\240\240)1 C(6)WB 28 Sn( Built-In XML Schema Type Parsers)74 1 TN()EA()BN}if
-2 NH le{75(7.1\240\240)2 C(6.1)WB 30 Sn( )SM(QName)ES( Parser)75 1 TN()EA()BN}if
-2 NH le{76(7.2\240\240)2 C(6.2)WB 31 Sn( )SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers)76 1 TN()EA()BN}if
-2 NH le{77(7.3\240\240)2 C(6.3)WB 32 Sn( )SM(base64Binary)ES( and )SM(hexBi)HY(nary)YH()ES( Parsers)77 1 TN()EA()BN}if
-2 NH le{78(7.4\240\240)2 C(6.4)WB 33 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()78 1 TN()EA()BN}if
-2 NH le{79(7.5\240\240)2 C(6.5)WB 34 Sn( )SM(date)ES( Parser)79 1 TN()EA()BN}if
-2 NH le{80(7.6\240\240)2 C(6.6)WB 35 Sn( )SM(date)HY(Time)YH()ES( Parser)80 1 TN()EA()BN}if
-2 NH le{81(7.7\240\240)2 C(6.7)WB 36 Sn( )SM(dura)HY(tion)YH()ES( Parser)81 1 TN()EA()BN}if
-2 NH le{82(7.8\240\240)2 C(6.8)WB 37 Sn( )SM(gDay)ES( Parser)82 1 TN()EA()BN}if
-2 NH le{83(7.9\240\240)2 C(6.9)WB 38 Sn( )SM(gMonth)ES( Parser)83 1 TN()EA()BN}if
-2 NH le{84(7.10\240\240)2 C(6.10)WB 39 Sn( )SM(gMon)HY(th)HY(Day)YH()ES( Parser)84 1 TN()EA()BN}if
-2 NH le{85(7.11\240\240)2 C(6.11)WB 40 Sn( )SM(gYear)ES( Parser)85 1 TN()EA()BN}if
-2 NH le{86(7.12\240\240)2 C(6.12)WB 41 Sn( )SM(gYear)HY(Month)YH()ES( Parser)86 1 TN()EA()BN}if
-2 NH le{87(7.13\240\240)2 C(6.13)WB 42 Sn( )SM(time)ES( Parser)87 1 TN()EA()BN}if
-1 NH le{88(8\240\240)1 C(7)WB 43 Sn( Docu)HY(ment)YH( Parser and Error Handling)88 1 TN()EA()BN}if
-2 NH le{89(8.1\240\240)2 C(7.1)WB 44 Sn( Xerces-C++ Docu)HY(ment)YH( Parser)89 1 TN()EA()BN}if
-2 NH le{90(8.2\240\240)2 C(7.2)WB 45 Sn( Expat Docu)HY(ment)YH( Parser)90 1 TN()EA()BN}if
-2 NH le{91(8.3\240\240)2 C(7.3)WB 46 Sn( Error Handling)91 1 TN()EA()BN}if
-1 NH le{92(9\240\240)1 C(Appendix)WB 47 Sn( A \236 Supported XML Schema Constructs)92 1 TN()EA()BN}if
+1 NH le{50(1\240\240)1 C(Preface)WB 3 Sn()50 1 TN()EA()BN}if
+2 NH le{51(1.1\240\240)2 C(About)WB 4 Sn( This Docu)HY(ment)YH()51 1 TN()EA()BN}if
+2 NH le{52(1.2\240\240)2 C(More)WB 5 Sn( Infor)HY(ma)HY(tion)YH()52 1 TN()EA()BN}if
+1 NH le{53(2\240\240)1 C(1)WB 6 Sn( Intro)HY(duc)HY(tion)YH()53 1 TN()EA()BN}if
+2 NH le{54(2.1\240\240)2 C(1.1)WB 7 Sn( Mapping Overview)54 1 TN()EA()BN}if
+2 NH le{55(2.2\240\240)2 C(1.2)WB 8 Sn( Bene)HY(fits)YH()55 1 TN()EA()BN}if
+1 NH le{56(3\240\240)1 C(2)WB 9 Sn( Hello World Example)56 1 TN()EA()BN}if
+2 NH le{57(3.1\240\240)2 C(2.1)WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)57 1 TN()EA()BN}if
+2 NH le{58(3.2\240\240)2 C(2.2)WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)58 1 TN()EA()BN}if
+2 NH le{59(3.3\240\240)2 C(2.3)WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)59 1 TN()EA()BN}if
+2 NH le{60(3.4\240\240)2 C(2.4)WB 13 Sn( Compil)HY(ing)YH( and Running)60 1 TN()EA()BN}if
+1 NH le{61(4\240\240)1 C(3)WB 14 Sn( Parser Skele)HY(tons)YH()61 1 TN()EA()BN}if
+2 NH le{62(4.1\240\240)2 C(3.1)WB 15 Sn( Imple)HY(ment)HY(ing)YH( the Gender Parser)62 1 TN()EA()BN}if
+2 NH le{63(4.2\240\240)2 C(3.2)WB 16 Sn( Imple)HY(ment)HY(ing)YH( the Person Parser)63 1 TN()EA()BN}if
+2 NH le{64(4.3\240\240)2 C(3.3)WB 17 Sn( Imple)HY(ment)HY(ing)YH( the People Parser)64 1 TN()EA()BN}if
+2 NH le{65(4.4\240\240)2 C(3.4)WB 18 Sn( Connect)HY(ing)YH( the Parsers Together)65 1 TN()EA()BN}if
+1 NH le{66(5\240\240)1 C(4)WB 19 Sn( Type Maps)66 1 TN()EA()BN}if
+2 NH le{67(5.1\240\240)2 C(4.1)WB 20 Sn( Object Model)67 1 TN()EA()BN}if
+2 NH le{68(5.2\240\240)2 C(4.2)WB 21 Sn( Type Map File Format)68 1 TN()EA()BN}if
+2 NH le{69(5.3\240\240)2 C(4.3)WB 22 Sn( Parser Imple)HY(men)HY(ta)HY(tions)YH()69 1 TN()EA()BN}if
+1 NH le{70(6\240\240)1 C(5)WB 23 Sn( Mapping Config)HY(u)HY(ra)HY(tion)YH()70 1 TN()EA()BN}if
+2 NH le{71(6.1\240\240)2 C(5.1)WB 24 Sn( C++ Stan)HY(dard)YH()71 1 TN()EA()BN}if
+2 NH le{72(6.2\240\240)2 C(5.2)WB 25 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()72 1 TN()EA()BN}if
+2 NH le{73(6.3\240\240)2 C(5.3)WB 26 Sn( Under)HY(ly)HY(ing)YH( XML Parser)73 1 TN()EA()BN}if
+2 NH le{74(6.4\240\240)2 C(5.4)WB 27 Sn( XML Schema Vali)HY(da)HY(tion)YH()74 1 TN()EA()BN}if
+2 NH le{75(6.5\240\240)2 C(5.5)WB 28 Sn( Support for Poly)HY(mor)HY(phism)YH()75 1 TN()EA()BN}if
+1 NH le{76(7\240\240)1 C(6)WB 29 Sn( Built-In XML Schema Type Parsers)76 1 TN()EA()BN}if
+2 NH le{77(7.1\240\240)2 C(6.1)WB 31 Sn( )SM(QName)ES( Parser)77 1 TN()EA()BN}if
+2 NH le{78(7.2\240\240)2 C(6.2)WB 32 Sn( )SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers)78 1 TN()EA()BN}if
+2 NH le{79(7.3\240\240)2 C(6.3)WB 33 Sn( )SM(base64Binary)ES( and )SM(hexBi)HY(nary)YH()ES( Parsers)79 1 TN()EA()BN}if
+2 NH le{80(7.4\240\240)2 C(6.4)WB 34 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()80 1 TN()EA()BN}if
+2 NH le{81(7.5\240\240)2 C(6.5)WB 35 Sn( )SM(date)ES( Parser)81 1 TN()EA()BN}if
+2 NH le{82(7.6\240\240)2 C(6.6)WB 36 Sn( )SM(date)HY(Time)YH()ES( Parser)82 1 TN()EA()BN}if
+2 NH le{83(7.7\240\240)2 C(6.7)WB 37 Sn( )SM(dura)HY(tion)YH()ES( Parser)83 1 TN()EA()BN}if
+2 NH le{84(7.8\240\240)2 C(6.8)WB 38 Sn( )SM(gDay)ES( Parser)84 1 TN()EA()BN}if
+2 NH le{85(7.9\240\240)2 C(6.9)WB 39 Sn( )SM(gMonth)ES( Parser)85 1 TN()EA()BN}if
+2 NH le{86(7.10\240\240)2 C(6.10)WB 40 Sn( )SM(gMon)HY(th)HY(Day)YH()ES( Parser)86 1 TN()EA()BN}if
+2 NH le{87(7.11\240\240)2 C(6.11)WB 41 Sn( )SM(gYear)ES( Parser)87 1 TN()EA()BN}if
+2 NH le{88(7.12\240\240)2 C(6.12)WB 42 Sn( )SM(gYear)HY(Month)YH()ES( Parser)88 1 TN()EA()BN}if
+2 NH le{89(7.13\240\240)2 C(6.13)WB 43 Sn( )SM(time)ES( Parser)89 1 TN()EA()BN}if
+1 NH le{90(8\240\240)1 C(7)WB 44 Sn( Docu)HY(ment)YH( Parser and Error Handling)90 1 TN()EA()BN}if
+2 NH le{91(8.1\240\240)2 C(7.1)WB 45 Sn( Xerces-C++ Docu)HY(ment)YH( Parser)91 1 TN()EA()BN}if
+2 NH le{92(8.2\240\240)2 C(7.2)WB 46 Sn( Expat Docu)HY(ment)YH( Parser)92 1 TN()EA()BN}if
+2 NH le{93(8.3\240\240)2 C(7.3)WB 47 Sn( Error Handling)93 1 TN()EA()BN}if
+1 NH le{94(9\240\240)1 C(Appendix)WB 48 Sn( A \236 Supported XML Schema Constructs)94 1 TN()EA()BN}if
/OU t D /Cb Db D NP Ep ET
/Cb Db D /Ct [16#00 16#00 16#00] D /Cl [16#00 16#00 16#00] D /CL -1 D Ct Sc
/Ba f D /BO 0 D Bs
-/UR (/home/boris/work/xsd/xsd/documentation/cxx/parser/guide/index.xhtml) D
+/UR (/home/boris/work/xsd/xsd/doc/cxx/parser/guide/index.xhtml) D
/Ti (C++/Parser Mapping Getting Started Guide) D
/Au () D
/Df f D
@@ -17410,9 +17412,9 @@ NP RC ZF
)BR()WB 1 Sn( )BR()WB 2 Sn(
- )0 1 0 H(Preface)WB 49 Sn()WB 3 Sn()EA()EH(
+ )0 1 0 H(Preface)WB 50 Sn()WB 3 Sn()EA()EH(
- )0 2 1 H(About)WB 50 Sn()WB 4 Sn( This Docu)HY(ment)YH()EA()EH(
+ )0 2 1 H(About)WB 51 Sn()WB 4 Sn( This Docu)HY(ment)YH()EA()EH(
)0 P(The goal of this docu)HY(ment)YH( is to provide you with an under)HY(stand)HY(ing)YH( of
the C++/Parser program)HY(ming)YH( model and allow you to effi)HY(ciently)YH( eval)HY(u)HY(ate)YH(
@@ -17425,7 +17427,7 @@ NP RC ZF
)EP(
- )0 2 2 H(More)WB 51 Sn()WB 5 Sn( Infor)HY(ma)HY(tion)YH()EA()EH(
+ )0 2 2 H(More)WB 52 Sn()WB 5 Sn( Infor)HY(ma)HY(tion)YH()EA()EH(
)0 P(Beyond this guide, you may also find the follow)HY(ing)YH( sources of
infor)HY(ma)HY(tion)YH( useful:)EP(
@@ -17449,7 +17451,7 @@ NP RC ZF
- )0 1 3 H(1)WB 52 Sn()WB 6 Sn( Intro)HY(duc)HY(tion)YH()EA()EH(
+ )0 1 3 H(1)WB 53 Sn()WB 6 Sn( Intro)HY(duc)HY(tion)YH()EA()EH(
)0 P(Welcome to CodeSyn)HY(the)HY(sis)YH( XSD and the C++/Parser mapping. XSD is a
cross-plat)HY(form)YH( W3C XML Schema to C++ data binding compiler. C++/Parser
@@ -17458,7 +17460,7 @@ NP RC ZF
process)HY(ing)YH( as required by your appli)HY(ca)HY(tion)YH( logic.
)EP(
- )0 2 4 H(1.1)WB 53 Sn()WB 7 Sn( Mapping Overview)EA()EH(
+ )0 2 4 H(1.1)WB 54 Sn()WB 7 Sn( Mapping Overview)EA()EH(
)0 P(The C++/Parser mapping provides event-driven, stream-oriented
XML parsing, XML Schema vali)HY(da)HY(tion)YH(, and C++ data binding. It was
@@ -17482,7 +17484,7 @@ NP RC ZF
simple XML docu)HY(ment)YH(. The follow)HY(ing)YH( chap)HY(ters)YH( show how to
use the C++/Parser mapping in more detail.)EP(
- )0 2 5 H(1.2)WB 54 Sn()WB 8 Sn( Bene)HY(fits)YH()EA()EH(
+ )0 2 5 H(1.2)WB 55 Sn()WB 8 Sn( Bene)HY(fits)YH()EA()EH(
)0 P(Tradi)HY(tional)YH( XML access APIs such as Docu)HY(ment)YH( Object Model \201DOM\202
or Simple API for XML \201SAX\202 have a number of draw)HY(backs)YH( that
@@ -17557,7 +17559,7 @@ NP RC ZF
- )0 1 6 H(2)WB 55 Sn()WB 9 Sn( Hello World Example)EA()EH(
+ )0 1 6 H(2)WB 56 Sn()WB 9 Sn( Hello World Example)EA()EH(
)0 P(In this chapter we will examine how to parse a very simple XML
docu)HY(ment)YH( using the XSD-gener)HY(ated)YH( C++/Parser skele)HY(tons)YH(.
@@ -17565,7 +17567,7 @@ NP RC ZF
example which can be found in the )SM(exam)HY(ples)YH(/cxx/parser/)ES(
direc)HY(tory)YH( of the XSD distri)HY(bu)HY(tion)YH(.)EP(
- )0 2 7 H(2.1)WB 56 Sn()WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)EA()EH(
+ )0 2 7 H(2.1)WB 57 Sn()WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)EA()EH(
)0 P(First, we need to get an idea about the struc)HY(ture)YH(
of the XML docu)HY(ments)YH( we are going to process. Our
@@ -17619,7 +17621,7 @@ NP RC ZF
like. The next step is to compile this schema to gener)HY(ate)YH(
the object model and parsing func)HY(tions)YH(.)EP(
- )0 2 8 H(2.2)WB 57 Sn()WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)EA()EH(
+ )0 2 8 H(2.2)WB 58 Sn()WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)EA()EH(
)0 P(Now we are ready to trans)HY(late)YH( our )SM(hello.xsd)ES( to C++ parser
skele)HY(tons)YH(. To do this we invoke the XSD compiler from a termi)HY(nal)YH(
@@ -17629,8 +17631,8 @@ NP RC ZF
) 1 45 PR($ xsd cxx-parser --xml-parser expat hello.xsd)RP(
)0 P(The )SM(--xml-parser)ES( option indi)HY(cates)YH( that we want to
- use Expat as the under)HY(ly)HY(ing)YH( XML parser \201see )0 25 1 A(Section
- 5.2, "Under)HY(ly)HY(ing)YH( XML Parser")25 0 TN TL()Ec /AF f D(\202. The XSD compiler produces two
+ use Expat as the under)HY(ly)HY(ing)YH( XML parser \201see )0 26 1 A(Section
+ 5.3, "Under)HY(ly)HY(ing)YH( XML Parser")26 0 TN TL()Ec /AF f D(\202. The XSD compiler produces two
C++ files: )SM(hello-pskel.hxx)ES( and )SM(hello-pskel.cxx)ES(.
The follow)HY(ing)YH( code frag)HY(ment)YH( is taken from )SM(hello-pskel.hxx)ES(;
it should give you an idea about what gets gener)HY(ated)YH(:
@@ -17709,7 +17711,7 @@ private:
it to parse the contents of )SM(greet)HY(ing)YH()ES( and
)SM(name)ES( elements, as shown in the next section.)EP(
- )0 2 9 H(2.3)WB 58 Sn()WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)EA()EH(
+ )0 2 9 H(2.3)WB 59 Sn()WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)EA()EH(
)0 P(At this point we have all the parts we need to do some)HY(thing)YH( useful
with the infor)HY(ma)HY(tion)YH( stored in our XML docu)HY(ment)YH(. The first step is
@@ -17791,8 +17793,8 @@ main \201int argc, char* argv[]\202
)SM(xml_schema::string_pimpl)ES( is an imple)HY(men)HY(ta)HY(tion)YH( of a parser
for built-in XML Schema type )SM(string)ES(. It is provided by
the XSD runtime along with parsers for other built-in types \201for
- more infor)HY(ma)HY(tion)YH( on the built-in parsers see )0 28 1 A(Chapter 6,
- "Built-In XML Schema Type Parsers")28 0 TN TL()Ec /AF f D(\202. We use )SM(string_pimpl)ES(
+ more infor)HY(ma)HY(tion)YH( on the built-in parsers see )0 29 1 A(Chapter 6,
+ "Built-In XML Schema Type Parsers")29 0 TN TL()Ec /AF f D(\202. We use )SM(string_pimpl)ES(
to parse the )SM(greet)HY(ing)YH()ES( and )SM(name)ES( elements as
indi)HY(cated)YH( by the calls to )SM(greet)HY(ing)YH(_parser\201\202)ES( and
)SM(name_parser\201\202)ES(.
@@ -17827,7 +17829,7 @@ main \201int argc, char* argv[]\202
feature in action.)EP(
- )0 2 10 H(2.4)WB 59 Sn()WB 13 Sn( Compil)HY(ing)YH( and Running)EA()EH(
+ )0 2 10 H(2.4)WB 60 Sn()WB 13 Sn( Compil)HY(ing)YH( and Running)EA()EH(
)0 P(After saving all the parts from the previ)HY(ous)YH( section in
)SM(driver.cxx)ES(, we are ready to compile our first
@@ -17861,7 +17863,7 @@ hello.xsd:2:0: expected element 'hello' instead of
- )0 1 11 H(3)WB 60 Sn()WB 14 Sn( Parser Skele)HY(tons)YH()EA()EH(
+ )0 1 11 H(3)WB 61 Sn()WB 14 Sn( Parser Skele)HY(tons)YH()EA()EH(
)0 P(As we have seen in the previ)HY(ous)YH( chapter, the XSD compiler gener)HY(ates)YH(
a parser skele)HY(ton)YH( class for each type defined in XML Schema. In
@@ -17927,7 +17929,7 @@ hello.xsd:2:0: expected element 'hello' instead of
)SM(person_pskel)ES(, and )SM(people_pskel)ES(. We are going
to examine and imple)HY(ment)YH( each of them in the subse)HY(quent)YH( sections.)EP(
- )0 2 12 H(3.1)WB 61 Sn()WB 15 Sn( Imple)HY(ment)HY(ing)YH( the Gender Parser)EA()EH(
+ )0 2 12 H(3.1)WB 62 Sn()WB 15 Sn( Imple)HY(ment)HY(ing)YH( the Gender Parser)EA()EH(
)0 P(The gener)HY(ated)YH( )SM(gender_pskel)ES( parser skele)HY(ton)YH( looks like
this:)EP(
@@ -18073,7 +18075,7 @@ public:
)SM(void)ES( as a return type. This is a valid concern
and it will be addressed in the next chapter.)EP(
- )0 2 13 H(3.2)WB 62 Sn()WB 16 Sn( Imple)HY(ment)HY(ing)YH( the Person Parser)EA()EH(
+ )0 2 13 H(3.2)WB 63 Sn()WB 16 Sn( Imple)HY(ment)HY(ing)YH( the Person Parser)EA()EH(
)0 P(The gener)HY(ated)YH( )SM(person_pskel)ES( parser skele)HY(ton)YH( looks like
this:)EP(
@@ -18153,7 +18155,7 @@ public:
because all the print)HY(ing)YH( is done by )SM(gender_pimpl)ES(.)EP(
- )0 2 14 H(3.3)WB 63 Sn()WB 17 Sn( Imple)HY(ment)HY(ing)YH( the People Parser)EA()EH(
+ )0 2 14 H(3.3)WB 64 Sn()WB 17 Sn( Imple)HY(ment)HY(ing)YH( the People Parser)EA()EH(
)0 P(The gener)HY(ated)YH( )SM(people_pskel)ES( parser skele)HY(ton)YH( looks like
this:)EP(
@@ -18200,7 +18202,7 @@ public:
)0 P(Now it is time to put every)HY(thing)YH( together.)EP(
- )0 2 15 H(3.4)WB 64 Sn()WB 18 Sn( Connect)HY(ing)YH( the Parsers Together)EA()EH(
+ )0 2 15 H(3.4)WB 65 Sn()WB 18 Sn( Connect)HY(ing)YH( the Parsers Together)EA()EH(
)0 P(At this point we have all the indi)HY(vid)HY(ual)YH( parsers imple)HY(mented)YH(
and can proceed to assem)HY(ble)YH( them into a complete parser
@@ -18308,8 +18310,8 @@ people_p.post_people \201\202;)RP(
The first version parses a local file iden)HY(ti)HY(fied)YH( by a name. The
second version reads the data from an input stream. For more
infor)HY(ma)HY(tion)YH( on the )SM(xml_schema::docu)HY(ment)YH()ES( class
- refer to )0 43 1 A(Chapter 7, "Docu)HY(ment)YH( Parser and Error
- Handling")43 0 TN TL()Ec /AF f D(.)EP(
+ refer to )0 44 1 A(Chapter 7, "Docu)HY(ment)YH( Parser and Error
+ Handling")44 0 TN TL()Ec /AF f D(.)EP(
)0 P(Let's now consider a step-by-step list of actions that happen
as we parse through )SM(people.xml)ES(. The content of
@@ -18398,7 +18400,7 @@ people_p.post_people \201\202;)RP(
- )0 1 16 H(4)WB 65 Sn()WB 19 Sn( Type Maps)EA()EH(
+ )0 1 16 H(4)WB 66 Sn()WB 19 Sn( Type Maps)EA()EH(
)0 P(There are many useful things you can do inside parser call)HY(backs)YH( as they
are right now. There are, however, times when you want to prop)HY(a)HY(gate)YH(
@@ -18414,7 +18416,7 @@ people_p.post_people \201\202;)RP(
parsers and see how to use them to build an object model
of our people vocab)HY(u)HY(lary)YH(.)EP(
- )0 2 17 H(4.1)WB 66 Sn()WB 20 Sn( Object Model)EA()EH(
+ )0 2 17 H(4.1)WB 67 Sn()WB 20 Sn( Object Model)EA()EH(
)0 P(An object model for our person record example could
look like this \201saved in the )SM(people.hxx)ES( file\202:)EP(
@@ -18543,7 +18545,7 @@ class person_pskel: public xml_schema::complex_content
the gener)HY(ated)YH( header file from the type map to provide the
defi)HY(ni)HY(tion)YH( for the )SM(gender)ES( enum.)EP(
- )0 2 18 H(4.2)WB 67 Sn()WB 21 Sn( Type Map File Format)EA()EH(
+ )0 2 18 H(4.2)WB 68 Sn()WB 21 Sn( Type Map File Format)EA()EH(
)0 P(Type map files are used to define a mapping between XML Schema
and C++ types. The compiler uses this infor)HY(ma)HY(tion)YH(
@@ -18632,8 +18634,13 @@ namespace http://www.example.com/xmlns/my
follow)HY(ing)YH( map files. The string-based XML Schema types are
mapped to either )SM(std::string)ES( or
)SM(std::wstring)ES( depend)HY(ing)YH( on the char)HY(ac)HY(ter)YH( type
- selected \201see )0 24 1 A( Section 5.1, "Char)HY(ac)HY(ter)YH( Type and
- Encod)HY(ing)YH(")24 0 TN TL()Ec /AF f D( for more infor)HY(ma)HY(tion)YH(\202.)EP(
+ selected \201see )0 25 1 A( Section 5.2, "Char)HY(ac)HY(ter)YH( Type and
+ Encod)HY(ing)YH(")25 0 TN TL()Ec /AF f D( for more infor)HY(ma)HY(tion)YH(\202. The binary XML Schema
+ types are mapped to either )SM(std::auto_ptr<xml_schema::buffer>)ES(
+ or )SM(std::unique_ptr<xml_schema::buffer>)ES(
+ depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected \201C++98 or C++11,
+ respec)HY(tively)YH(; refer to the )SM(--std)ES( XSD compiler
+ command line option for details\202.)EP(
) 59 63 PR(namespace http://www.w3.org/2001/XMLSchema
{
@@ -18679,10 +18686,10 @@ namespace http://www.example.com/xmlns/my
QName xml_schema::qname;
- base64Binary std::auto_ptr<xml_schema::buffer>
- std::auto_ptr<xml_schema::buffer>;
- hexBinary std::auto_ptr<xml_schema::buffer>
- std::auto_ptr<xml_schema::buffer>;
+ base64Binary std::[auto|unique]_ptr<xml_schema::buffer>
+ std::[auto|unique]_ptr<xml_schema::buffer>;
+ hexBinary std::[auto|unique]_ptr<xml_schema::buffer>
+ std::[auto|unique]_ptr<xml_schema::buffer>;
date xml_schema::date;
dateTime xml_schema::date_time;
@@ -18696,8 +18703,8 @@ namespace http://www.example.com/xmlns/my
})RP(
)0 P(For more infor)HY(ma)HY(tion)YH( about the mapping of the built-in XML Schema types
- to C++ types refer to )0 28 1 A(Chapter 6, "Built-In XML Schema Type
- Parsers")28 0 TN TL()Ec /AF f D(. The last prede)HY(fined)YH( rule maps anything that wasn't
+ to C++ types refer to )0 29 1 A(Chapter 6, "Built-In XML Schema Type
+ Parsers")29 0 TN TL()Ec /AF f D(. The last prede)HY(fined)YH( rule maps anything that wasn't
mapped by previ)HY(ous)YH( rules to )SM(void)ES(:)EP(
) 4 15 PR(namespace .*
@@ -18716,7 +18723,7 @@ namespace http://www.example.com/xmlns/my
custom defi)HY(ni)HY(tions)YH( into the gener)HY(ated)YH( header file using the
)SM(--hxx-prologue-*)ES( options.)EP(
- )0 2 19 H(4.3)WB 68 Sn()WB 22 Sn( Parser Imple)HY(men)HY(ta)HY(tions)YH()EA()EH(
+ )0 2 19 H(4.3)WB 69 Sn()WB 22 Sn( Parser Imple)HY(men)HY(ta)HY(tions)YH()EA()EH(
)0 P(With the knowl)HY(edge)YH( from the previ)HY(ous)YH( section, we can proceed
with creat)HY(ing)YH( a type map that maps types in the )SM(people.xsd)ES(
@@ -18897,14 +18904,14 @@ age: 28)RP(
- )0 1 20 H(5)WB 69 Sn()WB 23 Sn( Mapping Config)HY(u)HY(ra)HY(tion)YH()EA()EH(
+ )0 1 20 H(5)WB 70 Sn()WB 23 Sn( Mapping Config)HY(u)HY(ra)HY(tion)YH()EA()EH(
)0 P(The C++/Parser mapping has a number of config)HY(u)HY(ra)HY(tion)YH( param)HY(e)HY(ters)YH( that
deter)HY(mine)YH( the overall prop)HY(er)HY(ties)YH( and behav)HY(ior)YH( of the gener)HY(ated)YH( code.
Config)HY(u)HY(ra)HY(tion)YH( param)HY(e)HY(ters)YH( are spec)HY(i)HY(fied)YH( with the XSD command line
- options and include the char)HY(ac)HY(ter)YH( type that is used by the gener)HY(ated)YH(
- code, the under)HY(ly)HY(ing)YH( XML parser, whether the XML Schema vali)HY(da)HY(tion)YH(
- is performed in the gener)HY(ated)YH( code, and support for XML Schema
+ options and include the C++ stan)HY(dard)YH(, the char)HY(ac)HY(ter)YH( type that is used
+ by the gener)HY(ated)YH( code, the under)HY(ly)HY(ing)YH( XML parser, whether the XML Schema
+ vali)HY(da)HY(tion)YH( is performed in the gener)HY(ated)YH( code, and support for XML Schema
poly)HY(mor)HY(phism)YH(. This chapter describes these config)HY(u)HY(ra)HY(tion)YH(
param)HY(e)HY(ters)YH( in more detail. For more ways to config)HY(ure)YH( the gener)HY(ated)YH(
code refer to the
@@ -18912,7 +18919,16 @@ age: 28)RP(
Compiler Command Line Manual)EA(.
)EP(
- )0 2 21 H(5.1)WB 70 Sn()WB 24 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()EA()EH(
+ )0 2 21 H(5.1)WB 71 Sn()WB 24 Sn( C++ Stan)HY(dard)YH()EA()EH(
+
+ )0 P(The C++/Parser mapping provides support for ISO/IEC C++ 1998/2003 \201C++98\202
+ and ISO/IEC C++ 2011 \201C++11\202. To select the C++ stan)HY(dard)YH( for the
+ gener)HY(ated)YH( code we use the )SM(--std)ES( XSD compiler command
+ line option. While the major)HY(ity)YH( of the exam)HY(ples)YH( in this guide use
+ C++98, support for the new func)HY(tion)HY(al)HY(ity)YH( and library compo)HY(nents)YH(
+ intro)HY(duced)YH( in C++11 are discussed through)HY(out)YH( the docu)HY(ment)YH(.)EP(
+
+ )0 2 22 H(5.2)WB 72 Sn()WB 25 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()EA()EH(
)0 P(The C++/Parser mapping has built-in support for two char)HY(ac)HY(ter)YH( types:
)SM(char)ES( and )SM(wchar_t)ES(. You can select the
@@ -18943,7 +18959,7 @@ age: 28)RP(
all three \201object mode, input XML, and output XML\202 can have differ)HY(ent)YH(
encod)HY(ings)YH(.)EP(
- )0 2 22 H(5.2)WB 71 Sn()WB 25 Sn( Under)HY(ly)HY(ing)YH( XML Parser)EA()EH(
+ )0 2 23 H(5.3)WB 73 Sn()WB 26 Sn( Under)HY(ly)HY(ing)YH( XML Parser)EA()EH(
)0 P(The C++/Parser mapping can be used with either Xerces-C++ or Expat
as the under)HY(ly)HY(ing)YH( XML parser. You can select the XML parser with
@@ -18954,26 +18970,26 @@ age: 28)RP(
)0 P(The gener)HY(ated)YH( code is iden)HY(ti)HY(cal)YH( for both parsers except for the
)SM(xml_schema::docu)HY(ment)YH()ES( class in which some of the
)SM(parse\201\202)ES( func)HY(tions)YH( are parser-specific as described
- in )0 43 1 A(Chapter 7, "Docu)HY(ment)YH( Parser and Error Handling")43 0 TN TL()Ec /AF f D(.)EP(
+ in )0 44 1 A(Chapter 7, "Docu)HY(ment)YH( Parser and Error Handling")44 0 TN TL()Ec /AF f D(.)EP(
- )0 2 23 H(5.3)WB 72 Sn()WB 26 Sn( XML Schema Vali)HY(da)HY(tion)YH()EA()EH(
+ )0 2 24 H(5.4)WB 74 Sn()WB 27 Sn( XML Schema Vali)HY(da)HY(tion)YH()EA()EH(
)0 P(The C++/Parser mapping provides support for vali)HY(dat)HY(ing)YH( a
commonly-used subset of W3C XML Schema in the gener)HY(ated)YH( code.
For the list of supported XML Schema constructs refer to
- )0 47 1 A(Appendix A, "Supported XML Schema Constructs")47 0 TN TL()Ec /AF f D(.)EP(
+ )0 48 1 A(Appendix A, "Supported XML Schema Constructs")48 0 TN TL()Ec /AF f D(.)EP(
)0 P(By default vali)HY(da)HY(tion)YH( in the gener)HY(ated)YH( code is disabled if
the under)HY(ly)HY(ing)YH( XML parser is vali)HY(dat)HY(ing)YH( \201Xerces-C++\202 and
- enabled other)HY(wise)YH( \201Expat\202. See )0 25 1 A(Section 5.2,
- "Under)HY(ly)HY(ing)YH( XML Parser")25 0 TN TL()Ec /AF f D( for more infor)HY(ma)HY(tion)YH( about
+ enabled other)HY(wise)YH( \201Expat\202. See )0 26 1 A(Section 5.3,
+ "Under)HY(ly)HY(ing)YH( XML Parser")26 0 TN TL()Ec /AF f D( for more infor)HY(ma)HY(tion)YH( about
the under)HY(ly)HY(ing)YH( XML parser. You can over)HY(ride)YH( the default
behav)HY(ior)YH( with the )SM(--gener)HY(ate)YH(-vali)HY(da)HY(tion)YH()ES(
and )SM(--suppress-vali)HY(da)HY(tion)YH()ES( command line options.)EP(
- )0 2 24 H(5.4)WB 73 Sn()WB 27 Sn( Support for Poly)HY(mor)HY(phism)YH()EA()EH(
+ )0 2 25 H(5.5)WB 75 Sn()WB 28 Sn( Support for Poly)HY(mor)HY(phism)YH()EA()EH(
)0 P(By default the XSD compiler gener)HY(ates)YH( non-poly)HY(mor)HY(phic)YH( code. If your
vocab)HY(u)HY(lary)YH( uses XML Schema poly)HY(mor)HY(phism)YH( in the form of )SM(xsi:type)ES(
@@ -19335,7 +19351,7 @@ private:
- )0 1 25 H(6)WB 74 Sn()WB 28 Sn( Built-In XML Schema Type Parsers)EA()EH(
+ )0 1 26 H(6)WB 76 Sn()WB 29 Sn( Built-In XML Schema Type Parsers)EA()EH(
)0 P(The XSD runtime provides parser imple)HY(men)HY(ta)HY(tions)YH( for all built-in
XML Schema types as summa)HY(rized)YH( in the follow)HY(ing)YH( table. Decla)HY(ra)HY(tions)YH(
@@ -19348,7 +19364,7 @@ private:
)0 PT(
- )0 2 26 H(6.1)WB 75 Sn()WB 30 Sn( )SM(QName)ES( Parser)EA()EH(
+ )0 2 27 H(6.1)WB 77 Sn()WB 31 Sn( )SM(QName)ES( Parser)EA()EH(
)0 P(The return type of the )SM(qname_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::qname)ES( which repre)HY(sents)YH( an XML qual)HY(i)HY(fied)YH(
@@ -19387,7 +19403,7 @@ private:
})RP(
- )0 2 27 H(6.2)WB 76 Sn()WB 31 Sn( )SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers)EA()EH(
+ )0 2 28 H(6.2)WB 78 Sn()WB 32 Sn( )SM(NMTO)HY(KENS)YH()ES( and )SM(IDREFS)ES( Parsers)EA()EH(
)0 P(The return type of the )SM(nmto)HY(kens)YH(_pimpl)ES( and
)SM(idrefs_pimpl)ES( parser imple)HY(men)HY(ta)HY(tions)YH( is
@@ -19420,13 +19436,15 @@ private:
})RP(
- )0 2 28 H(6.3)WB 77 Sn()WB 32 Sn( )SM(base64Binary)ES( and )SM(hexBi)HY(nary)YH()ES( Parsers)EA()EH(
+ )0 2 29 H(6.3)WB 79 Sn()WB 33 Sn( )SM(base64Binary)ES( and )SM(hexBi)HY(nary)YH()ES( Parsers)EA()EH(
)0 P(The return type of the )SM(base64_binary_pimpl)ES( and
- )SM(hex_binary_pimpl)ES( parser imple)HY(men)HY(ta)HY(tions)YH( is
- )SM(std::auto_ptr<xml_schema::buffer>)ES(. The
- )SM(xml_schema::buffer)ES( type repre)HY(sents)YH( a binary buffer
- and its inter)HY(face)YH( is presented below.)EP(
+ )SM(hex_binary_pimpl)ES( parser imple)HY(men)HY(ta)HY(tions)YH( is either
+ )SM(std::auto_ptr<xml_schema::buffer>)ES( \201C++98\202 or
+ )SM(std::unique_ptr<xml_schema::buffer>)ES( \201C++11\202,
+ depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected \201)SM(--std)ES( XSD
+ compiler option\202. The )SM(xml_schema::buffer)ES( type
+ repre)HY(sents)YH( a binary buffer and its inter)HY(face)YH( is presented below.)EP(
) 69 60 PR(namespace xml_schema
{
@@ -19511,7 +19529,7 @@ private:
constraint.)EP(
- )0 2 29 H(6.4)WB 78 Sn()WB 33 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()EA()EH(
+ )0 2 30 H(6.4)WB 80 Sn()WB 34 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()EA()EH(
)0 P(The )SM(date)ES(, )SM(date)HY(Time)YH()ES(, )SM(gDay)ES(,
)SM(gMonth)ES(, )SM(gMon)HY(th)HY(Day)YH()ES(, )SM(gYear)ES(,
@@ -19561,14 +19579,14 @@ private:
minutes compo)HY(nents)YH( are repre)HY(sented)YH( as nega)HY(tive)YH( inte)HY(gers)YH(.)EP(
- )0 2 30 H(6.5)WB 79 Sn()WB 34 Sn( )SM(date)ES( Parser)EA()EH(
+ )0 2 31 H(6.5)WB 81 Sn()WB 35 Sn( )SM(date)ES( Parser)EA()EH(
)0 P(The return type of the )SM(date_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::date)ES( which repre)HY(sents)YH( a year, a day, and a month
with an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 34 62 PR(namespace xml_schema
{
@@ -19605,15 +19623,15 @@ private:
operator!= \201const date&, const date&\202;
})RP(
- )0 2 31 H(6.6)WB 80 Sn()WB 35 Sn( )SM(date)HY(Time)YH()ES( Parser)EA()EH(
+ )0 2 32 H(6.6)WB 82 Sn()WB 36 Sn( )SM(date)HY(Time)YH()ES( Parser)EA()EH(
)0 P(The return type of the )SM(date_time_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::date_time)ES( which repre)HY(sents)YH( a year, a month, a day,
hours, minutes, and seconds with an optional time zone. Its inter)HY(face)YH(
is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 56 69 PR(namespace xml_schema
{
@@ -19672,7 +19690,7 @@ private:
operator!= \201const date_time&, const date_time&\202;
})RP(
- )0 2 32 H(6.7)WB 81 Sn()WB 36 Sn( )SM(dura)HY(tion)YH()ES( Parser)EA()EH(
+ )0 2 33 H(6.7)WB 83 Sn()WB 37 Sn( )SM(dura)HY(tion)YH()ES( Parser)EA()EH(
)0 P(The return type of the )SM(dura)HY(tion)YH(_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::dura)HY(tion)YH()ES( which repre)HY(sents)YH( a poten)HY(tially)YH(
@@ -19739,14 +19757,14 @@ private:
})RP(
- )0 2 33 H(6.8)WB 82 Sn()WB 37 Sn( )SM(gDay)ES( Parser)EA()EH(
+ )0 2 34 H(6.8)WB 84 Sn()WB 38 Sn( )SM(gDay)ES( Parser)EA()EH(
)0 P(The return type of the )SM(gday_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::gday)ES( which repre)HY(sents)YH( a day of the month with
an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 22 68 PR(namespace xml_schema
{
@@ -19771,14 +19789,14 @@ private:
operator!= \201const gday&, const gday&\202;
})RP(
- )0 2 34 H(6.9)WB 83 Sn()WB 38 Sn( )SM(gMonth)ES( Parser)EA()EH(
+ )0 2 35 H(6.9)WB 85 Sn()WB 39 Sn( )SM(gMonth)ES( Parser)EA()EH(
)0 P(The return type of the )SM(gmonth_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::gmonth)ES( which repre)HY(sents)YH( a month of the year
with an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 22 72 PR(namespace xml_schema
{
@@ -19803,14 +19821,14 @@ private:
operator!= \201const gmonth&, const gmonth&\202;
})RP(
- )0 2 35 H(6.10)WB 84 Sn()WB 39 Sn( )SM(gMon)HY(th)HY(Day)YH()ES( Parser)EA()EH(
+ )0 2 36 H(6.10)WB 86 Sn()WB 40 Sn( )SM(gMon)HY(th)HY(Day)YH()ES( Parser)EA()EH(
)0 P(The return type of the )SM(gmonth_day_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::gmonth_day)ES( which repre)HY(sents)YH( a day and a month
of the year with an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 28 58 PR(namespace xml_schema
{
@@ -19841,14 +19859,14 @@ private:
operator!= \201const gmonth_day&, const gmonth_day&\202;
})RP(
- )0 2 36 H(6.11)WB 85 Sn()WB 40 Sn( )SM(gYear)ES( Parser)EA()EH(
+ )0 2 37 H(6.11)WB 87 Sn()WB 41 Sn( )SM(gYear)ES( Parser)EA()EH(
)0 P(The return type of the )SM(gyear_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::gyear)ES( which repre)HY(sents)YH( a year with
an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 22 59 PR(namespace xml_schema
{
@@ -19873,14 +19891,14 @@ private:
operator!= \201const gyear&, const gyear&\202;
})RP(
- )0 2 37 H(6.12)WB 86 Sn()WB 41 Sn( )SM(gYear)HY(Month)YH()ES( Parser)EA()EH(
+ )0 2 38 H(6.12)WB 88 Sn()WB 42 Sn( )SM(gYear)HY(Month)YH()ES( Parser)EA()EH(
)0 P(The return type of the )SM(gyear_month_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::gyear_month)ES( which repre)HY(sents)YH( a year and a month
with an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 28 55 PR(namespace xml_schema
{
@@ -19912,14 +19930,14 @@ private:
})RP(
- )0 2 38 H(6.13)WB 87 Sn()WB 42 Sn( )SM(time)ES( Parser)EA()EH(
+ )0 2 39 H(6.13)WB 89 Sn()WB 43 Sn( )SM(time)ES( Parser)EA()EH(
)0 P(The return type of the )SM(time_pimpl)ES( parser imple)HY(men)HY(ta)HY(tion)YH(
is )SM(xml_schema::time)ES( which repre)HY(sents)YH( hours, minutes,
and seconds with an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 33 1 A(Section 6.4, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 34 1 A(Section 6.4, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")34 0 TN TL()Ec /AF f D(.)EP(
) 34 72 PR(namespace xml_schema
{
@@ -19960,25 +19978,25 @@ private:
- )0 1 39 H(7)WB 88 Sn()WB 43 Sn( Docu)HY(ment)YH( Parser and Error Handling)EA()EH(
+ )0 1 40 H(7)WB 90 Sn()WB 44 Sn( Docu)HY(ment)YH( Parser and Error Handling)EA()EH(
)0 P(In this chapter we will discuss the )SM(xml_schema::docu)HY(ment)YH()ES(
type as well as the error handling mech)HY(a)HY(nisms)YH( provided by the mapping
in more detail. As mentioned in )0 18 1 A(Section 3.4,
"Connect)HY(ing)YH( the Parsers Together")18 0 TN TL()Ec /AF f D(, the inter)HY(face)YH( of
)SM(xml_schema::docu)HY(ment)YH()ES( depends on the under)HY(ly)HY(ing)YH( XML
- parser selected \201)0 25 1 A(Section 5.2, "Under)HY(ly)HY(ing)YH( XML
- Parser")25 0 TN TL()Ec /AF f D(\202. The follow)HY(ing)YH( sections describe the
+ parser selected \201)0 26 1 A(Section 5.3, "Under)HY(ly)HY(ing)YH( XML
+ Parser")26 0 TN TL()Ec /AF f D(\202. The follow)HY(ing)YH( sections describe the
)SM(docu)HY(ment)YH()ES( type inter)HY(face)YH( for Xerces-C++ and
Expat as under)HY(ly)HY(ing)YH( parsers.)EP(
- )0 2 40 H(7.1)WB 89 Sn()WB 44 Sn( Xerces-C++ Docu)HY(ment)YH( Parser)EA()EH(
+ )0 2 41 H(7.1)WB 91 Sn()WB 45 Sn( Xerces-C++ Docu)HY(ment)YH( Parser)EA()EH(
)0 P(When Xerces-C++ is used as the under)HY(ly)HY(ing)YH( XML parser, the
)SM(docu)HY(ment)YH()ES( type has the follow)HY(ing)YH( inter)HY(face)YH(. Note that
if the char)HY(ac)HY(ter)YH( type is )SM(wchar_t)ES(, then the string type
in the inter)HY(face)YH( becomes )SM(std::wstring)ES(
- \201see )0 24 1 A(Section 5.1, "Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH(")24 0 TN TL()Ec /AF f D(\202.)EP(
+ \201see )0 25 1 A(Section 5.2, "Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH(")25 0 TN TL()Ec /AF f D(\202.)EP(
) 248 72 PR(namespace xml_schema
{
@@ -20238,7 +20256,7 @@ private:
)SM(poly)HY(mor)HY(phic)YH()ES(, spec)HY(i)HY(fies)YH( whether the XML docu)HY(ments)YH(
being parsed use poly)HY(mor)HY(phism)YH(. For more infor)HY(ma)HY(tion)YH( on support
for XML Schema poly)HY(mor)HY(phism)YH( in the C++/Parser mapping refer
- to )0 27 1 A(Section 5.4, "Support for Poly)HY(mor)HY(phism)YH(")27 0 TN TL()Ec /AF f D(.)EP(
+ to )0 28 1 A(Section 5.5, "Support for Poly)HY(mor)HY(phism)YH(")28 0 TN TL()Ec /AF f D(.)EP(
)0 P(The rest of the )SM(docu)HY(ment)YH()ES( inter)HY(face)YH( consists of over)HY(loaded)YH(
)SM(parse\201\202)ES( func)HY(tions)YH(. The last two argu)HY(ments)YH( in each of these
@@ -20262,16 +20280,16 @@ private:
Other)HY(wise)YH( the system id is used.)EP(
)0 P(The error handling mech)HY(a)HY(nisms)YH( employed by the )SM(docu)HY(ment)YH()ES(
- parser are described in )0 46 1 A(Section 7.3, "Error
- Handling")46 0 TN TL()Ec /AF f D(.)EP(
+ parser are described in )0 47 1 A(Section 7.3, "Error
+ Handling")47 0 TN TL()Ec /AF f D(.)EP(
- )0 2 41 H(7.2)WB 90 Sn()WB 45 Sn( Expat Docu)HY(ment)YH( Parser)EA()EH(
+ )0 2 42 H(7.2)WB 92 Sn()WB 46 Sn( Expat Docu)HY(ment)YH( Parser)EA()EH(
)0 P(When Expat is used as the under)HY(ly)HY(ing)YH( XML parser, the
)SM(docu)HY(ment)YH()ES( type has the follow)HY(ing)YH( inter)HY(face)YH(. Note that
if the char)HY(ac)HY(ter)YH( type is )SM(wchar_t)ES(, then the string type
in the inter)HY(face)YH( becomes )SM(std::wstring)ES(
- \201see )0 24 1 A(Section 5.1, "Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH(")24 0 TN TL()Ec /AF f D(\202.)EP(
+ \201see )0 25 1 A(Section 5.2, "Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH(")25 0 TN TL()Ec /AF f D(\202.)EP(
) 123 72 PR(namespace xml_schema
{
@@ -20406,7 +20424,7 @@ private:
)SM(poly)HY(mor)HY(phic)YH()ES(, spec)HY(i)HY(fies)YH( whether the XML docu)HY(ments)YH(
being parsed use poly)HY(mor)HY(phism)YH(. For more infor)HY(ma)HY(tion)YH( on support
for XML Schema poly)HY(mor)HY(phism)YH( in the C++/Parser mapping refer
- to )0 27 1 A(Section 5.4, "Support for Poly)HY(mor)HY(phism)YH(")27 0 TN TL()Ec /AF f D(.)EP(
+ to )0 28 1 A(Section 5.5, "Support for Poly)HY(mor)HY(phism)YH(")28 0 TN TL()Ec /AF f D(.)EP(
)0 P(A number of over)HY(loaded)YH( )SM(parse\201\202)ES( func)HY(tions)YH( have the
)SM(system_id)ES( and )SM(public_id)ES( argu)HY(ments)YH(. The
@@ -20450,11 +20468,11 @@ result_type result \201root_p.post_xxx \201\202\202;)RP(
)EP(
)0 P(The error handling mech)HY(a)HY(nisms)YH( employed by the )SM(docu)HY(ment)YH()ES(
- parser are described in )0 46 1 A(Section 7.3, "Error
- Handling")46 0 TN TL()Ec /AF f D(.)EP(
+ parser are described in )0 47 1 A(Section 7.3, "Error
+ Handling")47 0 TN TL()Ec /AF f D(.)EP(
- )0 2 42 H(7.3)WB 91 Sn()WB 46 Sn( Error Handling)EA()EH(
+ )0 2 43 H(7.3)WB 93 Sn()WB 47 Sn( Error Handling)EA()EH(
)0 P(There are three cate)HY(gories)YH( of errors that can result from running
a parser on an XML docu)HY(ment)YH(: System, XML, and Appli)HY(ca)HY(tion)YH(.
@@ -20548,8 +20566,8 @@ main \201int argc, char* argv[]\202
char)HY(ac)HY(ter)YH( type is )SM(wchar_t)ES(, then the string type
and output stream type in the defi)HY(ni)HY(tion)YH( become
)SM(std::wstring)ES( and )SM(std::wostream)ES(,
- respec)HY(tively)YH( \201see )0 24 1 A(Section 5.1, "Char)HY(ac)HY(ter)YH( Type
- and Encod)HY(ing)YH(")24 0 TN TL()Ec /AF f D(\202.)EP(
+ respec)HY(tively)YH( \201see )0 25 1 A(Section 5.2, "Char)HY(ac)HY(ter)YH( Type
+ and Encod)HY(ing)YH(")25 0 TN TL()Ec /AF f D(\202.)EP(
) 82 51 PR(namespace xml_schema
{
@@ -20657,7 +20675,7 @@ main \201int argc, char* argv[]\202
listing presents the defi)HY(ni)HY(tion)YH( of the )SM(error_handler)ES(
inter)HY(face)YH(. Note that if the char)HY(ac)HY(ter)YH( type is )SM(wchar_t)ES(,
then the string type in the inter)HY(face)YH( becomes )SM(std::wstring)ES(
- \201see )0 24 1 A(Section 5.1, "Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH(")24 0 TN TL()Ec /AF f D(\202.)EP(
+ \201see )0 25 1 A(Section 5.2, "Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH(")25 0 TN TL()Ec /AF f D(\202.)EP(
) 24 44 PR(namespace xml_schema
{
@@ -20697,7 +20715,7 @@ main \201int argc, char* argv[]\202
- )0 1 43 H(Appendix)WB 92 Sn()WB 47 Sn( A \236 Supported XML Schema Constructs)EA()EH(
+ )0 1 44 H(Appendix)WB 94 Sn()WB 48 Sn( A \236 Supported XML Schema Constructs)EA()EH(
)0 P(The C++/Parser mapping supports vali)HY(da)HY(tion)YH( of the follow)HY(ing)YH( W3C XML
Schema constructs in the gener)HY(ated)YH( code.)EP(
@@ -20710,4 +20728,4 @@ main \201int argc, char* argv[]\202
)BR(
)WB NL
-/TE t D NP TU PM 0 eq and{/Pn () D showpage}if end restore
+/TE t D NP /OU t D TU PM 1 eq and{/Pn () D showpage}if end restore
diff --git a/xsd/documentation/cxx/parser/guide/figure-1.png b/xsd/doc/cxx/parser/guide/figure-1.png
index 15d1723..15d1723 100644
--- a/xsd/documentation/cxx/parser/guide/figure-1.png
+++ b/xsd/doc/cxx/parser/guide/figure-1.png
Binary files differ
diff --git a/xsd/documentation/cxx/parser/guide/figure-1.svg b/xsd/doc/cxx/parser/guide/figure-1.svg
index d994a79..d994a79 100644
--- a/xsd/documentation/cxx/parser/guide/figure-1.svg
+++ b/xsd/doc/cxx/parser/guide/figure-1.svg
diff --git a/xsd/documentation/cxx/parser/guide/guide.html2ps b/xsd/doc/cxx/parser/guide/guide.html2ps
index 1021e9f..c2f6314 100644
--- a/xsd/documentation/cxx/parser/guide/guide.html2ps
+++ b/xsd/doc/cxx/parser/guide/guide.html2ps
@@ -20,7 +20,7 @@
<h1>&nbsp;</h1>
<h1>&nbsp;</h1>
</div>
- <p>Copyright &copy; 2005-2010 CODE SYNTHESIS TOOLS CC</p>
+ <p>Copyright &copy; 2005-2014 CODE SYNTHESIS TOOLS CC</p>
<p>Permission is granted to copy, distribute and/or modify this
document under the terms of the
diff --git a/xsd/documentation/cxx/parser/guide/index.xhtml b/xsd/doc/cxx/parser/guide/index.xhtml
index b65bcfe..1eef533 100644
--- a/xsd/documentation/cxx/parser/guide/index.xhtml
+++ b/xsd/doc/cxx/parser/guide/index.xhtml
@@ -5,7 +5,7 @@
<head>
<title>C++/Parser Mapping Getting Started Guide</title>
- <meta name="copyright" content="&copy; 2005-2010 Code Synthesis Tools CC"/>
+ <meta name="copyright" content="&copy; 2005-2014 Code Synthesis Tools CC"/>
<meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,parser,validation"/>
<meta name="description" content="C++/Parser Mapping Getting Started Guide"/>
@@ -208,7 +208,7 @@
<div class="title" id="first-title">C++/Parser Mapping</div>
<div class="title" id="second-title">Getting Started Guide</div>
- <p>Copyright &copy; 2005-2010 CODE SYNTHESIS TOOLS CC</p>
+ <p>Copyright &copy; 2005-2014 CODE SYNTHESIS TOOLS CC</p>
<p>Permission is granted to copy, distribute and/or modify this
document under the terms of the
@@ -280,10 +280,11 @@
<tr>
<th>5</th><td><a href="#5">Mapping Configuration</a>
<table class="toc">
- <tr><th>5.1</th><td><a href="#5.1">Character Type and Encoding</a></td></tr>
- <tr><th>5.2</th><td><a href="#5.2">Underlying XML Parser</a></td></tr>
- <tr><th>5.3</th><td><a href="#5.3">XML Schema Validation</a></td></tr>
- <tr><th>5.4</th><td><a href="#5.4">Support for Polymorphism</a></td></tr>
+ <tr><th>5.1</th><td><a href="#5.1">C++ Standard</a></td></tr>
+ <tr><th>5.2</th><td><a href="#5.2">Character Type and Encoding</a></td></tr>
+ <tr><th>5.3</th><td><a href="#5.3">Underlying XML Parser</a></td></tr>
+ <tr><th>5.4</th><td><a href="#5.4">XML Schema Validation</a></td></tr>
+ <tr><th>5.5</th><td><a href="#5.5">Support for Polymorphism</a></td></tr>
</table>
</td>
</tr>
@@ -553,8 +554,8 @@ $ xsd cxx-parser --xml-parser expat hello.xsd
</pre>
<p>The <code>--xml-parser</code> option indicates that we want to
- use Expat as the underlying XML parser (see <a href="#5.2">Section
- 5.2, "Underlying XML Parser"</a>). The XSD compiler produces two
+ use Expat as the underlying XML parser (see <a href="#5.3">Section
+ 5.3, "Underlying XML Parser"</a>). The XSD compiler produces two
C++ files: <code>hello-pskel.hxx</code> and <code>hello-pskel.cxx</code>.
The following code fragment is taken from <code>hello-pskel.hxx</code>;
it should give you an idea about what gets generated:
@@ -1615,8 +1616,13 @@ namespace http://www.example.com/xmlns/my
following map files. The string-based XML Schema types are
mapped to either <code>std::string</code> or
<code>std::wstring</code> depending on the character type
- selected (see <a href="#5.1"> Section 5.1, "Character Type and
- Encoding"</a> for more information).</p>
+ selected (see <a href="#5.2"> Section 5.2, "Character Type and
+ Encoding"</a> for more information). The binary XML Schema
+ types are mapped to either <code>std::auto_ptr&lt;xml_schema::buffer></code>
+ or <code>std::unique_ptr&lt;xml_schema::buffer></code>
+ depending on the C++ standard selected (C++98 or C++11,
+ respectively; refer to the <code>--std</code> XSD compiler
+ command line option for details).</p>
<pre class="type-map">
namespace http://www.w3.org/2001/XMLSchema
@@ -1663,10 +1669,10 @@ namespace http://www.w3.org/2001/XMLSchema
QName xml_schema::qname;
- base64Binary std::auto_ptr&lt;xml_schema::buffer>
- std::auto_ptr&lt;xml_schema::buffer>;
- hexBinary std::auto_ptr&lt;xml_schema::buffer>
- std::auto_ptr&lt;xml_schema::buffer>;
+ base64Binary std::[auto|unique]_ptr&lt;xml_schema::buffer>
+ std::[auto|unique]_ptr&lt;xml_schema::buffer>;
+ hexBinary std::[auto|unique]_ptr&lt;xml_schema::buffer>
+ std::[auto|unique]_ptr&lt;xml_schema::buffer>;
date xml_schema::date;
dateTime xml_schema::date_time;
@@ -1899,9 +1905,9 @@ age: 28
<p>The C++/Parser mapping has a number of configuration parameters that
determine the overall properties and behavior of the generated code.
Configuration parameters are specified with the XSD command line
- options and include the character type that is used by the generated
- code, the underlying XML parser, whether the XML Schema validation
- is performed in the generated code, and support for XML Schema
+ options and include the C++ standard, the character type that is used
+ by the generated code, the underlying XML parser, whether the XML Schema
+ validation is performed in the generated code, and support for XML Schema
polymorphism. This chapter describes these configuration
parameters in more detail. For more ways to configure the generated
code refer to the
@@ -1909,7 +1915,16 @@ age: 28
Compiler Command Line Manual</a>.
</p>
- <h2><a name="5.1">5.1 Character Type and Encoding</a></h2>
+ <h2><a name="5.1">5.1 C++ Standard</a></h2>
+
+ <p>The C++/Parser mapping provides support for ISO/IEC C++ 1998/2003 (C++98)
+ and ISO/IEC C++ 2011 (C++11). To select the C++ standard for the
+ generated code we use the <code>--std</code> XSD compiler command
+ line option. While the majority of the examples in this guide use
+ C++98, support for the new functionality and library components
+ introduced in C++11 are discussed throughout the document.</p>
+
+ <h2><a name="5.2">5.2 Character Type and Encoding</a></h2>
<p>The C++/Parser mapping has built-in support for two character types:
<code>char</code> and <code>wchar_t</code>. You can select the
@@ -1940,7 +1955,7 @@ age: 28
all three (object mode, input XML, and output XML) can have different
encodings.</p>
- <h2><a name="5.2">5.2 Underlying XML Parser</a></h2>
+ <h2><a name="5.3">5.3 Underlying XML Parser</a></h2>
<p>The C++/Parser mapping can be used with either Xerces-C++ or Expat
as the underlying XML parser. You can select the XML parser with
@@ -1954,7 +1969,7 @@ age: 28
in <a href="#7">Chapter 7, "Document Parser and Error Handling"</a>.</p>
- <h2><a name="5.3">5.3 XML Schema Validation</a></h2>
+ <h2><a name="5.4">5.4 XML Schema Validation</a></h2>
<p>The C++/Parser mapping provides support for validating a
commonly-used subset of W3C XML Schema in the generated code.
@@ -1963,14 +1978,14 @@ age: 28
<p>By default validation in the generated code is disabled if
the underlying XML parser is validating (Xerces-C++) and
- enabled otherwise (Expat). See <a href="#5.2">Section 5.2,
+ enabled otherwise (Expat). See <a href="#5.3">Section 5.3,
"Underlying XML Parser"</a> for more information about
the underlying XML parser. You can override the default
behavior with the <code>--generate-validation</code>
and <code>--suppress-validation</code> command line options.</p>
- <h2><a name="5.4">5.4 Support for Polymorphism</a></h2>
+ <h2><a name="5.5">5.5 Support for Polymorphism</a></h2>
<p>By default the XSD compiler generates non-polymorphic code. If your
vocabulary uses XML Schema polymorphism in the form of <code>xsi:type</code>
@@ -2587,14 +2602,14 @@ private:
<tr>
<td><code>base64Binary</code></td>
<td><code>base64_binary_pimpl</code></td>
- <td><code>std::auto_ptr&lt;xml_schema::buffer></code><br/>
+ <td><code>std::[auto|unique]_ptr&lt; xml_schema::buffer></code><br/>
<a href="#6.3">Section 6.3, "<code>base64Binary</code> and
<code>hexBinary</code> Parsers"</a></td>
</tr>
<tr>
<td><code>hexBinary</code></td>
<td><code>hex_binary_pimpl</code></td>
- <td><code>std::auto_ptr&lt;xml_schema::buffer></code><br/>
+ <td><code>std::[auto|unique]_ptr&lt; xml_schema::buffer></code><br/>
<a href="#6.3">Section 6.3, "<code>base64Binary</code> and
<code>hexBinary</code> Parsers"</a></td>
</tr>
@@ -2738,10 +2753,12 @@ namespace xml_schema
<h2><a name="6.3">6.3 <code>base64Binary</code> and <code>hexBinary</code> Parsers</a></h2>
<p>The return type of the <code>base64_binary_pimpl</code> and
- <code>hex_binary_pimpl</code> parser implementations is
- <code>std::auto_ptr&lt;xml_schema::buffer></code>. The
- <code>xml_schema::buffer</code> type represents a binary buffer
- and its interface is presented below.</p>
+ <code>hex_binary_pimpl</code> parser implementations is either
+ <code>std::auto_ptr&lt;xml_schema::buffer></code> (C++98) or
+ <code>std::unique_ptr&lt;xml_schema::buffer></code> (C++11),
+ depending on the C++ standard selected (<code>--std</code> XSD
+ compiler option). The <code>xml_schema::buffer</code> type
+ represents a binary buffer and its interface is presented below.</p>
<pre class="c++">
namespace xml_schema
@@ -3304,7 +3321,7 @@ namespace xml_schema
in more detail. As mentioned in <a href="#3.4">Section 3.4,
"Connecting the Parsers Together"</a>, the interface of
<code>xml_schema::document</code> depends on the underlying XML
- parser selected (<a href="#5.2">Section 5.2, "Underlying XML
+ parser selected (<a href="#5.3">Section 5.3, "Underlying XML
Parser"</a>). The following sections describe the
<code>document</code> type interface for Xerces-C++ and
Expat as underlying parsers.</p>
@@ -3315,7 +3332,7 @@ namespace xml_schema
<code>document</code> type has the following interface. Note that
if the character type is <code>wchar_t</code>, then the string type
in the interface becomes <code>std::wstring</code>
- (see <a href="#5.1">Section 5.1, "Character Type and Encoding"</a>).</p>
+ (see <a href="#5.2">Section 5.2, "Character Type and Encoding"</a>).</p>
<pre class="c++">
namespace xml_schema
@@ -3577,7 +3594,7 @@ namespace xml_schema
<code>polymorphic</code>, specifies whether the XML documents
being parsed use polymorphism. For more information on support
for XML Schema polymorphism in the C++/Parser mapping refer
- to <a href="#5.4">Section 5.4, "Support for Polymorphism"</a>.</p>
+ to <a href="#5.5">Section 5.5, "Support for Polymorphism"</a>.</p>
<p>The rest of the <code>document</code> interface consists of overloaded
<code>parse()</code> functions. The last two arguments in each of these
@@ -3610,7 +3627,7 @@ namespace xml_schema
<code>document</code> type has the following interface. Note that
if the character type is <code>wchar_t</code>, then the string type
in the interface becomes <code>std::wstring</code>
- (see <a href="#5.1">Section 5.1, "Character Type and Encoding"</a>).</p>
+ (see <a href="#5.2">Section 5.2, "Character Type and Encoding"</a>).</p>
<pre class="c++">
namespace xml_schema
@@ -3747,7 +3764,7 @@ namespace xml_schema
<code>polymorphic</code>, specifies whether the XML documents
being parsed use polymorphism. For more information on support
for XML Schema polymorphism in the C++/Parser mapping refer
- to <a href="#5.4">Section 5.4, "Support for Polymorphism"</a>.</p>
+ to <a href="#5.5">Section 5.5, "Support for Polymorphism"</a>.</p>
<p>A number of overloaded <code>parse()</code> functions have the
<code>system_id</code> and <code>public_id</code> arguments. The
@@ -3895,7 +3912,7 @@ main (int argc, char* argv[])
character type is <code>wchar_t</code>, then the string type
and output stream type in the definition become
<code>std::wstring</code> and <code>std::wostream</code>,
- respectively (see <a href="#5.1">Section 5.1, "Character Type
+ respectively (see <a href="#5.2">Section 5.2, "Character Type
and Encoding"</a>).</p>
<pre class="c++">
@@ -4008,7 +4025,7 @@ main (int argc, char* argv[])
listing presents the definition of the <code>error_handler</code>
interface. Note that if the character type is <code>wchar_t</code>,
then the string type in the interface becomes <code>std::wstring</code>
- (see <a href="#5.1">Section 5.1, "Character Type and Encoding"</a>).</p>
+ (see <a href="#5.2">Section 5.2, "Character Type and Encoding"</a>).</p>
<pre class="c++">
namespace xml_schema
diff --git a/xsd/documentation/cxx/parser/guide/makefile b/xsd/doc/cxx/parser/guide/makefile
index f78a9f9..127a0fa 100644
--- a/xsd/documentation/cxx/parser/guide/makefile
+++ b/xsd/doc/cxx/parser/guide/makefile
@@ -1,6 +1,5 @@
-# file : documentation/cxx/parser/guide/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# file : doc/cxx/parser/guide/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -9,7 +8,7 @@ default := $(out_base)/
install := $(out_base)/.install
dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
-cleandoc := $(out_base)/.cleandoc
+clean := $(out_base)/.clean
# Build.
#
@@ -26,7 +25,7 @@ $(out_base)/cxx-parser-guide.pdf: $(out_base)/cxx-parser-guide.ps | $(out_base)/
# Install & Dist.
#
-$(install): path := $(subst $(src_root)/documentation/,,$(src_base))
+$(install): path := $(subst $(src_root)/doc/,,$(src_base))
$(dist): path := $(subst $(src_root)/,,$(src_base))
$(install): $(out_base)/cxx-parser-guide.ps $(out_base)/cxx-parser-guide.pdf
@@ -46,9 +45,11 @@ $(dist-win): $(dist)
# Clean
#
-$(cleandoc):
+$(clean):
+ifneq ($(xsd_clean_gen),n)
$(call message,rm $$1,rm -f $$1,$(out_base)/cxx-parser-guide.ps)
$(call message,rm $$1,rm -f $$1,$(out_base)/cxx-parser-guide.pdf)
+endif
# How to.
#
diff --git a/xsd/documentation/cxx/parser/makefile b/xsd/doc/cxx/parser/makefile
index c0394dc..1e1c22c 100644
--- a/xsd/documentation/cxx/parser/makefile
+++ b/xsd/doc/cxx/parser/makefile
@@ -1,6 +1,5 @@
-# file : documentation/cxx/parser/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# file : doc/cxx/parser/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
@@ -11,12 +10,12 @@ default := $(out_base)/
install := $(out_base)/.install
dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
-cleandoc := $(out_base)/.cleandoc
+clean := $(out_base)/.clean
$(default): $(addprefix $(out_base)/,$(addsuffix /,$(docs)))
$(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(docs)))
$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(docs)))
$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(docs)))
-$(cleandoc): $(addprefix $(out_base)/,$(addsuffix /.cleandoc,$(docs)))
+$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(docs)))
$(foreach m,$(docs),$(call import,$(src_base)/$m/makefile))
diff --git a/xsd/doc/cxx/tree/guide/cxx-tree-guide.pdf b/xsd/doc/cxx/tree/guide/cxx-tree-guide.pdf
new file mode 100644
index 0000000..3e19f3e
--- /dev/null
+++ b/xsd/doc/cxx/tree/guide/cxx-tree-guide.pdf
Binary files differ
diff --git a/xsd/documentation/cxx/tree/guide/cxx-tree-guide.ps b/xsd/doc/cxx/tree/guide/cxx-tree-guide.ps
index de3f351..a6c4a2b 100644
--- a/xsd/documentation/cxx/tree/guide/cxx-tree-guide.ps
+++ b/xsd/doc/cxx/tree/guide/cxx-tree-guide.ps
@@ -1,6 +1,6 @@
%!PS
%%Title: C++/Tree Mapping Getting Started Guide
-%%Creator: html2ps version 1.0 beta5
+%%Creator: html2ps version 1.0 beta7
%%EndComments
save
2000 dict begin
@@ -37,7 +37,7 @@ save
/EU [-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0] D
/NO f D
/YY [[{()}{ h }][{ h }{()}][{()}{()}]] D
-/ZZ [[{ (April 2010) }{ Pn }][{ Pn }{ (April 2010) }][{ Ti }{ Ti }]] D
+/ZZ [[{ (July 2014) }{ Pn }][{ Pn }{ (July 2014) }][{ Ti }{ Ti }]] D
/Ts EZ 0 get D
/TU f D
/Xp t D
@@ -104,7 +104,7 @@ save
) 0 1 -1 H ( ) EH (
) 0 1 -1 H ( ) EH (
) Ea()BR (
- ) 0 P (Copyright © 2005-2010 CODE SYNTHESIS TOOLS CC) EP (
+ ) 0 P (Copyright © 2005-2014 CODE SYNTHESIS TOOLS CC) EP (
) 0 P (Permission is granted to copy, distribute and/or modify this
document under the terms of the
@@ -667,14 +667,14 @@ WF{FL{reencodeISO D}forall}{4 1 FL length 1 sub{FL E get reencodeISO D}for}ie
/Cb Db D
/Ct Dt D
/Cl Dl D
-[/Creator (html2ps version 1.0 beta5) /Author () /Keywords (xsd, xml, schema, c++, mapping, data, binding, parsing, serialization, validation) /Subject ()
+[/Creator (html2ps version 1.0 beta7) /Author () /Keywords (xsd, xml, schema, c++, mapping, data, binding, parsing, serialization, validation) /Subject ()
/Title (C++/Tree Mapping Getting Started Guide) /DOCINFO pdfmark
/ND 1 D
-/HN [(1) (1) (1) (1) (1) (1) (1) (2) (2) (3) (3) (5) (6) (7) (8) (11) (13) (15)
-(16) (16) (16) (17) (17) (20) (22) (24) (26) (29) (??) (31) (32) (34) (36)
-(37) (38) (1) (1) (1) (1) (2) (2) (3) (3) (5) (6) (7) (8) (11) (13) (15)
-(16) (16) (16) (17) (17) (20) (22) (24) (26) (29) (31) (32) (34) (36) (37)
-(38)] D
+/HN [(1) (1) (1) (1) (1) (1) (1) (1) (2) (3) (3) (5) (7) (7) (8) (11) (13) (15)
+(16) (16) (16) (17) (17) (18) (20) (23) (24) (26) (29) (??) (32) (33) (35)
+(36) (37) (38) (1) (1) (1) (1) (1) (2) (3) (3) (5) (7) (7) (8) (11) (13)
+(15) (16) (16) (16) (17) (17) (18) (20) (23) (24) (26) (29) (32) (33) (35)
+(36) (37) (38)] D
/h0 [()(Table of Contents)] D
/h1 [(1\240\240)(Preface)] D
/h2 [(1.1\240\240)(About This Document)] D
@@ -691,26 +691,27 @@ WF{FL{reencodeISO D}forall}{4 1 FL length 1 sub{FL E get reencodeISO D}for}ie
/h13 [(3.6\240\240)(2.6 Selecting Naming Convention)] D
/h14 [(3.7\240\240)(2.7 Generating Documentation)] D
/h15 [(4\240\240)(3 Overall Mapping Configuration)] D
-/h16 [(4.1\240\240)(3.1 Character Type and Encoding)] D
-/h17 [(4.2\240\240)(3.2 Support for Polymorphism)] D
-/h18 [(4.3\240\240)(3.3 Namespace Mapping)] D
-/h19 [(4.4\240\240)(3.4 Thread Safety)] D
-/h20 [(5\240\240)(4 Working with Object Models)] D
-/h21 [(5.1\240\240)(4.1 Attribute and Element Cardinalities)] D
-/h22 [(5.2\240\240)(4.2 Accessing the Object Model)] D
-/h23 [(5.3\240\240)(4.3 Modifying the Object Model)] D
-/h24 [(5.4\240\240)(4.4 Creating the Object Model from Scratch)] D
-/h25 [(5.5\240\240)(4.5 Mapping for the Built-in XML Schema Types)] D
-/h26 [(6\240\240)(5 Parsing)] D
-/h27 [(6.1\240\240)(5.1 XML Schema Validation and Searching)] D
-/h28 [(6.2\240\240)(5.2 Error Handling)] D
-/h29 [(7\240\240)(6 Serialization)] D
-/h30 [(7.1\240\240)(6.1 Namespace and Schema Information)] D
-/h31 [(7.2\240\240)(6.2 Error Handling)] D
-/Hr [35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
-57 58 59 60 61 62 63 64 65]D
-/HV [1 2 2 1 2 2 1 2 2 2 2 2 2 2 1 2 2 2 2 1 2 2 2 2 2 1 2 2 1 2 2]D
-/Cn [2 0 0 2 0 0 7 0 0 0 0 0 0 0 4 0 0 0 0 5 0 0 0 0 0 2 0 0 2 0 0]D
+/h16 [(4.1\240\240)(3.1 C++ Standard)] D
+/h17 [(4.2\240\240)(3.2 Character Type and Encoding)] D
+/h18 [(4.3\240\240)(3.3 Support for Polymorphism)] D
+/h19 [(4.4\240\240)(3.4 Namespace Mapping)] D
+/h20 [(4.5\240\240)(3.5 Thread Safety)] D
+/h21 [(5\240\240)(4 Working with Object Models)] D
+/h22 [(5.1\240\240)(4.1 Attribute and Element Cardinalities)] D
+/h23 [(5.2\240\240)(4.2 Accessing the Object Model)] D
+/h24 [(5.3\240\240)(4.3 Modifying the Object Model)] D
+/h25 [(5.4\240\240)(4.4 Creating the Object Model from Scratch)] D
+/h26 [(5.5\240\240)(4.5 Mapping for the Built-in XML Schema Types)] D
+/h27 [(6\240\240)(5 Parsing)] D
+/h28 [(6.1\240\240)(5.1 XML Schema Validation and Searching)] D
+/h29 [(6.2\240\240)(5.2 Error Handling)] D
+/h30 [(7\240\240)(6 Serialization)] D
+/h31 [(7.1\240\240)(6.1 Namespace and Schema Information)] D
+/h32 [(7.2\240\240)(6.2 Error Handling)] D
+/Hr [36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
+58 59 60 61 62 63 64 65 66 67]D
+/HV [1 2 2 1 2 2 1 2 2 2 2 2 2 2 1 2 2 2 2 2 1 2 2 2 2 2 1 2 2 1 2 2]D
+/Cn [2 0 0 2 0 0 7 0 0 0 0 0 0 0 5 0 0 0 0 0 5 0 0 0 0 0 2 0 0 2 0 0]D
Hr length 0 gt{[/PageMode /UseOutlines /DOCVIEW pdfmark}if
/Hn 1 D
0 1 Hr length 1 sub{
@@ -727,15 +728,15 @@ ET RC ZF
/R3 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/guide/cxx-parser-guide.ps) D
/R1 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/) D
/R2 (http://wiki.codesynthesis.com/Tree/Customization_guide) D
-/R3 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/dbxml/) D
-/R4 (http://wiki.codesynthesis.com/Tree/FAQ) D
-/R5 (http://www.codesynthesis.com/projects/xsd/documentation/xsd.xhtml) D
-/R6 (http://www.codesynthesis.com/mailman/listinfo/xsd-users) D
-/R7 (http://www.codesynthesis.com/pipermail/xsd-users/) D
-/R8 (http://www.w3.org/TR/xmlschema-0/) D
-/R9 (http://www.doxygen.org/) D
-/R10 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/hello/html/annotated.html) D
-/R11 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/#2.11) D
+/R3 (http://wiki.codesynthesis.com/Tree/FAQ) D
+/R4 (http://www.codesynthesis.com/projects/xsd/documentation/xsd.xhtml) D
+/R5 (http://www.codesynthesis.com/mailman/listinfo/xsd-users) D
+/R6 (http://www.codesynthesis.com/pipermail/xsd-users/) D
+/R7 (http://www.w3.org/TR/xmlschema-0/) D
+/R8 (http://www.doxygen.org/) D
+/R9 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/hello/html/annotated.html) D
+/R10 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/#2.11) D
+/R11 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/#2.8.4) D
/R12 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/#2.8) D
/R13 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/#2.5) D
/R14 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/#2.9) D
@@ -1388,7 +1389,7 @@ ET RC ZF
] D
0 1 0{TS}for RC ZF
/Ba f D /BO 0 D Bs
-/UR (/home/boris/work/xsd/xsd/documentation/cxx/tree/guide/index.xhtml) D
+/UR (/home/boris/work/xsd/xsd/doc/cxx/tree/guide/index.xhtml) D
/Ti (C++/Tree Mapping Getting Started Guide) D
/Au () D
/Df f D
@@ -1397,42 +1398,43 @@ Pt
/BO 0 D TC /Ba f D Bs /AU f D /UR () D RC ZF
tH WB
ND 1 gt{Ts 3 mul Np 0()0 C()BD(C++/Tree Mapping Getting Started Guide)ES()0 1 TN()EA()BN}if
-1 NH le{35(1\240\240)1 C(Preface)WB 3 Sn()35 1 TN()EA()BN}if
-2 NH le{36(1.1\240\240)2 C(About)WB 4 Sn( This Docu)HY(ment)YH()36 1 TN()EA()BN}if
-2 NH le{37(1.2\240\240)2 C(More)WB 5 Sn( Infor)HY(ma)HY(tion)YH()37 1 TN()EA()BN}if
-1 NH le{38(2\240\240)1 C(1)WB 6 Sn( Intro)HY(duc)HY(tion)YH()38 1 TN()EA()BN}if
-2 NH le{39(2.1\240\240)2 C(1.1)WB 7 Sn( Mapping Overview)39 1 TN()EA()BN}if
-2 NH le{40(2.2\240\240)2 C(1.2)WB 8 Sn( Bene)HY(fits)YH()40 1 TN()EA()BN}if
-1 NH le{41(3\240\240)1 C(2)WB 9 Sn( Hello World Example)41 1 TN()EA()BN}if
-2 NH le{42(3.1\240\240)2 C(2.1)WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)42 1 TN()EA()BN}if
-2 NH le{43(3.2\240\240)2 C(2.2)WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)43 1 TN()EA()BN}if
-2 NH le{44(3.3\240\240)2 C(2.3)WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)44 1 TN()EA()BN}if
-2 NH le{45(3.4\240\240)2 C(2.4)WB 13 Sn( Compil)HY(ing)YH( and Running)45 1 TN()EA()BN}if
-2 NH le{46(3.5\240\240)2 C(2.5)WB 14 Sn( Adding Seri)HY(al)HY(iza)HY(tion)YH()46 1 TN()EA()BN}if
-2 NH le{47(3.6\240\240)2 C(2.6)WB 15 Sn( Select)HY(ing)YH( Naming Conven)HY(tion)YH()47 1 TN()EA()BN}if
-2 NH le{48(3.7\240\240)2 C(2.7)WB 16 Sn( Gener)HY(at)HY(ing)YH( Docu)HY(men)HY(ta)HY(tion)YH()48 1 TN()EA()BN}if
-1 NH le{49(4\240\240)1 C(3)WB 17 Sn( Overall Mapping Config)HY(u)HY(ra)HY(tion)YH()49 1 TN()EA()BN}if
-2 NH le{50(4.1\240\240)2 C(3.1)WB 18 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()50 1 TN()EA()BN}if
-2 NH le{51(4.2\240\240)2 C(3.2)WB 19 Sn( Support for Poly)HY(mor)HY(phism)YH()51 1 TN()EA()BN}if
-2 NH le{52(4.3\240\240)2 C(3.3)WB 20 Sn( Names)HY(pace)YH( Mapping)52 1 TN()EA()BN}if
-2 NH le{53(4.4\240\240)2 C(3.4)WB 21 Sn( Thread Safety)53 1 TN()EA()BN}if
-1 NH le{54(5\240\240)1 C(4)WB 22 Sn( Working with Object Models)54 1 TN()EA()BN}if
-2 NH le{55(5.1\240\240)2 C(4.1)WB 23 Sn( Attribute and Element Cardi)HY(nal)HY(i)HY(ties)YH()55 1 TN()EA()BN}if
-2 NH le{56(5.2\240\240)2 C(4.2)WB 24 Sn( Access)HY(ing)YH( the Object Model)56 1 TN()EA()BN}if
-2 NH le{57(5.3\240\240)2 C(4.3)WB 25 Sn( Modi)HY(fy)HY(ing)YH( the Object Model)57 1 TN()EA()BN}if
-2 NH le{58(5.4\240\240)2 C(4.4)WB 26 Sn( Creat)HY(ing)YH( the Object Model from Scratch)58 1 TN()EA()BN}if
-2 NH le{59(5.5\240\240)2 C(4.5)WB 27 Sn( Mapping for the Built-in XML Schema Types)59 1 TN()EA()BN}if
-1 NH le{60(6\240\240)1 C(5)WB 29 Sn( Parsing)60 1 TN()EA()BN}if
-2 NH le{61(6.1\240\240)2 C(5.1)WB 30 Sn( XML Schema Vali)HY(da)HY(tion)YH( and Search)HY(ing)YH()61 1 TN()EA()BN}if
-2 NH le{62(6.2\240\240)2 C(5.2)WB 31 Sn( Error Handling)62 1 TN()EA()BN}if
-1 NH le{63(7\240\240)1 C(6)WB 32 Sn( Seri)HY(al)HY(iza)HY(tion)YH()63 1 TN()EA()BN}if
-2 NH le{64(7.1\240\240)2 C(6.1)WB 33 Sn( Names)HY(pace)YH( and Schema Infor)HY(ma)HY(tion)YH()64 1 TN()EA()BN}if
-2 NH le{65(7.2\240\240)2 C(6.2)WB 34 Sn( Error Handling)65 1 TN()EA()BN}if
+1 NH le{36(1\240\240)1 C(Preface)WB 3 Sn()36 1 TN()EA()BN}if
+2 NH le{37(1.1\240\240)2 C(About)WB 4 Sn( This Docu)HY(ment)YH()37 1 TN()EA()BN}if
+2 NH le{38(1.2\240\240)2 C(More)WB 5 Sn( Infor)HY(ma)HY(tion)YH()38 1 TN()EA()BN}if
+1 NH le{39(2\240\240)1 C(1)WB 6 Sn( Intro)HY(duc)HY(tion)YH()39 1 TN()EA()BN}if
+2 NH le{40(2.1\240\240)2 C(1.1)WB 7 Sn( Mapping Overview)40 1 TN()EA()BN}if
+2 NH le{41(2.2\240\240)2 C(1.2)WB 8 Sn( Bene)HY(fits)YH()41 1 TN()EA()BN}if
+1 NH le{42(3\240\240)1 C(2)WB 9 Sn( Hello World Example)42 1 TN()EA()BN}if
+2 NH le{43(3.1\240\240)2 C(2.1)WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)43 1 TN()EA()BN}if
+2 NH le{44(3.2\240\240)2 C(2.2)WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)44 1 TN()EA()BN}if
+2 NH le{45(3.3\240\240)2 C(2.3)WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)45 1 TN()EA()BN}if
+2 NH le{46(3.4\240\240)2 C(2.4)WB 13 Sn( Compil)HY(ing)YH( and Running)46 1 TN()EA()BN}if
+2 NH le{47(3.5\240\240)2 C(2.5)WB 14 Sn( Adding Seri)HY(al)HY(iza)HY(tion)YH()47 1 TN()EA()BN}if
+2 NH le{48(3.6\240\240)2 C(2.6)WB 15 Sn( Select)HY(ing)YH( Naming Conven)HY(tion)YH()48 1 TN()EA()BN}if
+2 NH le{49(3.7\240\240)2 C(2.7)WB 16 Sn( Gener)HY(at)HY(ing)YH( Docu)HY(men)HY(ta)HY(tion)YH()49 1 TN()EA()BN}if
+1 NH le{50(4\240\240)1 C(3)WB 17 Sn( Overall Mapping Config)HY(u)HY(ra)HY(tion)YH()50 1 TN()EA()BN}if
+2 NH le{51(4.1\240\240)2 C(3.1)WB 18 Sn( C++ Stan)HY(dard)YH()51 1 TN()EA()BN}if
+2 NH le{52(4.2\240\240)2 C(3.2)WB 19 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()52 1 TN()EA()BN}if
+2 NH le{53(4.3\240\240)2 C(3.3)WB 20 Sn( Support for Poly)HY(mor)HY(phism)YH()53 1 TN()EA()BN}if
+2 NH le{54(4.4\240\240)2 C(3.4)WB 21 Sn( Names)HY(pace)YH( Mapping)54 1 TN()EA()BN}if
+2 NH le{55(4.5\240\240)2 C(3.5)WB 22 Sn( Thread Safety)55 1 TN()EA()BN}if
+1 NH le{56(5\240\240)1 C(4)WB 23 Sn( Working with Object Models)56 1 TN()EA()BN}if
+2 NH le{57(5.1\240\240)2 C(4.1)WB 24 Sn( Attribute and Element Cardi)HY(nal)HY(i)HY(ties)YH()57 1 TN()EA()BN}if
+2 NH le{58(5.2\240\240)2 C(4.2)WB 25 Sn( Access)HY(ing)YH( the Object Model)58 1 TN()EA()BN}if
+2 NH le{59(5.3\240\240)2 C(4.3)WB 26 Sn( Modi)HY(fy)HY(ing)YH( the Object Model)59 1 TN()EA()BN}if
+2 NH le{60(5.4\240\240)2 C(4.4)WB 27 Sn( Creat)HY(ing)YH( the Object Model from Scratch)60 1 TN()EA()BN}if
+2 NH le{61(5.5\240\240)2 C(4.5)WB 28 Sn( Mapping for the Built-in XML Schema Types)61 1 TN()EA()BN}if
+1 NH le{62(6\240\240)1 C(5)WB 30 Sn( Parsing)62 1 TN()EA()BN}if
+2 NH le{63(6.1\240\240)2 C(5.1)WB 31 Sn( XML Schema Vali)HY(da)HY(tion)YH( and Search)HY(ing)YH()63 1 TN()EA()BN}if
+2 NH le{64(6.2\240\240)2 C(5.2)WB 32 Sn( Error Handling)64 1 TN()EA()BN}if
+1 NH le{65(7\240\240)1 C(6)WB 33 Sn( Seri)HY(al)HY(iza)HY(tion)YH()65 1 TN()EA()BN}if
+2 NH le{66(7.1\240\240)2 C(6.1)WB 34 Sn( Names)HY(pace)YH( and Schema Infor)HY(ma)HY(tion)YH()66 1 TN()EA()BN}if
+2 NH le{67(7.2\240\240)2 C(6.2)WB 35 Sn( Error Handling)67 1 TN()EA()BN}if
/OU t D /Cb Db D NP Ep ET
/Cb Db D /Ct [16#00 16#00 16#00] D /Cl [16#00 16#00 16#00] D /CL -1 D Ct Sc
/Ba f D /BO 0 D Bs
-/UR (/home/boris/work/xsd/xsd/documentation/cxx/tree/guide/index.xhtml) D
+/UR (/home/boris/work/xsd/xsd/doc/cxx/tree/guide/index.xhtml) D
/Ti (C++/Tree Mapping Getting Started Guide) D
/Au () D
/Df f D
@@ -1444,9 +1446,9 @@ NP RC ZF
)BR()WB 1 Sn( )BR()WB 2 Sn(
- )0 1 0 H(Preface)WB 35 Sn()WB 3 Sn()EA()EH(
+ )0 1 0 H(Preface)WB 36 Sn()WB 3 Sn()EA()EH(
- )0 2 1 H(About)WB 36 Sn()WB 4 Sn( This Docu)HY(ment)YH()EA()EH(
+ )0 2 1 H(About)WB 37 Sn()WB 4 Sn( This Docu)HY(ment)YH()EA()EH(
)0 P(The goal of this docu)HY(ment)YH( is to provide you with an under)HY(stand)HY(ing)YH( of
the C++/Tree program)HY(ming)YH( model and allow you to effi)HY(ciently)YH( eval)HY(u)HY(ate)YH(
@@ -1463,7 +1465,7 @@ NP RC ZF
)EP(
- )0 2 2 H(More)WB 37 Sn()WB 5 Sn( Infor)HY(ma)HY(tion)YH()EA()EH(
+ )0 2 2 H(More)WB 38 Sn()WB 5 Sn( Infor)HY(ma)HY(tion)YH()EA()EH(
)0 P(Beyond this guide, you may also find the follow)HY(ing)YH( sources of
infor)HY(ma)HY(tion)YH( useful:)EP(
@@ -1475,12 +1477,9 @@ NP RC ZF
Mapping Customiza)HY(tion)YH( Guide)EA(
)-1 LI()R3 2 A(C++/Tree
- Mapping and Berke)HY(ley)YH( DB XML Inte)HY(gra)HY(tion)YH( Guide)EA(
-
- )-1 LI()R4 2 A(C++/Tree
Mapping Frequently Asked Ques)HY(tions)YH( \201FAQ\202)EA(
- )-1 LI()R5 2 A(XSD
+ )-1 LI()R4 2 A(XSD
Compiler Command Line Manual)EA(
)-1 LI(The )SM(exam)HY(ples)YH(/cxx/tree/)ES( direc)HY(tory)YH( in the XSD
@@ -1490,16 +1489,15 @@ NP RC ZF
)-1 LI(The )SM(README)ES( file in the XSD distri)HY(bu)HY(tion)YH( explains
how to compile the exam)HY(ples)YH( on various plat)HY(forms)YH(.
- )-1 LI(The )R6 2 A(xsd-users)EA(
+ )-1 LI(The )R5 2 A(xsd-users)EA(
mailing list is the place to ask tech)HY(ni)HY(cal)YH( ques)HY(tions)YH( about XSD and the C++/Parser mapping.
- Further)HY(more)YH(, the )R7 2 A(archives)EA(
+ Further)HY(more)YH(, the )R6 2 A(archives)EA(
may already have answers to some of your ques)HY(tions)YH(.
-
)LU(
- )0 1 3 H(1)WB 38 Sn()WB 6 Sn( Intro)HY(duc)HY(tion)YH()EA()EH(
+ )0 1 3 H(1)WB 39 Sn()WB 6 Sn( Intro)HY(duc)HY(tion)YH()EA()EH(
)0 P(Welcome to CodeSyn)HY(the)HY(sis)YH( XSD and the C++/Tree mapping. XSD is a
cross-plat)HY(form)YH( W3C XML Schema to C++ data binding compiler. C++/Tree
@@ -1507,7 +1505,7 @@ NP RC ZF
in XML as a stat)HY(i)HY(cally)YH(-typed, vocab)HY(u)HY(lary)YH(-specific object model.
)EP(
- )0 2 4 H(1.1)WB 39 Sn()WB 7 Sn( Mapping Overview)EA()EH(
+ )0 2 4 H(1.1)WB 40 Sn()WB 7 Sn( Mapping Overview)EA()EH(
)0 P(Based on a formal descrip)HY(tion)YH( of an XML vocab)HY(u)HY(lary)YH( \201schema\202, the
C++/Tree mapping produces a tree-like data struc)HY(ture)YH( suit)HY(able)YH( for
@@ -1520,24 +1518,23 @@ NP RC ZF
mapping elements that can be useful in some appli)HY(ca)HY(tions)YH(. These
include seri)HY(al)HY(iza)HY(tion)YH( and extrac)HY(tion)YH( to/from formats others than
XML, such as unstruc)HY(tured)YH( text \201useful for debug)HY(ging)YH(\202 and binary
- repre)HY(sen)HY(ta)HY(tions)YH( such as XDR and CDR for high-speed data process)HY(ing)YH(,
- inte)HY(gra)HY(tion)YH( with XML databases such as Berke)HY(ley)YH( DB XML, and auto)HY(matic)YH(
- docu)HY(men)HY(ta)HY(tion)YH( gener)HY(a)HY(tion)YH(. The C++/Tree mapping also provides a wide
- range of mech)HY(a)HY(nisms)YH( for control)HY(ling)YH( and customiz)HY(ing)YH( the gener)HY(ated)YH(
- code.)EP(
-
- )0 P(A typical appli)HY(ca)HY(tion)YH( that uses C++/Tree for XML process)HY(ing)YH( usually
- performs the follow)HY(ing)YH( three steps: it first reads \201parses\202 an XML
- docu)HY(ment)YH( to an in-memory object model, it then performs some useful
- compu)HY(ta)HY(tions)YH( on that object model which may involve modi)HY(fi)HY(ca)HY(tion)YH(
- of the model, and finally it may write \201seri)HY(al)HY(ize)YH(\202 the modi)HY(fied)YH(
- object model back to XML.)EP(
+ repre)HY(sen)HY(ta)HY(tions)YH( such as XDR and CDR for high-speed data process)HY(ing)YH(
+ as well as auto)HY(matic)YH( docu)HY(men)HY(ta)HY(tion)YH( gener)HY(a)HY(tion)YH(. The C++/Tree mapping
+ also provides a wide range of mech)HY(a)HY(nisms)YH( for control)HY(ling)YH( and
+ customiz)HY(ing)YH( the gener)HY(ated)YH( code.)EP(
+
+ )0 P(A typical appli)HY(ca)HY(tion)YH( that uses C++/Tree for XML process)HY(ing)YH( usually
+ performs the follow)HY(ing)YH( three steps: it first reads \201parses\202 an XML
+ docu)HY(ment)YH( to an in-memory object model, it then performs some useful
+ compu)HY(ta)HY(tions)YH( on that object model which may involve modi)HY(fi)HY(ca)HY(tion)YH(
+ of the model, and finally it may write \201seri)HY(al)HY(ize)YH(\202 the modi)HY(fied)YH(
+ object model back to XML.)EP(
)0 P(The next chapter presents a simple appli)HY(ca)HY(tion)YH( that performs these
three steps. The follow)HY(ing)YH( chap)HY(ters)YH( show how to use the C++/Tree
mapping in more detail.)EP(
- )0 2 5 H(1.2)WB 40 Sn()WB 8 Sn( Bene)HY(fits)YH()EA()EH(
+ )0 2 5 H(1.2)WB 41 Sn()WB 8 Sn( Bene)HY(fits)YH()EA()EH(
)0 P(Tradi)HY(tional)YH( XML access APIs such as Docu)HY(ment)YH( Object Model \201DOM\202
or Simple API for XML \201SAX\202 have a number of draw)HY(backs)YH( that
@@ -1618,7 +1615,7 @@ NP RC ZF
- )0 1 6 H(2)WB 41 Sn()WB 9 Sn( Hello World Example)EA()EH(
+ )0 1 6 H(2)WB 42 Sn()WB 9 Sn( Hello World Example)EA()EH(
)0 P(In this chapter we will examine how to parse, access, modify, and
seri)HY(al)HY(ize)YH( a very simple XML docu)HY(ment)YH( using the XSD-gener)HY(ated)YH(
@@ -1627,7 +1624,7 @@ NP RC ZF
the )SM(exam)HY(ples)YH(/cxx/tree/)ES( direc)HY(tory)YH( of the XSD
distri)HY(bu)HY(tion)YH(.)EP(
- )0 2 7 H(2.1)WB 42 Sn()WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)EA()EH(
+ )0 2 7 H(2.1)WB 43 Sn()WB 10 Sn( Writing XML Docu)HY(ment)YH( and Schema)EA()EH(
)0 P(First, we need to get an idea about the struc)HY(ture)YH(
of the XML docu)HY(ments)YH( we are going to process. Our
@@ -1673,7 +1670,7 @@ NP RC ZF
in an XML docu)HY(ment)YH(. Finally, the glob)HY(ally)YH(-defined )SM(hello)ES(
element prescribes the root element for our vocab)HY(u)HY(lary)YH(. For an
easily-approach)HY(able)YH( intro)HY(duc)HY(tion)YH( to XML Schema refer to
- )R8 2 A(XML Schema Part 0:
+ )R7 2 A(XML Schema Part 0:
Primer)EA(.)EP(
)0 P(The above schema is a spec)HY(i)HY(fi)HY(ca)HY(tion)YH( of our XML vocab)HY(u)HY(lary)YH(; it tells
@@ -1698,7 +1695,7 @@ NP RC ZF
)0 P(The next step is to compile the schema to gener)HY(ate)YH( the object
model and parsing func)HY(tions)YH(.)EP(
- )0 2 8 H(2.2)WB 43 Sn()WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)EA()EH(
+ )0 2 8 H(2.2)WB 44 Sn()WB 11 Sn( Trans)HY(lat)HY(ing)YH( Schema to C++)EA()EH(
)0 P(Now we are ready to trans)HY(late)YH( our )SM(hello.xsd)ES( to C++.
To do this we invoke the XSD compiler from a termi)HY(nal)YH( \201UNIX\202 or
@@ -1780,8 +1777,8 @@ hello \201std::istream&\202;)RP(
defi)HY(ni)HY(tion)YH( is based on and has the same inter)HY(face)YH( as
)SM(std::vector)ES(. The mapping between the built-in
XML Schema types and C++ types is described in more detail in
- )0 27 1 A(Section 4.5, "Mapping for the Built-in XML Schema
- Types")27 0 TN TL()Ec /AF f D(. The )SM(hello_t)ES( class also includes a
+ )0 28 1 A(Section 4.5, "Mapping for the Built-in XML Schema
+ Types")28 0 TN TL()Ec /AF f D(. The )SM(hello_t)ES( class also includes a
construc)HY(tor)YH( with an initial)HY(izer)YH( for the required
)SM(greet)HY(ing)YH()ES( element as its argu)HY(ment)YH(.)EP(
@@ -1790,11 +1787,28 @@ hello \201std::istream&\202;)RP(
global element in XML Schema is a valid docu)HY(ment)YH( root.
By default XSD gener)HY(ated)YH( a set of parsing func)HY(tions)YH( for each
global element defined in XML Schema \201this can be over)HY(rid)HY(den)YH(
- with the )SM(--root-element-*)ES( options\202. For more
- infor)HY(ma)HY(tion)YH( on parsing func)HY(tions)YH( see )0 29 1 A(Chapter 5,
- "Parsing")29 0 TN TL()Ec /AF f D(.)EP(
+ with the )SM(--root-element-*)ES( options\202. Parsing
+ func)HY(tions)YH( return a dynam)HY(i)HY(cally)YH( allo)HY(cated)YH( object model as an
+ auto)HY(matic)YH( pointer. The actual pointer used depends on the
+ C++ stan)HY(dard)YH( selected. For C++98 it is )SM(std::auto_ptr)ES(
+ as shown above. For C++11 it is )SM(std::unique_ptr)ES(.
+ For example, if we modify our XSD compiler invo)HY(ca)HY(tion)YH( to
+ select C++11:)EP(
+
+ ) 1 36 PR($ xsd cxx-tree --std c++11 hello.xsd)RP(
+
+ )0 P(Then the parsing func)HY(tion)YH( signa)HY(tures)YH( will become:)EP(
+
+ ) 5 31 PR(std::unique_ptr<hello_t>
+hello \201const std::string& uri\202;
- )0 2 9 H(2.3)WB 44 Sn()WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)EA()EH(
+std::unique_ptr<hello_t>
+hello \201std::istream&\202;)RP(
+
+ )0 P(For more infor)HY(ma)HY(tion)YH( on parsing func)HY(tions)YH( see )0 30 1 A(Chapter 5,
+ "Parsing")30 0 TN TL()Ec /AF f D(.)EP(
+
+ )0 2 9 H(2.3)WB 45 Sn()WB 12 Sn( Imple)HY(ment)HY(ing)YH( Appli)HY(ca)HY(tion)YH( Logic)EA()EH(
)0 P(At this point we have all the parts we need to do some)HY(thing)YH( useful
with the infor)HY(ma)HY(tion)YH( stored in our XML docu)HY(ment)YH(:
@@ -1837,7 +1851,7 @@ main \201int argc, char* argv[]\202
)EP(
- )0 2 10 H(2.4)WB 45 Sn()WB 13 Sn( Compil)HY(ing)YH( and Running)EA()EH(
+ )0 2 10 H(2.4)WB 46 Sn()WB 13 Sn( Compil)HY(ing)YH( and Running)EA()EH(
)0 P(After saving our appli)HY(ca)HY(tion)YH( from the previ)HY(ous)YH( section in
)SM(driver.cxx)ES(, we are ready to compile our first
@@ -1858,7 +1872,7 @@ Hello, world!)RP(
with the Xerces-C++ library because the gener)HY(ated)YH( code
uses it as the under)HY(ly)HY(ing)YH( XML parser.)EP(
- )0 2 11 H(2.5)WB 46 Sn()WB 14 Sn( Adding Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
+ )0 2 11 H(2.5)WB 47 Sn()WB 14 Sn( Adding Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
)0 P(While parsing and access)HY(ing)YH( the XML data may be every)HY(thing)YH(
you need, there are appli)HY(ca)HY(tions)YH( that require creat)HY(ing)YH( new
@@ -1882,8 +1896,8 @@ hello \201std::ostream&,
)0 P(Just like with parsing func)HY(tions)YH(, XSD gener)HY(ates)YH( seri)HY(al)HY(iza)HY(tion)YH(
func)HY(tions)YH( for each global element unless instructed other)HY(wise)YH(
with one of the )SM(--root-element-*)ES( options. For more
- infor)HY(ma)HY(tion)YH( on seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( see )0 32 1 A(Chapter 6,
- "Seri)HY(al)HY(iza)HY(tion)YH(")32 0 TN TL()Ec /AF f D(.)EP(
+ infor)HY(ma)HY(tion)YH( on seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( see )0 33 1 A(Chapter 6,
+ "Seri)HY(al)HY(iza)HY(tion)YH(")33 0 TN TL()Ec /AF f D(.)EP(
)0 P(We first examine an appli)HY(ca)HY(tion)YH( that modi)HY(fies)YH( an exist)HY(ing)YH(
object model and seri)HY(al)HY(izes)YH( it back to XML:)EP(
@@ -1942,7 +1956,7 @@ main \201int argc, char* argv[]\202
this argu)HY(ment)YH( then generic names)HY(pace)YH( prefixes \201)SM(p1)ES(,
)SM(p2)ES(, etc.\202 will be auto)HY(mat)HY(i)HY(cally)YH( assigned to XML names)HY(paces)YH(
and no schema infor)HY(ma)HY(tion)YH( will be added to the result)HY(ing)YH( docu)HY(ment)YH(
- \201see )0 32 1 A(Chapter 6, "Seri)HY(al)HY(iza)HY(tion)YH(")32 0 TN TL()Ec /AF f D( for details\202.
+ \201see )0 33 1 A(Chapter 6, "Seri)HY(al)HY(iza)HY(tion)YH(")33 0 TN TL()Ec /AF f D( for details\202.
In our case, the prefix \201map key\202 and names)HY(pace)YH( name are empty
because our vocab)HY(u)HY(lary)YH( does not use XML names)HY(paces)YH(.)EP(
@@ -2018,7 +2032,7 @@ main \201int argc, char* argv[]\202
</hello>)RP(
- )0 2 12 H(2.6)WB 47 Sn()WB 15 Sn( Select)HY(ing)YH( Naming Conven)HY(tion)YH()EA()EH(
+ )0 2 12 H(2.6)WB 48 Sn()WB 15 Sn( Select)HY(ing)YH( Naming Conven)HY(tion)YH()EA()EH(
)0 P(By default XSD uses the so-called K&R \201Kernighan and Ritchie\202
iden)HY(ti)HY(fier)YH( naming conven)HY(tion)YH( in the gener)HY(ated)YH( code. In this
@@ -2155,10 +2169,10 @@ hello \201std::istream&\202;)RP(
)0 P(For more detailed infor)HY(ma)HY(tion)YH( on the )SM(--type-naming)ES(,
)SM(--func)HY(tion)YH(-naming)ES(, )SM(--type-regex)ES(, and
other )SM(--*-regex)ES( options refer to the NAMING
- CONVEN)HY(TION)YH( section in the )R5 2 A(XSD
+ CONVEN)HY(TION)YH( section in the )R4 2 A(XSD
Compiler Command Line Manual)EA(.)EP(
- )0 2 13 H(2.7)WB 48 Sn()WB 16 Sn( Gener)HY(at)HY(ing)YH( Docu)HY(men)HY(ta)HY(tion)YH()EA()EH(
+ )0 2 13 H(2.7)WB 49 Sn()WB 16 Sn( Gener)HY(at)HY(ing)YH( Docu)HY(men)HY(ta)HY(tion)YH()EA()EH(
)0 P(While our object model is quite simple, real-world vocab)HY(u)HY(lar)HY(ies)YH(
can be quite complex with hundreds of types, elements, and
@@ -2169,7 +2183,7 @@ hello \201std::istream&\202;)RP(
under)HY(stand)HY(ing)YH( the gener)HY(ated)YH( object models, the XSD compiler
can be instructed to produce source code with docu)HY(men)HY(ta)HY(tion)YH(
comments in the Doxygen format. Then the source code can be
- processed with the )R9 2 A(Doxygen)EA(
+ processed with the )R8 2 A(Doxygen)EA(
docu)HY(men)HY(ta)HY(tion)YH( system to extract this infor)HY(ma)HY(tion)YH( and produce
docu)HY(men)HY(ta)HY(tion)YH( in various formats.
)EP(
@@ -2259,28 +2273,37 @@ hello \201std::istream&\202;)RP(
distri)HY(bu)HY(tion)YH(.)EP(
)0 P(You can view the result of the steps described in this section
- on the )R10 2 A(Hello
+ on the )R9 2 A(Hello
Example Docu)HY(men)HY(ta)HY(tion)YH()EA( page.)EP(
- )0 1 14 H(3)WB 49 Sn()WB 17 Sn( Overall Mapping Config)HY(u)HY(ra)HY(tion)YH()EA()EH(
+ )0 1 14 H(3)WB 50 Sn()WB 17 Sn( Overall Mapping Config)HY(u)HY(ra)HY(tion)YH()EA()EH(
)0 P(The C++/Tree mapping has a number of config)HY(u)HY(ra)HY(tion)YH( param)HY(e)HY(ters)YH( that
deter)HY(mine)YH( the overall prop)HY(er)HY(ties)YH( and behav)HY(ior)YH( of the gener)HY(ated)YH( code.
Config)HY(u)HY(ra)HY(tion)YH( param)HY(e)HY(ters)YH( are spec)HY(i)HY(fied)YH( with the XSD command line
options. This chapter describes config)HY(u)HY(ra)HY(tion)YH( aspects that are most
- commonly encoun)HY(tered)YH( by appli)HY(ca)HY(tion)YH( devel)HY(op)HY(ers)YH(. These include:
- the char)HY(ac)HY(ter)YH( type that is used by the gener)HY(ated)YH( code, handling of
- vocab)HY(u)HY(lar)HY(ies)YH( that use XML Schema poly)HY(mor)HY(phism)YH(, XML Schema to C++
- names)HY(pace)YH( mapping, and thread safety. For more ways to config)HY(ure)YH(
+ commonly encoun)HY(tered)YH( by appli)HY(ca)HY(tion)YH( devel)HY(op)HY(ers)YH(. These include: the
+ C++ stan)HY(dard)YH(, the char)HY(ac)HY(ter)YH( type that is used by the gener)HY(ated)YH( code,
+ handling of vocab)HY(u)HY(lar)HY(ies)YH( that use XML Schema poly)HY(mor)HY(phism)YH(, XML Schema
+ to C++ names)HY(pace)YH( mapping, and thread safety. For more ways to config)HY(ure)YH(
the gener)HY(ated)YH( code refer to the
- )R5 2 A(XSD
+ )R4 2 A(XSD
Compiler Command Line Manual)EA(.
)EP(
- )0 2 15 H(3.1)WB 50 Sn()WB 18 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()EA()EH(
+ )0 2 15 H(3.1)WB 51 Sn()WB 18 Sn( C++ Stan)HY(dard)YH()EA()EH(
+
+ )0 P(The C++/Tree mapping provides support for ISO/IEC C++ 1998/2003 \201C++98\202
+ and ISO/IEC C++ 2011 \201C++11\202. To select the C++ stan)HY(dard)YH( for the
+ gener)HY(ated)YH( code we use the )SM(--std)ES( XSD compiler command
+ line option. While the major)HY(ity)YH( of the exam)HY(ples)YH( in this guide use
+ C++98, support for the new func)HY(tion)HY(al)HY(ity)YH( and library compo)HY(nents)YH(
+ intro)HY(duced)YH( in C++11 are discussed through)HY(out)YH( the docu)HY(ment)YH(.)EP(
+
+ )0 2 16 H(3.2)WB 52 Sn()WB 19 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()EA()EH(
)0 P(The C++/Tree mapping has built-in support for two char)HY(ac)HY(ter)YH( types:
)SM(char)ES( and )SM(wchar_t)ES(. You can select the
@@ -2311,7 +2334,7 @@ hello \201std::istream&\202;)RP(
all three \201object mode, input XML, and output XML\202 can have differ)HY(ent)YH(
encod)HY(ings)YH(.)EP(
- )0 2 16 H(3.2)WB 51 Sn()WB 19 Sn( Support for Poly)HY(mor)HY(phism)YH()EA()EH(
+ )0 2 17 H(3.3)WB 53 Sn()WB 20 Sn( Support for Poly)HY(mor)HY(phism)YH()EA()EH(
)0 P(By default XSD gener)HY(ates)YH( non-poly)HY(mor)HY(phic)YH( code. If your vocab)HY(u)HY(lary)YH(
uses XML Schema poly)HY(mor)HY(phism)YH( in the form of )SM(xsi:type)ES(
@@ -2319,11 +2342,11 @@ hello \201std::istream&\202;)RP(
your schemas with the )SM(--gener)HY(ate)YH(-poly)HY(mor)HY(phic)YH()ES( option
to produce poly)HY(mor)HY(phism)YH(-aware code. For more infor)HY(ma)HY(tion)YH( on
working with poly)HY(mor)HY(phic)YH( object models, refer to
- )R11 2 A(Section 2.11,
+ )R10 2 A(Section 2.11,
"Mapping for )SM(xsi:type)ES( and Substi)HY(tu)HY(tion)YH( Groups")EA( in
the C++/Tree Mapping User Manual.)EP(
- )0 2 17 H(3.3)WB 52 Sn()WB 20 Sn( Names)HY(pace)YH( Mapping)EA()EH(
+ )0 2 18 H(3.4)WB 54 Sn()WB 21 Sn( Names)HY(pace)YH( Mapping)EA()EH(
)0 P(XSD maps XML names)HY(paces)YH( spec)HY(i)HY(fied)YH( in the )SM(target)HY(Names)HY(pace)YH()ES(
attribute in XML Schema to one or more nested C++ names)HY(paces)YH(. By
@@ -2346,7 +2369,7 @@ hello \201std::istream&\202;)RP(
) 1 19 PR(--namespace-map =cs)RP(
- )0 2 18 H(3.4)WB 53 Sn()WB 21 Sn( Thread Safety)EA()EH(
+ )0 2 19 H(3.5)WB 55 Sn()WB 22 Sn( Thread Safety)EA()EH(
)0 P(XSD-gener)HY(ated)YH( code is thread-safe in the sense that you can
use differ)HY(ent)YH( instan)HY(ti)HY(a)HY(tions)YH( of the object model in several
@@ -2383,15 +2406,15 @@ main \201\202
)0 P(Because you initial)HY(ize)YH( the Xerces-C++ runtime your)HY(self)YH( you should
also pass the )SM(xml_schema::flags::dont_initial)HY(ize)YH()ES( flag
- to parsing and seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH(. See )0 29 1 A(Chapter 5,
- "Parsing")29 0 TN TL()Ec /AF f D( and )0 32 1 A(Chapter 6, "Seri)HY(al)HY(iza)HY(tion)YH(")32 0 TN TL()Ec /AF f D( for
+ to parsing and seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH(. See )0 30 1 A(Chapter 5,
+ "Parsing")30 0 TN TL()Ec /AF f D( and )0 33 1 A(Chapter 6, "Seri)HY(al)HY(iza)HY(tion)YH(")33 0 TN TL()Ec /AF f D( for
more infor)HY(ma)HY(tion)YH(.)EP(
- )0 1 19 H(4)WB 54 Sn()WB 22 Sn( Working with Object Models)EA()EH(
+ )0 1 20 H(4)WB 56 Sn()WB 23 Sn( Working with Object Models)EA()EH(
)0 P(As we have seen in the previ)HY(ous)YH( chap)HY(ters)YH(, the XSD compiler gener)HY(ates)YH(
a C++ class for each type defined in XML Schema. Together these classes
@@ -2508,7 +2531,7 @@ case gender_t::female:
)0 P(The other two classes will be exam)HY(ined)YH( in detail in the subse)HY(quent)YH(
sections.)EP(
- )0 2 20 H(4.1)WB 55 Sn()WB 23 Sn( Attribute and Element Cardi)HY(nal)HY(i)HY(ties)YH()EA()EH(
+ )0 2 21 H(4.1)WB 57 Sn()WB 24 Sn( Attribute and Element Cardi)HY(nal)HY(i)HY(ties)YH()EA()EH(
)0 P(As we have seen in the previ)HY(ous)YH( chap)HY(ters)YH(, XSD gener)HY(ates)YH( a differ)HY(ent)YH(
set of type defi)HY(ni)HY(tions)YH( and member func)HY(tions)YH( for elements with
@@ -2585,7 +2608,7 @@ case gender_t::female:
) 9 42 PR(person_t::middle_name_optional n \201"John"\202;
-if \201n.preset \201\202\202
+if \201n.present \201\202\202
{
cout << n.get \201\202 << endl;
}
@@ -2642,20 +2665,33 @@ n.reset \201\202;)RP(
container. The modi)HY(fier)YH( func)HY(tions)YH( copies the entries from
the passed sequence.)EP(
+ )0 P(C++/Tree is a "flat)HY(ten)HY(ing)YH(" mapping in a sense that many levels of
+ nested compos)HY(i)HY(tors)YH( \201)SM(choice)ES( and )SM(sequence)ES(\202,
+ all poten)HY(tially)YH( with their own cardi)HY(nal)HY(i)HY(ties)YH(, are in the end mapped
+ to a flat set of elements with one of the three cardi)HY(nal)HY(ity)YH( classes
+ discussed above. While this results in a simple and easy to use API
+ for most types, in certain cases, the order of elements in the actual
+ XML docu)HY(ments)YH( is not preserved once parsed into the object model. To
+ over)HY(come)YH( this limi)HY(ta)HY(tion)YH( we can mark certain schema types, for which
+ content order is not suffi)HY(ciently)YH( preserved, as ordered. For more
+ infor)HY(ma)HY(tion)YH( on this func)HY(tion)HY(al)HY(ity)YH( refer to
+ )R11 2 A(Section
+ 2.8.4, "Element Order")EA( in the C++/Tree Mapping User Manual.)EP(
+
)0 P(For complex schemas with many levels of nested compos)HY(i)HY(tors)YH(
- \201)SM(xs:choice)ES( and )SM(xs:sequence)ES(\202 it can
+ \201)SM(choice)ES( and )SM(sequence)ES(\202 it can also
be hard to deduce the cardi)HY(nal)HY(ity)YH( class of a partic)HY(u)HY(lar)YH( element.
The gener)HY(ated)YH( Doxygen docu)HY(men)HY(ta)HY(tion)YH( can greatly help with
this task. For each element and attribute the docu)HY(men)HY(ta)HY(tion)YH(
clearly iden)HY(ti)HY(fies)YH( its cardi)HY(nal)HY(ity)YH( class. Alter)HY(na)HY(tively)YH(, you
can study the gener)HY(ated)YH( header files to find out the cardi)HY(nal)HY(ity)YH(
- class of a partic)HY(u)HY(lar)YH( attribute or element. In the next sections
- we will examine how to access and modify infor)HY(ma)HY(tion)YH( stored in
- an object model using acces)HY(sor)YH( and modi)HY(fier)YH( func)HY(tions)YH( described
- in this section.)EP(
+ class of a partic)HY(u)HY(lar)YH( attribute or element.)EP(
+ )0 P(In the next sections we will examine how to access and modify
+ infor)HY(ma)HY(tion)YH( stored in an object model using acces)HY(sor)YH( and modi)HY(fier)YH(
+ func)HY(tions)YH( described in this section.)EP(
- )0 2 21 H(4.2)WB 56 Sn()WB 24 Sn( Access)HY(ing)YH( the Object Model)EA()EH(
+ )0 2 22 H(4.2)WB 58 Sn()WB 25 Sn( Access)HY(ing)YH( the Object Model)EA()EH(
)0 P(In this section we will learn how to get to the infor)HY(ma)HY(tion)YH(
stored in the object model for our person records vocab)HY(u)HY(lary)YH(.
@@ -2732,7 +2768,7 @@ age: 28
id: 2)RP(
- )0 2 22 H(4.3)WB 57 Sn()WB 25 Sn( Modi)HY(fy)HY(ing)YH( the Object Model)EA()EH(
+ )0 2 23 H(4.3)WB 59 Sn()WB 26 Sn( Modi)HY(fy)HY(ing)YH( the Object Model)EA()EH(
)0 P(In this section we will learn how to modify the infor)HY(ma)HY(tion)YH(
stored in the object model for our person records vocab)HY(u)HY(lary)YH(.
@@ -2830,7 +2866,7 @@ main \201\202
</people>)RP(
- )0 2 23 H(4.4)WB 58 Sn()WB 26 Sn( Creat)HY(ing)YH( the Object Model from Scratch)EA()EH(
+ )0 2 24 H(4.4)WB 60 Sn()WB 27 Sn( Creat)HY(ing)YH( the Object Model from Scratch)EA()EH(
)0 P(In this section we will learn how to create a new object model
for our person records vocab)HY(u)HY(lary)YH(. The follow)HY(ing)YH( appli)HY(ca)HY(tion)YH(
@@ -2929,7 +2965,7 @@ ps.push_back \201jane\202;)RP(
)SM(push_back\201\202)ES( func)HY(tion)YH( which assumes owner)HY(ship)YH(
of the passed objects:)EP(
- ) 19 47 PR(// Add the John Doe record.
+ ) 19 55 PR(// Add the John Doe record. C++98 version.
//
auto_ptr<person_t> john_p \201
new person_t \201"John", // first-name
@@ -2939,15 +2975,15 @@ auto_ptr<person_t> john_p \201
1\202\202;
ps.push_back \201john_p\202; // assumes ownership
-// Add the Jane Doe record.
+// Add the Jane Doe record. C++11 version
//
-auto_ptr<person_t> jane_p \201
+unique_ptr<person_t> jane_p \201
new person_t \201"Jane", // first-name
"Doe", // last-name
gender_t::female, // gender
28, // age
2\202\202; // id
-ps.push_back \201jane_p\202; // assumes ownership)RP(
+ps.push_back \201std::move \201jane_p\202\202; // assumes ownership)RP(
)0 P(For more infor)HY(ma)HY(tion)YH( on the non-copying modi)HY(fier)YH( func)HY(tions)YH( refer to
)R12 2 A(Section
@@ -2975,7 +3011,7 @@ ps.push_back \201jane_p\202; // assumes ownership)RP(
</people>)RP(
- )0 2 24 H(4.5)WB 59 Sn()WB 27 Sn( Mapping for the Built-in XML Schema Types)EA()EH(
+ )0 2 25 H(4.5)WB 61 Sn()WB 28 Sn( Mapping for the Built-in XML Schema Types)EA()EH(
)0 P(Our person record vocab)HY(u)HY(lary)YH( uses several built-in XML Schema
types: )SM(string)ES(, )SM(short)ES(, and
@@ -3017,7 +3053,7 @@ ps.push_back \201jane_p\202; // assumes ownership)RP(
- )0 1 25 H(5)WB 60 Sn()WB 29 Sn( Parsing)EA()EH(
+ )0 1 26 H(5)WB 62 Sn()WB 30 Sn( Parsing)EA()EH(
)0 P(We have already seen how to parse XML to an object model in this guide
before. In this chapter we will discuss the parsing topic in more
@@ -3041,17 +3077,17 @@ ps.push_back \201jane_p\202; // assumes ownership)RP(
global element from our person record vocab)HY(u)HY(lary)YH(, we will concen)HY(trate)YH(
on the follow)HY(ing)YH( three parsing func)HY(tions)YH(:)EP(
- ) 15 71 PR(std::auto_ptr<people_t>
+ ) 15 71 PR(std::[auto|unique]_ptr<people_t>
people \201const std::string& uri,
xml_schema::flags f = 0,
const xml_schema::properties& p = xml_schema::properties \201\202\202;
-std::auto_ptr<people_t>
+std::[auto|unique]_ptr<people_t>
people \201std::istream& is,
xml_schema::flags f = 0,
const xml_schema::properties& p = xml_schema::properties \201\202\202;
-std::auto_ptr<people_t>
+std::[auto|unique]_ptr<people_t>
people \201std::istream& is,
const std::string& resource_id,
xml_schema::flags f = 0,
@@ -3069,9 +3105,12 @@ people \201std::istream& is,
flags and prop)HY(er)HY(ties)YH(. The flags argu)HY(ment)YH( provides a number of ways
to fine-tune the parsing process. The prop)HY(er)HY(ties)YH( argu)HY(ment)YH( allows
to pass addi)HY(tional)YH( infor)HY(ma)HY(tion)YH( to the parsing func)HY(tions)YH(. We will
- use these two argu)HY(ments)YH( in )0 30 1 A(Section 5.1, "XML Schema
- Vali)HY(da)HY(tion)YH( and Search)HY(ing)YH(")30 0 TN TL()Ec /AF f D( below. The follow)HY(ing)YH( example shows
- how we can use the above parsing func)HY(tions)YH(:)EP(
+ use these two argu)HY(ments)YH( in )0 31 1 A(Section 5.1, "XML Schema
+ Vali)HY(da)HY(tion)YH( and Search)HY(ing)YH(")31 0 TN TL()Ec /AF f D( below. All three func)HY(tions)YH( return
+ the object model as either )SM(std::auto_ptr)ES( \201C++98\202 or
+ )SM(std::unique_ptr)ES( \201C++11\202, depend)HY(ing)YH( on the C++ stan)HY(dard)YH(
+ selected \201)SM(--std)ES( XSD compiler option\202. The follow)HY(ing)YH(
+ example shows how we can use the above parsing func)HY(tions)YH(:)EP(
) 17 65 PR(using std::auto_ptr;
@@ -3092,7 +3131,7 @@ std::istringstream iss \201str\202;
auto_ptr<people_t> p4 \201people \201iss\202\202;)RP(
- )0 2 26 H(5.1)WB 61 Sn()WB 30 Sn( XML Schema Vali)HY(da)HY(tion)YH( and Search)HY(ing)YH()EA()EH(
+ )0 2 27 H(5.1)WB 63 Sn()WB 31 Sn( XML Schema Vali)HY(da)HY(tion)YH( and Search)HY(ing)YH()EA()EH(
)0 P(The C++/Tree mapping relies on the under)HY(ly)HY(ing)YH( Xerces-C++ XML
parser for full XML docu)HY(ment)YH( vali)HY(da)HY(tion)YH(. The XML Schema
@@ -3162,11 +3201,11 @@ if \201getcwd \201cwd, PATH_MAX\202 == 0\202
xml_schema::properties props;
props.no_namespace_schema_location \201
- "file:///" + std::string \201cwd\202 + "people.xsd"\202;
+ "file:///" + std::string \201cwd\202 + "/people.xsd"\202;
props.schema_location \201
"http://www.w3.org/XML/1998/namespace",
- "file:///" + std::string \201cwd\202 + "xml.xsd"\202;
+ "file:///" + std::string \201cwd\202 + "/xml.xsd"\202;
auto_ptr<people_t> p \201people \201"people.xml", 0, props\202\202;)RP(
@@ -3203,7 +3242,7 @@ people.xml:7:16 error: no declaration found for element 'last-name'
people.xml:8:13 error: no declaration found for element 'gender'
people.xml:9:10 error: no declaration found for element 'age')RP(
- )0 2 27 H(5.2)WB 62 Sn()WB 31 Sn( Error Handling)EA()EH(
+ )0 2 28 H(5.2)WB 64 Sn()WB 32 Sn( Error Handling)EA()EH(
)0 P(The parsing func)HY(tions)YH( offer a number of ways to handle error condi)HY(tions)YH(
with the C++ excep)HY(tions)YH( being the most commonly used mech)HY(a)HY(nism)YH(. All
@@ -3278,7 +3317,7 @@ catch \201const std::ifstream::failure&\202
- )0 1 28 H(6)WB 63 Sn()WB 32 Sn( Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
+ )0 1 29 H(6)WB 65 Sn()WB 33 Sn( Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
)0 P(We have already seen how to seri)HY(al)HY(ize)YH( an object model back to XML
in this guide before. In this chapter we will discuss the
@@ -3344,7 +3383,7 @@ people \201oss, p, map\202;
std::string xml \201oss.str \201\202\202;)RP(
- )0 2 29 H(6.1)WB 64 Sn()WB 33 Sn( Names)HY(pace)YH( and Schema Infor)HY(ma)HY(tion)YH()EA()EH(
+ )0 2 30 H(6.1)WB 66 Sn()WB 34 Sn( Names)HY(pace)YH( and Schema Infor)HY(ma)HY(tion)YH()EA()EH(
)0 P(While XML seri)HY(al)HY(iza)HY(tion)YH( can be done just from the object
model alone, it is often desir)HY(able)YH( to assign mean)HY(ing)HY(ful)YH(
@@ -3390,7 +3429,7 @@ map["x"].schema = "xml.xsd";)RP(
map[""].name = "";
map[""].schema = "example.xsd";)RP(
- )0 2 30 H(6.2)WB 65 Sn()WB 34 Sn( Error Handling)EA()EH(
+ )0 2 31 H(6.2)WB 67 Sn()WB 35 Sn( Error Handling)EA()EH(
)0 P(Similar to the parsing func)HY(tions)YH(, the seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( offer a
number of ways to handle error condi)HY(tions)YH( with the C++ excep)HY(tions)YH( being
@@ -3467,4 +3506,4 @@ catch \201const std::ofstream::failure&\202
)BR(
)WB NL
-/TE t D NP TU PM 0 eq and{/Pn () D showpage}if end restore
+/TE t D NP /OU t D TU PM 1 eq and{/Pn () D showpage}if end restore
diff --git a/xsd/documentation/cxx/tree/guide/guide.html2ps b/xsd/doc/cxx/tree/guide/guide.html2ps
index 30a4e3d..fbdaaf5 100644
--- a/xsd/documentation/cxx/tree/guide/guide.html2ps
+++ b/xsd/doc/cxx/tree/guide/guide.html2ps
@@ -20,7 +20,7 @@
<h1>&nbsp;</h1>
<h1>&nbsp;</h1>
</div>
- <p>Copyright &copy; 2005-2010 CODE SYNTHESIS TOOLS CC</p>
+ <p>Copyright &copy; 2005-2014 CODE SYNTHESIS TOOLS CC</p>
<p>Permission is granted to copy, distribute and/or modify this
document under the terms of the
diff --git a/xsd/documentation/cxx/tree/guide/index.xhtml b/xsd/doc/cxx/tree/guide/index.xhtml
index 476e7ea..49ad3a6 100644
--- a/xsd/documentation/cxx/tree/guide/index.xhtml
+++ b/xsd/doc/cxx/tree/guide/index.xhtml
@@ -5,7 +5,7 @@
<head>
<title>C++/Tree Mapping Getting Started Guide</title>
- <meta name="copyright" content="&copy; 2005-2010 Code Synthesis Tools CC"/>
+ <meta name="copyright" content="&copy; 2005-2014 Code Synthesis Tools CC"/>
<meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,parsing,serialization,validation"/>
<meta name="description" content="C++/Tree Mapping Getting Started Guide"/>
@@ -172,7 +172,7 @@
<div class="title" id="first-title">C++/Tree Mapping</div>
<div class="title" id="second-title">Getting Started Guide</div>
- <p>Copyright &copy; 2005-2010 CODE SYNTHESIS TOOLS CC</p>
+ <p>Copyright &copy; 2005-2014 CODE SYNTHESIS TOOLS CC</p>
<p>Permission is granted to copy, distribute and/or modify this
document under the terms of the
@@ -226,10 +226,11 @@
<tr>
<th>3</th><td><a href="#3">Overall Mapping Configuration</a>
<table class="toc">
- <tr><th>3.1</th><td><a href="#3.1">Character Type and Encoding</a></td></tr>
- <tr><th>3.2</th><td><a href="#3.2">Support for Polymorphism </a></td></tr>
- <tr><th>3.3</th><td><a href="#3.3">Namespace Mapping</a></td></tr>
- <tr><th>3.4</th><td><a href="#3.4">Thread Safety</a></td></tr>
+ <tr><th>3.1</th><td><a href="#3.1">C++ Standard</a></td></tr>
+ <tr><th>3.2</th><td><a href="#3.2">Character Type and Encoding</a></td></tr>
+ <tr><th>3.3</th><td><a href="#3.3">Support for Polymorphism </a></td></tr>
+ <tr><th>3.4</th><td><a href="#3.4">Namespace Mapping</a></td></tr>
+ <tr><th>3.5</th><td><a href="#3.5">Thread Safety</a></td></tr>
</table>
</td>
</tr>
@@ -298,9 +299,6 @@
<li><a href="http://wiki.codesynthesis.com/Tree/Customization_guide">C++/Tree
Mapping Customization Guide</a></li>
- <li><a href="http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/dbxml/">C++/Tree
- Mapping and Berkeley DB XML Integration Guide</a></li>
-
<li><a href="http://wiki.codesynthesis.com/Tree/FAQ">C++/Tree
Mapping Frequently Asked Questions (FAQ)</a></li>
@@ -318,7 +316,6 @@
mailing list is the place to ask technical questions about XSD and the C++/Parser mapping.
Furthermore, the <a href="http://www.codesynthesis.com/pipermail/xsd-users/">archives</a>
may already have answers to some of your questions.</li>
-
</ul>
<!-- Introduction -->
@@ -344,18 +341,17 @@
mapping elements that can be useful in some applications. These
include serialization and extraction to/from formats others than
XML, such as unstructured text (useful for debugging) and binary
- representations such as XDR and CDR for high-speed data processing,
- integration with XML databases such as Berkeley DB XML, and automatic
- documentation generation. The C++/Tree mapping also provides a wide
- range of mechanisms for controlling and customizing the generated
- code.</p>
-
- <p>A typical application that uses C++/Tree for XML processing usually
- performs the following three steps: it first reads (parses) an XML
- document to an in-memory object model, it then performs some useful
- computations on that object model which may involve modification
- of the model, and finally it may write (serialize) the modified
- object model back to XML.</p>
+ representations such as XDR and CDR for high-speed data processing
+ as well as automatic documentation generation. The C++/Tree mapping
+ also provides a wide range of mechanisms for controlling and
+ customizing the generated code.</p>
+
+ <p>A typical application that uses C++/Tree for XML processing usually
+ performs the following three steps: it first reads (parses) an XML
+ document to an in-memory object model, it then performs some useful
+ computations on that object model which may involve modification
+ of the model, and finally it may write (serialize) the modified
+ object model back to XML.</p>
<p>The next chapter presents a simple application that performs these
three steps. The following chapters show how to use the C++/Tree
@@ -626,8 +622,29 @@ hello (std::istream&amp;);
global element in XML Schema is a valid document root.
By default XSD generated a set of parsing functions for each
global element defined in XML Schema (this can be overridden
- with the <code>--root-element-*</code> options). For more
- information on parsing functions see <a href="#5">Chapter 5,
+ with the <code>--root-element-*</code> options). Parsing
+ functions return a dynamically allocated object model as an
+ automatic pointer. The actual pointer used depends on the
+ C++ standard selected. For C++98 it is <code>std::auto_ptr</code>
+ as shown above. For C++11 it is <code>std::unique_ptr</code>.
+ For example, if we modify our XSD compiler invocation to
+ select C++11:</p>
+
+ <pre class="terminal">
+$ xsd cxx-tree --std c++11 hello.xsd
+ </pre>
+
+ <p>Then the parsing function signatures will become:</p>
+
+ <pre class="c++">
+std::unique_ptr&lt;hello_t>
+hello (const std::string&amp; uri);
+
+std::unique_ptr&lt;hello_t>
+hello (std::istream&amp;);
+ </pre>
+
+ <p>For more information on parsing functions see <a href="#5">Chapter 5,
"Parsing"</a>.</p>
<h2><a name="2.3">2.3 Implementing Application Logic</a></h2>
@@ -1139,16 +1156,25 @@ $ doxygen hello.doxygen
determine the overall properties and behavior of the generated code.
Configuration parameters are specified with the XSD command line
options. This chapter describes configuration aspects that are most
- commonly encountered by application developers. These include:
- the character type that is used by the generated code, handling of
- vocabularies that use XML Schema polymorphism, XML Schema to C++
- namespace mapping, and thread safety. For more ways to configure
+ commonly encountered by application developers. These include: the
+ C++ standard, the character type that is used by the generated code,
+ handling of vocabularies that use XML Schema polymorphism, XML Schema
+ to C++ namespace mapping, and thread safety. For more ways to configure
the generated code refer to the
<a href="http://www.codesynthesis.com/projects/xsd/documentation/xsd.xhtml">XSD
Compiler Command Line Manual</a>.
</p>
- <h2><a name="3.1">3.1 Character Type and Encoding</a></h2>
+ <h2><a name="3.1">3.1 C++ Standard</a></h2>
+
+ <p>The C++/Tree mapping provides support for ISO/IEC C++ 1998/2003 (C++98)
+ and ISO/IEC C++ 2011 (C++11). To select the C++ standard for the
+ generated code we use the <code>--std</code> XSD compiler command
+ line option. While the majority of the examples in this guide use
+ C++98, support for the new functionality and library components
+ introduced in C++11 are discussed throughout the document.</p>
+
+ <h2><a name="3.2">3.2 Character Type and Encoding</a></h2>
<p>The C++/Tree mapping has built-in support for two character types:
<code>char</code> and <code>wchar_t</code>. You can select the
@@ -1179,7 +1205,7 @@ $ doxygen hello.doxygen
all three (object mode, input XML, and output XML) can have different
encodings.</p>
- <h2><a name="3.2">3.2 Support for Polymorphism</a></h2>
+ <h2><a name="3.3">3.3 Support for Polymorphism</a></h2>
<p>By default XSD generates non-polymorphic code. If your vocabulary
uses XML Schema polymorphism in the form of <code>xsi:type</code>
@@ -1191,7 +1217,7 @@ $ doxygen hello.doxygen
"Mapping for <code>xsi:type</code> and Substitution Groups"</a> in
the C++/Tree Mapping User Manual.</p>
- <h2><a name="3.3">3.3 Namespace Mapping</a></h2>
+ <h2><a name="3.4">3.4 Namespace Mapping</a></h2>
<p>XSD maps XML namespaces specified in the <code>targetNamespace</code>
attribute in XML Schema to one or more nested C++ namespaces. By
@@ -1218,7 +1244,7 @@ $ doxygen hello.doxygen
--namespace-map =cs
</pre>
- <h2><a name="3.4">3.4 Thread Safety</a></h2>
+ <h2><a name="3.5">3.5 Thread Safety</a></h2>
<p>XSD-generated code is thread-safe in the sense that you can
use different instantiations of the object model in several
@@ -1472,7 +1498,7 @@ class person_t
<pre class="c++">
person_t::middle_name_optional n ("John");
-if (n.preset ())
+if (n.present ())
{
cout &lt;&lt; n.get () &lt;&lt; endl;
}
@@ -1532,18 +1558,31 @@ class people_t
container. The modifier functions copies the entries from
the passed sequence.</p>
+ <p>C++/Tree is a "flattening" mapping in a sense that many levels of
+ nested compositors (<code>choice</code> and <code>sequence</code>),
+ all potentially with their own cardinalities, are in the end mapped
+ to a flat set of elements with one of the three cardinality classes
+ discussed above. While this results in a simple and easy to use API
+ for most types, in certain cases, the order of elements in the actual
+ XML documents is not preserved once parsed into the object model. To
+ overcome this limitation we can mark certain schema types, for which
+ content order is not sufficiently preserved, as ordered. For more
+ information on this functionality refer to
+ <a href="http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/#2.8.4">Section
+ 2.8.4, "Element Order"</a> in the C++/Tree Mapping User Manual.</p>
+
<p>For complex schemas with many levels of nested compositors
- (<code>xs:choice</code> and <code>xs:sequence</code>) it can
+ (<code>choice</code> and <code>sequence</code>) it can also
be hard to deduce the cardinality class of a particular element.
The generated Doxygen documentation can greatly help with
this task. For each element and attribute the documentation
clearly identifies its cardinality class. Alternatively, you
can study the generated header files to find out the cardinality
- class of a particular attribute or element. In the next sections
- we will examine how to access and modify information stored in
- an object model using accessor and modifier functions described
- in this section.</p>
+ class of a particular attribute or element.</p>
+ <p>In the next sections we will examine how to access and modify
+ information stored in an object model using accessor and modifier
+ functions described in this section.</p>
<h2><a name="4.2">4.2 Accessing the Object Model</a></h2>
@@ -1834,7 +1873,7 @@ ps.push_back (jane);
of the passed objects:</p>
<pre class="c++">
-// Add the John Doe record.
+// Add the John Doe record. C++98 version.
//
auto_ptr&lt;person_t> john_p (
new person_t ("John", // first-name
@@ -1844,15 +1883,15 @@ auto_ptr&lt;person_t> john_p (
1));
ps.push_back (john_p); // assumes ownership
-// Add the Jane Doe record.
+// Add the Jane Doe record. C++11 version
//
-auto_ptr&lt;person_t> jane_p (
+unique_ptr&lt;person_t> jane_p (
new person_t ("Jane", // first-name
"Doe", // last-name
gender_t::female, // gender
28, // age
2)); // id
-ps.push_back (jane_p); // assumes ownership
+ps.push_back (std::move (jane_p)); // assumes ownership
</pre>
<p>For more information on the non-copying modifier functions refer to
@@ -2226,17 +2265,17 @@ ps.push_back (jane_p); // assumes ownership
on the following three parsing functions:</p>
<pre class="c++">
-std::auto_ptr&lt;people_t>
+std::[auto|unique]_ptr&lt;people_t>
people (const std::string&amp; uri,
xml_schema::flags f = 0,
const xml_schema::properties&amp; p = xml_schema::properties ());
-std::auto_ptr&lt;people_t>
+std::[auto|unique]_ptr&lt;people_t>
people (std::istream&amp; is,
xml_schema::flags f = 0,
const xml_schema::properties&amp; p = xml_schema::properties ());
-std::auto_ptr&lt;people_t>
+std::[auto|unique]_ptr&lt;people_t>
people (std::istream&amp; is,
const std::string&amp; resource_id,
xml_schema::flags f = 0,
@@ -2256,8 +2295,11 @@ people (std::istream&amp; is,
to fine-tune the parsing process. The properties argument allows
to pass additional information to the parsing functions. We will
use these two arguments in <a href="#5.1">Section 5.1, "XML Schema
- Validation and Searching"</a> below. The following example shows
- how we can use the above parsing functions:</p>
+ Validation and Searching"</a> below. All three functions return
+ the object model as either <code>std::auto_ptr</code> (C++98) or
+ <code>std::unique_ptr</code> (C++11), depending on the C++ standard
+ selected (<code>--std</code> XSD compiler option). The following
+ example shows how we can use the above parsing functions:</p>
<pre class="c++">
using std::auto_ptr;
@@ -2357,11 +2399,11 @@ if (getcwd (cwd, PATH_MAX) == 0)
xml_schema::properties props;
props.no_namespace_schema_location (
- "file:///" + std::string (cwd) + "people.xsd");
+ "file:///" + std::string (cwd) + "/people.xsd");
props.schema_location (
"http://www.w3.org/XML/1998/namespace",
- "file:///" + std::string (cwd) + "xml.xsd");
+ "file:///" + std::string (cwd) + "/xml.xsd");
auto_ptr&lt;people_t> p (people ("people.xml", 0, props));
</pre>
diff --git a/xsd/documentation/cxx/tree/guide/makefile b/xsd/doc/cxx/tree/guide/makefile
index 521a095..3e6fba2 100644
--- a/xsd/documentation/cxx/tree/guide/makefile
+++ b/xsd/doc/cxx/tree/guide/makefile
@@ -1,6 +1,5 @@
-# file : documentation/cxx/tree/guide/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# file : doc/cxx/tree/guide/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -9,7 +8,7 @@ default := $(out_base)/
install := $(out_base)/.install
dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
-cleandoc := $(out_base)/.cleandoc
+clean := $(out_base)/.clean
# Build.
#
@@ -26,7 +25,7 @@ $(out_base)/cxx-tree-guide.pdf: $(out_base)/cxx-tree-guide.ps | $(out_base)/.
# Install & Dist.
#
-$(install): path := $(subst $(src_root)/documentation/,,$(src_base))
+$(install): path := $(subst $(src_root)/doc/,,$(src_base))
$(dist): path := $(subst $(src_root)/,,$(src_base))
$(install): $(out_base)/cxx-tree-guide.ps $(out_base)/cxx-tree-guide.pdf
@@ -44,9 +43,11 @@ $(dist-win): $(dist)
# Clean
#
-$(cleandoc):
+$(clean):
+ifneq ($(xsd_clean_gen),n)
$(call message,rm $$1,rm -f $$1,$(out_base)/cxx-tree-guide.ps)
$(call message,rm $$1,rm -f $$1,$(out_base)/cxx-tree-guide.pdf)
+endif
# How to.
#
diff --git a/xsd/documentation/cxx/tree/makefile b/xsd/doc/cxx/tree/makefile
index 1d444fa..4163730 100644
--- a/xsd/documentation/cxx/tree/makefile
+++ b/xsd/doc/cxx/tree/makefile
@@ -1,6 +1,5 @@
-# file : documentation/cxx/tree/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# file : doc/cxx/tree/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
@@ -11,7 +10,7 @@ default := $(out_base)/
install := $(out_base)/.install
dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
-cleandoc := $(out_base)/.cleandoc
+clean := $(out_base)/.clean
# Build.
#
@@ -21,15 +20,13 @@ $(default): $(addprefix $(out_base)/,$(addsuffix /,$(docs)))
#
dist-common := $(out_base)/.dist-common
-$(install): path := $(subst $(src_root)/documentation/,,$(src_base))
+$(install): path := $(subst $(src_root)/doc/,,$(src_base))
$(dist-common): path := $(subst $(src_root)/,,$(src_base))
$(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(docs)))
- $(call install-dir,$(src_base)/dbxml,$(install_doc_dir)/xsd/$(path)/dbxml)
$(call install-dir,$(src_base)/reference,$(install_doc_dir)/xsd/$(path)/reference)
$(dist-common):
- $(call install-dir,$(src_base)/dbxml,$(dist_prefix)/$(path)/dbxml)
$(call install-dir,$(src_base)/reference,$(dist_prefix)/$(path)/reference)
$(dist): $(dist-common) $(addprefix $(out_base)/,$(addsuffix /.dist,$(docs)))
@@ -37,7 +34,7 @@ $(dist-win): $(dist-common) $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(do
# Clean.
#
-$(cleandoc): $(addprefix $(out_base)/,$(addsuffix /.cleandoc,$(docs)))
+$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(docs)))
$(call include,$(bld_root)/install.make)
diff --git a/xsd/doc/cxx/tree/manual/cxx-tree-manual.pdf b/xsd/doc/cxx/tree/manual/cxx-tree-manual.pdf
new file mode 100644
index 0000000..73131a3
--- /dev/null
+++ b/xsd/doc/cxx/tree/manual/cxx-tree-manual.pdf
Binary files differ
diff --git a/xsd/documentation/cxx/tree/manual/cxx-tree-manual.ps b/xsd/doc/cxx/tree/manual/cxx-tree-manual.ps
index 2c43453..38335e9 100644
--- a/xsd/documentation/cxx/tree/manual/cxx-tree-manual.ps
+++ b/xsd/doc/cxx/tree/manual/cxx-tree-manual.ps
@@ -1,6 +1,6 @@
%!PS
%%Title: C++/Tree Mapping User Manual
-%%Creator: html2ps version 1.0 beta5
+%%Creator: html2ps version 1.0 beta7
%%EndComments
save
2000 dict begin
@@ -37,7 +37,7 @@ save
/EU [-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0] D
/NO f D
/YY [[{()}{ h }][{ h }{()}][{()}{()}]] D
-/ZZ [[{ (April 2010) }{ Pn }][{ Pn }{ (April 2010) }][{ Ti(, v)join ME 0 get join }{ Ti(, v)join ME 0 get join }]] D
+/ZZ [[{ (July 2014) }{ Pn }][{ Pn }{ (July 2014) }][{ Ti(, v)join ME 0 get join }{ Ti(, v)join ME 0 get join }]] D
/Ts EZ 0 get D
/TU f D
/Xp t D
@@ -104,8 +104,8 @@ save
) 0 1 -1 H ( ) EH (
) 0 1 -1 H ( ) EH (
) Ea()BR (
- ) 0 P (Revision ) ME 0 get join(     April 2010)join EP (
- ) 0 P (Copyright © 2005-2010 CODE SYNTHESIS TOOLS CC) EP (
+ ) 0 P (Revision ) ME 0 get join(     July 2014)join EP (
+ ) 0 P (Copyright © 2005-2014 CODE SYNTHESIS TOOLS CC) EP (
) 0 P (Permission is granted to copy, distribute and/or modify this
document under the terms of the
@@ -668,21 +668,22 @@ WF{FL{reencodeISO D}forall}{4 1 FL length 1 sub{FL E get reencodeISO D}for}ie
/Cb Db D
/Ct Dt D
/Cl Dl D
-[/Creator (html2ps version 1.0 beta5) /Author () /Keywords (xsd, xml, schema, c++, mapping, data, binding, tree, serialization, guide, manual, examples) /Subject ()
+[/Creator (html2ps version 1.0 beta7) /Author () /Keywords (xsd, xml, schema, c++, mapping, data, binding, tree, serialization, guide, manual, examples) /Subject ()
/Title (C++/Tree Mapping User Manual) /DOCINFO pdfmark
/ND 1 D
-/HN [(1) (1) (1) (1) (1) (1) (1) (2) (2) (2) (3) (3) (3) (4) (5) (5) (5) (5)
-(6) (6) (7) (??) (9) (10) (11) (11) (12) (14) (17) (18) (19) (21) (22) (23)
-(24) (24) (25) (26) (27) (28) (28) (30) (31) (31) (35) (35) (35) (37) (39)
-(43) (45) (46) (48) (50) (50) (53) (54) (56) (59) (64) (69) (69) (72) (72)
-(73) (75) (76) (76) (77) (78) (78) (78) (79) (79) (80) (80) (80) (81) (81)
-(83) (83) (85) (86) (86) (87) (87) (87) (88) (89) (90) (90) (92) (93) (??)
-(1) (1) (1) (1) (2) (2) (2) (3) (3) (3) (4) (5) (5) (5) (5) (6) (6) (7)
-(9) (10) (11) (11) (12) (14) (17) (18) (19) (21) (22) (23) (24) (24) (25)
-(26) (27) (28) (28) (30) (31) (31) (35) (35) (35) (37) (39) (43) (45) (46)
-(48) (50) (50) (53) (54) (56) (59) (64) (69) (69) (72) (72) (73) (75) (76)
-(76) (77) (78) (78) (78) (79) (79) (80) (80) (80) (81) (81) (83) (83) (85)
-(86) (86) (87) (87) (87) (88) (89) (90) (90) (92) (93)] D
+/HN [(1) (1) (1) (1) (1) (1) (1) (2) (2) (2) (2) (3) (3) (4) (4) (5) (5) (5)
+(6) (6) (7) (7) (??) (10) (11) (12) (13) (14) (16) (19) (20) (21) (22) (24)
+(24) (25) (26) (27) (28) (29) (29) (30) (31) (32) (33) (37) (37) (37) (39)
+(41) (45) (48) (55) (55) (58) (59) (60) (62) (64) (65) (68) (74) (75) (80)
+(82) (85) (85) (86) (88) (89) (89) (90) (91) (91) (91) (92) (92) (93) (93)
+(94) (94) (94) (96) (97) (99) (99) (100) (100) (100) (101) (101) (102) (103)
+(103) (106) (107) (??) (1) (1) (1) (1) (2) (2) (2) (2) (3) (3) (4) (4) (5)
+(5) (5) (6) (6) (7) (7) (10) (11) (12) (13) (14) (16) (19) (20) (21) (22)
+(24) (24) (25) (26) (27) (28) (29) (29) (30) (31) (32) (33) (37) (37) (37)
+(39) (41) (45) (48) (55) (55) (58) (59) (60) (62) (64) (65) (68) (74) (75)
+(80) (82) (85) (85) (86) (88) (89) (89) (90) (91) (91) (91) (92) (92) (93)
+(93) (94) (94) (94) (96) (97) (99) (99) (100) (100) (100) (101) (101) (102)
+(103) (103) (106) (107)] D
/h0 [()(Table of Contents)] D
/h1 [(1\240\240)(Preface)] D
/h2 [(1.1\240\240)(About This Document)] D
@@ -690,100 +691,104 @@ WF{FL{reencodeISO D}forall}{4 1 FL length 1 sub{FL E get reencodeISO D}for}ie
/h4 [(2\240\240)(1 Introduction)] D
/h5 [(3\240\240)(2 C++/Tree Mapping)] D
/h6 [(3.1\240\240)(2.1 Preliminary Information)] D
-/h7 [(3.1.1\240\240)(2.1.1 Identifiers)] D
-/h8 [(3.1.2\240\240)(2.1.2 Character Type and Encoding)] D
-/h9 [(3.1.3\240\240)(2.1.3 XML Schema Namespace)] D
-/h10 [(3.1.4\240\240)(2.1.4 Anonymous Types)] D
-/h11 [(3.2\240\240)(2.2 Error Handling)] D
-/h12 [(3.2.1\240\240)(2.2.1 xml_schema::duplicate_id)] D
-/h13 [(3.3\240\240)(2.3 Mapping for import and include)] D
-/h14 [(3.3.1\240\240)(2.3.1 Import)] D
-/h15 [(3.3.2\240\240)(2.3.2 Inclusion with Target Namespace)] D
-/h16 [(3.3.3\240\240)(2.3.3 Inclusion without Target Namespace)] D
-/h17 [(3.4\240\240)(2.4 Mapping for Namespaces)] D
-/h18 [(3.5\240\240)(2.5 Mapping for Built-in Data Types)] D
-/h19 [(3.5.1\240\240)(2.5.1 Inheritance from Built-in Data Types)] D
-/h20 [(3.5.2\240\240)(2.5.2 Mapping for anyType)] D
-/h21 [(3.5.3\240\240)(2.5.3 Mapping for anySimpleType)] D
-/h22 [(3.5.4\240\240)(2.5.4 Mapping for QName)] D
-/h23 [(3.5.5\240\240)(2.5.5 Mapping for IDREF)] D
-/h24 [(3.5.6\240\240)(2.5.6 Mapping for base64Binary and hexBinary)] D
-/h25 [(3.6\240\240)(2.5.7 Time Zone Representation)] D
-/h26 [(3.7\240\240)(2.5.8 Mapping for date)] D
-/h27 [(3.8\240\240)(2.5.9 Mapping for dateTime)] D
-/h28 [(3.9\240\240)(2.5.10 Mapping for duration)] D
-/h29 [(3.10\240\240)(2.5.11 Mapping for gDay)] D
-/h30 [(3.11\240\240)(2.5.12 Mapping for gMonth)] D
-/h31 [(3.12\240\240)(2.5.13 Mapping for gMonthDay)] D
-/h32 [(3.13\240\240)(2.5.14 Mapping for gYear)] D
-/h33 [(3.14\240\240)(2.5.15 Mapping for gYearMonth)] D
-/h34 [(3.15\240\240)(2.5.16 Mapping for time)] D
-/h35 [(3.16\240\240)(2.6 Mapping for Simple Types)] D
-/h36 [(3.16.1\240\240)(2.6.1 Mapping for Derivation by Restriction)] D
-/h37 [(3.16.2\240\240)(2.6.2 Mapping for Enumerations)] D
-/h38 [(3.16.3\240\240)(2.6.3 Mapping for Derivation by List)] D
-/h39 [(3.16.4\240\240)(2.6.4 Mapping for Derivation by Union)] D
-/h40 [(3.17\240\240)(2.7 Mapping for Complex Types)] D
-/h41 [(3.17.1\240\240)(2.7.1 Mapping for Derivation by Extension)] D
-/h42 [(3.17.2\240\240)(2.7.2 Mapping for Derivation by Restriction)] D
-/h43 [(3.18\240\240)(2.8 Mapping for Local Elements and Attributes)] D
-/h44 [(3.18.1\240\240)(2.8.1 Mapping for Members with the One Cardinality Class)] D
-/h45 [(3.18.2\240\240)(2.8.2 Mapping for Members with the Optional Cardinality Class)] D
-/h46 [(3.18.3\240\240)(2.8.3 Mapping for Members with the Sequence Cardinality Class)] D
-/h47 [(3.19\240\240)(2.9 Mapping for Global Elements)] D
-/h48 [(3.19.1\240\240)(2.9.1 Element Types)] D
-/h49 [(3.19.2\240\240)(2.9.2 Element Map)] D
-/h50 [(3.20\240\240)(2.10 Mapping for Global Attributes)] D
-/h51 [(3.21\240\240)(2.11 Mapping for xsi:type and Substitution Groups)] D
-/h52 [(3.22\240\240)(2.12 Mapping for any and anyAttribute)] D
-/h53 [(3.22.1\240\240)(2.12.1 Mapping for any with the One Cardinality Class)] D
-/h54 [(3.22.2\240\240)(2.12.2 Mapping for any with the Optional Cardinality Class)] D
-/h55 [(3.22.3\240\240)(2.12.3 Mapping for any with the Sequence Cardinality Class)] D
-/h56 [(3.22.4\240\240)(2.12.4 Mapping for anyAttribute)] D
-/h57 [(3.23\240\240)(2.13 Mapping for Mixed Content Models)] D
-/h58 [(4\240\240)(3 Parsing)] D
-/h59 [(4.1\240\240)(3.1 Initializing the Xerces-C++ Runtime)] D
-/h60 [(4.2\240\240)(3.2 Flags and Properties)] D
-/h61 [(4.3\240\240)(3.3 Error Handling)] D
-/h62 [(4.3.1\240\240)(3.3.1 xml_schema::parsing)] D
-/h63 [(4.3.2\240\240)(3.3.2 xml_schema::expected_element)] D
-/h64 [(4.3.3\240\240)(3.3.3 xml_schema::unexpected_element)] D
-/h65 [(4.3.4\240\240)(3.3.4 xml_schema::expected_attribute)] D
-/h66 [(4.3.5\240\240)(3.3.5 xml_schema::unexpected_enumerator)] D
-/h67 [(4.3.6\240\240)(3.3.6 xml_schema::expected_text_content)] D
-/h68 [(4.3.7\240\240)(3.3.7 xml_schema::no_type_info)] D
-/h69 [(4.3.8\240\240)(3.3.8 xml_schema::not_derived)] D
-/h70 [(4.3.9\240\240)(3.3.9 xml_schema::no_prefix_mapping)] D
-/h71 [(4.4\240\240)(3.4 Reading from a Local File or URI)] D
-/h72 [(4.5\240\240)(3.5 Reading from std::istream)] D
-/h73 [(4.6\240\240)(3.6 Reading from xercesc::InputSource)] D
-/h74 [(4.7\240\240)(3.7 Reading from DOM)] D
-/h75 [(5\240\240)(4 Serialization)] D
-/h76 [(5.1\240\240)(4.1 Initializing the Xerces-C++ Runtime)] D
-/h77 [(5.2\240\240)(4.2 Namespace Infomap and Character Encoding)] D
-/h78 [(5.3\240\240)(4.3 Flags)] D
-/h79 [(5.4\240\240)(4.4 Error Handling)] D
-/h80 [(5.4.1\240\240)(4.4.1 xml_schema::serialization)] D
-/h81 [(5.4.2\240\240)(4.4.2 xml_schema::unexpected_element)] D
-/h82 [(5.4.3\240\240)(4.4.3 xml_schema::no_type_info)] D
-/h83 [(5.5\240\240)(4.5 Serializing to std::ostream)] D
-/h84 [(5.6\240\240)(4.6 Serializing to xercesc::XMLFormatTarget)] D
-/h85 [(5.7\240\240)(4.7 Serializing to DOM)] D
-/h86 [(6\240\240)(5 Additional Functionality)] D
-/h87 [(6.1\240\240)(5.1 DOM Association)] D
-/h88 [(6.2\240\240)(5.2 Binary Serialization)] D
-/h89 [(7\240\240)(Appendix A \236 Default and Fixed Values)] D
-/Hr [94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
-112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
-130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
-148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165
-166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182]D
-/HV [1 2 2 1 1 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2
-2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 1 2 2 2 3 3 3 3 3 3 3 3
-3 2 2 2 2 1 2 2 2 2 3 3 3 2 2 2 1 2 2 1]D
-/Cn [2 0 0 0 23 4 0 0 0 0 1 0 3 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 4 0 0 0 0 2 0 0 3 0 0 0 2 0 0 0 0 4 0 0 0 0 0 7 0 0 9 0 0 0 0 0 0 0 0
-0 0 0 0 0 7 0 0 0 3 0 0 0 0 0 0 2 0 0 0]D
+/h7 [(3.1.1\240\240)(2.1.1 C++ Standard)] D
+/h8 [(3.1.2\240\240)(2.1.2 Identifiers)] D
+/h9 [(3.1.3\240\240)(2.1.3 Character Type and Encoding)] D
+/h10 [(3.1.4\240\240)(2.1.4 XML Schema Namespace)] D
+/h11 [(3.1.5\240\240)(2.1.5 Anonymous Types)] D
+/h12 [(3.2\240\240)(2.2 Error Handling)] D
+/h13 [(3.2.1\240\240)(2.2.1 xml_schema::duplicate_id)] D
+/h14 [(3.3\240\240)(2.3 Mapping for import and include)] D
+/h15 [(3.3.1\240\240)(2.3.1 Import)] D
+/h16 [(3.3.2\240\240)(2.3.2 Inclusion with Target Namespace)] D
+/h17 [(3.3.3\240\240)(2.3.3 Inclusion without Target Namespace)] D
+/h18 [(3.4\240\240)(2.4 Mapping for Namespaces)] D
+/h19 [(3.5\240\240)(2.5 Mapping for Built-in Data Types)] D
+/h20 [(3.5.1\240\240)(2.5.1 Inheritance from Built-in Data Types)] D
+/h21 [(3.5.2\240\240)(2.5.2 Mapping for anyType)] D
+/h22 [(3.5.3\240\240)(2.5.3 Mapping for anySimpleType)] D
+/h23 [(3.5.4\240\240)(2.5.4 Mapping for QName)] D
+/h24 [(3.5.5\240\240)(2.5.5 Mapping for IDREF)] D
+/h25 [(3.5.6\240\240)(2.5.6 Mapping for base64Binary and hexBinary)] D
+/h26 [(3.6\240\240)(2.5.7 Time Zone Representation)] D
+/h27 [(3.7\240\240)(2.5.8 Mapping for date)] D
+/h28 [(3.8\240\240)(2.5.9 Mapping for dateTime)] D
+/h29 [(3.9\240\240)(2.5.10 Mapping for duration)] D
+/h30 [(3.10\240\240)(2.5.11 Mapping for gDay)] D
+/h31 [(3.11\240\240)(2.5.12 Mapping for gMonth)] D
+/h32 [(3.12\240\240)(2.5.13 Mapping for gMonthDay)] D
+/h33 [(3.13\240\240)(2.5.14 Mapping for gYear)] D
+/h34 [(3.14\240\240)(2.5.15 Mapping for gYearMonth)] D
+/h35 [(3.15\240\240)(2.5.16 Mapping for time)] D
+/h36 [(3.16\240\240)(2.6 Mapping for Simple Types)] D
+/h37 [(3.16.1\240\240)(2.6.1 Mapping for Derivation by Restriction)] D
+/h38 [(3.16.2\240\240)(2.6.2 Mapping for Enumerations)] D
+/h39 [(3.16.3\240\240)(2.6.3 Mapping for Derivation by List)] D
+/h40 [(3.16.4\240\240)(2.6.4 Mapping for Derivation by Union)] D
+/h41 [(3.17\240\240)(2.7 Mapping for Complex Types)] D
+/h42 [(3.17.1\240\240)(2.7.1 Mapping for Derivation by Extension)] D
+/h43 [(3.17.2\240\240)(2.7.2 Mapping for Derivation by Restriction)] D
+/h44 [(3.18\240\240)(2.8 Mapping for Local Elements and Attributes)] D
+/h45 [(3.18.1\240\240)(2.8.1 Mapping for Members with the One Cardinality Class)] D
+/h46 [(3.18.2\240\240)(2.8.2 Mapping for Members with the Optional Cardinality Class)] D
+/h47 [(3.18.3\240\240)(2.8.3 Mapping for Members with the Sequence Cardinality Class)] D
+/h48 [(3.18.4\240\240)(2.8.4 Element Order)] D
+/h49 [(3.19\240\240)(2.9 Mapping for Global Elements)] D
+/h50 [(3.19.1\240\240)(2.9.1 Element Types)] D
+/h51 [(3.19.2\240\240)(2.9.2 Element Map)] D
+/h52 [(3.20\240\240)(2.10 Mapping for Global Attributes)] D
+/h53 [(3.21\240\240)(2.11 Mapping for xsi:type and Substitution Groups)] D
+/h54 [(3.22\240\240)(2.12 Mapping for any and anyAttribute)] D
+/h55 [(3.22.1\240\240)(2.12.1 Mapping for any with the One Cardinality Class)] D
+/h56 [(3.22.2\240\240)(2.12.2 Mapping for any with the Optional Cardinality Class)] D
+/h57 [(3.22.3\240\240)(2.12.3 Mapping for any with the Sequence Cardinality Class)] D
+/h58 [(3.22.4\240\240)(2.12.4 Element Wildcard Order)] D
+/h59 [(3.22.5\240\240)(2.12.5 Mapping for anyAttribute)] D
+/h60 [(3.23\240\240)(2.13 Mapping for Mixed Content Models)] D
+/h61 [(4\240\240)(3 Parsing)] D
+/h62 [(4.1\240\240)(3.1 Initializing the Xerces-C++ Runtime)] D
+/h63 [(4.2\240\240)(3.2 Flags and Properties)] D
+/h64 [(4.3\240\240)(3.3 Error Handling)] D
+/h65 [(4.3.1\240\240)(3.3.1 xml_schema::parsing)] D
+/h66 [(4.3.2\240\240)(3.3.2 xml_schema::expected_element)] D
+/h67 [(4.3.3\240\240)(3.3.3 xml_schema::unexpected_element)] D
+/h68 [(4.3.4\240\240)(3.3.4 xml_schema::expected_attribute)] D
+/h69 [(4.3.5\240\240)(3.3.5 xml_schema::unexpected_enumerator)] D
+/h70 [(4.3.6\240\240)(3.3.6 xml_schema::expected_text_content)] D
+/h71 [(4.3.7\240\240)(3.3.7 xml_schema::no_type_info)] D
+/h72 [(4.3.8\240\240)(3.3.8 xml_schema::not_derived)] D
+/h73 [(4.3.9\240\240)(3.3.9 xml_schema::no_prefix_mapping)] D
+/h74 [(4.4\240\240)(3.4 Reading from a Local File or URI)] D
+/h75 [(4.5\240\240)(3.5 Reading from std::istream)] D
+/h76 [(4.6\240\240)(3.6 Reading from xercesc::InputSource)] D
+/h77 [(4.7\240\240)(3.7 Reading from DOM)] D
+/h78 [(5\240\240)(4 Serialization)] D
+/h79 [(5.1\240\240)(4.1 Initializing the Xerces-C++ Runtime)] D
+/h80 [(5.2\240\240)(4.2 Namespace Infomap and Character Encoding)] D
+/h81 [(5.3\240\240)(4.3 Flags)] D
+/h82 [(5.4\240\240)(4.4 Error Handling)] D
+/h83 [(5.4.1\240\240)(4.4.1 xml_schema::serialization)] D
+/h84 [(5.4.2\240\240)(4.4.2 xml_schema::unexpected_element)] D
+/h85 [(5.4.3\240\240)(4.4.3 xml_schema::no_type_info)] D
+/h86 [(5.5\240\240)(4.5 Serializing to std::ostream)] D
+/h87 [(5.6\240\240)(4.6 Serializing to xercesc::XMLFormatTarget)] D
+/h88 [(5.7\240\240)(4.7 Serializing to DOM)] D
+/h89 [(6\240\240)(5 Additional Functionality)] D
+/h90 [(6.1\240\240)(5.1 DOM Association)] D
+/h91 [(6.2\240\240)(5.2 Binary Serialization)] D
+/h92 [(7\240\240)(Appendix A \236 Default and Fixed Values)] D
+/Hr [97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
+115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
+133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
+151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168
+169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
+187 188]D
+/HV [1 2 2 1 1 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2
+2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 1 2 2 2 3 3 3 3 3
+3 3 3 3 2 2 2 2 1 2 2 2 2 3 3 3 2 2 2 1 2 2 1]D
+/Cn [2 0 0 0 23 5 0 0 0 0 0 1 0 3 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 4 0 0 0 0 2 0 0 4 0 0 0 0 2 0 0 0 0 5 0 0 0 0 0 0 7 0 0 9 0 0 0 0 0
+0 0 0 0 0 0 0 0 7 0 0 0 3 0 0 0 0 0 0 2 0 0 0]D
Hr length 0 gt{[/PageMode /UseOutlines /DOCVIEW pdfmark}if
/Hn 1 D
0 1 Hr length 1 sub{
@@ -804,12 +809,11 @@ ET RC ZF
/R4 (http://codesynthesis.com/projects/xsd/documentation/cxx/tree/manual/cxx-tree-manual.ps) D
/R5 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/guide/) D
/R6 (http://wiki.codesynthesis.com/Tree/Customization_guide) D
-/R7 (http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/dbxml/) D
-/R8 (http://wiki.codesynthesis.com/Tree/FAQ) D
-/R9 (http://www.codesynthesis.com/projects/xsd/documentation/xsd.xhtml) D
-/R10 (http://www.codesynthesis.com/mailman/listinfo/xsd-users) D
-/R11 (http://www.codesynthesis.com/pipermail/xsd-users/) D
-/R12 (http://en.wikipedia.org/wiki/Character_code) D
+/R7 (http://wiki.codesynthesis.com/Tree/FAQ) D
+/R8 (http://www.codesynthesis.com/projects/xsd/documentation/xsd.xhtml) D
+/R9 (http://www.codesynthesis.com/mailman/listinfo/xsd-users) D
+/R10 (http://www.codesynthesis.com/pipermail/xsd-users/) D
+/R11 (http://en.wikipedia.org/wiki/Character_code) D
/TS {
tables E get /table E D
table aload pop /rdesc E D /cdesc E D /tdesc E D
@@ -1183,12 +1187,12 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(anyType)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(type)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 23 1 A(Section 2.5.2, "Mapping for )SM(anyType)ES(")23 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 24 1 A(Section 2.5.2, "Mapping for )SM(anyType)ES(")24 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(anySim)HY(ple)HY(Type)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(simple_type)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 24 1 A(Section 2.5.3, "Mapping for )SM(anySim)HY(ple)HY(Type)YH()ES(")24 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 25 1 A(Section 2.5.3, "Mapping for )SM(anySim)HY(ple)HY(Type)YH()ES(")25 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB(fixed-length inte)HY(gral)YH( types
@@ -1353,7 +1357,7 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(QName)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(qname)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 25 1 A(Section 2.5.4, "Mapping for )SM(QName)ES(")25 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 26 1 A(Section 2.5.4, "Mapping for )SM(QName)ES(")26 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB(ID/IDREF types
@@ -1368,7 +1372,7 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(IDREF)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(idref)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 26 1 A(Section 2.5.5, "Mapping for )SM(IDREF)ES(")26 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 27 1 A(Section 2.5.5, "Mapping for )SM(IDREF)ES(")27 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(IDREFS)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
@@ -1393,8 +1397,8 @@ ET RC ZF
]]
[0 0 1 0 0 0 [[{()1 Sl()WB()SM(base64Binary)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(base64_binary)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 27 1 A(Section 2.5.6, "Mapping for
- )SM(base64Binary)ES( and )SM(hexBi)HY(nary)YH()ES(")27 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 28 1 A(Section 2.5.6, "Mapping for
+ )SM(base64Binary)ES( and )SM(hexBi)HY(nary)YH()ES(")28 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 2 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(hexBi)HY(nary)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
@@ -1409,56 +1413,56 @@ ET RC ZF
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(date)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(date)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 29 1 A(Section 2.5.8, "Mapping for
- )SM(date)ES(")29 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 30 1 A(Section 2.5.8, "Mapping for
+ )SM(date)ES(")30 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(date)HY(Time)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(date_time)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 30 1 A(Section 2.5.9, "Mapping for
- )SM(date)HY(Time)YH()ES(")30 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 31 1 A(Section 2.5.9, "Mapping for
+ )SM(date)HY(Time)YH()ES(")31 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(dura)HY(tion)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(dura)HY(tion)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 31 1 A(Section 2.5.10, "Mapping for
- )SM(dura)HY(tion)YH()ES(")31 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 32 1 A(Section 2.5.10, "Mapping for
+ )SM(dura)HY(tion)YH()ES(")32 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gDay)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gday)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 32 1 A(Section 2.5.11, "Mapping for
- )SM(gDay)ES(")32 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 33 1 A(Section 2.5.11, "Mapping for
+ )SM(gDay)ES(")33 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gMonth)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gmonth)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 33 1 A(Section 2.5.12, "Mapping for
- )SM(gMonth)ES(")33 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 34 1 A(Section 2.5.12, "Mapping for
+ )SM(gMonth)ES(")34 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gMon)HY(th)HY(Day)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gmonth_day)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 34 1 A(Section 2.5.13, "Mapping for
- )SM(gMon)HY(th)HY(Day)YH()ES(")34 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 35 1 A(Section 2.5.13, "Mapping for
+ )SM(gMon)HY(th)HY(Day)YH()ES(")35 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gYear)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gyear)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 35 1 A(Section 2.5.14, "Mapping for
- )SM(gYear)ES(")35 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 36 1 A(Section 2.5.14, "Mapping for
+ )SM(gYear)ES(")36 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(gYear)HY(Month)YH()ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(gyear_month)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 36 1 A(Section 2.5.15, "Mapping for
- )SM(gYear)HY(Month)YH()ES(")36 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 37 1 A(Section 2.5.15, "Mapping for
+ )SM(gYear)HY(Month)YH()ES(")37 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB()SM(time)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
[{()1 Sl()WB()SM(time)ES()} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
-[{()1 Sl()WB()0 37 1 A(Section 2.5.16, "Mapping for
- )SM(time)ES(")37 0 TN TL()Ec /AF f D(
+[{()1 Sl()WB()0 38 1 A(Section 2.5.16, "Mapping for
+ )SM(time)ES(")38 0 TN TL()Ec /AF f D(
)} 0 0 0 0 1 1 0 (.) 2 0 4 4 2 6 0 0 0 0 Db 0 ]
]]
[0 0 0 0 0 0 [[{()1 Sl()WB(entity types
@@ -1555,115 +1559,118 @@ ET RC ZF
] D
0 1 1{TS}for RC ZF
/Ba f D /BO 0 D Bs
-/UR (/home/boris/work/xsd/xsd/documentation/cxx/tree/manual/index.xhtml) D
+/UR (/home/boris/work/xsd/xsd/doc/cxx/tree/manual/index.xhtml) D
/Ti (C++/Tree Mapping User Manual) D
/Au () D
/Df f D
-/ME [(2.3.0)] D
+/ME [(4.0.0)] D
Pt
/BO 0 D TC /Ba f D Bs /AU f D /UR () D RC ZF
tH WB
ND 1 gt{Ts 3 mul Np 0()0 C()BD(C++/Tree Mapping User Manual)ES()0 1 TN()EA()BN}if
-1 NH le{94(1\240\240)1 C(Preface)WB 3 Sn()94 1 TN()EA()BN}if
-2 NH le{95(1.1\240\240)2 C(About)WB 4 Sn( This Docu)HY(ment)YH()95 1 TN()EA()BN}if
-2 NH le{96(1.2\240\240)2 C(More)WB 5 Sn( Infor)HY(ma)HY(tion)YH()96 1 TN()EA()BN}if
-1 NH le{97(2\240\240)1 C(1)WB 6 Sn( Intro)HY(duc)HY(tion)YH()97 1 TN()EA()BN}if
-1 NH le{98(3\240\240)1 C(2)WB 7 Sn( C++/Tree Mapping)98 1 TN()EA()BN}if
-2 NH le{99(3.1\240\240)2 C(2.1)WB 8 Sn( Prelim)HY(i)HY(nary)YH( Infor)HY(ma)HY(tion)YH()99 1 TN()EA()BN}if
-3 NH le{100(3.1.1\240\240)3 C(2.1.1)WB 9 Sn( Iden)HY(ti)HY(fiers)YH()100 1 TN()EA()BN}if
-3 NH le{101(3.1.2\240\240)3 C(2.1.2)WB 10 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()101 1 TN()EA()BN}if
-3 NH le{102(3.1.3\240\240)3 C(2.1.3)WB 11 Sn( XML Schema Names)HY(pace)YH()102 1 TN()EA()BN}if
-3 NH le{103(3.1.4\240\240)3 C(2.1.4)WB 12 Sn( Anony)HY(mous)YH( Types)103 1 TN()EA()BN}if
-2 NH le{104(3.2\240\240)2 C(2.2)WB 13 Sn( Error Handling)104 1 TN()EA()BN}if
-3 NH le{105(3.2.1\240\240)3 C(2.2.1)WB 14 Sn( )SM(xml_schema::dupli)HY(cate)YH(_id)ES()105 1 TN()EA()BN}if
-2 NH le{106(3.3\240\240)2 C(2.3)WB 15 Sn( Mapping for )SM(import)ES( and )SM(include)ES()106 1 TN()EA()BN}if
-3 NH le{107(3.3.1\240\240)3 C(2.3.1)WB 16 Sn( Import)107 1 TN()EA()BN}if
-3 NH le{108(3.3.2\240\240)3 C(2.3.2)WB 17 Sn( Inclu)HY(sion)YH( with Target Names)HY(pace)YH()108 1 TN()EA()BN}if
-3 NH le{109(3.3.3\240\240)3 C(2.3.3)WB 18 Sn( Inclu)HY(sion)YH( without Target Names)HY(pace)YH()109 1 TN()EA()BN}if
-2 NH le{110(3.4\240\240)2 C(2.4)WB 19 Sn( Mapping for Names)HY(paces)YH()110 1 TN()EA()BN}if
-2 NH le{111(3.5\240\240)2 C(2.5)WB 20 Sn( Mapping for Built-in Data Types)111 1 TN()EA()BN}if
-3 NH le{112(3.5.1\240\240)3 C(2.5.1)WB 22 Sn( Inher)HY(i)HY(tance)YH( from Built-in Data Types)112 1 TN()EA()BN}if
-3 NH le{113(3.5.2\240\240)3 C(2.5.2)WB 23 Sn( Mapping for )SM(anyType)ES()113 1 TN()EA()BN}if
-3 NH le{114(3.5.3\240\240)3 C(2.5.3)WB 24 Sn( Mapping for )SM(anySim)HY(ple)HY(Type)YH()ES()114 1 TN()EA()BN}if
-3 NH le{115(3.5.4\240\240)3 C(2.5.4)WB 25 Sn( Mapping for )SM(QName)ES()115 1 TN()EA()BN}if
-3 NH le{116(3.5.5\240\240)3 C(2.5.5)WB 26 Sn( Mapping for )SM(IDREF)ES()116 1 TN()EA()BN}if
-3 NH le{117(3.5.6\240\240)3 C(2.5.6)WB 27 Sn( Mapping for )SM(base64Binary)ES( and
- )SM(hexBi)HY(nary)YH()ES()117 1 TN()EA()BN}if
-2 NH le{118(3.6\240\240)2 C(2.5.7)WB 28 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()118 1 TN()EA()BN}if
-2 NH le{119(3.7\240\240)2 C(2.5.8)WB 29 Sn( Mapping for )SM(date)ES()119 1 TN()EA()BN}if
-2 NH le{120(3.8\240\240)2 C(2.5.9)WB 30 Sn( Mapping for )SM(date)HY(Time)YH()ES()120 1 TN()EA()BN}if
-2 NH le{121(3.9\240\240)2 C(2.5.10)WB 31 Sn( Mapping for )SM(dura)HY(tion)YH()ES()121 1 TN()EA()BN}if
-2 NH le{122(3.10\240\240)2 C(2.5.11)WB 32 Sn( Mapping for )SM(gDay)ES()122 1 TN()EA()BN}if
-2 NH le{123(3.11\240\240)2 C(2.5.12)WB 33 Sn( Mapping for )SM(gMonth)ES()123 1 TN()EA()BN}if
-2 NH le{124(3.12\240\240)2 C(2.5.13)WB 34 Sn( Mapping for )SM(gMon)HY(th)HY(Day)YH()ES()124 1 TN()EA()BN}if
-2 NH le{125(3.13\240\240)2 C(2.5.14)WB 35 Sn( Mapping for )SM(gYear)ES()125 1 TN()EA()BN}if
-2 NH le{126(3.14\240\240)2 C(2.5.15)WB 36 Sn( Mapping for )SM(gYear)HY(Month)YH()ES()126 1 TN()EA()BN}if
-2 NH le{127(3.15\240\240)2 C(2.5.16)WB 37 Sn( Mapping for )SM(time)ES()127 1 TN()EA()BN}if
-2 NH le{128(3.16\240\240)2 C(2.6)WB 38 Sn( Mapping for Simple Types)128 1 TN()EA()BN}if
-3 NH le{129(3.16.1\240\240)3 C(2.6.1)WB 39 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()129 1 TN()EA()BN}if
-3 NH le{130(3.16.2\240\240)3 C(2.6.2)WB 40 Sn( Mapping for Enumer)HY(a)HY(tions)YH()130 1 TN()EA()BN}if
-3 NH le{131(3.16.3\240\240)3 C(2.6.3)WB 41 Sn( Mapping for Deriva)HY(tion)YH( by List)131 1 TN()EA()BN}if
-3 NH le{132(3.16.4\240\240)3 C(2.6.4)WB 42 Sn( Mapping for Deriva)HY(tion)YH( by Union)132 1 TN()EA()BN}if
-2 NH le{133(3.17\240\240)2 C(2.7)WB 43 Sn( Mapping for Complex Types)133 1 TN()EA()BN}if
-3 NH le{134(3.17.1\240\240)3 C(2.7.1)WB 44 Sn( Mapping for Deriva)HY(tion)YH( by Exten)HY(sion)YH()134 1 TN()EA()BN}if
-3 NH le{135(3.17.2\240\240)3 C(2.7.2)WB 45 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()135 1 TN()EA()BN}if
-2 NH le{136(3.18\240\240)2 C(2.8)WB 46 Sn( Mapping for Local Elements and Attributes)136 1 TN()EA()BN}if
-3 NH le{137(3.18.1\240\240)3 C(2.8.1)WB 47 Sn( Mapping for Members with the One Cardi)HY(nal)HY(ity)YH( Class)137 1 TN()EA()BN}if
-3 NH le{138(3.18.2\240\240)3 C(2.8.2)WB 48 Sn( Mapping for Members with the Optional Cardi)HY(nal)HY(ity)YH( Class)138 1 TN()EA()BN}if
-3 NH le{139(3.18.3\240\240)3 C(2.8.3)WB 49 Sn( Mapping for Members with the Sequence Cardi)HY(nal)HY(ity)YH( Class)139 1 TN()EA()BN}if
-2 NH le{140(3.19\240\240)2 C(2.9)WB 50 Sn( Mapping for Global Elements)140 1 TN()EA()BN}if
-3 NH le{141(3.19.1\240\240)3 C(2.9.1)WB 51 Sn( Element Types)141 1 TN()EA()BN}if
-3 NH le{142(3.19.2\240\240)3 C(2.9.2)WB 52 Sn( Element Map)142 1 TN()EA()BN}if
-2 NH le{143(3.20\240\240)2 C(2.10)WB 53 Sn( Mapping for Global Attributes)143 1 TN()EA()BN}if
-2 NH le{144(3.21\240\240)2 C(2.11)WB 54 Sn( Mapping for )SM(xsi:type)ES( and Substi)HY(tu)HY(tion)YH(
- Groups)144 1 TN()EA()BN}if
-2 NH le{145(3.22\240\240)2 C(2.12)WB 55 Sn( Mapping for )SM(any)ES( and )SM(anyAt)HY(tribute)YH()ES()145 1 TN()EA()BN}if
-3 NH le{146(3.22.1\240\240)3 C(2.12.1)WB 56 Sn( Mapping for )SM(any)ES( with the One Cardi)HY(nal)HY(ity)YH( Class)146 1 TN()EA()BN}if
-3 NH le{147(3.22.2\240\240)3 C(2.12.2)WB 57 Sn( Mapping for )SM(any)ES( with the Optional Cardi)HY(nal)HY(ity)YH( Class)147 1 TN()EA()BN}if
-3 NH le{148(3.22.3\240\240)3 C(2.12.3)WB 58 Sn( Mapping for )SM(any)ES( with the Sequence Cardi)HY(nal)HY(ity)YH( Class)148 1 TN()EA()BN}if
-3 NH le{149(3.22.4\240\240)3 C(2.12.4)WB 59 Sn( Mapping for )SM(anyAt)HY(tribute)YH()ES()149 1 TN()EA()BN}if
-2 NH le{150(3.23\240\240)2 C(2.13)WB 60 Sn( Mapping for Mixed Content Models)150 1 TN()EA()BN}if
-1 NH le{151(4\240\240)1 C(3)WB 61 Sn( Parsing)151 1 TN()EA()BN}if
-2 NH le{152(4.1\240\240)2 C(3.1)WB 62 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)152 1 TN()EA()BN}if
-2 NH le{153(4.2\240\240)2 C(3.2)WB 63 Sn( Flags and Prop)HY(er)HY(ties)YH()153 1 TN()EA()BN}if
-2 NH le{154(4.3\240\240)2 C(3.3)WB 64 Sn( Error Handling)154 1 TN()EA()BN}if
-3 NH le{155(4.3.1\240\240)3 C(3.3.1)WB 65 Sn( )SM(xml_schema::parsing)ES()155 1 TN()EA()BN}if
-3 NH le{156(4.3.2\240\240)3 C(3.3.2)WB 66 Sn( )SM(xml_schema::expected_element)ES()156 1 TN()EA()BN}if
-3 NH le{157(4.3.3\240\240)3 C(3.3.3)WB 67 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()157 1 TN()EA()BN}if
-3 NH le{158(4.3.4\240\240)3 C(3.3.4)WB 68 Sn( )SM(xml_schema::expected_attribute)ES()158 1 TN()EA()BN}if
-3 NH le{159(4.3.5\240\240)3 C(3.3.5)WB 69 Sn( )SM(xml_schema::unex)HY(pected)YH(_enumer)HY(a)HY(tor)YH()ES()159 1 TN()EA()BN}if
-3 NH le{160(4.3.6\240\240)3 C(3.3.6)WB 70 Sn( )SM(xml_schema::expected_text_content)ES()160 1 TN()EA()BN}if
-3 NH le{161(4.3.7\240\240)3 C(3.3.7)WB 71 Sn( )SM(xml_schema::no_type_info)ES()161 1 TN()EA()BN}if
-3 NH le{162(4.3.8\240\240)3 C(3.3.8)WB 72 Sn( )SM(xml_schema::not_derived)ES()162 1 TN()EA()BN}if
-3 NH le{163(4.3.9\240\240)3 C(3.3.9)WB 73 Sn( )SM(xml_schema::no_prefix_mapping)ES()163 1 TN()EA()BN}if
-2 NH le{164(4.4\240\240)2 C(3.4)WB 74 Sn( Reading from a Local File or URI)164 1 TN()EA()BN}if
-2 NH le{165(4.5\240\240)2 C(3.5)WB 75 Sn( Reading from )SM(std::istream)ES()165 1 TN()EA()BN}if
-2 NH le{166(4.6\240\240)2 C(3.6)WB 76 Sn( Reading from )SM(xercesc::Input)HY(Source)YH()ES()166 1 TN()EA()BN}if
-2 NH le{167(4.7\240\240)2 C(3.7)WB 77 Sn( Reading from DOM)167 1 TN()EA()BN}if
-1 NH le{168(5\240\240)1 C(4)WB 78 Sn( Seri)HY(al)HY(iza)HY(tion)YH()168 1 TN()EA()BN}if
-2 NH le{169(5.1\240\240)2 C(4.1)WB 79 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)169 1 TN()EA()BN}if
-2 NH le{170(5.2\240\240)2 C(4.2)WB 80 Sn( Names)HY(pace)YH( Infomap and Char)HY(ac)HY(ter)YH( Encod)HY(ing)YH()170 1 TN()EA()BN}if
-2 NH le{171(5.3\240\240)2 C(4.3)WB 81 Sn( Flags)171 1 TN()EA()BN}if
-2 NH le{172(5.4\240\240)2 C(4.4)WB 82 Sn( Error Handling)172 1 TN()EA()BN}if
-3 NH le{173(5.4.1\240\240)3 C(4.4.1)WB 83 Sn( )SM(xml_schema::seri)HY(al)HY(iza)HY(tion)YH()ES()173 1 TN()EA()BN}if
-3 NH le{174(5.4.2\240\240)3 C(4.4.2)WB 84 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()174 1 TN()EA()BN}if
-3 NH le{175(5.4.3\240\240)3 C(4.4.3)WB 85 Sn( )SM(xml_schema::no_type_info)ES()175 1 TN()EA()BN}if
-2 NH le{176(5.5\240\240)2 C(4.5)WB 86 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(std::ostream)ES()176 1 TN()EA()BN}if
-2 NH le{177(5.6\240\240)2 C(4.6)WB 87 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(xercesc::XMLFor)HY(mat)HY(Tar)HY(get)YH()ES()177 1 TN()EA()BN}if
-2 NH le{178(5.7\240\240)2 C(4.7)WB 88 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to DOM)178 1 TN()EA()BN}if
-1 NH le{179(6\240\240)1 C(5)WB 89 Sn( Addi)HY(tional)YH( Func)HY(tion)HY(al)HY(ity)YH()179 1 TN()EA()BN}if
-2 NH le{180(6.1\240\240)2 C(5.1)WB 90 Sn( DOM Asso)HY(ci)HY(a)HY(tion)YH()180 1 TN()EA()BN}if
-2 NH le{181(6.2\240\240)2 C(5.2)WB 91 Sn( Binary Seri)HY(al)HY(iza)HY(tion)YH()181 1 TN()EA()BN}if
-1 NH le{182(7\240\240)1 C(Appendix)WB 92 Sn( A \236 Default and Fixed Values)182 1 TN()EA()BN}if
+1 NH le{97(1\240\240)1 C(Preface)WB 3 Sn()97 1 TN()EA()BN}if
+2 NH le{98(1.1\240\240)2 C(About)WB 4 Sn( This Docu)HY(ment)YH()98 1 TN()EA()BN}if
+2 NH le{99(1.2\240\240)2 C(More)WB 5 Sn( Infor)HY(ma)HY(tion)YH()99 1 TN()EA()BN}if
+1 NH le{100(2\240\240)1 C(1)WB 6 Sn( Intro)HY(duc)HY(tion)YH()100 1 TN()EA()BN}if
+1 NH le{101(3\240\240)1 C(2)WB 7 Sn( C++/Tree Mapping)101 1 TN()EA()BN}if
+2 NH le{102(3.1\240\240)2 C(2.1)WB 8 Sn( Prelim)HY(i)HY(nary)YH( Infor)HY(ma)HY(tion)YH()102 1 TN()EA()BN}if
+3 NH le{103(3.1.1\240\240)3 C(2.1.1)WB 9 Sn( C++ Stan)HY(dard)YH()103 1 TN()EA()BN}if
+3 NH le{104(3.1.2\240\240)3 C(2.1.2)WB 10 Sn( Iden)HY(ti)HY(fiers)YH()104 1 TN()EA()BN}if
+3 NH le{105(3.1.3\240\240)3 C(2.1.3)WB 11 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()105 1 TN()EA()BN}if
+3 NH le{106(3.1.4\240\240)3 C(2.1.4)WB 12 Sn( XML Schema Names)HY(pace)YH()106 1 TN()EA()BN}if
+3 NH le{107(3.1.5\240\240)3 C(2.1.5)WB 13 Sn( Anony)HY(mous)YH( Types)107 1 TN()EA()BN}if
+2 NH le{108(3.2\240\240)2 C(2.2)WB 14 Sn( Error Handling)108 1 TN()EA()BN}if
+3 NH le{109(3.2.1\240\240)3 C(2.2.1)WB 15 Sn( )SM(xml_schema::dupli)HY(cate)YH(_id)ES()109 1 TN()EA()BN}if
+2 NH le{110(3.3\240\240)2 C(2.3)WB 16 Sn( Mapping for )SM(import)ES( and )SM(include)ES()110 1 TN()EA()BN}if
+3 NH le{111(3.3.1\240\240)3 C(2.3.1)WB 17 Sn( Import)111 1 TN()EA()BN}if
+3 NH le{112(3.3.2\240\240)3 C(2.3.2)WB 18 Sn( Inclu)HY(sion)YH( with Target Names)HY(pace)YH()112 1 TN()EA()BN}if
+3 NH le{113(3.3.3\240\240)3 C(2.3.3)WB 19 Sn( Inclu)HY(sion)YH( without Target Names)HY(pace)YH()113 1 TN()EA()BN}if
+2 NH le{114(3.4\240\240)2 C(2.4)WB 20 Sn( Mapping for Names)HY(paces)YH()114 1 TN()EA()BN}if
+2 NH le{115(3.5\240\240)2 C(2.5)WB 21 Sn( Mapping for Built-in Data Types)115 1 TN()EA()BN}if
+3 NH le{116(3.5.1\240\240)3 C(2.5.1)WB 23 Sn( Inher)HY(i)HY(tance)YH( from Built-in Data Types)116 1 TN()EA()BN}if
+3 NH le{117(3.5.2\240\240)3 C(2.5.2)WB 24 Sn( Mapping for )SM(anyType)ES()117 1 TN()EA()BN}if
+3 NH le{118(3.5.3\240\240)3 C(2.5.3)WB 25 Sn( Mapping for )SM(anySim)HY(ple)HY(Type)YH()ES()118 1 TN()EA()BN}if
+3 NH le{119(3.5.4\240\240)3 C(2.5.4)WB 26 Sn( Mapping for )SM(QName)ES()119 1 TN()EA()BN}if
+3 NH le{120(3.5.5\240\240)3 C(2.5.5)WB 27 Sn( Mapping for )SM(IDREF)ES()120 1 TN()EA()BN}if
+3 NH le{121(3.5.6\240\240)3 C(2.5.6)WB 28 Sn( Mapping for )SM(base64Binary)ES( and
+ )SM(hexBi)HY(nary)YH()ES()121 1 TN()EA()BN}if
+2 NH le{122(3.6\240\240)2 C(2.5.7)WB 29 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()122 1 TN()EA()BN}if
+2 NH le{123(3.7\240\240)2 C(2.5.8)WB 30 Sn( Mapping for )SM(date)ES()123 1 TN()EA()BN}if
+2 NH le{124(3.8\240\240)2 C(2.5.9)WB 31 Sn( Mapping for )SM(date)HY(Time)YH()ES()124 1 TN()EA()BN}if
+2 NH le{125(3.9\240\240)2 C(2.5.10)WB 32 Sn( Mapping for )SM(dura)HY(tion)YH()ES()125 1 TN()EA()BN}if
+2 NH le{126(3.10\240\240)2 C(2.5.11)WB 33 Sn( Mapping for )SM(gDay)ES()126 1 TN()EA()BN}if
+2 NH le{127(3.11\240\240)2 C(2.5.12)WB 34 Sn( Mapping for )SM(gMonth)ES()127 1 TN()EA()BN}if
+2 NH le{128(3.12\240\240)2 C(2.5.13)WB 35 Sn( Mapping for )SM(gMon)HY(th)HY(Day)YH()ES()128 1 TN()EA()BN}if
+2 NH le{129(3.13\240\240)2 C(2.5.14)WB 36 Sn( Mapping for )SM(gYear)ES()129 1 TN()EA()BN}if
+2 NH le{130(3.14\240\240)2 C(2.5.15)WB 37 Sn( Mapping for )SM(gYear)HY(Month)YH()ES()130 1 TN()EA()BN}if
+2 NH le{131(3.15\240\240)2 C(2.5.16)WB 38 Sn( Mapping for )SM(time)ES()131 1 TN()EA()BN}if
+2 NH le{132(3.16\240\240)2 C(2.6)WB 39 Sn( Mapping for Simple Types)132 1 TN()EA()BN}if
+3 NH le{133(3.16.1\240\240)3 C(2.6.1)WB 40 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()133 1 TN()EA()BN}if
+3 NH le{134(3.16.2\240\240)3 C(2.6.2)WB 41 Sn( Mapping for Enumer)HY(a)HY(tions)YH()134 1 TN()EA()BN}if
+3 NH le{135(3.16.3\240\240)3 C(2.6.3)WB 42 Sn( Mapping for Deriva)HY(tion)YH( by List)135 1 TN()EA()BN}if
+3 NH le{136(3.16.4\240\240)3 C(2.6.4)WB 43 Sn( Mapping for Deriva)HY(tion)YH( by Union)136 1 TN()EA()BN}if
+2 NH le{137(3.17\240\240)2 C(2.7)WB 44 Sn( Mapping for Complex Types)137 1 TN()EA()BN}if
+3 NH le{138(3.17.1\240\240)3 C(2.7.1)WB 45 Sn( Mapping for Deriva)HY(tion)YH( by Exten)HY(sion)YH()138 1 TN()EA()BN}if
+3 NH le{139(3.17.2\240\240)3 C(2.7.2)WB 46 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()139 1 TN()EA()BN}if
+2 NH le{140(3.18\240\240)2 C(2.8)WB 47 Sn( Mapping for Local Elements and Attributes)140 1 TN()EA()BN}if
+3 NH le{141(3.18.1\240\240)3 C(2.8.1)WB 48 Sn( Mapping for Members with the One Cardi)HY(nal)HY(ity)YH( Class)141 1 TN()EA()BN}if
+3 NH le{142(3.18.2\240\240)3 C(2.8.2)WB 49 Sn( Mapping for Members with the Optional Cardi)HY(nal)HY(ity)YH( Class)142 1 TN()EA()BN}if
+3 NH le{143(3.18.3\240\240)3 C(2.8.3)WB 50 Sn( Mapping for Members with the Sequence Cardi)HY(nal)HY(ity)YH( Class)143 1 TN()EA()BN}if
+3 NH le{144(3.18.4\240\240)3 C(2.8.4)WB 51 Sn( Element Order)144 1 TN()EA()BN}if
+2 NH le{145(3.19\240\240)2 C(2.9)WB 52 Sn( Mapping for Global Elements)145 1 TN()EA()BN}if
+3 NH le{146(3.19.1\240\240)3 C(2.9.1)WB 53 Sn( Element Types)146 1 TN()EA()BN}if
+3 NH le{147(3.19.2\240\240)3 C(2.9.2)WB 54 Sn( Element Map)147 1 TN()EA()BN}if
+2 NH le{148(3.20\240\240)2 C(2.10)WB 55 Sn( Mapping for Global Attributes)148 1 TN()EA()BN}if
+2 NH le{149(3.21\240\240)2 C(2.11)WB 56 Sn( Mapping for )SM(xsi:type)ES( and Substi)HY(tu)HY(tion)YH(
+ Groups)149 1 TN()EA()BN}if
+2 NH le{150(3.22\240\240)2 C(2.12)WB 57 Sn( Mapping for )SM(any)ES( and )SM(anyAt)HY(tribute)YH()ES()150 1 TN()EA()BN}if
+3 NH le{151(3.22.1\240\240)3 C(2.12.1)WB 58 Sn( Mapping for )SM(any)ES( with the One Cardi)HY(nal)HY(ity)YH( Class)151 1 TN()EA()BN}if
+3 NH le{152(3.22.2\240\240)3 C(2.12.2)WB 59 Sn( Mapping for )SM(any)ES( with the Optional Cardi)HY(nal)HY(ity)YH( Class)152 1 TN()EA()BN}if
+3 NH le{153(3.22.3\240\240)3 C(2.12.3)WB 60 Sn( Mapping for )SM(any)ES( with the Sequence Cardi)HY(nal)HY(ity)YH( Class)153 1 TN()EA()BN}if
+3 NH le{154(3.22.4\240\240)3 C(2.12.4)WB 61 Sn( Element Wild)HY(card)YH( Order)154 1 TN()EA()BN}if
+3 NH le{155(3.22.5\240\240)3 C(2.12.5)WB 62 Sn( Mapping for )SM(anyAt)HY(tribute)YH()ES()155 1 TN()EA()BN}if
+2 NH le{156(3.23\240\240)2 C(2.13)WB 63 Sn( Mapping for Mixed Content Models)156 1 TN()EA()BN}if
+1 NH le{157(4\240\240)1 C(3)WB 64 Sn( Parsing)157 1 TN()EA()BN}if
+2 NH le{158(4.1\240\240)2 C(3.1)WB 65 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)158 1 TN()EA()BN}if
+2 NH le{159(4.2\240\240)2 C(3.2)WB 66 Sn( Flags and Prop)HY(er)HY(ties)YH()159 1 TN()EA()BN}if
+2 NH le{160(4.3\240\240)2 C(3.3)WB 67 Sn( Error Handling)160 1 TN()EA()BN}if
+3 NH le{161(4.3.1\240\240)3 C(3.3.1)WB 68 Sn( )SM(xml_schema::parsing)ES()161 1 TN()EA()BN}if
+3 NH le{162(4.3.2\240\240)3 C(3.3.2)WB 69 Sn( )SM(xml_schema::expected_element)ES()162 1 TN()EA()BN}if
+3 NH le{163(4.3.3\240\240)3 C(3.3.3)WB 70 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()163 1 TN()EA()BN}if
+3 NH le{164(4.3.4\240\240)3 C(3.3.4)WB 71 Sn( )SM(xml_schema::expected_attribute)ES()164 1 TN()EA()BN}if
+3 NH le{165(4.3.5\240\240)3 C(3.3.5)WB 72 Sn( )SM(xml_schema::unex)HY(pected)YH(_enumer)HY(a)HY(tor)YH()ES()165 1 TN()EA()BN}if
+3 NH le{166(4.3.6\240\240)3 C(3.3.6)WB 73 Sn( )SM(xml_schema::expected_text_content)ES()166 1 TN()EA()BN}if
+3 NH le{167(4.3.7\240\240)3 C(3.3.7)WB 74 Sn( )SM(xml_schema::no_type_info)ES()167 1 TN()EA()BN}if
+3 NH le{168(4.3.8\240\240)3 C(3.3.8)WB 75 Sn( )SM(xml_schema::not_derived)ES()168 1 TN()EA()BN}if
+3 NH le{169(4.3.9\240\240)3 C(3.3.9)WB 76 Sn( )SM(xml_schema::no_prefix_mapping)ES()169 1 TN()EA()BN}if
+2 NH le{170(4.4\240\240)2 C(3.4)WB 77 Sn( Reading from a Local File or URI)170 1 TN()EA()BN}if
+2 NH le{171(4.5\240\240)2 C(3.5)WB 78 Sn( Reading from )SM(std::istream)ES()171 1 TN()EA()BN}if
+2 NH le{172(4.6\240\240)2 C(3.6)WB 79 Sn( Reading from )SM(xercesc::Input)HY(Source)YH()ES()172 1 TN()EA()BN}if
+2 NH le{173(4.7\240\240)2 C(3.7)WB 80 Sn( Reading from DOM)173 1 TN()EA()BN}if
+1 NH le{174(5\240\240)1 C(4)WB 81 Sn( Seri)HY(al)HY(iza)HY(tion)YH()174 1 TN()EA()BN}if
+2 NH le{175(5.1\240\240)2 C(4.1)WB 82 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)175 1 TN()EA()BN}if
+2 NH le{176(5.2\240\240)2 C(4.2)WB 83 Sn( Names)HY(pace)YH( Infomap and Char)HY(ac)HY(ter)YH( Encod)HY(ing)YH()176 1 TN()EA()BN}if
+2 NH le{177(5.3\240\240)2 C(4.3)WB 84 Sn( Flags)177 1 TN()EA()BN}if
+2 NH le{178(5.4\240\240)2 C(4.4)WB 85 Sn( Error Handling)178 1 TN()EA()BN}if
+3 NH le{179(5.4.1\240\240)3 C(4.4.1)WB 86 Sn( )SM(xml_schema::seri)HY(al)HY(iza)HY(tion)YH()ES()179 1 TN()EA()BN}if
+3 NH le{180(5.4.2\240\240)3 C(4.4.2)WB 87 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()180 1 TN()EA()BN}if
+3 NH le{181(5.4.3\240\240)3 C(4.4.3)WB 88 Sn( )SM(xml_schema::no_type_info)ES()181 1 TN()EA()BN}if
+2 NH le{182(5.5\240\240)2 C(4.5)WB 89 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(std::ostream)ES()182 1 TN()EA()BN}if
+2 NH le{183(5.6\240\240)2 C(4.6)WB 90 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(xercesc::XMLFor)HY(mat)HY(Tar)HY(get)YH()ES()183 1 TN()EA()BN}if
+2 NH le{184(5.7\240\240)2 C(4.7)WB 91 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to DOM)184 1 TN()EA()BN}if
+1 NH le{185(6\240\240)1 C(5)WB 92 Sn( Addi)HY(tional)YH( Func)HY(tion)HY(al)HY(ity)YH()185 1 TN()EA()BN}if
+2 NH le{186(6.1\240\240)2 C(5.1)WB 93 Sn( DOM Asso)HY(ci)HY(a)HY(tion)YH()186 1 TN()EA()BN}if
+2 NH le{187(6.2\240\240)2 C(5.2)WB 94 Sn( Binary Seri)HY(al)HY(iza)HY(tion)YH()187 1 TN()EA()BN}if
+1 NH le{188(7\240\240)1 C(Appendix)WB 95 Sn( A \236 Default and Fixed Values)188 1 TN()EA()BN}if
/OU t D /Cb Db D NP Ep ET
/Cb Db D /Ct [16#00 16#00 16#00] D /Cl [16#00 16#00 16#00] D /CL -1 D Ct Sc
/Ba f D /BO 0 D Bs
-/UR (/home/boris/work/xsd/xsd/documentation/cxx/tree/manual/index.xhtml) D
+/UR (/home/boris/work/xsd/xsd/doc/cxx/tree/manual/index.xhtml) D
/Ti (C++/Tree Mapping User Manual) D
/Au () D
/Df f D
-/ME [(2.3.0)] D
+/ME [(4.0.0)] D
NP RC ZF
()1 Sl()WB 0 Sn(
@@ -1671,9 +1678,9 @@ NP RC ZF
)BR()WB 1 Sn( )BR()WB 2 Sn(
- )0 1 0 H(Preface)WB 94 Sn()WB 3 Sn()EA()EH(
+ )0 1 0 H(Preface)WB 97 Sn()WB 3 Sn()EA()EH(
- )0 2 1 H(About)WB 95 Sn()WB 4 Sn( This Docu)HY(ment)YH()EA()EH(
+ )0 2 1 H(About)WB 98 Sn()WB 4 Sn( This Docu)HY(ment)YH()EA()EH(
)0 P(This docu)HY(ment)YH( describes the mapping of W3C XML Schema
to the C++ program)HY(ming)YH( language as imple)HY(mented)YH( by
@@ -1684,9 +1691,9 @@ NP RC ZF
called C++/Tree.
)EP(
- )0 P(Revi)HY(sion)YH( 2.3.0)BR(
+ )0 P(Revi)HY(sion)YH( 4.0.0)BR(
This revi)HY(sion)YH( of the manual describes the C++/Tree
- mapping as imple)HY(mented)YH( by CodeSyn)HY(the)HY(sis)YH( XSD version 3.3.0.
+ mapping as imple)HY(mented)YH( by CodeSyn)HY(the)HY(sis)YH( XSD version 4.0.0.
)EP(
)0 P(This docu)HY(ment)YH( is avail)HY(able)YH( in the follow)HY(ing)YH( formats:
@@ -1694,7 +1701,7 @@ NP RC ZF
)R3 2 A(PDF)EA(, and
)R4 2 A(PostScript)EA(.)EP(
- )0 2 2 H(More)WB 96 Sn()WB 5 Sn( Infor)HY(ma)HY(tion)YH()EA()EH(
+ )0 2 2 H(More)WB 99 Sn()WB 5 Sn( Infor)HY(ma)HY(tion)YH()EA()EH(
)0 P(Beyond this manual, you may also find the follow)HY(ing)YH( sources of
infor)HY(ma)HY(tion)YH( useful:)EP(
@@ -1706,12 +1713,9 @@ NP RC ZF
Mapping Customiza)HY(tion)YH( Guide)EA(
)-1 LI()R7 2 A(C++/Tree
- Mapping and Berke)HY(ley)YH( DB XML Inte)HY(gra)HY(tion)YH( Guide)EA(
-
- )-1 LI()R8 2 A(C++/Tree
Mapping Frequently Asked Ques)HY(tions)YH( \201FAQ\202)EA(
- )-1 LI()R9 2 A(XSD
+ )-1 LI()R8 2 A(XSD
Compiler Command Line Manual)EA(
)-1 LI(The )SM(exam)HY(ples)YH(/cxx/tree/)ES( direc)HY(tory)YH( in the XSD
@@ -1721,15 +1725,14 @@ NP RC ZF
)-1 LI(The )SM(README)ES( file in the XSD distri)HY(bu)HY(tion)YH( explains
how to compile the exam)HY(ples)YH( on various plat)HY(forms)YH(.
- )-1 LI(The )R10 2 A(xsd-users)EA(
+ )-1 LI(The )R9 2 A(xsd-users)EA(
mailing list is a place to ask ques)HY(tions)YH(. Further)HY(more)YH( the
- )R11 2 A(archives)EA(
+ )R10 2 A(archives)EA(
may already have answers to some of your ques)HY(tions)YH(.
-
)LU(
- )0 1 3 H(1)WB 97 Sn()WB 6 Sn( Intro)HY(duc)HY(tion)YH()EA()EH(
+ )0 1 3 H(1)WB 100 Sn()WB 6 Sn( Intro)HY(duc)HY(tion)YH()EA()EH(
)0 P(C++/Tree is a W3C XML Schema to C++ mapping that repre)HY(sents)YH( the
data stored in XML as a stat)HY(i)HY(cally)YH(-typed, vocab)HY(u)HY(lary)YH(-specific
@@ -1749,24 +1752,33 @@ NP RC ZF
)0 P(The C++/Tree mapping consists of C++ types that repre)HY(sent)YH( the
given vocab)HY(u)HY(lary)YH( \201)0 7 1 A(Chapter 2, "C++/Tree Mapping")7 0 TN TL()Ec /AF f D(\202,
a set of parsing func)HY(tions)YH( that convert XML docu)HY(ments)YH( to
- a tree-like in-memory data struc)HY(ture)YH( \201)0 61 1 A(Chapter 3,
- "Parsing")61 0 TN TL()Ec /AF f D(\202, and a set of seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( that convert
- the object model back to XML \201)0 78 1 A(Chapter 4,
- "Seri)HY(al)HY(iza)HY(tion)YH(")78 0 TN TL()Ec /AF f D(\202. Further)HY(more)YH(, the mapping provides a number
+ a tree-like in-memory data struc)HY(ture)YH( \201)0 64 1 A(Chapter 3,
+ "Parsing")64 0 TN TL()Ec /AF f D(\202, and a set of seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( that convert
+ the object model back to XML \201)0 81 1 A(Chapter 4,
+ "Seri)HY(al)HY(iza)HY(tion)YH(")81 0 TN TL()Ec /AF f D(\202. Further)HY(more)YH(, the mapping provides a number
of addi)HY(tional)YH( features, such as DOM asso)HY(ci)HY(a)HY(tion)YH( and binary
seri)HY(al)HY(iza)HY(tion)YH(, that can be useful in some appli)HY(ca)HY(tions)YH(
- \201)0 89 1 A(Chapter 5, "Addi)HY(tional)YH( Func)HY(tion)HY(al)HY(ity)YH(")89 0 TN TL()Ec /AF f D(\202.
+ \201)0 92 1 A(Chapter 5, "Addi)HY(tional)YH( Func)HY(tion)HY(al)HY(ity)YH(")92 0 TN TL()Ec /AF f D(\202.
)EP(
- )0 1 4 H(2)WB 98 Sn()WB 7 Sn( C++/Tree Mapping)EA()EH(
+ )0 1 4 H(2)WB 101 Sn()WB 7 Sn( C++/Tree Mapping)EA()EH(
+
+ )0 2 5 H(2.1)WB 102 Sn()WB 8 Sn( Prelim)HY(i)HY(nary)YH( Infor)HY(ma)HY(tion)YH()EA()EH(
+
+ )0 3 6 H(2.1.1)WB 103 Sn()WB 9 Sn( C++ Stan)HY(dard)YH()EA()EH(
- )0 2 5 H(2.1)WB 99 Sn()WB 8 Sn( Prelim)HY(i)HY(nary)YH( Infor)HY(ma)HY(tion)YH()EA()EH(
+ )0 P(The C++/Tree mapping provides support for ISO/IEC C++ 1998/2003 \201C++98\202
+ and ISO/IEC C++ 2011 \201C++11\202. To select the C++ stan)HY(dard)YH( for the
+ gener)HY(ated)YH( code we use the )SM(--std)ES( XSD compiler command
+ line option. While the major)HY(ity)YH( of the exam)HY(ples)YH( in this manual use
+ C++98, support for the new func)HY(tion)HY(al)HY(ity)YH( and library compo)HY(nents)YH(
+ intro)HY(duced)YH( in C++11 are discussed through)HY(out)YH( the docu)HY(ment)YH(.)EP(
- )0 3 6 H(2.1.1)WB 100 Sn()WB 9 Sn( Iden)HY(ti)HY(fiers)YH()EA()EH(
+ )0 3 7 H(2.1.2)WB 104 Sn()WB 10 Sn( Iden)HY(ti)HY(fiers)YH()EA()EH(
)0 P(XML Schema names may happen to be reserved C++ keywords or contain
char)HY(ac)HY(ters)YH( that are illegal in C++ iden)HY(ti)HY(fiers)YH(. To avoid C++ compi)HY(la)HY(tion)YH(
@@ -1785,8 +1797,8 @@ NP RC ZF
)0 P(Further)HY(more)YH(, conflicts between type names and func)HY(tion)YH( names in the
same scope are resolved using name escap)HY(ing)YH(. Such conflicts include
both a global element \201which is mapped to a set of parsing and/or
- seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( or element types, see )0 50 1 A(Section
- 2.9, "Mapping for Global Elements")50 0 TN TL()Ec /AF f D(\202 and a global type sharing the
+ seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( or element types, see )0 52 1 A(Section
+ 2.9, "Mapping for Global Elements")52 0 TN TL()Ec /AF f D(\202 and a global type sharing the
same name as well as a local element or attribute inside a type having
the same name as the type itself.)EP(
@@ -1809,10 +1821,10 @@ NP RC ZF
refine one of the prede)HY(fined)YH( conven)HY(tions)YH( or create a completely
custom naming scheme by using the )SM(--*-regex)ES( options.
For more detailed infor)HY(ma)HY(tion)YH( on these options refer to the NAMING
- CONVEN)HY(TION)YH( section in the )R9 2 A(XSD
+ CONVEN)HY(TION)YH( section in the )R8 2 A(XSD
Compiler Command Line Manual)EA(.)EP(
- )0 3 7 H(2.1.2)WB 101 Sn()WB 10 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()EA()EH(
+ )0 3 8 H(2.1.3)WB 105 Sn()WB 11 Sn( Char)HY(ac)HY(ter)YH( Type and Encod)HY(ing)YH()EA()EH(
)0 P(The code that imple)HY(ments)YH( the mapping, depend)HY(ing)YH( on the
)SM(--char-type)ES( option, is gener)HY(ated)YH( using either
@@ -1837,7 +1849,7 @@ NP RC ZF
encod)HY(ing)YH( is UTF-16. On other plat)HY(forms)YH( )SM(wchar_t)ES( is 4 bytes
long and UTF-32/UCS-4 is used.)EP(
- )0 3 8 H(2.1.3)WB 102 Sn()WB 11 Sn( XML Schema Names)HY(pace)YH()EA()EH(
+ )0 3 9 H(2.1.4)WB 106 Sn()WB 12 Sn( XML Schema Names)HY(pace)YH()EA()EH(
)0 P(The mapping relies on some prede)HY(fined)YH( types, classes, and func)HY(tions)YH(
that are logi)HY(cally)YH( defined in the XML Schema names)HY(pace)YH( reserved for
@@ -1849,19 +1861,19 @@ NP RC ZF
)EP(
)0 P(Note that, if desired, the default mapping of this names)HY(pace)YH( can be
- changed as described in )0 19 1 A(Section 2.4, "Mapping for
- Names)HY(paces)YH(")19 0 TN TL()Ec /AF f D(.
+ changed as described in )0 20 1 A(Section 2.4, "Mapping for
+ Names)HY(paces)YH(")20 0 TN TL()Ec /AF f D(.
)EP(
- )0 3 9 H(2.1.4)WB 103 Sn()WB 12 Sn( Anony)HY(mous)YH( Types)EA()EH(
+ )0 3 10 H(2.1.5)WB 107 Sn()WB 13 Sn( Anony)HY(mous)YH( Types)EA()EH(
)0 P(For the purpose of code gener)HY(a)HY(tion)YH(, anony)HY(mous)YH( types defined in
XML Schema are auto)HY(mat)HY(i)HY(cally)YH( assigned names that are derived
from enclos)HY(ing)YH( attributes and elements. Other)HY(wise)YH(, such types
follows stan)HY(dard)YH( mapping rules for simple and complex type
- defi)HY(ni)HY(tions)YH( \201see )0 38 1 A(Section 2.6, "Mapping for Simple Types")38 0 TN TL()Ec /AF f D(
- and )0 43 1 A(Section 2.7, "Mapping for Complex Types")43 0 TN TL()Ec /AF f D(\202.
+ defi)HY(ni)HY(tions)YH( \201see )0 39 1 A(Section 2.6, "Mapping for Simple Types")39 0 TN TL()Ec /AF f D(
+ and )0 44 1 A(Section 2.7, "Mapping for Complex Types")44 0 TN TL()Ec /AF f D(\202.
For example, in the follow)HY(ing)YH( schema frag)HY(ment)YH(:
)EP(
@@ -1874,11 +1886,11 @@ NP RC ZF
)0 P(The anony)HY(mous)YH( type defined inside element )SM(object)ES( will
be given name )SM(object)ES(. The compiler has a number of
options that control the process of anony)HY(mous)YH( type naming. For more
- infor)HY(ma)HY(tion)YH( refer to the )R9 2 A(XSD
+ infor)HY(ma)HY(tion)YH( refer to the )R8 2 A(XSD
Compiler Command Line Manual)EA(.)EP(
- )0 2 10 H(2.2)WB 104 Sn()WB 13 Sn( Error Handling)EA()EH(
+ )0 2 11 H(2.2)WB 108 Sn()WB 14 Sn( Error Handling)EA()EH(
)0 P(The mapping uses the C++ excep)HY(tion)YH( handling mech)HY(a)HY(nism)YH( as a primary way
of report)HY(ing)YH( error condi)HY(tions)YH(. All excep)HY(tions)YH( that are spec)HY(i)HY(fied)YH( in
@@ -1916,16 +1928,16 @@ catch \201const xml_schema::exception& e\202
)0 P(The follow)HY(ing)YH( sub-sections describe excep)HY(tions)YH( thrown by the
types that consti)HY(tute)YH( the object model.
- )0 64 1 A(Section 3.3, "Error Handling")64 0 TN TL()Ec /AF f D( of
- )0 61 1 A(Chapter 3, "Parsing")61 0 TN TL()Ec /AF f D( describes excep)HY(tions)YH(
+ )0 67 1 A(Section 3.3, "Error Handling")67 0 TN TL()Ec /AF f D( of
+ )0 64 1 A(Chapter 3, "Parsing")64 0 TN TL()Ec /AF f D( describes excep)HY(tions)YH(
and error handling mech)HY(a)HY(nisms)YH( specific to the parsing func)HY(tions)YH(.
- )0 82 1 A(Section 4.4, "Error Handling")82 0 TN TL()Ec /AF f D( of
- )0 78 1 A(Chapter 4, "Seri)HY(al)HY(iza)HY(tion)YH(")78 0 TN TL()Ec /AF f D( describes excep)HY(tions)YH(
+ )0 85 1 A(Section 4.4, "Error Handling")85 0 TN TL()Ec /AF f D( of
+ )0 81 1 A(Chapter 4, "Seri)HY(al)HY(iza)HY(tion)YH(")81 0 TN TL()Ec /AF f D( describes excep)HY(tions)YH(
and error handling mech)HY(a)HY(nisms)YH( specific to the seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH(.
)EP(
- )0 3 11 H(2.2.1)WB 105 Sn()WB 14 Sn( )SM(xml_schema::dupli)HY(cate)YH(_id)ES()EA()EH(
+ )0 3 12 H(2.2.1)WB 109 Sn()WB 15 Sn( )SM(xml_schema::dupli)HY(cate)YH(_id)ES()EA()EH(
) 10 48 PR(struct duplicate_id: virtual exception
{
@@ -1940,14 +1952,14 @@ catch \201const xml_schema::exception& e\202
)0 P(The )SM(xml_schema::dupli)HY(cate)YH(_id)ES( is thrown when
a conflict)HY(ing)YH( instance of )SM(xml_schema::id)ES( \201see
- )0 20 1 A(Section 2.5, "Mapping for Built-in Data Types")20 0 TN TL()Ec /AF f D(\202
+ )0 21 1 A(Section 2.5, "Mapping for Built-in Data Types")21 0 TN TL()Ec /AF f D(\202
is added to a tree. The offend)HY(ing)YH( ID value can be obtained using
the )SM(id)ES( func)HY(tion)YH(.
)EP(
- )0 2 12 H(2.3)WB 106 Sn()WB 15 Sn( Mapping for )SM(import)ES( and )SM(include)ES()EA()EH(
+ )0 2 13 H(2.3)WB 110 Sn()WB 16 Sn( Mapping for )SM(import)ES( and )SM(include)ES()EA()EH(
- )0 3 13 H(2.3.1)WB 107 Sn()WB 16 Sn( Import)EA()EH(
+ )0 3 14 H(2.3.1)WB 111 Sn()WB 17 Sn( Import)EA()EH(
)0 P(The XML Schema )SM(import)ES( element is mapped to the C++
Prepro)HY(ces)HY(sor)YH( )SM(#include)ES( direc)HY(tive)YH(. The value of
@@ -1966,15 +1978,15 @@ catch \201const xml_schema::exception& e\202
)0 P(Note that you will need to compile imported schemas sepa)HY(rately)YH(
in order to produce corre)HY(spond)HY(ing)YH( header files.)EP(
- )0 3 14 H(2.3.2)WB 108 Sn()WB 17 Sn( Inclu)HY(sion)YH( with Target Names)HY(pace)YH()EA()EH(
+ )0 3 15 H(2.3.2)WB 112 Sn()WB 18 Sn( Inclu)HY(sion)YH( with Target Names)HY(pace)YH()EA()EH(
)0 P(The XML Schema )SM(include)ES( element which refers to a schema
with a target names)HY(pace)YH( or appears in a schema without a target names)HY(pace)YH(
follows the same mapping rules as the )SM(import)ES( element,
- see )0 16 1 A(Section 2.3.1, "Import")16 0 TN TL()Ec /AF f D(.
+ see )0 17 1 A(Section 2.3.1, "Import")17 0 TN TL()Ec /AF f D(.
)EP(
- )0 3 15 H(2.3.3)WB 109 Sn()WB 18 Sn( Inclu)HY(sion)YH( without Target Names)HY(pace)YH()EA()EH(
+ )0 3 16 H(2.3.3)WB 113 Sn()WB 19 Sn( Inclu)HY(sion)YH( without Target Names)HY(pace)YH()EA()EH(
)0 P(For the XML Schema )SM(include)ES( element which refers to a schema
without a target names)HY(pace)YH( and appears in a schema with a target
@@ -2009,7 +2021,7 @@ namespace test
};
})RP(
- )0 2 16 H(2.4)WB 110 Sn()WB 19 Sn( Mapping for Names)HY(paces)YH()EA()EH(
+ )0 2 17 H(2.4)WB 114 Sn()WB 20 Sn( Mapping for Names)HY(paces)YH()EA()EH(
)0 P(An XML Schema names)HY(pace)YH( is mapped to one or more nested C++
names)HY(paces)YH(. XML Schema names)HY(paces)YH( are iden)HY(ti)HY(fied)YH( by URIs.
@@ -2036,11 +2048,11 @@ namespace test
)0 P(The default mapping of names)HY(pace)YH( URIs to C++ names)HY(pace)YH( names can be
altered using the )SM(--names)HY(pace)YH(-map)ES( and
)SM(--names)HY(pace)YH(-regex)ES( options. See the
- )R9 2 A(XSD
+ )R8 2 A(XSD
Compiler Command Line Manual)EA( for more infor)HY(ma)HY(tion)YH(.
)EP(
- )0 2 17 H(2.5)WB 111 Sn()WB 20 Sn( Mapping for Built-in Data Types)EA()EH(
+ )0 2 18 H(2.5)WB 115 Sn()WB 21 Sn( Mapping for Built-in Data Types)EA()EH(
)0 P(The mapping of XML Schema built-in data types to C++ types is
summa)HY(rized)YH( in the table below.)EP(
@@ -2062,12 +2074,13 @@ namespace test
sequences of non-funda)HY(men)HY(tal)YH( C++ types is the addi)HY(tion)YH( of
the over)HY(loaded)YH( )SM(push_back)ES( and )SM(insert)ES(
member func)HY(tions)YH( which instead of the constant refer)HY(ence)YH(
- to the element type accept auto)HY(matic)YH( pointer to the element
- type. These func)HY(tions)YH( assume owner)HY(ship)YH( of the pointed to
- object and resets the passed auto)HY(matic)YH( pointer.
+ to the element type accept auto)HY(matic)YH( pointer \201)SM(std::auto_ptr)ES(
+ or )SM(std::unique_ptr)ES(, depend)HY(ing)YH( on the C++ stan)HY(dard)YH(
+ selected\202 to the element type. These func)HY(tions)YH( assume owner)HY(ship)YH(
+ of the pointed to object and reset the passed auto)HY(matic)YH( pointer.
)EP(
- )0 3 18 H(2.5.1)WB 112 Sn()WB 22 Sn( Inher)HY(i)HY(tance)YH( from Built-in Data Types)EA()EH(
+ )0 3 19 H(2.5.1)WB 116 Sn()WB 23 Sn( Inher)HY(i)HY(tance)YH( from Built-in Data Types)EA()EH(
)0 P(In cases where the mapping calls for an inher)HY(i)HY(tance)YH( from a built-in
type which is mapped to a funda)HY(men)HY(tal)YH( C++ type, a proxy type is
@@ -2113,29 +2126,55 @@ public:
operator Y \201\202;
};)RP(
- )0 3 19 H(2.5.2)WB 113 Sn()WB 23 Sn( Mapping for )SM(anyType)ES()EA()EH(
+ )0 3 20 H(2.5.2)WB 117 Sn()WB 24 Sn( Mapping for )SM(anyType)ES()EA()EH(
)0 P(The XML Schema )SM(anyType)ES( built-in data type is mapped to the
)SM(xml_schema::type)ES( C++ class:)EP(
- ) 27 26 PR(class type
+ ) 53 48 PR(class type
{
public:
virtual
~type \201\202;
-public:
type \201\202;
type \201const type&\202;
-public:
type&
operator= \201const type&\202;
-public:
virtual type*
_clone \201\202 const;
+ // anyType DOM content.
+ //
+public:
+ typedef element_optional dom_content_optional;
+
+ const dom_content_optional&
+ dom_content \201\202 const;
+
+ dom_content_optional&
+ dom_content \201\202;
+
+ void
+ dom_content \201const xercesc::DOMElement&\202;
+
+ void
+ dom_content \201xercesc::DOMElement*\202;)WR(
+
+ void
+ dom_content \201const dom_content_optional&\202;
+
+ const xercesc::DOMDocument&
+ dom_content_document \201\202 const;
+
+ xercesc::DOMDocument&
+ dom_content_document \201\202;
+
+ bool
+ null_content \201\202 const;
+
// DOM association.
//
public:
@@ -2146,31 +2185,87 @@ public:
_node \201\202;
};)RP(
- )0 P(For more infor)HY(ma)HY(tion)YH( about DOM asso)HY(ci)HY(a)HY(tion)YH( refer to
- )0 90 1 A(Section 5.1, "DOM Asso)HY(ci)HY(a)HY(tion)YH(")90 0 TN TL()Ec /AF f D(.)EP(
-
- )0 3 20 H(2.5.3)WB 114 Sn()WB 24 Sn( Mapping for )SM(anySim)HY(ple)HY(Type)YH()ES()EA()EH(
+ )0 P(When )SM(xml_schema::type)ES( is used to create an instance
+ \201as opposed to being a base of a derived type\202, it repre)HY(sents)YH(
+ the XML Schema )SM(anyType)ES( type. )SM(anyType)ES(
+ allows any attributes and any content in any order. In the
+ C++/Tree mapping this content can be repre)HY(sented)YH( as a DOM
+ frag)HY(ment)YH(, similar to XML Schema wild)HY(cards)YH( \201)0 57 1 A(Section
+ 2.12, "Mapping for )SM(any)ES( and
+ )SM(anyAt)HY(tribute)YH()ES(")57 0 TN TL()Ec /AF f D(\202.)EP(
+
+ )0 P(To enable auto)HY(matic)YH( extrac)HY(tion)YH( of )SM(anyType)ES( content
+ during parsing, the )SM(--gener)HY(ate)YH(-any-type)ES( option must be
+ spec)HY(i)HY(fied)YH(. Because the DOM API is used to access such content, the
+ Xerces-C++ runtime should be initial)HY(ized)YH( by the appli)HY(ca)HY(tion)YH( prior to
+ parsing and should remain initial)HY(ized)YH( for the life)HY(time)YH( of objects
+ with the DOM content. For more infor)HY(ma)HY(tion)YH( on the Xerces-C++ runtime
+ initial)HY(iza)HY(tion)YH( see )0 65 1 A(Section 3.1, "Initial)HY(iz)HY(ing)YH( the
+ Xerces-C++ Runtime")65 0 TN TL()Ec /AF f D(.)EP(
+
+ )0 P(The DOM content is stored as the optional DOM element container
+ and the DOM content acces)HY(sors)YH( and modi)HY(fiers)YH( presented above are
+ iden)HY(ti)HY(cal)YH( to those gener)HY(ated)YH( for an optional element wild)HY(card)YH(.
+ Refer to )0 59 1 A(Section 2.12.2, "Mapping for )SM(any)ES(
+ with the Optional Cardi)HY(nal)HY(ity)YH( Class")59 0 TN TL()Ec /AF f D( for details on their
+ seman)HY(tics)YH(.)EP(
+
+ )0 P(The )SM(dom_content_docu)HY(ment)YH(\201\202)ES( func)HY(tion)YH( returns the
+ DOM docu)HY(ment)YH( used to store the raw XML content corre)HY(spond)HY(ing)YH(
+ to the )SM(anyType)ES( instance. It is equiv)HY(a)HY(lent)YH( to the
+ )SM(dom_docu)HY(ment)YH(\201\202)ES( func)HY(tion)YH( gener)HY(ated)YH( for types
+ with wild)HY(cards)YH(.)EP(
+
+ )0 P(The )SM(null_content\201\202)ES( acces)HY(sor)YH( is an opti)HY(miza)HY(tion)YH( func)HY(tion)YH(
+ that allows us to check for the lack of content without actu)HY(ally)YH(
+ creat)HY(ing)YH( its empty repre)HY(sen)HY(ta)HY(tion)YH(, that is, empty DOM docu)HY(ment)YH( for
+ )SM(anyType)ES( or empty string for )SM(anySim)HY(ple)HY(Type)YH()ES(
+ \201see the follow)HY(ing)YH( section for details on )SM(anySim)HY(ple)HY(Type)YH()ES(\202.)EP(
+
+ )0 P(For more infor)HY(ma)HY(tion)YH( on DOM asso)HY(ci)HY(a)HY(tion)YH( refer to
+ )0 93 1 A(Section 5.1, "DOM Asso)HY(ci)HY(a)HY(tion)YH(")93 0 TN TL()Ec /AF f D(.)EP(
+
+ )0 3 21 H(2.5.3)WB 118 Sn()WB 25 Sn( Mapping for )SM(anySim)HY(ple)HY(Type)YH()ES()EA()EH(
)0 P(The XML Schema )SM(anySim)HY(ple)HY(Type)YH()ES( built-in data type is mapped
to the )SM(xml_schema::simple_type)ES( C++ class:)EP(
- ) 14 35 PR(class simple_type: public type
+ ) 27 45 PR(class simple_type: public type
{
public:
simple_type \201\202;
+ simple_type \201const C*\202;
+ simple_type \201const std::basic_string<C>&\202;
+
simple_type \201const simple_type&\202;
-public:
simple_type&
operator= \201const simple_type&\202;
-public:
virtual simple_type*
_clone \201\202 const;
+
+ // anySimpleType text content.
+ //
+public:
+ const std::basic_string<C>&
+ text_content \201\202 const;
+
+ std::basic_string<C>&
+ text_content \201\202;
+
+ void
+ text_content \201const std::basic_string<C>&\202;
};)RP(
+ )0 P(When )SM(xml_schema::simple_type)ES( is used to create an instance
+ \201as opposed to being a base of a derived type\202, it repre)HY(sents)YH(
+ the XML Schema )SM(anySim)HY(ple)HY(Type)YH()ES( type. )SM(anySim)HY(ple)HY(Type)YH()ES(
+ allows any simple content. In the C++/Tree mapping this content can
+ be repre)HY(sented)YH( as a string and accessed or modi)HY(fied)YH( with the
+ )SM(text_content\201\202)ES( func)HY(tions)YH( shown above.)EP(
- )0 3 21 H(2.5.4)WB 115 Sn()WB 25 Sn( Mapping for )SM(QName)ES()EA()EH(
+ )0 3 22 H(2.5.4)WB 119 Sn()WB 26 Sn( Mapping for )SM(QName)ES()EA()EH(
)0 P(The XML Schema )SM(QName)ES( built-in data type is mapped to the
)SM(xml_schema::qname)ES( C++ class:)EP(
@@ -2204,7 +2299,7 @@ public:
)0 P(The )SM(qual)HY(i)HY(fied)YH()ES( acces)HY(sor)YH( func)HY(tion)YH( can be used to deter)HY(mine)YH(
if the name is qual)HY(i)HY(fied)YH(.)EP(
- )0 3 22 H(2.5.5)WB 116 Sn()WB 26 Sn( Mapping for )SM(IDREF)ES()EA()EH(
+ )0 3 23 H(2.5.5)WB 120 Sn()WB 27 Sn( Mapping for )SM(IDREF)ES()EA()EH(
)0 P(The XML Schema )SM(IDREF)ES( built-in data type is mapped to the
)SM(xml_schema::idref)ES( C++ class. This class imple)HY(ments)YH( the
@@ -2336,7 +2431,7 @@ object_type& obj \201*ref\202;
cout << ref->text \201\202 << endl;)RP(
- )0 3 23 H(2.5.6)WB 117 Sn()WB 27 Sn( Mapping for )SM(base64Binary)ES( and
+ )0 3 24 H(2.5.6)WB 121 Sn()WB 28 Sn( Mapping for )SM(base64Binary)ES( and
)SM(hexBi)HY(nary)YH()ES()EA()EH(
)0 P(The XML Schema )SM(base64Binary)ES( and )SM(hexBi)HY(nary)YH()ES(
@@ -2484,7 +2579,7 @@ public:
};)RP(
- )0 2 24 H(2.5.7)WB 118 Sn()WB 28 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()EA()EH(
+ )0 2 25 H(2.5.7)WB 122 Sn()WB 29 Sn( Time Zone Repre)HY(sen)HY(ta)HY(tion)YH()EA()EH(
)0 P(The )SM(date)ES(, )SM(date)HY(Time)YH()ES(, )SM(gDay)ES(,
)SM(gMonth)ES(, )SM(gMon)HY(th)HY(Day)YH()ES(, )SM(gYear)ES(,
@@ -2531,14 +2626,14 @@ operator!= \201const time_zone&, const time_zone&\202;)RP(
minutes compo)HY(nents)YH( are repre)HY(sented)YH( as nega)HY(tive)YH( inte)HY(gers)YH(.)EP(
- )0 2 25 H(2.5.8)WB 119 Sn()WB 29 Sn( Mapping for )SM(date)ES()EA()EH(
+ )0 2 26 H(2.5.8)WB 123 Sn()WB 30 Sn( Mapping for )SM(date)ES()EA()EH(
)0 P(The XML Schema )SM(date)ES( built-in data type is mapped to the
)SM(xml_schema::date)ES( C++ class which repre)HY(sents)YH( a year, a day,
and a month with an optional time zone. Its inter)HY(face)YH( is presented
below. For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 28 1 A(Section 2.5.7, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 29 1 A(Section 2.5.7, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 41 60 PR(class date: public simple_type, public time_zone
{
@@ -2582,14 +2677,14 @@ operator== \201const date&, const date&\202;
bool
operator!= \201const date&, const date&\202;)RP(
- )0 2 26 H(2.5.9)WB 120 Sn()WB 30 Sn( Mapping for )SM(date)HY(Time)YH()ES()EA()EH(
+ )0 2 27 H(2.5.9)WB 124 Sn()WB 31 Sn( Mapping for )SM(date)HY(Time)YH()ES()EA()EH(
)0 P(The XML Schema )SM(date)HY(Time)YH()ES( built-in data type is mapped to the
)SM(xml_schema::date_time)ES( C++ class which repre)HY(sents)YH( a year, a month,
a day, hours, minutes, and seconds with an optional time zone. Its inter)HY(face)YH(
is presented below. For more infor)HY(ma)HY(tion)YH( on the base
- )SM(xml_schema::time_zone)ES( class refer to )0 28 1 A(Section
- 2.5.7, "Time Zone Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ )SM(xml_schema::time_zone)ES( class refer to )0 29 1 A(Section
+ 2.5.7, "Time Zone Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 62 67 PR(class date_time: public simple_type, public time_zone
{
@@ -2655,7 +2750,7 @@ bool)WR(
operator!= \201const date_time&, const date_time&\202;)RP(
- )0 2 27 H(2.5.10)WB 121 Sn()WB 31 Sn( Mapping for )SM(dura)HY(tion)YH()ES()EA()EH(
+ )0 2 28 H(2.5.10)WB 125 Sn()WB 32 Sn( Mapping for )SM(dura)HY(tion)YH()ES()EA()EH(
)0 P(The XML Schema )SM(dura)HY(tion)YH()ES( built-in data type is mapped to the
)SM(xml_schema::dura)HY(tion)YH()ES( C++ class which repre)HY(sents)YH( a poten)HY(tially)YH(
@@ -2728,14 +2823,14 @@ bool
operator!= \201const duration&, const duration&\202;)RP(
- )0 2 28 H(2.5.11)WB 122 Sn()WB 32 Sn( Mapping for )SM(gDay)ES()EA()EH(
+ )0 2 29 H(2.5.11)WB 126 Sn()WB 33 Sn( Mapping for )SM(gDay)ES()EA()EH(
)0 P(The XML Schema )SM(gDay)ES( built-in data type is mapped to the
)SM(xml_schema::gday)ES( C++ class which repre)HY(sents)YH( a day of the
month with an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 28 1 A(Section 2.5.7, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 29 1 A(Section 2.5.7, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 29 66 PR(class gday: public simple_type, public time_zone
{
@@ -2768,14 +2863,14 @@ bool
operator!= \201const gday&, const gday&\202;)RP(
- )0 2 29 H(2.5.12)WB 123 Sn()WB 33 Sn( Mapping for )SM(gMonth)ES()EA()EH(
+ )0 2 30 H(2.5.12)WB 127 Sn()WB 34 Sn( Mapping for )SM(gMonth)ES()EA()EH(
)0 P(The XML Schema )SM(gMonth)ES( built-in data type is mapped to the
)SM(xml_schema::gmonth)ES( C++ class which repre)HY(sents)YH( a month of the
year with an optional time zone. Its inter)HY(face)YH( is presented below.
For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 28 1 A(Section 2.5.7, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 29 1 A(Section 2.5.7, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 30 50 PR(class gmonth: public simple_type, public time_zone
{
@@ -2809,14 +2904,14 @@ bool
operator!= \201const gmonth&, const gmonth&\202;)RP(
- )0 2 30 H(2.5.13)WB 124 Sn()WB 34 Sn( Mapping for )SM(gMon)HY(th)HY(Day)YH()ES()EA()EH(
+ )0 2 31 H(2.5.13)WB 128 Sn()WB 35 Sn( Mapping for )SM(gMon)HY(th)HY(Day)YH()ES()EA()EH(
)0 P(The XML Schema )SM(gMon)HY(th)HY(Day)YH()ES( built-in data type is mapped to the
)SM(xml_schema::gmonth_day)ES( C++ class which repre)HY(sents)YH( a day and
a month of the year with an optional time zone. Its inter)HY(face)YH( is presented
below. For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 28 1 A(Section 2.5.7, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 29 1 A(Section 2.5.7, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 35 56 PR(class gmonth_day: public simple_type, public time_zone
{
@@ -2855,13 +2950,13 @@ bool
operator!= \201const gmonth_day&, const gmonth_day&\202;)RP(
- )0 2 31 H(2.5.14)WB 125 Sn()WB 35 Sn( Mapping for )SM(gYear)ES()EA()EH(
+ )0 2 32 H(2.5.14)WB 129 Sn()WB 36 Sn( Mapping for )SM(gYear)ES()EA()EH(
)0 P(The XML Schema )SM(gYear)ES( built-in data type is mapped to the
)SM(xml_schema::gyear)ES( C++ class which repre)HY(sents)YH( a year with
an optional time zone. Its inter)HY(face)YH( is presented below. For more
infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES( class refer
- to )0 28 1 A(Section 2.5.7, "Time Zone Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ to )0 29 1 A(Section 2.5.7, "Time Zone Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 29 57 PR(class gyear: public simple_type, public time_zone
{
@@ -2894,14 +2989,14 @@ bool
operator!= \201const gyear&, const gyear&\202;)RP(
- )0 2 32 H(2.5.15)WB 126 Sn()WB 36 Sn( Mapping for )SM(gYear)HY(Month)YH()ES()EA()EH(
+ )0 2 33 H(2.5.15)WB 130 Sn()WB 37 Sn( Mapping for )SM(gYear)HY(Month)YH()ES()EA()EH(
)0 P(The XML Schema )SM(gYear)HY(Month)YH()ES( built-in data type is mapped to
the )SM(xml_schema::gyear_month)ES( C++ class which repre)HY(sents)YH(
a year and a month with an optional time zone. Its inter)HY(face)YH( is presented
below. For more infor)HY(ma)HY(tion)YH( on the base )SM(xml_schema::time_zone)ES(
- class refer to )0 28 1 A(Section 2.5.7, "Time Zone
- Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ class refer to )0 29 1 A(Section 2.5.7, "Time Zone
+ Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 34 55 PR(class gyear_month: public simple_type, public time_zone
{
@@ -2939,14 +3034,14 @@ bool
operator!= \201const gyear_month&, const gyear_month&\202;)RP(
- )0 2 33 H(2.5.16)WB 127 Sn()WB 37 Sn( Mapping for )SM(time)ES()EA()EH(
+ )0 2 34 H(2.5.16)WB 131 Sn()WB 38 Sn( Mapping for )SM(time)ES()EA()EH(
)0 P(The XML Schema )SM(time)ES( built-in data type is mapped to
the )SM(xml_schema::time)ES( C++ class which repre)HY(sents)YH( hours,
minutes, and seconds with an optional time zone. Its inter)HY(face)YH( is
presented below. For more infor)HY(ma)HY(tion)YH( on the base
)SM(xml_schema::time_zone)ES( class refer to
- )0 28 1 A(Section 2.5.7, "Time Zone Repre)HY(sen)HY(ta)HY(tion)YH(")28 0 TN TL()Ec /AF f D(.)EP(
+ )0 29 1 A(Section 2.5.7, "Time Zone Repre)HY(sen)HY(ta)HY(tion)YH(")29 0 TN TL()Ec /AF f D(.)EP(
) 41 70 PR(class time: public simple_type, public time_zone
{
@@ -2993,7 +3088,7 @@ operator!= \201const time&, const time&\202;)RP(
- )0 2 34 H(2.6)WB 128 Sn()WB 38 Sn( Mapping for Simple Types)EA()EH(
+ )0 2 35 H(2.6)WB 132 Sn()WB 39 Sn( Mapping for Simple Types)EA()EH(
)0 P(An XML Schema simple type is mapped to a C++ class with the same
name as the simple type. The class defines a public copy construc)HY(tor)YH(,
@@ -3003,8 +3098,8 @@ operator!= \201const time&, const time&\202;)RP(
a pointer to a complete copy of the instance allo)HY(cated)YH( in the free
store. The )SM(_clone)ES( func)HY(tion)YH( shall be used to make copies
when static type and dynamic type of the instance may differ \201see
- )0 54 1 A(Section 2.11, "Mapping for )SM(xsi:type)ES(
- and Substi)HY(tu)HY(tion)YH( Groups")54 0 TN TL()Ec /AF f D(\202. For instance:)EP(
+ )0 56 1 A(Section 2.11, "Mapping for )SM(xsi:type)ES(
+ and Substi)HY(tu)HY(tion)YH( Groups")56 0 TN TL()Ec /AF f D(\202. For instance:)EP(
) 3 26 PR(<simpleType name="object">
...
@@ -3033,12 +3128,12 @@ public:
depend on the type of deriva)HY(tion)YH( used to define the simple type. )EP(
- )0 3 35 H(2.6.1)WB 129 Sn()WB 39 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()EA()EH(
+ )0 3 36 H(2.6.1)WB 133 Sn()WB 40 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()EA()EH(
)0 P(XML Schema deriva)HY(tion)YH( by restric)HY(tion)YH( is mapped to C++ public
inher)HY(i)HY(tance)YH(. The base type of the restric)HY(tion)YH( becomes the base
type for the result)HY(ing)YH( C++ class. In addi)HY(tion)YH( to the members described
- in )0 38 1 A(Section 2.6, "Mapping for Simple Types")38 0 TN TL()Ec /AF f D(, the
+ in )0 39 1 A(Section 2.6, "Mapping for Simple Types")39 0 TN TL()Ec /AF f D(, the
result)HY(ing)YH( C++ class defines a public construc)HY(tor)YH( with the base type
as its single argu)HY(ment)YH(. For instance:)EP(
@@ -3066,14 +3161,14 @@ public:
};)RP(
- )0 3 36 H(2.6.2)WB 130 Sn()WB 40 Sn( Mapping for Enumer)HY(a)HY(tions)YH()EA()EH(
+ )0 3 37 H(2.6.2)WB 134 Sn()WB 41 Sn( Mapping for Enumer)HY(a)HY(tions)YH()EA()EH(
)0 P(XML Schema restric)HY(tion)YH( by enumer)HY(a)HY(tion)YH( is mapped to a C++ class
with seman)HY(tics)YH( similar to C++ )SM(enum)ES(. Each XML Schema
enumer)HY(a)HY(tion)YH( element is mapped to a C++ enumer)HY(a)HY(tor)YH( with the
name derived from the )SM(value)ES( attribute and defined
in the class scope. In addi)HY(tion)YH( to the members
- described in )0 38 1 A(Section 2.6, "Mapping for Simple Types")38 0 TN TL()Ec /AF f D(,
+ described in )0 39 1 A(Section 2.6, "Mapping for Simple Types")39 0 TN TL()Ec /AF f D(,
the result)HY(ing)YH( C++ class defines a public construc)HY(tor)YH( that can be called
with one of the enumer)HY(a)HY(tors)YH( as its single argu)HY(ment)YH(, a public construc)HY(tor)YH(
that can be called with enumer)HY(a)HY(tion)YH('s base value as its single
@@ -3097,7 +3192,7 @@ public:
)0 P(is mapped to:)EP(
- ) 31 38 PR(class color: xml_schema::string
+ ) 31 38 PR(class color: public xml_schema::string
{
public:
enum value
@@ -3129,15 +3224,15 @@ public:
operator value \201\202 const;
};)WR()RP(
- )0 3 37 H(2.6.3)WB 131 Sn()WB 41 Sn( Mapping for Deriva)HY(tion)YH( by List)EA()EH(
+ )0 3 38 H(2.6.3)WB 135 Sn()WB 42 Sn( Mapping for Deriva)HY(tion)YH( by List)EA()EH(
)0 P(XML Schema deriva)HY(tion)YH( by list is mapped to C++ public
inher)HY(i)HY(tance)YH( from )SM(xml_schema::simple_type)ES(
- \201)0 24 1 A(Section 2.5.3, "Mapping for
- )SM(anySim)HY(ple)HY(Type)YH()ES(")24 0 TN TL()Ec /AF f D(\202 and a suit)HY(able)YH( sequence type.
+ \201)0 25 1 A(Section 2.5.3, "Mapping for
+ )SM(anySim)HY(ple)HY(Type)YH()ES(")25 0 TN TL()Ec /AF f D(\202 and a suit)HY(able)YH( sequence type.
The list item type becomes the element type of the sequence.
- In addi)HY(tion)YH( to the members described in )0 38 1 A(Section 2.6,
- "Mapping for Simple Types")38 0 TN TL()Ec /AF f D(, the result)HY(ing)YH( C++ class defines
+ In addi)HY(tion)YH( to the members described in )0 39 1 A(Section 2.6,
+ "Mapping for Simple Types")39 0 TN TL()Ec /AF f D(, the result)HY(ing)YH( C++ class defines
a public default construc)HY(tor)YH(, a public construc)HY(tor)YH(
with the first argu)HY(ment)YH( of type )SM(size_type)ES( and
the second argu)HY(ment)YH( of list item type that creates
@@ -3183,19 +3278,20 @@ public:
sequences of non-funda)HY(men)HY(tal)YH( C++ types is the addi)HY(tion)YH( of
the over)HY(loaded)YH( )SM(push_back)ES( and )SM(insert)ES(
member func)HY(tions)YH( which instead of the constant refer)HY(ence)YH(
- to the element type accept auto)HY(matic)YH( pointer to the element
- type. These func)HY(tions)YH( assume owner)HY(ship)YH( of the pointed to
- object and resets the passed auto)HY(matic)YH( pointer.
+ to the element type accept auto)HY(matic)YH( pointer \201)SM(std::auto_ptr)ES(
+ or )SM(std::unique_ptr)ES(, depend)HY(ing)YH( on the C++ stan)HY(dard)YH(
+ selected\202 to the element type. These func)HY(tions)YH( assume owner)HY(ship)YH(
+ of the pointed to object and reset the passed auto)HY(matic)YH( pointer.
)EP(
- )0 3 38 H(2.6.4)WB 132 Sn()WB 42 Sn( Mapping for Deriva)HY(tion)YH( by Union)EA()EH(
+ )0 3 39 H(2.6.4)WB 136 Sn()WB 43 Sn( Mapping for Deriva)HY(tion)YH( by Union)EA()EH(
)0 P(XML Schema deriva)HY(tion)YH( by union is mapped to C++ public
inher)HY(i)HY(tance)YH( from )SM(xml_schema::simple_type)ES(
- \201)0 24 1 A(Section 2.5.3, "Mapping for
- )SM(anySim)HY(ple)HY(Type)YH()ES(")24 0 TN TL()Ec /AF f D(\202 and )SM(std::basic_string<C>)ES(.
- In addi)HY(tion)YH( to the members described in )0 38 1 A(Section 2.6,
- "Mapping for Simple Types")38 0 TN TL()Ec /AF f D(, the result)HY(ing)YH( C++ class defines a
+ \201)0 25 1 A(Section 2.5.3, "Mapping for
+ )SM(anySim)HY(ple)HY(Type)YH()ES(")25 0 TN TL()Ec /AF f D(\202 and )SM(std::basic_string<C>)ES(.
+ In addi)HY(tion)YH( to the members described in )0 39 1 A(Section 2.6,
+ "Mapping for Simple Types")39 0 TN TL()Ec /AF f D(, the result)HY(ing)YH( C++ class defines a
public construc)HY(tor)YH( with a single argu)HY(ment)YH( of type )SM(const C*)ES(
and a public construc)HY(tor)YH( with a single argu)HY(ment)YH( of type
)SM(const std::basic_string<C>&)ES(. For instance:
@@ -3224,7 +3320,7 @@ public:
_clone \201\202 const;
};)RP(
- )0 2 39 H(2.7)WB 133 Sn()WB 43 Sn( Mapping for Complex Types)EA()EH(
+ )0 2 40 H(2.7)WB 137 Sn()WB 44 Sn( Mapping for Complex Types)EA()EH(
)0 P(An XML Schema complex type is mapped to a C++ class with the same
name as the complex type. The class defines a public copy construc)HY(tor)YH(,
@@ -3234,22 +3330,23 @@ public:
a pointer to a complete copy of the instance allo)HY(cated)YH( in the free
store. The )SM(_clone)ES( func)HY(tion)YH( shall be used to make copies
when static type and dynamic type of the instance may differ \201see
- )0 54 1 A(Section 2.11, "Mapping for )SM(xsi:type)ES(
- and Substi)HY(tu)HY(tion)YH( Groups")54 0 TN TL()Ec /AF f D(\202.)EP(
+ )0 56 1 A(Section 2.11, "Mapping for )SM(xsi:type)ES(
+ and Substi)HY(tu)HY(tion)YH( Groups")56 0 TN TL()Ec /AF f D(\202.)EP(
)0 P(Addi)HY(tion)HY(ally)YH(, the result)HY(ing)YH( C++ class
defines two public construc)HY(tors)YH( that take an initial)HY(izer)YH( for each
member of the complex type and all its base types that belongs to
- the One cardi)HY(nal)HY(ity)YH( class \201see )0 46 1 A(Section 2.8, "Mapping
- for Local Elements and Attributes")46 0 TN TL()Ec /AF f D(\202. In the first construc)HY(tor)YH(,
+ the One cardi)HY(nal)HY(ity)YH( class \201see )0 47 1 A(Section 2.8, "Mapping
+ for Local Elements and Attributes")47 0 TN TL()Ec /AF f D(\202. In the first construc)HY(tor)YH(,
the argu)HY(ments)YH( are passed as constant refer)HY(ences)YH( and the newly created
instance is initial)HY(ized)YH( with copies of the passed objects. In the
second construc)HY(tor)YH(, argu)HY(ments)YH( that are complex types \201that is,
they them)HY(selves)YH( contain elements or attributes\202 are passed as
- refer)HY(ences)YH( to )SM(std::auto_ptr)ES(. In this case the newly
+ either )SM(std::auto_ptr)ES( \201C++98\202 or )SM(std::unique_ptr)ES(
+ \201C++11\202, depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected. In this case the newly
created instance is directly initial)HY(ized)YH( with and assumes owner)HY(ship)YH(
- of the pointed to objects and the )SM(std::auto_ptr)ES( argu)HY(ments)YH(
- are reset to )SM(0)ES(. For instance:)EP(
+ of the pointed to objects and the )SM(std::[auto|unique]_ptr)ES(
+ argu)HY(ments)YH( are reset to )SM(0)ES(. For instance:)EP(
) 15 66 PR(<complexType name="complex">
<sequence>
@@ -3269,7 +3366,7 @@ public:
)0 P(is mapped to:)EP(
- ) 36 60 PR(class complex: xml_schema::type
+ ) 36 68 PR(class complex: public xml_schema::type
{
public:
object \201const int& a, const xml_schema::string& b\202;
@@ -3287,11 +3384,11 @@ public:
};
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
object \201const bool& s_one, const complex& c_one\202;
- object \201const bool& s_one, std::auto_ptr<complex>& c_one\202;
+ object \201const bool& s_one, std::[auto|unique]_ptr<complex> c_one\202;
object \201const object&\202;
public:
@@ -3307,7 +3404,7 @@ public:
};)RP(
)0 P(Notice that the gener)HY(ated)YH( )SM(complex)ES( class does not
- have the second \201)SM(std::auto_ptr)ES(\202 version of the
+ have the second \201)SM(std::[auto|unique]_ptr)ES(\202 version of the
construc)HY(tor)YH( since all its required members are of simple types.)EP(
)0 P(If an XML Schema complex type has an ulti)HY(mate)YH( base which is an XML
@@ -3326,7 +3423,7 @@ public:
)0 P(is mapped to:)EP(
- ) 11 44 PR(class object: xml_schema::string
+ ) 11 44 PR(class object: public xml_schema::string
{
public:
object \201const xml_schema::language& lang\202;
@@ -3367,7 +3464,7 @@ public:
)0 P(is mapped to:)EP(
- ) 37 44 PR(class color: xml_schema::string
+ ) 37 44 PR(class color: public xml_schema::string
{
public:
enum value
@@ -3408,7 +3505,7 @@ public:
)0 P(Addi)HY(tional)YH( construc)HY(tors)YH( can be requested with the
)SM(--gener)HY(ate)YH(-default-ctor)ES( and
)SM(--gener)HY(ate)YH(-from-base-ctor)ES( options. See the
- )R9 2 A(XSD
+ )R8 2 A(XSD
Compiler Command Line Manual)EA( for details.)EP(
)0 P(If an XML Schema complex type is not explic)HY(itly)YH( derived from any type,
@@ -3420,18 +3517,18 @@ public:
)EP(
)0 P(The mapping for elements and attributes that are defined in a complex
- type is described in )0 46 1 A(Section 2.8, "Mapping for Local
- Elements and Attributes")46 0 TN TL()Ec /AF f D(.
+ type is described in )0 47 1 A(Section 2.8, "Mapping for Local
+ Elements and Attributes")47 0 TN TL()Ec /AF f D(.
)EP(
- )0 3 40 H(2.7.1)WB 134 Sn()WB 44 Sn( Mapping for Deriva)HY(tion)YH( by Exten)HY(sion)YH()EA()EH(
+ )0 3 41 H(2.7.1)WB 138 Sn()WB 45 Sn( Mapping for Deriva)HY(tion)YH( by Exten)HY(sion)YH()EA()EH(
)0 P(XML Schema deriva)HY(tion)YH( by exten)HY(sion)YH( is mapped to C++ public
inher)HY(i)HY(tance)YH(. The base type of the exten)HY(sion)YH( becomes the base
type for the result)HY(ing)YH( C++ class.
)EP(
- )0 3 41 H(2.7.2)WB 135 Sn()WB 45 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()EA()EH(
+ )0 3 42 H(2.7.2)WB 139 Sn()WB 46 Sn( Mapping for Deriva)HY(tion)YH( by Restric)HY(tion)YH()EA()EH(
)0 P(XML Schema deriva)HY(tion)YH( by restric)HY(tion)YH( is mapped to C++ public
inher)HY(i)HY(tance)YH(. The base type of the restric)HY(tion)YH( becomes the base
@@ -3446,7 +3543,7 @@ public:
- )0 2 42 H(2.8)WB 136 Sn()WB 46 Sn( Mapping for Local Elements and Attributes)EA()EH(
+ )0 2 43 H(2.8)WB 140 Sn()WB 47 Sn( Mapping for Local Elements and Attributes)EA()EH(
)0 P(XML Schema element and attribute defi)HY(ni)HY(tions)YH( are called local
if they appear within a complex type defi)HY(ni)HY(tion)YH(, an element group
@@ -3480,7 +3577,7 @@ public:
)0 P(An optional attribute with a default or fixed value acquires this value
if the attribute hasn't been spec)HY(i)HY(fied)YH( in an instance docu)HY(ment)YH( \201see
- )0 92 1 A(Appendix A, "Default and Fixed Values")92 0 TN TL()Ec /AF f D(\202. This
+ )0 95 1 A(Appendix A, "Default and Fixed Values")95 0 TN TL()Ec /AF f D(\202. This
mapping places such optional attributes to the One cardi)HY(nal)HY(ity)YH(
class.)EP(
@@ -3499,7 +3596,7 @@ public:
)0 P(is mapped to:)EP(
- ) 11 41 PR(class object: xml_schema::type
+ ) 11 41 PR(class object: public xml_schema::type
{
public:
typedef xml_schema::string member_type;
@@ -3521,7 +3618,7 @@ public:
)0 P(is mapped to:)EP(
- ) 14 39 PR(class object: xml_schema::type
+ ) 14 39 PR(class object: public xml_schema::type
{
public:
typedef xml_schema::string data_type;
@@ -3543,7 +3640,7 @@ public:
)EP(
- )0 3 43 H(2.8.1)WB 137 Sn()WB 47 Sn( Mapping for Members with the One Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
+ )0 3 44 H(2.8.1)WB 141 Sn()WB 48 Sn( Mapping for Members with the One Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
)0 P(For the One cardi)HY(nal)HY(ity)YH( class, the type defi)HY(ni)HY(tions)YH( consist of
an alias for the member's type with the name created by append)HY(ing)YH(
@@ -3561,9 +3658,10 @@ public:
constant of the member's type. It makes a deep copy of its argu)HY(ment)YH(.
Except for member's types that are mapped to funda)HY(men)HY(tal)YH( C++ types,
the second modi)HY(fier)YH( func)HY(tion)YH( is provided that expects an argu)HY(ment)YH(
- of type auto)HY(matic)YH( pointer to the member's type. It assumes owner)HY(ship)YH(
- of the pointed to object and resets the passed auto)HY(matic)YH( pointer.
- For instance:)EP(
+ of type auto)HY(matic)YH( pointer \201)SM(std::auto_ptr)ES( or
+ )SM(std::unique_ptr)ES(, depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected\202
+ to the member's type. It assumes owner)HY(ship)YH( of the pointed to object
+ and resets the passed auto)HY(matic)YH( pointer. For instance:)EP(
) 5 42 PR(<complexType name="object">
<sequence>
@@ -3573,7 +3671,7 @@ public:
)0 P(is mapped to:)EP(
- ) 25 41 PR(class object: xml_schema::type
+ ) 25 47 PR(class object: public xml_schema::type
{
public:
// Type definitions.
@@ -3594,7 +3692,7 @@ public:
member \201const member_type&\202;
void
- member \201std::auto_ptr<member_type>\202;
+ member \201std::[auto|unique]_ptr<member_type>\202;
...
};)RP(
@@ -3604,12 +3702,12 @@ public:
provides a detach func)HY(tion)YH( that returns an auto)HY(matic)YH( pointer to the
member's type, for example:)EP(
- ) 10 30 PR(class object: xml_schema::type
+ ) 10 37 PR(class object: public xml_schema::type
{
public:
...
- std::auto_ptr<member_type>
+ std::[auto|unique]_ptr<member_type>
detach_member \201\202;
...
@@ -3621,7 +3719,7 @@ public:
)0 P(The follow)HY(ing)YH( code shows how one could use this mapping:)EP(
- ) 16 66 PR(void
+ ) 25 66 PR(void
f \201object& o\202
{
using xml_schema::string;
@@ -3632,14 +3730,23 @@ f \201object& o\202
o.member \201"hello"\202; // set, deep copy
o.member \201\202 = "hello"; // set, deep copy
+ // C++98 version.
+ //
std::auto_ptr<string> p \201new string \201"hello"\202\202;
o.member \201p\202; // set, assumes ownership
p = o.detach_member \201\202; // detach, member is uninitialized
o.member \201p\202; // re-attach
+
+ // C++11 version.
+ //
+ std::unique_ptr<string> p \201new string \201"hello"\202\202;
+ o.member \201std::move \201p\202\202; // set, assumes ownership
+ p = o.detach_member \201\202; // detach, member is uninitialized
+ o.member \201std::move \201p\202\202; // re-attach
})RP(
-)0 3 44 H(2.8.2)WB 138 Sn()WB 48 Sn( Mapping for Members with the Optional Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
+)0 3 45 H(2.8.2)WB 142 Sn()WB 49 Sn( Mapping for Members with the Optional Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
)0 P(For the Optional cardi)HY(nal)HY(ity)YH( class, the type defi)HY(ni)HY(tions)YH( consist of
an alias for the member's type with the name created by append)HY(ing)YH(
@@ -3664,11 +3771,12 @@ f \201object& o\202
member's type. It makes a deep copy of its argu)HY(ment)YH(.
Except for member's types that are mapped to funda)HY(men)HY(tal)YH( C++ types,
the second modi)HY(fier)YH( func)HY(tion)YH( is provided that expects an argu)HY(ment)YH(
- of type auto)HY(matic)YH( pointer to the member's type. It assumes owner)HY(ship)YH(
- of the pointed to object and resets the passed auto)HY(matic)YH( pointer.
- The last modi)HY(fier)YH( func)HY(tion)YH( expects an argu)HY(ment)YH( of type refer)HY(ence)YH(
- to constant of the container type. It makes a deep copy of its
- argu)HY(ment)YH(. For instance:
+ of type auto)HY(matic)YH( pointer \201)SM(std::auto_ptr)ES( or
+ )SM(std::unique_ptr)ES(, depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected\202
+ to the member's type. It assumes owner)HY(ship)YH( of the pointed to object
+ and resets the passed auto)HY(matic)YH( pointer. The last modi)HY(fier)YH( func)HY(tion)YH(
+ expects an argu)HY(ment)YH( of type refer)HY(ence)YH( to constant of the container
+ type. It makes a deep copy of its argu)HY(ment)YH(. For instance:
)EP(
) 5 56 PR(<complexType name="object">
@@ -3679,7 +3787,7 @@ f \201object& o\202
)0 P(is mapped to:)EP(
- ) 30 48 PR(class object: xml_schema::type
+ ) 30 48 PR(class object: public xml_schema::type
{
public:
// Type definitions.
@@ -3701,7 +3809,7 @@ public:
member \201const member_type&\202;
void
- member \201std::auto_ptr<member_type>\202;
+ member \201std::[auto|unique]_ptr<member_type>\202;
void
member \201const member_optional&\202;
@@ -3713,7 +3821,7 @@ public:
)0 P(The )SM(optional)ES( class template is defined in an
imple)HY(men)HY(ta)HY(tion)YH(-specific names)HY(pace)YH( and has the follow)HY(ing)YH(
- inter)HY(face)YH(. The )SM(auto_ptr)ES(-based construc)HY(tor)YH(
+ inter)HY(face)YH(. The )SM([auto|unique]_ptr)ES(-based construc)HY(tor)YH(
and modi)HY(fier)YH( func)HY(tion)YH( are only avail)HY(able)YH( if the template
argu)HY(ment)YH( is not a funda)HY(men)HY(tal)YH( C++ type.
)EP(
@@ -3732,7 +3840,7 @@ public:
// Assumes ownership.
//
explicit
- optional \201std::auto_ptr<X>\202;
+ optional \201std::[auto|unique]_ptr<X>\202;
optional \201const optional&\202;
@@ -3781,11 +3889,11 @@ public:
// Assumes ownership.)WR(
//
void
- set \201std::auto_ptr<X>\202;
+ set \201std::[auto|unique]_ptr<X>\202;
// Detach and return the contained value.
//
- std::auto_ptr<X>
+ std::[auto|unique]_ptr<X>
detach \201\202;
void
@@ -3819,7 +3927,7 @@ operator>= \201const optional<X>&, const optional<X>&\202;)RP(
)0 P(The follow)HY(ing)YH( code shows how one could use this mapping:)EP(
- ) 32 62 PR(void
+ ) 45 62 PR(void
f \201object& o\202
{
using xml_schema::string;
@@ -3842,18 +3950,31 @@ f \201object& o\202
o.member \201\202.reset \201\202; // reset
}
+ // C++98 version.
+ //
std::auto_ptr<string> p \201new string \201"hello"\202\202;
o.member \201p\202; // set, assumes ownership
p = new string \201"hello"\202;
o.member \201\202.set \201p\202; // set, assumes ownership
+)WR(
+ p = o.member \201\202.detach \201\202; // detach, member is reset
+ o.member \201\202.set \201p\202; // re-attach
+
+ // C++11 version.
+ //
+ std::unique_ptr<string> p \201new string \201"hello"\202\202;
+ o.member \201std::move \201p\202\202; // set, assumes ownership
+
+ p.reset \201new string \201"hello"\202\202;
+ o.member \201\202.set \201std::move \201p\202\202; // set, assumes ownership
p = o.member \201\202.detach \201\202; // detach, member is reset
- o.member \201\202.set \201p\202; // re-attach)WR(
+ o.member \201\202.set \201std::move \201p\202\202; // re-attach
})RP(
- )0 3 45 H(2.8.3)WB 139 Sn()WB 49 Sn( Mapping for Members with the Sequence Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
+ )0 3 46 H(2.8.3)WB 143 Sn()WB 50 Sn( Mapping for Members with the Sequence Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
)0 P(For the Sequence cardi)HY(nal)HY(ity)YH( class, the type defi)HY(ni)HY(tions)YH( consist of an
alias for the member's type with the name created by append)HY(ing)YH(
@@ -3887,7 +4008,7 @@ f \201object& o\202
)0 P(is mapped to:)EP(
- ) 26 64 PR(class object: xml_schema::type
+ ) 26 64 PR(class object: public xml_schema::type
{
public:
// Type definitions.
@@ -3925,33 +4046,35 @@ public:
the over)HY(loaded)YH( )SM(push_back)ES( and )SM(insert)ES(
as well as the )SM(detach_back)ES( and )SM(detach)ES(
member func)HY(tions)YH(. The addi)HY(tional)YH( )SM(push_back)ES( and
- )SM(insert)ES( func)HY(tions)YH( accept an auto)HY(matic)YH( pointer to the
+ )SM(insert)ES( func)HY(tions)YH( accept an auto)HY(matic)YH( pointer
+ \201)SM(std::auto_ptr)ES( or )SM(std::unique_ptr)ES(,
+ depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected\202 to the
element type instead of the constant refer)HY(ence)YH(. They assume
- owner)HY(ship)YH( of the pointed to object and resets the passed
+ owner)HY(ship)YH( of the pointed to object and reset the passed
auto)HY(matic)YH( pointer. The )SM(detach_back)ES( and
)SM(detach)ES( func)HY(tions)YH( detach the element
value from the sequence container and, by default, remove
the element from the sequence. These addi)HY(tional)YH( func)HY(tions)YH(
have the follow)HY(ing)YH( signa)HY(tures)YH(:)EP(
- ) 22 46 PR(template <typename X>
+ ) 22 55 PR(template <typename X>
class sequence
{
public:
...
void
- push_back \201std::auto_ptr<X>\202
+ push_back \201std::[auto|unique]_ptr<X>\202
iterator
- insert \201iterator position, std::auto_ptr<X>\202
+ insert \201iterator position, std::[auto|unique]_ptr<X>\202
- std::auto_ptr<X>
+ std::[auto|unique]_ptr<X>
detach_back \201bool pop = true\202;
iterator
detach \201iterator position,
- std::auto_ptr<X>& result,
+ std::[auto|unique]_ptr<X>& result,
bool erase = true\202
...
@@ -3959,7 +4082,7 @@ public:
)0 P(The follow)HY(ing)YH( code shows how one could use this mapping:)EP(
- ) 30 66 PR(void
+ ) 39 66 PR(void
f \201object& o\202
{
using xml_schema::string;
@@ -3977,11 +4100,20 @@ f \201object& o\202
//
s.push_back \201"hello"\202; // deep copy
+ // C++98 version.
+ //
std::auto_ptr<string> p \201new string \201"hello"\202\202;
s.push_back \201p\202; // assumes ownership
p = s.detach_back \201\202; // detach and pop
s.push_back \201p\202; // re-append
+ // C++11 version.
+ //
+ std::unique_ptr<string> p \201new string \201"hello"\202\202;
+ s.push_back \201std::move \201p\202\202; // assumes ownership
+ p = s.detach_back \201\202; // detach and pop
+ s.push_back \201std::move \201p\202\202; // re-append)WR(
+
// Setting a new container.
//
object::member_sequence n;
@@ -3990,7 +4122,390 @@ f \201object& o\202
o.member \201n\202; // deep copy
})RP(
- )0 2 46 H(2.9)WB 140 Sn()WB 50 Sn( Mapping for Global Elements)EA()EH(
+ )0 3 47 H(2.8.4)WB 144 Sn()WB 51 Sn( Element Order)EA()EH(
+
+ )0 P(C++/Tree is a "flat)HY(ten)HY(ing)YH(" mapping in a sense that many levels of
+ nested compos)HY(i)HY(tors)YH( \201)SM(choice)ES( and )SM(sequence)ES(\202,
+ all poten)HY(tially)YH( with their own cardi)HY(nal)HY(i)HY(ties)YH(, are in the end mapped
+ to a flat set of elements with one of the three cardi)HY(nal)HY(ity)YH( classes
+ discussed in the previ)HY(ous)YH( sections. While this results in a simple
+ and easy to use API for most types, in certain cases, the order of
+ elements in the actual XML docu)HY(ments)YH( is not preserved once parsed
+ into the object model. And some)HY(times)YH( such order has
+ appli)HY(ca)HY(tion)YH(-specific signif)HY(i)HY(cance)YH(. As an example, consider a schema
+ that defines a batch of bank trans)HY(ac)HY(tions)YH(:)EP(
+
+ ) 20 48 PR(<complexType name="withdraw">
+ <sequence>
+ <element name="account" type="unsignedInt"/>
+ <element name="amount" type="unsignedInt"/>
+ </sequence>
+</complexType>
+
+<complexType name="deposit">
+ <sequence>
+ <element name="account" type="unsignedInt"/>
+ <element name="amount" type="unsignedInt"/>
+ </sequence>
+</complexType>
+
+<complexType name="batch">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="withdraw" type="withdraw"/>
+ <element name="deposit" type="deposit"/>
+ </choice>
+</complexType>)RP(
+
+ )0 P(The batch can contain any number of trans)HY(ac)HY(tions)YH( in any order
+ but the order of trans)HY(ac)HY(tions)YH( in each actual batch is signif)HY(i)HY(cant)YH(.
+ For instance, consider what could happen if we reorder the
+ trans)HY(ac)HY(tions)YH( and apply all the with)HY(drawals)YH( before deposits.)EP(
+
+ )0 P(For the )SM(batch)ES( schema type defined above the default
+ C++/Tree mapping will produce a C++ class that contains a pair of
+ sequence contain)HY(ers)YH(, one for each of the two elements. While this
+ will capture the content \201trans)HY(ac)HY(tions)YH(\202, the order of this content
+ as it appears in XML will be lost. Also, if we try to seri)HY(al)HY(ize)YH( the
+ batch we just loaded back to XML, all the with)HY(drawal)YH( trans)HY(ac)HY(tions)YH(
+ will appear before deposits.)EP(
+
+ )0 P(To over)HY(come)YH( this limi)HY(ta)HY(tion)YH( of a flat)HY(ten)HY(ing)YH( mapping, C++/Tree
+ allows us to mark certain XML Schema types, for which content
+ order is impor)HY(tant)YH(, as ordered.)EP(
+
+ )0 P(There are several command line options that control which
+ schema types are treated as ordered. To make an indi)HY(vid)HY(ual)YH(
+ type ordered, we use the )SM(--ordered-type)ES( option,
+ for example:)EP(
+
+ ) 1 20 PR(--ordered-type batch)RP(
+
+ )0 P(To auto)HY(mat)HY(i)HY(cally)YH( treat all the types that are derived from an ordered
+ type also ordered, we use the )SM(--ordered-type-derived)ES(
+ option. This is primar)HY(ily)YH( useful if you would like to iterate
+ over the complete hier)HY(ar)HY(chy)YH('s content using the content order
+ sequence \201discussed below\202.)EP(
+
+ )0 P(Ordered types are also useful for handling mixed content. To
+ auto)HY(mat)HY(i)HY(cally)YH( mark all the types with mixed content as ordered
+ we use the )SM(--ordered-type-mixed)ES( option. For more
+ infor)HY(ma)HY(tion)YH( on handling mixed content see )0 63 1 A(Section
+ 2.13, "Mapping for Mixed Content Models")63 0 TN TL()Ec /AF f D(.)EP(
+
+ )0 P(Finally, we can mark all the types in the schema we are
+ compil)HY(ing)YH( with the )SM(--ordered-type-all)ES( option.
+ You should only resort to this option if all the types in
+ your schema truly suffer from the loss of content
+ order since, as we will discuss shortly, ordered types
+ require extra effort to access and, espe)HY(cially)YH(, modify.
+ See the
+ )R8 2 A(XSD
+ Compiler Command Line Manual)EA( for more infor)HY(ma)HY(tion)YH( on
+ these options.)EP(
+
+ )0 P(Once a type is marked ordered, C++/Tree alters its mapping
+ in several ways. Firstly, for each local element, element
+ wild)HY(card)YH( \201)0 61 1 A(Section 2.12.4, "Element Wild)HY(card)YH(
+ Order")61 0 TN TL()Ec /AF f D(\202, and mixed content text \201)0 63 1 A(Section
+ 2.13, "Mapping for Mixed Content Models")63 0 TN TL()Ec /AF f D(\202 in this type, a
+ content id constant is gener)HY(ated)YH(. Secondly, an addi)HY(tion)YH( sequence
+ is added to the class that captures the content order. Here
+ is how the mapping of our )SM(batch)ES( class changes
+ once we make it ordered:)EP(
+
+ ) 57 78 PR(class batch: public xml_schema::type
+{
+public:
+ // withdraw
+ //
+ typedef withdraw withdraw_type;
+ typedef sequence<withdraw_type> withdraw_sequence;
+ typedef withdraw_sequence::iterator withdraw_iterator;
+ typedef withdraw_sequence::const_iterator withdraw_const_iterator;
+
+ static const std::size_t withdraw_id = 1;
+
+ const withdraw_sequence&
+ withdraw \201\202 const;
+
+ withdraw_sequence&
+ withdraw \201\202;
+
+ void
+ withdraw \201const withdraw_sequence&\202;
+
+ // deposit
+ //
+ typedef deposit deposit_type;
+ typedef sequence<deposit_type> deposit_sequence;
+ typedef deposit_sequence::iterator deposit_iterator;
+ typedef deposit_sequence::const_iterator deposit_const_iterator;
+
+ static const std::size_t deposit_id = 2;
+
+ const deposit_sequence&)WR(
+ deposit \201\202 const;
+
+ deposit_sequence&
+ deposit \201\202;
+
+ void
+ deposit \201const deposit_sequence&\202;
+
+ // content_order
+ //
+ typedef xml_schema::content_order content_order_type;
+ typedef std::vector<content_order_type> content_order_sequence;
+ typedef content_order_sequence::iterator content_order_iterator;
+ typedef content_order_sequence::const_iterator content_order_const_iterator;
+
+ const content_order_sequence&
+ content_order \201\202 const;
+
+ content_order_sequence&
+ content_order \201\202;
+
+ void
+ content_order \201const content_order_sequence&\202;
+
+ ...
+};)RP(
+
+ )0 P(Notice the )SM(with)HY(draw)YH(_id)ES( and )SM(deposit_id)ES(
+ content ids as well as the extra )SM(content_order)ES(
+ sequence that does not corre)HY(spond)YH( to any element in the
+ schema defi)HY(ni)HY(tion)YH(. The other changes to the mapping for ordered
+ types has to do with XML parsing and seri)HY(al)HY(iza)HY(tion)YH( code. During
+ parsing the content order is captured in the )SM(content_order)ES(
+ sequence while during seri)HY(al)HY(iza)HY(tion)YH( this sequence is used to
+ deter)HY(mine)YH( the order in which content is seri)HY(al)HY(ized)YH(. The
+ )SM(content_order)ES( sequence is also copied during
+ copy construc)HY(tion)YH( and assigned during copy assign)HY(ment)YH(. It is also
+ taken into account during compar)HY(i)HY(son)YH(.)EP(
+
+ )0 P(The entry type of the )SM(content_order)ES( sequence is the
+ )SM(xml_schema::content_order)ES( type that has the follow)HY(ing)YH(
+ inter)HY(face)YH(:)EP(
+
+ ) 19 58 PR(namespace xml_schema
+{
+ struct content_order
+ {
+ content_order \201std::size_t id, std::size_t index = 0\202;
+
+ std::size_t id;
+ std::size_t index;
+ };
+
+ bool
+ operator== \201const content_order&, const content_order&\202;
+
+ bool
+ operator!= \201const content_order&, const content_order&\202;
+
+ bool
+ operator< \201const content_order&, const content_order&\202;
+})RP(
+
+ )0 P(The )SM(content_order)ES( sequence describes the order of
+ content \201elements, includ)HY(ing)YH( wild)HY(cards)YH(, as well as mixed content
+ text\202. Each entry in this sequence consists of the content id
+ \201for example, )SM(with)HY(draw)YH(_id)ES( or )SM(deposit_id)ES(
+ in our case\202 as well as, for elements of the sequence cardi)HY(nal)HY(ity)YH(
+ class, an index into the corre)HY(spond)HY(ing)YH( sequence container \201the
+ index is unused for the one and optional cardi)HY(nal)HY(ity)YH( classes\202.
+ For example, in our case, if the content id is )SM(with)HY(draw)YH(_id)ES(,
+ then the index will point into the )SM(with)HY(draw)YH()ES( element
+ sequence.)EP(
+
+ )0 P(With all this infor)HY(ma)HY(tion)YH( we can now examine how to iterate over
+ trans)HY(ac)HY(tion)YH( in the batch in content order:)EP(
+
+ ) 26 73 PR(batch& b = ...
+
+for \201batch::content_order_const_iterator i \201b.content_order \201\202.begin \201\202\202;
+ i != b.content_order \201\202.end \201\202;
+ ++i\202
+{
+ switch \201i->id\202
+ {
+ case batch::withdraw_id:
+ {
+ const withdraw& t \201b.withdraw \201\202[i->index]\202;
+ cerr << t.account \201\202 << " withdraw " << t.amount \201\202 << endl;
+ break;
+ }
+ case batch::deposit_id:
+ {
+ const deposit& t \201b.deposit \201\202[i->index]\202;
+ cerr << t.account \201\202 << " deposit " << t.amount \201\202 << endl;
+ break;
+ }
+ default:
+ {
+ assert \201false\202; // Unknown content id.
+ }
+ }
+})RP(
+
+ )0 P(If we seri)HY(al)HY(ized)YH( our batch back to XML, we would also see that the
+ order of trans)HY(ac)HY(tions)YH( in the output is exactly the same as in the
+ input rather than all the with)HY(drawals)YH( first followed by all the
+ deposits.)EP(
+
+ )0 P(The most complex aspect of working with ordered types is
+ modi)HY(fi)HY(ca)HY(tions)YH(. Now we not only need to change the content,
+ but also remem)HY(ber)YH( to update the order infor)HY(ma)HY(tion)YH( corre)HY(spond)HY(ing)YH(
+ to this change. As a first example, we add a deposit trans)HY(ac)HY(tion)YH(
+ to the batch:)EP(
+
+ ) 8 64 PR(using xml_schema::content_order;
+
+batch::deposit_sequence& d \201b.deposit \201\202\202;
+batch::withdraw_sequence& w \201b.withdraw \201\202\202;
+batch::content_order_sequence& co \201b.content_order \201\202\202;
+
+d.push_back \201deposit \201123456789, 100000\202\202;
+co.push_back \201content_order \201batch::deposit_id, d.size \201\202 - 1\202\202;)RP(
+
+ )0 P(In the above example we first added the content \201deposit
+ trans)HY(ac)HY(tion)YH(\202 and then updated the content order infor)HY(ma)HY(tion)YH(
+ by adding an entry with )SM(deposit_id)ES( content
+ id and the index of the just added deposit trans)HY(ac)HY(tion)YH(.)EP(
+
+ )0 P(Remov)HY(ing)YH( the last trans)HY(ac)HY(tion)YH( can be easy if we know which
+ trans)HY(ac)HY(tion)YH( \201deposit or with)HY(drawal)YH(\202 is last:)EP(
+
+ ) 2 15 PR(d.pop_back \201\202;
+co.pop_back \201\202;)RP(
+
+ )0 P(If, however, we do not know which trans)HY(ac)HY(tion)YH( is last, then
+ things get a bit more compli)HY(cated)YH(:)EP(
+
+ ) 15 24 PR(switch \201co.back \201\202.id\202
+{
+case batch::withdraw_id:
+ {
+ d.pop_back \201\202;
+ break;
+ }
+case batch::deposit_id:
+ {
+ w.pop_back \201\202;
+ break;
+ }
+}
+
+co.pop_back \201\202;)RP(
+
+ )0 P(The follow)HY(ing)YH( example shows how to add a trans)HY(ac)HY(tion)YH( at the
+ begin)HY(ning)YH( of the batch:)EP(
+
+ ) 3 62 PR(w.push_back \201withdraw \201123456789, 100000\202\202;
+co.insert \201co.begin \201\202,
+ content_order \201batch::withdraw_id, w.size \201\202 - 1\202\202;)RP(
+
+ )0 P(Note also that when we merely modify the content of one
+ of the elements in place, we do not need to update its
+ order since it doesn't change. For example, here is how
+ we can change the amount in the first with)HY(drawal)YH(:)EP(
+
+ ) 1 20 PR(w[0].amount \20110000\202;)RP(
+
+ )0 P(For the complete working code shown in this section refer to the
+ )SM(order/element)ES( example in the
+ )SM(exam)HY(ples)YH(/cxx/tree/)ES( direc)HY(tory)YH( in the XSD distri)HY(bu)HY(tion)YH(.)EP(
+
+ )0 P(If both the base and derived types are ordered, then the
+ content order sequence is only added to the base and the content
+ ids are unique within the whole hier)HY(ar)HY(chy)YH(. In this case
+ the content order sequence for the derived type contains
+ order)HY(ing)YH( infor)HY(ma)HY(tion)YH( for both base and derived content.)EP(
+
+ )0 P(In some appli)HY(ca)HY(tions)YH( we may need to perform more complex
+ content process)HY(ing)YH(. For example, in our case, we may need
+ to remove all the with)HY(drawal)YH( trans)HY(ac)HY(tions)YH(. The default
+ container, )SM(std::vector)ES(, is not partic)HY(u)HY(larly)YH(
+ suit)HY(able)YH( for such oper)HY(a)HY(tions)YH(. What may be required by
+ some appli)HY(ca)HY(tions)YH( is a multi-index container that not
+ only allows us to iterate in content order similar to
+ )SM(std::vector)ES( but also search by the content
+ id as well as the content id and index pair.)EP(
+
+ )0 P(While C++/Tree does not provide this func)HY(tion)HY(al)HY(ity)YH( by
+ default, it allows us to specify a custom container
+ type for content order with the )SM(--order-container)ES(
+ command line option. The only require)HY(ment)YH( from the
+ gener)HY(ated)YH( code side for such a container is to provide
+ the )SM(vector)ES(-like )SM(push_back\201\202)ES(,
+ )SM(size\201\202)ES(, and const iter)HY(a)HY(tion)YH( inter)HY(faces)YH(.)EP(
+
+ )0 P(As an example, here is how we can use the Boost Multi-Index
+ container for content order. First we create the
+ )SM(content-order-container.hxx)ES( header with the
+ follow)HY(ing)YH( defi)HY(ni)HY(tion)YH( \201in C++11, use the alias template
+ instead\202:)EP(
+
+ ) 33 58 PR(#ifndef CONTENT_ORDER_CONTAINER
+#define CONTENT_ORDER_CONTAINER
+
+#include <cstddef> // std::size_t
+
+#include <boost/multi_index_container.hpp>
+#include <boost/multi_index/member.hpp>
+#include <boost/multi_index/identity.hpp>
+#include <boost/multi_index/ordered_index.hpp>
+#include <boost/multi_index/random_access_index.hpp>
+
+struct by_id {};
+struct by_id_index {};
+
+template <typename T>
+struct content_order_container:
+ boost::multi_index::multi_index_container<
+ T,
+ boost::multi_index::indexed_by<
+ boost::multi_index::random_access<>,
+ boost::multi_index::ordered_unique<
+ boost::multi_index::tag<by_id_index>,
+ boost::multi_index::identity<T>
+ >,
+ boost::multi_index::ordered_non_unique<
+ boost::multi_index::tag<by_id>,
+ boost::multi_index::member<T, std::size_t, &T::id>
+ >
+ >
+ >
+{};)WR(
+
+#endif)RP(
+
+ )0 P(Next we add the follow)HY(ing)YH( two XSD compiler options to include
+ this header into every gener)HY(ated)YH( header file and to use the
+ custom container type \201see the XSD compiler command line manual
+ for more infor)HY(ma)HY(tion)YH( on shell quoting for the first option\202:)EP(
+
+ ) 2 55 PR(--hxx-prologue '#include "content-order-container.hxx"'
+--order-container content_order_container)RP(
+
+ )0 P(With these changes we can now use the multi-index func)HY(tion)HY(al)HY(ity)YH(,
+ for example, to search for a specific content id:)EP(
+
+ ) 13 65 PR(typedef batch::content_order_sequence::index<by_id>::type id_set;
+typedef id_set::iterator id_iterator;
+
+const id_set& ids \201b.content_order \201\202.get<by_id> \201\202\202;
+
+std::pair<id_iterator, id_iterator> r \201
+ ids.equal_range \201std::size_t \201batch::deposit_id\202\202;
+
+for \201id_iterator i \201r.first\202; i != r.second; ++i\202
+{
+ const deposit& t \201b.deposit \201\202[i->index]\202;
+ cerr << t.account \201\202 << " deposit " << t.amount \201\202 << endl;
+})RP(
+
+ )0 2 48 H(2.9)WB 145 Sn()WB 52 Sn( Mapping for Global Elements)EA()EH(
)0 P(An XML Schema element defi)HY(ni)HY(tion)YH( is called global if it appears
directly under the )SM(schema)ES( element.
@@ -4001,42 +4516,43 @@ f \201object& o\202
for root elements instead of parsing and seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH(.
This is primar)HY(ily)YH( useful to distin)HY(guish)YH( object models with the
same root type but with differ)HY(ent)YH( root elements. See
- )0 51 1 A(Section 2.9.1, "Element Types")51 0 TN TL()Ec /AF f D( for details.
+ )0 53 1 A(Section 2.9.1, "Element Types")53 0 TN TL()Ec /AF f D( for details.
It is also possi)HY(ble)YH( to request the gener)HY(a)HY(tion)YH( of an element map
which allows uniform parsing and seri)HY(al)HY(iza)HY(tion)YH( of multi)HY(ple)YH( root
- elements. See )0 52 1 A(Section 2.9.2, "Element Map")52 0 TN TL()Ec /AF f D(
+ elements. See )0 54 1 A(Section 2.9.2, "Element Map")54 0 TN TL()Ec /AF f D(
for details.
)EP(
)0 P(The parsing func)HY(tions)YH( read XML instance docu)HY(ments)YH( and return
- corre)HY(spond)HY(ing)YH( object models. Their signa)HY(tures)YH(
+ corre)HY(spond)HY(ing)YH( object models as an auto)HY(matic)YH( pointer
+ \201)SM(std::auto_ptr)ES( or )SM(std::unique_ptr)ES(,
+ depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected\202. Their signa)HY(tures)YH(
have the follow)HY(ing)YH( pattern \201)SM(type)ES( denotes
element's type and )SM(name)ES( denotes element's
name\202:
)EP(
- ) 2 19 PR(std::auto_ptr<type>
+ ) 2 28 PR(std::[auto|unique]_ptr<type>
name \201....\202;)RP(
)0 P(The process of parsing, includ)HY(ing)YH( the exact signa)HY(tures)YH( of the parsing
- func)HY(tions)YH(, is the subject of )0 61 1 A(Chapter 3, "Parsing")61 0 TN TL()Ec /AF f D(.
+ func)HY(tions)YH(, is the subject of )0 64 1 A(Chapter 3, "Parsing")64 0 TN TL()Ec /AF f D(.
)EP(
- )0 P(The seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( write object models
- back to XML instance docu)HY(ments)YH(. Their signa)HY(tures)YH(
- have the follow)HY(ing)YH( pattern:
+ )0 P(The seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( write object models back to XML instance
+ docu)HY(ments)YH(. Their signa)HY(tures)YH( have the follow)HY(ing)YH( pattern:
)EP(
) 2 41 PR(void
name \201<stream type>&, const type&, ....\202;)RP(
)0 P(The process of seri)HY(al)HY(iza)HY(tion)YH(, includ)HY(ing)YH( the exact signa)HY(tures)YH( of the
- seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH(, is the subject of )0 78 1 A(Chapter 4,
- "Seri)HY(al)HY(iza)HY(tion)YH(")78 0 TN TL()Ec /AF f D(.
+ seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH(, is the subject of )0 81 1 A(Chapter 4,
+ "Seri)HY(al)HY(iza)HY(tion)YH(")81 0 TN TL()Ec /AF f D(.
)EP(
- )0 3 47 H(2.9.1)WB 141 Sn()WB 51 Sn( Element Types)EA()EH(
+ )0 3 49 H(2.9.1)WB 146 Sn()WB 53 Sn( Element Types)EA()EH(
)0 P(The gener)HY(a)HY(tion)YH( of element types is requested with the
)SM(--gener)HY(ate)YH(-element-map)ES( option. With this option
@@ -4082,13 +4598,13 @@ public:
value \201const value_type&\202;
void
- value \201std::auto_ptr<value_type>\202;
+ value \201std::[auto|unique]_ptr<value_type>\202;
// Constructors.
//
root \201const value_type&\202;
- root \201std::auto_ptr<value_type>\202;
+ root \201std::[auto|unique]_ptr<value_type>\202;
root \201const xercesc::DOMElement&, xml_schema::flags = 0\202;)WR(
@@ -4165,7 +4681,7 @@ operator<< \201xercesc::DOMElement&, const root&\202;)RP(
multi)HY(ple)YH( root elements.)EP(
- )0 3 48 H(2.9.2)WB 142 Sn()WB 52 Sn( Element Map)EA()EH(
+ )0 3 50 H(2.9.2)WB 147 Sn()WB 54 Sn( Element Map)EA()EH(
)0 P(When element types are gener)HY(ated)YH( for root elements it is also
possi)HY(ble)YH( to request the gener)HY(a)HY(tion)YH( of an element map with the
@@ -4175,12 +4691,12 @@ operator<< \201xercesc::DOMElement&, const root&\202;)RP(
base type. The )SM(xml_schema::element_map)ES( class is
defined as follows:)EP(
- ) 12 58 PR(namespace xml_schema
+ ) 12 59 PR(namespace xml_schema
{
class element_map
{
public:
- static std::auto_ptr<xml_schema::element_type>
+ static std::[auto|unique]_ptr<xml_schema::element_type>
parse \201const xercesc::DOMElement&, flags = 0\202;
static void
@@ -4190,7 +4706,9 @@ operator<< \201xercesc::DOMElement&, const root&\202;)RP(
)0 P(The )SM(parse\201\202)ES( func)HY(tion)YH( creates the corre)HY(spond)HY(ing)YH(
element type object based on the element name and names)HY(pace)YH(
- and returns it as a pointer to )SM(xml_schema::element_type)ES(.
+ and returns it as an auto)HY(matic)YH( pointer \201)SM(std::auto_ptr)ES(
+ or )SM(std::unique_ptr)ES(, depend)HY(ing)YH( on the C++ stan)HY(dard)YH(
+ selected\202 to )SM(xml_schema::element_type)ES(.
The )SM(seri)HY(al)HY(ize)YH(\201\202)ES( func)HY(tion)YH( seri)HY(al)HY(izes)YH( the passed element
object to )SM(DOMEle)HY(ment)YH()ES(. Note that in case of
)SM(seri)HY(al)HY(ize)YH(\201\202)ES(, the )SM(DOMEle)HY(ment)YH()ES( object
@@ -4254,7 +4772,7 @@ xml_schema::element_map::serialize \201e, r\202;
- )0 2 49 H(2.10)WB 143 Sn()WB 53 Sn( Mapping for Global Attributes)EA()EH(
+ )0 2 51 H(2.10)WB 148 Sn()WB 55 Sn( Mapping for Global Attributes)EA()EH(
)0 P(An XML Schema attribute defi)HY(ni)HY(tion)YH( is called global if it appears
directly under the )SM(schema)ES( element. A global
@@ -4263,7 +4781,7 @@ xml_schema::element_map::serialize \201e, r\202;
- )0 2 50 H(2.11)WB 144 Sn()WB 54 Sn( Mapping for )SM(xsi:type)ES( and Substi)HY(tu)HY(tion)YH(
+ )0 2 52 H(2.11)WB 149 Sn()WB 56 Sn( Mapping for )SM(xsi:type)ES( and Substi)HY(tu)HY(tion)YH(
Groups)EA()EH(
)0 P(The mapping provides optional support for the XML Schema poly)HY(mor)HY(phism)YH(
@@ -4403,7 +4921,7 @@ f \201root& r\202
- )0 2 51 H(2.12)WB 145 Sn()WB 55 Sn( Mapping for )SM(any)ES( and )SM(anyAt)HY(tribute)YH()ES()EA()EH(
+ )0 2 53 H(2.12)WB 150 Sn()WB 57 Sn( Mapping for )SM(any)ES( and )SM(anyAt)HY(tribute)YH()ES()EA()EH(
)0 P(For the XML Schema )SM(any)ES( and )SM(anyAt)HY(tribute)YH()ES(
wild)HY(cards)YH( an optional mapping can be requested with the
@@ -4413,13 +4931,13 @@ f \201root& r\202
should be initial)HY(ized)YH( by the appli)HY(ca)HY(tion)YH( prior to parsing and
should remain initial)HY(ized)YH( for the life)HY(time)YH( of objects with
the wild)HY(card)YH( content. For more infor)HY(ma)HY(tion)YH( on the Xerces-C++
- runtime initial)HY(iza)HY(tion)YH( see )0 62 1 A(Section 3.1,
- "Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime")62 0 TN TL()Ec /AF f D(.
+ runtime initial)HY(iza)HY(tion)YH( see )0 65 1 A(Section 3.1,
+ "Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime")65 0 TN TL()Ec /AF f D(.
)EP(
)0 P(The mapping for )SM(any)ES( is similar to the mapping for
- local elements \201see )0 46 1 A(Section 2.8, "Mapping for Local
- Elements and Attributes")46 0 TN TL()Ec /AF f D(\202 except that the type used in the
+ local elements \201see )0 47 1 A(Section 2.8, "Mapping for Local
+ Elements and Attributes")47 0 TN TL()Ec /AF f D(\202 except that the type used in the
wild)HY(card)YH( mapping is )SM(xercesc::DOMEle)HY(ment)YH()ES(. As with local
elements, the mapping divides all possi)HY(ble)YH( cardi)HY(nal)HY(ity)YH( combi)HY(na)HY(tions)YH(
into three cardi)HY(nal)HY(ity)YH( classes: )I(one)ES(, )I(optional)ES(, and
@@ -4459,7 +4977,7 @@ f \201root& r\202
)0 P(is mapped to:)EP(
- ) 37 73 PR(class object: xml_schema::type
+ ) 37 73 PR(class object: public xml_schema::type
{
public:
// any
@@ -4505,7 +5023,7 @@ public:
)EP(
- )0 3 52 H(2.12.1)WB 146 Sn()WB 56 Sn( Mapping for )SM(any)ES( with the One Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
+ )0 3 54 H(2.12.1)WB 151 Sn()WB 58 Sn( Mapping for )SM(any)ES( with the One Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
)0 P(For )SM(any)ES( with the One cardi)HY(nal)HY(ity)YH( class,
there are no type defi)HY(ni)HY(tions)YH(. The acces)HY(sor)YH( func)HY(tions)YH( come in
@@ -4533,7 +5051,7 @@ public:
)0 P(is mapped to:)EP(
- ) 22 35 PR(class object: xml_schema::type
+ ) 22 37 PR(class object: public xml_schema::type
{
public:
// Accessors.
@@ -4570,7 +5088,7 @@ f \201object& o, const xercesc::DOMElement& e\202
o.any \201doc.createElement \201...\202\202; // set, assumes ownership
})RP(
- )0 3 53 H(2.12.2)WB 147 Sn()WB 57 Sn( Mapping for )SM(any)ES( with the Optional Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
+ )0 3 55 H(2.12.2)WB 152 Sn()WB 59 Sn( Mapping for )SM(any)ES( with the Optional Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
)0 P(For )SM(any)ES( with the Optional cardi)HY(nal)HY(ity)YH( class, the type
defi)HY(ni)HY(tions)YH( consist of an alias for the container type with name
@@ -4608,7 +5126,7 @@ f \201object& o, const xercesc::DOMElement& e\202
)0 P(is mapped to:)EP(
- ) 29 40 PR(class object: xml_schema::type
+ ) 29 40 PR(class object: public xml_schema::type
{
public:
// Type definitions.
@@ -4641,8 +5159,8 @@ public:
)0 P(The )SM(element_optional)ES( container is a
special)HY(iza)HY(tion)YH( of the )SM(optional)ES( class template described
- in )0 48 1 A(Section 2.8.2, "Mapping for Members with the Optional
- Cardi)HY(nal)HY(ity)YH( Class")48 0 TN TL()Ec /AF f D(. Its inter)HY(face)YH( is presented below:
+ in )0 49 1 A(Section 2.8.2, "Mapping for Members with the Optional
+ Cardi)HY(nal)HY(ity)YH( Class")49 0 TN TL()Ec /AF f D(. Its inter)HY(face)YH( is presented below:
)EP(
) 72 71 PR(class element_optional
@@ -4749,7 +5267,7 @@ f \201object& o, const xercesc::DOMElement& e\202
- )0 3 54 H(2.12.3)WB 148 Sn()WB 58 Sn( Mapping for )SM(any)ES( with the Sequence Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
+ )0 3 56 H(2.12.3)WB 153 Sn()WB 60 Sn( Mapping for )SM(any)ES( with the Sequence Cardi)HY(nal)HY(ity)YH( Class)EA()EH(
)0 P(For )SM(any)ES( with the Sequence cardi)HY(nal)HY(ity)YH( class, the type
defi)HY(ni)HY(tions)YH( consist of an alias of the container type with name
@@ -4783,7 +5301,7 @@ f \201object& o, const xercesc::DOMElement& e\202
)0 P(is mapped to:)EP(
- ) 25 58 PR(class object: xml_schema::type
+ ) 25 58 PR(class object: public xml_schema::type
{
public:
// Type definitions.
@@ -4811,8 +5329,8 @@ public:
)0 P(The )SM(element_sequence)ES( container is a
special)HY(iza)HY(tion)YH( of the )SM(sequence)ES( class template described
- in )0 49 1 A(Section 2.8.3, "Mapping for Members with the
- Sequence Cardi)HY(nal)HY(ity)YH( Class")49 0 TN TL()Ec /AF f D(. Its inter)HY(face)YH( is similar to
+ in )0 50 1 A(Section 2.8.3, "Mapping for Members with the
+ Sequence Cardi)HY(nal)HY(ity)YH( Class")50 0 TN TL()Ec /AF f D(. Its inter)HY(face)YH( is similar to
the sequence inter)HY(face)YH( as defined by the ISO/ANSI Stan)HY(dard)YH( for
C++ \201ISO/IEC 14882:1998, Section 23.1.1, "Sequences"\202 and is
presented below:
@@ -5021,8 +5539,78 @@ f \201object& o, const xercesc::DOMElement& e\202
s.push_back \201doc.createElement \201...\202\202; // assumes ownership
})RP(
+ )0 3 57 H(2.12.4)WB 154 Sn()WB 61 Sn( Element Wild)HY(card)YH( Order)EA()EH(
+
+ )0 P(Similar to elements, element wild)HY(cards)YH( in ordered types
+ \201)0 51 1 A(Section 2.8.4, "Element Order")51 0 TN TL()Ec /AF f D(\202 are assigned
+ content ids and are included in the content order sequence.
+ Contin)HY(u)HY(ing)YH( with the bank trans)HY(ac)HY(tions)YH( example started in Section
+ 2.8.4, we can extend the batch by allow)HY(ing)YH( custom trans)HY(ac)HY(tions)YH(:)EP(
+
+ ) 7 52 PR(<complexType name="batch">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="withdraw" type="withdraw"/>
+ <element name="deposit" type="deposit"/>
+ <any namespace="##other" processContents="lax"/>
+ </choice>
+</complexType>)RP(
+
+ )0 P(This will lead to the follow)HY(ing)YH( changes in the gener)HY(ated)YH(
+ )SM(batch)ES( C++ class:)EP(
+
+ ) 24 58 PR(class batch: public xml_schema::type
+{
+public:
+ ...
+
+ // any
+ //
+ typedef element_sequence any_sequence;
+ typedef any_sequence::iterator any_iterator;
+ typedef any_sequence::const_iterator any_const_iterator;
+
+ static const std::size_t any_id = 3UL;
+
+ const any_sequence&
+ any \201\202 const;
+
+ any_sequence&
+ any \201\202;
+
+ void
+ any \201const any_sequence&\202;
+
+ ...
+};)RP(
+
+ )0 P(With this change we also need to update the iter)HY(a)HY(tion)YH( code to handle
+ the new content id:)EP(
+
+ ) 18 73 PR(for \201batch::content_order_const_iterator i \201b.content_order \201\202.begin \201\202\202;
+ i != b.content_order \201\202.end \201\202;
+ ++i\202
+{
+ switch \201i->id\202
+ {
+ ...
+
+ case batch::any_id:
+ {
+ const DOMElement& e \201b.any \201\202[i->index]\202;
+ ...
+ break;
+ }
+
+ ...
+ }
+})RP(
+
+ )0 P(For the complete working code that shows the use of wild)HY(cards)YH( in
+ ordered types refer to the )SM(order/element)ES( example in
+ the )SM(exam)HY(ples)YH(/cxx/tree/)ES( direc)HY(tory)YH( in the XSD
+ distri)HY(bu)HY(tion)YH(.)EP(
- )0 3 55 H(2.12.4)WB 149 Sn()WB 59 Sn( Mapping for )SM(anyAt)HY(tribute)YH()ES()EA()EH(
+ )0 3 58 H(2.12.5)WB 155 Sn()WB 62 Sn( Mapping for )SM(anyAt)HY(tribute)YH()ES()EA()EH(
)0 P(For )SM(anyAt)HY(tribute)YH()ES( the type defi)HY(ni)HY(tions)YH( consist of an alias
of the container type with name )SM(any_attribute_set)ES(
@@ -5057,7 +5645,7 @@ f \201object& o, const xercesc::DOMElement& e\202
)0 P(is mapped to:)EP(
- ) 25 73 PR(class object: xml_schema::type
+ ) 25 73 PR(class object: public xml_schema::type
{
public:
// Type definitions.
@@ -5291,21 +5879,139 @@ f \201object& o, const xercesc::DOMAttr& a\202
- )0 2 56 H(2.13)WB 150 Sn()WB 60 Sn( Mapping for Mixed Content Models)EA()EH(
+ )0 2 59 H(2.13)WB 156 Sn()WB 63 Sn( Mapping for Mixed Content Models)EA()EH(
- )0 P(XML Schema mixed content models do not have a direct C++ mapping.
- Instead, infor)HY(ma)HY(tion)YH( in XML instance docu)HY(ments)YH(, corre)HY(spond)HY(ing)YH( to
- a mixed content model, can be accessed using generic DOM nodes that
- can option)HY(ally)YH( be asso)HY(ci)HY(ated)YH( with object model nodes. See
- )0 90 1 A(Section 5.1, "DOM Asso)HY(ci)HY(a)HY(tion)YH(")90 0 TN TL()Ec /AF f D( for more
- infor)HY(ma)HY(tion)YH( about keeping asso)HY(ci)HY(a)HY(tion)YH( with DOM nodes.
- )EP(
+ )0 P(For XML Schema types with mixed content models C++/Tree provides
+ mapping support only if the type is marked as ordered
+ \201)0 51 1 A(Section 2.8.4, "Element Order")51 0 TN TL()Ec /AF f D(\202. Use the
+ )SM(--ordered-type-mixed)ES( XSD compiler option to
+ auto)HY(mat)HY(i)HY(cally)YH( mark all types with mixed content as ordered.)EP(
+
+ )0 P(For an ordered type with mixed content, C++/Tree adds an extra
+ text content sequence that is used to store the text frag)HY(ments)YH(.
+ This text content sequence is also assigned the content id and
+ its entries are included in the content order sequence, just
+ like elements. As a result, it is possi)HY(ble)YH( to capture the order
+ between elements and text frag)HY(ments)YH(.)EP(
+
+ )0 P(As an example, consider the follow)HY(ing)YH( schema that describes text
+ with embed)HY(ded)YH( links:)EP(
+
+ ) 13 73 PR(<complexType name="anchor">
+ <simpleContent>
+ <extension base="string">
+ <attribute name="href" type="anyURI" use="required"/>
+ </extension>
+ </simpleContent>
+</complexType>
+
+<complexType name="text" mixed="true">
+ <sequence>
+ <element name="a" type="anchor" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+</complexType>)RP(
+
+ )0 P(The gener)HY(ated)YH( )SM(text)ES( C++ class will provide the follow)HY(ing)YH(
+ API \201assum)HY(ing)YH( it is marked as ordered\202:)EP(
+
+ ) 57 78 PR(class text: public xml_schema::type
+{
+public:
+ // a
+ //
+ typedef anchor a_type;
+ typedef sequence<a_type> a_sequence;
+ typedef a_sequence::iterator a_iterator;
+ typedef a_sequence::const_iterator a_const_iterator;
+
+ static const std::size_t a_id = 1UL;
+
+ const a_sequence&
+ a \201\202 const;
+
+ a_sequence&
+ a \201\202;
+
+ void
+ a \201const a_sequence&\202;
+
+ // text_content
+ //
+ typedef xml_schema::string text_content_type;
+ typedef sequence<text_content_type> text_content_sequence;
+ typedef text_content_sequence::iterator text_content_iterator;
+ typedef text_content_sequence::const_iterator text_content_const_iterator;
+
+ static const std::size_t text_content_id = 2UL;
+
+ const text_content_sequence&)WR(
+ text_content \201\202 const;
+
+ text_content_sequence&
+ text_content \201\202;
+
+ void
+ text_content \201const text_content_sequence&\202;
+
+ // content_order
+ //
+ typedef xml_schema::content_order content_order_type;
+ typedef std::vector<content_order_type> content_order_sequence;
+ typedef content_order_sequence::iterator content_order_iterator;
+ typedef content_order_sequence::const_iterator content_order_const_iterator;
+
+ const content_order_sequence&
+ content_order \201\202 const;
+
+ content_order_sequence&
+ content_order \201\202;
+
+ void
+ content_order \201const content_order_sequence&\202;
+
+ ...
+};)RP(
+
+ )0 P(Given this inter)HY(face)YH( we can iterate over both link elements
+ and text in content order. The follow)HY(ing)YH( code frag)HY(ment)YH( converts
+ our format to plain text with refer)HY(ences)YH(.)EP(
+
+ ) 26 72 PR(const text& t = ...
+
+for \201text::content_order_const_iterator i \201t.content_order \201\202.begin \201\202\202;
+ i != t.content_order \201\202.end \201\202;
+ ++i\202
+{
+ switch \201i->id\202
+ {
+ case text::a_id:
+ {
+ const anchor& a \201t.a \201\202[i->index]\202;
+ cerr << a << "[" << a.href \201\202 << "]";
+ break;
+ }
+ case text::text_content_id:
+ {
+ const xml_schema::string& s \201t.text_content \201\202[i->index]\202;
+ cerr << s;
+ break;
+ }
+ default:
+ {
+ assert \201false\202; // Unknown content id.
+ }
+ }
+})RP(
+ )0 P(For the complete working code that shows the use of mixed content
+ in ordered types refer to the )SM(order/mixed)ES( example in
+ the )SM(exam)HY(ples)YH(/cxx/tree/)ES( direc)HY(tory)YH( in the XSD
+ distri)HY(bu)HY(tion)YH(.)EP(
- )0 1 57 H(3)WB 151 Sn()WB 61 Sn( Parsing)EA()EH(
+ )0 1 60 H(3)WB 157 Sn()WB 64 Sn( Parsing)EA()EH(
)0 P(This chapter covers various aspects of parsing XML instance
docu)HY(ments)YH( in order to obtain corre)HY(spond)HY(ing)YH( tree-like object
@@ -5321,18 +6027,18 @@ f \201object& o, const xercesc::DOMAttr& a\202
) 96 65 PR(// Read from a URI or a local file.
//
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201const std::basic_string<C>& uri,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201const std::basic_string<C>& uri,
xml_schema::error_handler&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201const std::basic_string<C>& uri,
xercesc::DOMErrorHandler&,
xml_schema::flags = 0,
@@ -5342,38 +6048,38 @@ name \201const std::basic_string<C>& uri,
// Read from std::istream.
//
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201std::istream&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201std::istream&,)WR(
xml_schema::error_handler&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201std::istream&,
xercesc::DOMErrorHandler&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201std::istream&,
const std::basic_string<C>& id,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201std::istream&,
const std::basic_string<C>& id,
xml_schema::error_handler&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201std::istream&,
const std::basic_string<C>& id,
xercesc::DOMErrorHandler&,
@@ -5384,18 +6090,18 @@ name \201std::istream&,
// Read from InputSource.
//
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201xercesc::InputSource&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201xercesc::InputSource&,
xml_schema::error_handler&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201xercesc::InputSource&,
xercesc::DOMErrorHandler&,
xml_schema::flags = 0,
@@ -5405,24 +6111,27 @@ name \201xercesc::InputSource&,
// Read from DOM.
//
-std::auto_ptr<type>
+std::[auto|unique]_ptr<type>
name \201const xercesc::DOMDocument&,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;)WR(
-std::auto_ptr<type>
-name \201xml_schema::dom::auto_ptr<xercesc::DOMDocument>&,
+std::[auto|unique]_ptr<type>
+name \201xml_schema::dom::[auto|unique]_ptr<xercesc::DOMDocument>,
xml_schema::flags = 0,
const xml_schema::properties& = xml_schema::properties \201\202\202;)RP(
)0 P(You can choose between reading an XML instance from a local file,
URI, )SM(std::istream)ES(, )SM(xercesc::Input)HY(Source)YH()ES(,
or a pre-parsed DOM instance in the form of
- )SM(xercesc::DOMDoc)HY(u)HY(ment)YH()ES(. Each of these parsing func)HY(tions)YH(
- is discussed in more detail in the follow)HY(ing)YH( sections.
+ )SM(xercesc::DOMDoc)HY(u)HY(ment)YH()ES(. All the parsing func)HY(tions)YH(
+ return a dynam)HY(i)HY(cally)YH( allo)HY(cated)YH( object model as either
+ )SM(std::auto_ptr)ES( or )SM(std::unique_ptr)ES(,
+ depend)HY(ing)YH( on the C++ stan)HY(dard)YH( selected. Each of these parsing
+ func)HY(tions)YH( is discussed in more detail in the follow)HY(ing)YH( sections.
)EP(
- )0 2 58 H(3.1)WB 152 Sn()WB 62 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)EA()EH(
+ )0 2 61 H(3.1)WB 158 Sn()WB 65 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)EA()EH(
)0 P(Some parsing func)HY(tions)YH( expect you to initial)HY(ize)YH( the Xerces-C++
runtime while others initial)HY(ize)YH( and termi)HY(nate)YH( it as part of their
@@ -5437,11 +6146,11 @@ name \201xml_schema::dom::auto_ptr<xercesc::DOMDocument>&,
)0 P(You can instruct parsing func)HY(tions)YH( that initial)HY(ize)YH( and termi)HY(nate)YH(
the runtime not to do so by passing the
)SM(xml_schema::flags::dont_initial)HY(ize)YH()ES( flag \201see
- )0 63 1 A(Section 3.2, "Flags and Prop)HY(er)HY(ties)YH(")63 0 TN TL()Ec /AF f D(\202.
+ )0 66 1 A(Section 3.2, "Flags and Prop)HY(er)HY(ties)YH(")66 0 TN TL()Ec /AF f D(\202.
)EP(
- )0 2 59 H(3.2)WB 153 Sn()WB 63 Sn( Flags and Prop)HY(er)HY(ties)YH()EA()EH(
+ )0 2 62 H(3.2)WB 159 Sn()WB 66 Sn( Flags and Prop)HY(er)HY(ties)YH()EA()EH(
)0 P(Parsing flags and prop)HY(er)HY(ties)YH( are the last two argu)HY(ments)YH( of every
parsing func)HY(tion)YH(. They allow you to fine-tune the process of
@@ -5454,13 +6163,13 @@ name \201xml_schema::dom::auto_ptr<xercesc::DOMDocument>&,
)0 DL( )0 DT()SM(xml_schema::flags::keep_dom)ES(
)DD(Keep asso)HY(ci)HY(a)HY(tion)YH( between DOM nodes and the result)HY(ing)YH(
object model nodes. For more infor)HY(ma)HY(tion)YH( about DOM asso)HY(ci)HY(a)HY(tion)YH(
- refer to )0 90 1 A(Section 5.1, "DOM Asso)HY(ci)HY(a)HY(tion)YH(")90 0 TN TL()Ec /AF f D(.
+ refer to )0 93 1 A(Section 5.1, "DOM Asso)HY(ci)HY(a)HY(tion)YH(")93 0 TN TL()Ec /AF f D(.
)0 DT()SM(xml_schema::flags::own_dom)ES(
)DD(Assume owner)HY(ship)YH( of the DOM docu)HY(ment)YH( passed. This flag only
makes sense together with the )SM(keep_dom)ES( flag in
the call to the parsing func)HY(tion)YH( with the
- )SM(xml_schema::dom::auto_ptr<DOMDoc)HY(u)HY(ment)YH(>)ES(
+ )SM(xml_schema::dom::[auto|unique]_ptr<DOMDoc)HY(u)HY(ment)YH(>)ES(
argu)HY(ment)YH(.
)0 DT()SM(xml_schema::flags::dont_vali)HY(date)YH()ES(
@@ -5488,12 +6197,12 @@ std::auto_ptr<type> r \201
"valid enough" for the gener)HY(ated)YH( parsers to construct consis)HY(tent)YH(
object model, one of the excep)HY(tions)YH( defined in
)SM(xml_schema)ES( names)HY(pace)YH( is thrown \201see
- )0 64 1 A(Section 3.3, "Error Handling")64 0 TN TL()Ec /AF f D(\202.
+ )0 67 1 A(Section 3.3, "Error Handling")67 0 TN TL()Ec /AF f D(\202.
)EP(
)0 P(For more infor)HY(ma)HY(tion)YH( on the Xerces-C++ runtime initial)HY(iza)HY(tion)YH(
- refer to )0 62 1 A(Section 3.1, "Initial)HY(iz)HY(ing)YH( the Xerces-C++
- Runtime")62 0 TN TL()Ec /AF f D(.
+ refer to )0 65 1 A(Section 3.1, "Initial)HY(iz)HY(ing)YH( the Xerces-C++
+ Runtime")65 0 TN TL()Ec /AF f D(.
)EP(
)0 P(The )SM(xml_schema::prop)HY(er)HY(ties)YH()ES( class allows you to
@@ -5521,9 +6230,9 @@ public:
argu)HY(ment)YH(.
)EP(
- )0 2 60 H(3.3)WB 154 Sn()WB 64 Sn( Error Handling)EA()EH(
+ )0 2 63 H(3.3)WB 160 Sn()WB 67 Sn( Error Handling)EA()EH(
- )0 P(As discussed in )0 13 1 A(Section 2.2, "Error Handling")13 0 TN TL()Ec /AF f D(,
+ )0 P(As discussed in )0 14 1 A(Section 2.2, "Error Handling")14 0 TN TL()Ec /AF f D(,
the mapping uses the C++ excep)HY(tion)YH( handling mech)HY(a)HY(nism)YH( as its primary
way of report)HY(ing)YH( error condi)HY(tions)YH(. However, to handle recov)HY(er)HY(able)YH(
parsing and vali)HY(da)HY(tion)YH( errors and warn)HY(ings)YH(, a call)HY(back)YH( inter)HY(face)YH( maybe
@@ -5601,7 +6310,7 @@ public:
)EP(
- )0 3 61 H(3.3.1)WB 155 Sn()WB 65 Sn( )SM(xml_schema::parsing)ES()EA()EH(
+ )0 3 64 H(3.3.1)WB 161 Sn()WB 68 Sn( )SM(xml_schema::parsing)ES()EA()EH(
) 57 56 PR(struct severity
{
@@ -5670,7 +6379,7 @@ struct parsing: virtual exception
vali)HY(da)HY(tion)YH( is turned on, invalid instance docu)HY(ments)YH(.
)EP(
- )0 3 62 H(3.3.2)WB 156 Sn()WB 66 Sn( )SM(xml_schema::expected_element)ES()EA()EH(
+ )0 3 65 H(3.3.2)WB 162 Sn()WB 69 Sn( )SM(xml_schema::expected_element)ES()EA()EH(
) 16 60 PR(struct expected_element: virtual exception
{
@@ -5696,7 +6405,7 @@ struct parsing: virtual exception
)EP(
- )0 3 63 H(3.3.3)WB 157 Sn()WB 67 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()EA()EH(
+ )0 3 66 H(3.3.3)WB 163 Sn()WB 70 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()EA()EH(
) 25 72 PR(struct unexpected_element: virtual exception
{
@@ -5735,7 +6444,7 @@ struct parsing: virtual exception
these func)HY(tions)YH( return empty strings.
)EP(
- )0 3 64 H(3.3.4)WB 158 Sn()WB 68 Sn( )SM(xml_schema::expected_attribute)ES()EA()EH(
+ )0 3 67 H(3.3.4)WB 164 Sn()WB 71 Sn( )SM(xml_schema::expected_attribute)ES()EA()EH(
) 16 62 PR(struct expected_attribute: virtual exception
{
@@ -5761,7 +6470,7 @@ struct parsing: virtual exception
)EP(
- )0 3 65 H(3.3.5)WB 159 Sn()WB 69 Sn( )SM(xml_schema::unex)HY(pected)YH(_enumer)HY(a)HY(tor)YH()ES()EA()EH(
+ )0 3 68 H(3.3.5)WB 165 Sn()WB 72 Sn( )SM(xml_schema::unex)HY(pected)YH(_enumer)HY(a)HY(tor)YH()ES()EA()EH(
) 10 65 PR(struct unexpected_enumerator: virtual exception
{
@@ -5780,7 +6489,7 @@ struct parsing: virtual exception
func)HY(tions)YH(.
)EP(
- )0 3 66 H(3.3.6)WB 160 Sn()WB 70 Sn( )SM(xml_schema::expected_text_content)ES()EA()EH(
+ )0 3 69 H(3.3.6)WB 166 Sn()WB 73 Sn( )SM(xml_schema::expected_text_content)ES()EA()EH(
) 5 47 PR(struct expected_text_content: virtual exception
{
@@ -5793,7 +6502,7 @@ struct parsing: virtual exception
expected by the DOM-Tree stage.
)EP(
- )0 3 67 H(3.3.7)WB 161 Sn()WB 71 Sn( )SM(xml_schema::no_type_info)ES()EA()EH(
+ )0 3 70 H(3.3.7)WB 167 Sn()WB 74 Sn( )SM(xml_schema::no_type_info)ES()EA()EH(
) 14 60 PR(struct no_type_info: virtual exception
{
@@ -5823,7 +6532,7 @@ struct parsing: virtual exception
)EP(
- )0 3 68 H(3.3.8)WB 162 Sn()WB 72 Sn( )SM(xml_schema::not_derived)ES()EA()EH(
+ )0 3 71 H(3.3.8)WB 168 Sn()WB 75 Sn( )SM(xml_schema::not_derived)ES()EA()EH(
) 23 67 PR(struct not_derived: virtual exception
{
@@ -5860,7 +6569,7 @@ struct parsing: virtual exception
)SM(derived_type_names)HY(pace)YH()ES( func)HY(tions)YH( respec)HY(tively)YH(.
)EP(
- )0 3 69 H(3.3.9)WB 163 Sn()WB 73 Sn( )SM(xml_schema::no_prefix_mapping)ES()EA()EH(
+ )0 3 72 H(3.3.9)WB 169 Sn()WB 76 Sn( )SM(xml_schema::no_prefix_mapping)ES()EA()EH(
) 10 57 PR(struct no_prefix_mapping: virtual exception
{
@@ -5880,7 +6589,7 @@ struct parsing: virtual exception
func)HY(tion)YH(.
)EP(
- )0 2 70 H(3.4)WB 164 Sn()WB 74 Sn( Reading from a Local File or URI)EA()EH(
+ )0 2 73 H(3.4)WB 170 Sn()WB 77 Sn( Reading from a Local File or URI)EA()EH(
)0 P(Using a local file or URI is the simplest way to parse an XML instance.
For example:)EP(
@@ -5890,7 +6599,14 @@ struct parsing: virtual exception
auto_ptr<type> r1 \201name \201"test.xml"\202\202;
auto_ptr<type> r2 \201name \201"http://www.codesynthesis.com/test.xml"\202\202;)RP(
- )0 2 71 H(3.5)WB 165 Sn()WB 75 Sn( Reading from )SM(std::istream)ES()EA()EH(
+ )0 P(Or, in the C++11 mode:)EP(
+
+ ) 4 69 PR(using std::unique_ptr;
+
+unique_ptr<type> r1 \201name \201"test.xml"\202\202;
+unique_ptr<type> r2 \201name \201"http://www.codesynthesis.com/test.xml"\202\202;)RP(
+
+ )0 2 74 H(3.5)WB 171 Sn()WB 78 Sn( Reading from )SM(std::istream)ES()EA()EH(
)0 P(When using an )SM(std::istream)ES( instance, you may also
pass an optional resource id. This id is used to iden)HY(tify)YH( the
@@ -5910,7 +6626,7 @@ auto_ptr<type> r2 \201name \201"http://www.codesynthesis.com/test.xml"\202\202;)
auto_ptr<type> r \201name \201iss\202\202;
})RP(
- )0 2 72 H(3.6)WB 166 Sn()WB 76 Sn( Reading from )SM(xercesc::Input)HY(Source)YH()ES()EA()EH(
+ )0 2 75 H(3.6)WB 172 Sn()WB 79 Sn( Reading from )SM(xercesc::Input)HY(Source)YH()ES()EA()EH(
)0 P(Reading from a )SM(xercesc::Input)HY(Source)YH()ES( instance
is similar to the )SM(std::istream)ES( case except
@@ -5920,7 +6636,7 @@ auto_ptr<type> r2 \201name \201"http://www.codesynthesis.com/test.xml"\202\202;)
) 2 34 PR(xercesc::StdInInputSource is;
std::auto_ptr<type> r \201name \201is\202\202;)RP(
- )0 2 73 H(3.7)WB 167 Sn()WB 77 Sn( Reading from DOM)EA()EH(
+ )0 2 76 H(3.7)WB 173 Sn()WB 80 Sn( Reading from DOM)EA()EH(
)0 P(Reading from a )SM(xercesc::DOMDoc)HY(u)HY(ment)YH()ES( instance allows
you to setup a custom XML-DOM stage. Things like DOM
@@ -5928,38 +6644,47 @@ std::auto_ptr<type> r \201name \201is\202\202;)RP(
with this approach. For more infor)HY(ma)HY(tion)YH( on how to obtain DOM
repre)HY(sen)HY(ta)HY(tion)YH( from an XML instance refer to the Xerces-C++
docu)HY(men)HY(ta)HY(tion)YH(. In addi)HY(tion)YH(, the
- )R8 2 A(C++/Tree Mapping
+ )R7 2 A(C++/Tree Mapping
FAQ)EA( shows how to parse an XML instance to a Xerces-C++
DOM docu)HY(ment)YH( using the XSD runtime util)HY(i)HY(ties)YH(.
)EP(
)0 P(The last parsing func)HY(tion)YH( is useful when you would like to perform
your own XML-to-DOM parsing and as)HY(so)HY(ciate)YH( the result)HY(ing)YH( DOM docu)HY(ment)YH(
- with the object model nodes. If parsing is successe)HY(ful)YH(, the
- auto)HY(matic)YH( )SM(DOMDoc)HY(u)HY(ment)YH()ES( pointer is reset and the
- result)HY(ing)YH( object model assumes owner)HY(ship)YH( of the DOM docu)HY(ment)YH(
- passed. For example:)EP(
+ with the object model nodes. The auto)HY(matic)YH( )SM(DOMDoc)HY(u)HY(ment)YH()ES(
+ pointer is reset and the result)HY(ing)YH( object model assumes owner)HY(ship)YH(
+ of the DOM docu)HY(ment)YH( passed. For example:)EP(
- ) 6 72 PR(xml_schema::dom::auto_ptr<xercesc::DOMDocument> doc = ...
+ ) 18 72 PR(// C++98 version.
+//
+xml_schema::dom::auto_ptr<xercesc::DOMDocument> doc = ...
std::auto_ptr<type> r \201
name \201doc, xml_schema::flags::keep_dom | xml_schema::flags::own_dom\202\202;
-// At this point doc is reset to 0.)RP(
+// At this point doc is reset to 0.
+// C++11 version.
+//
+xml_schema::dom::unique_ptr<xercesc::DOMDocument> doc = ...
+
+std::unique_ptr<type> r \201
+ name \201std::move \201doc\202,
+ xml_schema::flags::keep_dom | xml_schema::flags::own_dom\202\202;
+// At this point doc is reset to 0.)RP(
- )0 1 74 H(4)WB 168 Sn()WB 78 Sn( Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
+ )0 1 77 H(4)WB 174 Sn()WB 81 Sn( Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
)0 P(This chapter covers various aspects of seri)HY(al)HY(iz)HY(ing)YH( a
tree-like object model to DOM or XML.
In this regard, seri)HY(al)HY(iza)HY(tion)YH( is compli)HY(men)HY(tary)YH( to the reverse
process of parsing a DOM or XML instance into an object model
- which is discussed in )0 61 1 A(Chapter 3,
- "Parsing")61 0 TN TL()Ec /AF f D(. Note that the gener)HY(a)HY(tion)YH( of the seri)HY(al)HY(iza)HY(tion)YH( code
+ which is discussed in )0 64 1 A(Chapter 3,
+ "Parsing")64 0 TN TL()Ec /AF f D(. Note that the gener)HY(a)HY(tion)YH( of the seri)HY(al)HY(iza)HY(tion)YH( code
is optional and should be explic)HY(itly)YH( requested with the
)SM(--gener)HY(ate)YH(-seri)HY(al)HY(iza)HY(tion)YH()ES( option. See the
- )R9 2 A(XSD
+ )R8 2 A(XSD
Compiler Command Line Manual)EA( for more infor)HY(ma)HY(tion)YH(.
)EP(
@@ -5971,7 +6696,7 @@ std::auto_ptr<type> r \201
)0 P(is mapped to 8 over)HY(loaded)YH( C++ func)HY(tions)YH( in the form:)EP(
- ) 70 53 PR(// Serialize to std::ostream.
+ ) 70 56 PR(// Serialize to std::ostream.
//
void
name \201std::ostream&,
@@ -6031,7 +6756,7 @@ name \201xercesc::XMLFormatTarget&,
// Serialize to DOM.
//
-xml_schema::dom::auto_ptr<xercesc::DOMDocument>)WR(
+xml_schema::dom::[auto|unique]_ptr<xercesc::DOMDocument>)WR(
name \201const type&,
const xml_schema::namespace_infomap&
xml_schema::namespace_infomap \201\202,
@@ -6052,7 +6777,7 @@ name \201xercesc::DOMDocument&,
)EP(
- )0 2 75 H(4.1)WB 169 Sn()WB 79 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)EA()EH(
+ )0 2 78 H(4.1)WB 175 Sn()WB 82 Sn( Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime)EA()EH(
)0 P(Some seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( expect you to initial)HY(ize)YH( the Xerces-C++
runtime while others initial)HY(ize)YH( and termi)HY(nate)YH( it as part of their
@@ -6067,10 +6792,10 @@ name \201xercesc::DOMDocument&,
)0 P(You can instruct seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( that initial)HY(ize)YH( and termi)HY(nate)YH(
the runtime not to do so by passing the
)SM(xml_schema::flags::dont_initial)HY(ize)YH()ES( flag \201see
- )0 81 1 A(Section 4.3, "Flags")81 0 TN TL()Ec /AF f D(\202.
+ )0 84 1 A(Section 4.3, "Flags")84 0 TN TL()Ec /AF f D(\202.
)EP(
- )0 2 76 H(4.2)WB 170 Sn()WB 80 Sn( Names)HY(pace)YH( Infomap and Char)HY(ac)HY(ter)YH( Encod)HY(ing)YH()EA()EH(
+ )0 2 79 H(4.2)WB 176 Sn()WB 83 Sn( Names)HY(pace)YH( Infomap and Char)HY(ac)HY(ter)YH( Encod)HY(ing)YH()EA()EH(
)0 P(When a docu)HY(ment)YH( being seri)HY(al)HY(ized)YH( uses XML names)HY(paces)YH(, custom
prefix-names)HY(pace)YH( asso)HY(ci)HY(a)HY(tions)YH( can to be estab)HY(lished)YH(. If custom
@@ -6170,11 +6895,11 @@ map[""].schema = "test.xsd";)RP(
)SM("UCS-4BE")ES(, and )SM("UCS-4LE")ES(. The default
encod)HY(ing)YH( is )SM("UTF-8")ES(. For more infor)HY(ma)HY(tion)YH( on
encod)HY(ing)YH( methods see the
- ")R12 2 A(Char)HY(ac)HY(ter)YH(
+ ")R11 2 A(Char)HY(ac)HY(ter)YH(
Encod)HY(ing)YH()EA(" article from Wikipedia.
)EP(
- )0 2 77 H(4.3)WB 171 Sn()WB 81 Sn( Flags)EA()EH(
+ )0 2 80 H(4.3)WB 177 Sn()WB 84 Sn( Flags)EA()EH(
)0 P(Seri)HY(al)HY(iza)HY(tion)YH( flags are the last argu)HY(ment)YH( of every seri)HY(al)HY(iza)HY(tion)YH(
func)HY(tion)YH(. They allow you to fine-tune the process of seri)HY(al)HY(iza)HY(tion)YH(.
@@ -6210,14 +6935,14 @@ name \201ofs,
xml_schema::flags::dont_pretty_print\202;)RP(
)0 P(For more infor)HY(ma)HY(tion)YH( on the Xerces-C++ runtime initial)HY(iza)HY(tion)YH(
- refer to )0 79 1 A(Section 4.1, "Initial)HY(iz)HY(ing)YH( the Xerces-C++
- Runtime")79 0 TN TL()Ec /AF f D(.
+ refer to )0 82 1 A(Section 4.1, "Initial)HY(iz)HY(ing)YH( the Xerces-C++
+ Runtime")82 0 TN TL()Ec /AF f D(.
)EP(
- )0 2 78 H(4.4)WB 172 Sn()WB 82 Sn( Error Handling)EA()EH(
+ )0 2 81 H(4.4)WB 178 Sn()WB 85 Sn( Error Handling)EA()EH(
- )0 P(As with the parsing func)HY(tions)YH( \201see )0 64 1 A(Section 3.3,
- "Error Handling")64 0 TN TL()Ec /AF f D(\202, to better under)HY(stand)YH( error handling and
+ )0 P(As with the parsing func)HY(tions)YH( \201see )0 67 1 A(Section 3.3,
+ "Error Handling")67 0 TN TL()Ec /AF f D(\202, to better under)HY(stand)YH( error handling and
report)HY(ing)YH( strate)HY(gies)YH( employed by the seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH(, it
is useful to know that the trans)HY(for)HY(ma)HY(tion)YH( of a stat)HY(i)HY(cally)YH(-typed
tree to an XML instance docu)HY(ment)YH( happens in two stages. The first
@@ -6239,7 +6964,7 @@ name \201ofs,
call)HY(back)YH( inter)HY(faces)YH( are )SM(xml_schema::error_handler)ES( and
)SM(xercesc::DOMEr)HY(rorHan)HY(dler)YH()ES(. The
)SM(xml_schema::error_handler)ES( inter)HY(face)YH( is described in
- )0 64 1 A(Section 3.3, "Error Handling")64 0 TN TL()Ec /AF f D(. For more infor)HY(ma)HY(tion)YH(
+ )0 67 1 A(Section 3.3, "Error Handling")67 0 TN TL()Ec /AF f D(. For more infor)HY(ma)HY(tion)YH(
on the )SM(xercesc::DOMEr)HY(rorHan)HY(dler)YH()ES( inter)HY(face)YH( refer to the
Xerces-C++ docu)HY(men)HY(ta)HY(tion)YH(.
)EP(
@@ -6249,7 +6974,7 @@ name \201ofs,
are described in the follow)HY(ing)YH( sub-sections.
)EP(
- )0 3 79 H(4.4.1)WB 173 Sn()WB 83 Sn( )SM(xml_schema::seri)HY(al)HY(iza)HY(tion)YH()ES()EA()EH(
+ )0 3 82 H(4.4.1)WB 179 Sn()WB 86 Sn( )SM(xml_schema::seri)HY(al)HY(iza)HY(tion)YH()ES()EA()EH(
) 11 39 PR(struct serialization: virtual exception
{
@@ -6264,7 +6989,7 @@ name \201ofs,
};)RP(
)0 P(The )SM(xml_schema::diag)HY(nos)HY(tics)YH()ES( class is described in
- )0 65 1 A(Section 3.3.1, ")SM(xml_schema::parsing)ES(")65 0 TN TL()Ec /AF f D(.
+ )0 68 1 A(Section 3.3.1, ")SM(xml_schema::parsing)ES(")68 0 TN TL()Ec /AF f D(.
The )SM(xml_schema::seri)HY(al)HY(iza)HY(tion)YH()ES( excep)HY(tion)YH( is thrown if
there were seri)HY(al)HY(iza)HY(tion)YH( errors reported during the DOM-XML stage.
If no call)HY(back)YH( inter)HY(face)YH( was provided to the seri)HY(al)HY(iza)HY(tion)YH( func)HY(tion)YH(,
@@ -6273,21 +6998,21 @@ name \201ofs,
)EP(
- )0 3 80 H(4.4.2)WB 174 Sn()WB 84 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()EA()EH(
+ )0 3 83 H(4.4.2)WB 180 Sn()WB 87 Sn( )SM(xml_schema::unex)HY(pected)YH(_element)ES()EA()EH(
)0 P(The )SM(xml_schema::unex)HY(pected)YH(_element)ES( excep)HY(tion)YH( is
- described in )0 67 1 A(Section 3.3.3,
- ")SM(xml_schema::unex)HY(pected)YH(_element)ES(")67 0 TN TL()Ec /AF f D(. It is thrown
+ described in )0 70 1 A(Section 3.3.3,
+ ")SM(xml_schema::unex)HY(pected)YH(_element)ES(")70 0 TN TL()Ec /AF f D(. It is thrown
by the seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( during the Tree-DOM stage if the
root element name of the provided DOM instance does not match with
the name of the element this seri)HY(al)HY(iza)HY(tion)YH( func)HY(tion)YH( is for.
)EP(
- )0 3 81 H(4.4.3)WB 175 Sn()WB 85 Sn( )SM(xml_schema::no_type_info)ES()EA()EH(
+ )0 3 84 H(4.4.3)WB 181 Sn()WB 88 Sn( )SM(xml_schema::no_type_info)ES()EA()EH(
)0 P(The )SM(xml_schema::no_type_info)ES( excep)HY(tion)YH( is
- described in )0 71 1 A(Section 3.3.7,
- ")SM(xml_schema::no_type_info)ES(")71 0 TN TL()Ec /AF f D(. It is thrown
+ described in )0 74 1 A(Section 3.3.7,
+ ")SM(xml_schema::no_type_info)ES(")74 0 TN TL()Ec /AF f D(. It is thrown
by the seri)HY(al)HY(iza)HY(tion)YH( func)HY(tions)YH( during the Tree-DOM stage when there
is no type infor)HY(ma)HY(tion)YH( asso)HY(ci)HY(ated)YH( with a dynamic type of an
element. Usually, catch)HY(ing)YH( this excep)HY(tion)YH( means that you haven't
@@ -6296,7 +7021,7 @@ name \201ofs,
without the )SM(--gener)HY(ate)YH(-poly)HY(mor)HY(phic)YH()ES( option.
)EP(
- )0 2 82 H(4.5)WB 176 Sn()WB 86 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(std::ostream)ES()EA()EH(
+ )0 2 85 H(4.5)WB 182 Sn()WB 89 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(std::ostream)ES()EA()EH(
)0 P(In order to seri)HY(al)HY(ize)YH( to )SM(std::ostream)ES( you will need
an object model, an output stream and, option)HY(ally)YH(, a names)HY(pace)YH(
@@ -6329,7 +7054,7 @@ name \201std::cout, *r, map\202;)RP(
)EP(
- )0 2 83 H(4.6)WB 177 Sn()WB 87 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(xercesc::XMLFor)HY(mat)HY(Tar)HY(get)YH()ES()EA()EH(
+ )0 2 86 H(4.6)WB 183 Sn()WB 90 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to )SM(xercesc::XMLFor)HY(mat)HY(Tar)HY(get)YH()ES()EA()EH(
)0 P(Seri)HY(al)HY(iz)HY(ing)YH( to an )SM(xercesc::XMLFor)HY(mat)HY(Tar)HY(get)YH()ES( instance
is similar the )SM(std::ostream)ES( case. For instance:
@@ -6377,7 +7102,7 @@ XMLPlatformUtils::Terminate \201\202;)RP(
)0 P(Note that we had to initial)HY(ize)YH( the Xerces-C++ runtime before we
could call this seri)HY(al)HY(iza)HY(tion)YH( func)HY(tion)YH(.)EP(
- )0 2 84 H(4.7)WB 178 Sn()WB 88 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to DOM)EA()EH(
+ )0 2 87 H(4.7)WB 184 Sn()WB 91 Sn( Seri)HY(al)HY(iz)HY(ing)YH( to DOM)EA()EH(
)0 P(The mapping provides two over)HY(loaded)YH( func)HY(tions)YH( that imple)HY(ment)YH(
seri)HY(al)HY(iza)HY(tion)YH( to a DOM instance. The first creates a DOM instance
@@ -6418,18 +7143,18 @@ XMLPlatformUtils::Terminate \201\202;)RP(
)0 P(For more infor)HY(ma)HY(tion)YH( on how to create and seri)HY(al)HY(ize)YH( a DOM instance
refer to the Xerces-C++ docu)HY(men)HY(ta)HY(tion)YH(. In addi)HY(tion)YH(, the
- )R8 2 A(C++/Tree Mapping
+ )R7 2 A(C++/Tree Mapping
FAQ)EA( shows how to imple)HY(ment)YH( these oper)HY(a)HY(tions)YH( using the XSD
runtime util)HY(i)HY(ties)YH(.
)EP(
- )0 1 85 H(5)WB 179 Sn()WB 89 Sn( Addi)HY(tional)YH( Func)HY(tion)HY(al)HY(ity)YH()EA()EH(
+ )0 1 88 H(5)WB 185 Sn()WB 92 Sn( Addi)HY(tional)YH( Func)HY(tion)HY(al)HY(ity)YH()EA()EH(
)0 P(The C++/Tree mapping provides a number of optional features
that can be useful in certain situ)HY(a)HY(tions)YH(. They are described
in the follow)HY(ing)YH( sections.)EP(
- )0 2 86 H(5.1)WB 180 Sn()WB 90 Sn( DOM Asso)HY(ci)HY(a)HY(tion)YH()EA()EH(
+ )0 2 89 H(5.1)WB 186 Sn()WB 93 Sn( DOM Asso)HY(ci)HY(a)HY(tion)YH()EA()EH(
)0 P(Normally, after parsing is complete, the DOM docu)HY(ment)YH( which
was used to extract the data is discarded. However, the parsing
@@ -6443,7 +7168,7 @@ XMLPlatformUtils::Terminate \201\202;)RP(
)0 P(Main)HY(tain)HY(ing)YH( DOM asso)HY(ci)HY(a)HY(tion)YH( is normally useful when the appli)HY(ca)HY(tion)YH(
needs access to XML constructs that are not preserved in the
- object model, for example, text in the mixed content model.
+ object model, for example, XML comments.
Another useful aspect of DOM asso)HY(ci)HY(a)HY(tion)YH( is the ability of the
appli)HY(ca)HY(tion)YH( to navi)HY(gate)YH( the docu)HY(ment)YH( tree using the generic DOM
inter)HY(face)YH( \201for example, with the help of an XPath proces)HY(sor)YH(\202
@@ -6453,21 +7178,48 @@ XMLPlatformUtils::Terminate \201\202;)RP(
be ignored during seri)HY(al)HY(iza)HY(tion)YH(. If you need to not only access
but also modify some aspects of XML that are not preserved in
the object model, then type customiza)HY(tion)YH( with custom parsing
- constructs and seri)HY(al)HY(iza)HY(tion)YH( oper)HY(a)HY(tors)YH( should be used instead.)EP(
+ construc)HY(tors)YH( and seri)HY(al)HY(iza)HY(tion)YH( oper)HY(a)HY(tors)YH( should be used instead.)EP(
)0 P(To request DOM asso)HY(ci)HY(a)HY(tion)YH( you will need to pass the
)SM(xml_schema::flags::keep_dom)ES( flag to one of the
- parsing func)HY(tions)YH( \201see )0 63 1 A(Section 3.2,
- "Flags and Prop)HY(er)HY(ties)YH(")63 0 TN TL()Ec /AF f D( for more infor)HY(ma)HY(tion)YH(\202. In this case the
+ parsing func)HY(tions)YH( \201see )0 66 1 A(Section 3.2,
+ "Flags and Prop)HY(er)HY(ties)YH(")66 0 TN TL()Ec /AF f D( for more infor)HY(ma)HY(tion)YH(\202. In this case the
DOM docu)HY(ment)YH( is retained and will be released when the object model
is deleted. Note that since DOM nodes "out-live" the parsing func)HY(tion)YH(
call, you need to initial)HY(ize)YH( the Xerces-C++ runtime before calling
one of the parsing func)HY(tions)YH( with the )SM(keep_dom)ES( flag and
termi)HY(nate)YH( it after the object model is destroyed \201see
- )0 62 1 A(Section 3.1, "Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime")62 0 TN TL()Ec /AF f D(\202.
- The DOM asso)HY(ci)HY(a)HY(tion)YH( is also main)HY(tained)YH( in complete copies of the
- object model \201that is, the DOM docu)HY(ment)YH( is cloned and asso)HY(ci)HY(a)HY(tions)YH(
- are reestab)HY(lished)YH(\202.)EP(
+ )0 65 1 A(Section 3.1, "Initial)HY(iz)HY(ing)YH( the Xerces-C++ Runtime")65 0 TN TL()Ec /AF f D(\202.)EP(
+
+ )0 P(If the )SM(keep_dom)ES( flag is passed
+ as the second argu)HY(ment)YH( to the copy construc)HY(tor)YH( and the copy
+ being made is of a complete tree, then the DOM asso)HY(ci)HY(a)HY(tion)YH(
+ is also main)HY(tained)YH( in the copy by cloning the under)HY(ly)HY(ing)YH(
+ DOM docu)HY(ment)YH( and reestab)HY(lish)HY(ing)YH( the asso)HY(ci)HY(a)HY(tions)YH(. For example:)EP(
+
+ ) 22 48 PR(using namespace xercesc;
+
+XMLPlatformUtils::Initialize \201\202;
+
+{
+ // Parse XML to object model.
+ //
+ std::auto_ptr<type> r \201root \201
+ "root.xml",
+ xml_schema::flags::keep_dom |
+ xml_schema::flags::dont_initialize\202\202;
+
+ // Copy without DOM association.
+ //
+ type copy1 \201*r\202;
+
+ // Copy with DOM association.
+ //
+ type copy2 \201*r, xml_schema::flags::keep_dom\202;
+}
+
+XMLPlatformUtils::Terminate \201\202;)RP(
+
)0 P(To obtain the corre)HY(spond)HY(ing)YH( DOM node from an object model node
you will need to call the )SM(_node)ES( acces)HY(sor)YH( func)HY(tion)YH(
@@ -6495,13 +7247,13 @@ XMLPlatformUtils::Initialize \201\202;
{
// Parse XML to object model.
//
- std::auto_ptr<type> r = root \201
+ std::auto_ptr<type> r \201root \201
"root.xml",
xml_schema::flags::keep_dom |
- xml_schema::flags::dont_initialize\202;
+ xml_schema::flags::dont_initialize\202\202;
DOMNode* n = root->_node \201\202;
- assert \201n->getNodeType \201\202 != DOMNode::ELEMENT_NODE\202;
+ assert \201n->getNodeType \201\202 == DOMNode::ELEMENT_NODE\202;
DOMElement* re = static_cast<DOMElement*> \201n\202;
// Get the 'a' element. Note that it is not necessarily the
@@ -6534,7 +7286,7 @@ XMLPlatformUtils::Terminate \201\202;)RP(
)0 P(The 'mixed' example which can be found in the XSD distri)HY(bu)HY(tion)YH(
shows how to handle the mixed content using DOM asso)HY(ci)HY(a)HY(tion)YH(.)EP(
- )0 2 87 H(5.2)WB 181 Sn()WB 91 Sn( Binary Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
+ )0 2 90 H(5.2)WB 187 Sn()WB 94 Sn( Binary Seri)HY(al)HY(iza)HY(tion)YH()EA()EH(
)0 P(Besides reading from and writing to XML, the C++/Tree mapping
also allows you to save the object model to and load it from a
@@ -6561,7 +7313,7 @@ XMLPlatformUtils::Terminate \201\202;)RP(
data repre)HY(sen)HY(ta)HY(tion)YH( stream, you will need to use the
)SM(--gener)HY(ate)YH(-inser)HY(tion)YH()ES( and )SM(--gener)HY(ate)YH(-extrac)HY(tion)YH()ES(
compiler options. See the
- )R9 2 A(XSD
+ )R8 2 A(XSD
Compiler Command Line Manual)EA( for more infor)HY(ma)HY(tion)YH(.)EP(
)0 P(Once the inser)HY(tion)YH( oper)HY(a)HY(tors)YH( and extrac)HY(tion)YH( construc)HY(tors)YH( are
@@ -6582,7 +7334,7 @@ XMLPlatformUtils::Terminate \201\202;)RP(
) 21 51 PR(// Parse XML to object model.
//
-std::auto_ptr<type> r = root \201"root.xml"\202;
+std::auto_ptr<type> r \201root \201"root.xml"\202\202;
// Save to a CDR stream.
//
@@ -6609,7 +7361,7 @@ root \201std::cout, *copy\202;)RP(
- )0 1 88 H(Appendix)WB 182 Sn()WB 92 Sn( A \236 Default and Fixed Values)EA()EH(
+ )0 1 91 H(Appendix)WB 188 Sn()WB 95 Sn( A \236 Default and Fixed Values)EA()EH(
)0 P(The follow)HY(ing)YH( table summa)HY(rizes)YH( the effect of default and fixed
values \201spec)HY(i)HY(fied)YH( with the )SM(default)ES( and )SM(fixed)ES(
@@ -6627,4 +7379,4 @@ root \201std::cout, *copy\202;)RP(
)WB NL
-/TE t D NP TU PM 0 eq and{/Pn () D showpage}if end restore
+/TE t D NP /OU t D TU PM 1 eq and{/Pn () D showpage}if end restore
diff --git a/xsd/documentation/cxx/tree/manual/index.xhtml b/xsd/doc/cxx/tree/manual/index.xhtml
index 43762b4..56213e0 100644
--- a/xsd/documentation/cxx/tree/manual/index.xhtml
+++ b/xsd/doc/cxx/tree/manual/index.xhtml
@@ -1,16 +1,16 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>C++/Tree Mapping User Manual</title>
- <meta name="copyright" content="&copy; 2005-2010 Code Synthesis Tools CC"/>
+ <meta name="copyright" content="&copy; 2005-2014 Code Synthesis Tools CC"/>
<meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,tree,serialization,guide,manual,examples"/>
<meta name="description" content="C++/Tree Mapping User Manual"/>
- <meta name="revision" content="2.3.0"/>
+ <meta name="revision" content="4.0.0"/>
<link rel="stylesheet" type="text/css" href="../../../default.css" />
- <!--[if lt IE 7]><link rel="stylesheet" type="text/css" href="/default-ie.css"/><![endif]-->
<style type="text/css">
pre {
@@ -188,7 +188,7 @@
<div id="titlepage">
<div id="title">C++/Tree Mapping User Manual</div>
- <p>Copyright &copy; 2005-2010 CODE SYNTHESIS TOOLS CC</p>
+ <p>Copyright &copy; 2005-2014 CODE SYNTHESIS TOOLS CC</p>
<p>Permission is granted to copy, distribute and/or modify this
document under the terms of the
@@ -225,10 +225,11 @@
<tr>
<th>2.1</th><td><a href="#2.1">Preliminary Information</a>
<table class="toc">
- <tr><th>2.1.1</th><td><a href="#2.1.1">Identifiers</a></td></tr>
- <tr><th>2.1.2</th><td><a href="#2.1.2">Character Type and Encoding</a></td></tr>
- <tr><th>2.1.3</th><td><a href="#2.1.3">XML Schema Namespace</a></td></tr>
- <tr><th>2.1.4</th><td><a href="#2.1.4">Anonymous Types</a></td></tr>
+ <tr><th>2.1.1</th><td><a href="#2.1.1">C++ Standard</a></td></tr>
+ <tr><th>2.1.2</th><td><a href="#2.1.2">Identifiers</a></td></tr>
+ <tr><th>2.1.3</th><td><a href="#2.1.3">Character Type and Encoding</a></td></tr>
+ <tr><th>2.1.4</th><td><a href="#2.1.4">XML Schema Namespace</a></td></tr>
+ <tr><th>2.1.5</th><td><a href="#2.1.5">Anonymous Types</a></td></tr>
</table>
</td>
</tr>
@@ -297,6 +298,7 @@
<tr><th>2.8.1</th><td><a href="#2.8.1">Mapping for Members with the One Cardinality Class</a></td></tr>
<tr><th>2.8.2</th><td><a href="#2.8.2">Mapping for Members with the Optional Cardinality Class</a></td></tr>
<tr><th>2.8.3</th><td><a href="#2.8.3">Mapping for Members with the Sequence Cardinality Class</a></td></tr>
+ <tr><th>2.8.4</th><td><a href="#2.8.4">Element Order</a></td></tr>
</table>
</td>
</tr>
@@ -320,7 +322,8 @@
<tr><th>2.12.1</th><td><a href="#2.12.1">Mapping for <code>any</code> with the One Cardinality Class</a></td></tr>
<tr><th>2.12.2</th><td><a href="#2.12.2">Mapping for <code>any</code> with the Optional Cardinality Class</a></td></tr>
<tr><th>2.12.3</th><td><a href="#2.12.3">Mapping for <code>any</code> with the Sequence Cardinality Class</a></td></tr>
- <tr><th>2.12.4</th><td><a href="#2.12.4">Mapping for <code>anyAttribute</code></a></td></tr>
+ <tr><th>2.12.4</th><td><a href="#2.12.4">Element Wildcard Order</a></td></tr>
+ <tr><th>2.12.5</th><td><a href="#2.12.5">Mapping for <code>anyAttribute</code></a></td></tr>
</table>
</td>
</tr>
@@ -438,9 +441,9 @@
called C++/Tree.
</p>
- <p>Revision 2.3.0<br/> <!-- Remember to change revision in other places -->
+ <p>Revision 4.0.0<br/> <!-- Remember to change revision in other places -->
This revision of the manual describes the C++/Tree
- mapping as implemented by CodeSynthesis XSD version 3.3.0.
+ mapping as implemented by CodeSynthesis XSD version 4.0.0.
</p>
<p>This document is available in the following formats:
@@ -460,9 +463,6 @@
<li><a href="http://wiki.codesynthesis.com/Tree/Customization_guide">C++/Tree
Mapping Customization Guide</a></li>
- <li><a href="http://www.codesynthesis.com/projects/xsd/documentation/cxx/tree/dbxml/">C++/Tree
- Mapping and Berkeley DB XML Integration Guide</a></li>
-
<li><a href="http://wiki.codesynthesis.com/Tree/FAQ">C++/Tree
Mapping Frequently Asked Questions (FAQ)</a></li>
@@ -480,7 +480,6 @@
mailing list is a place to ask questions. Furthermore the
<a href="http://www.codesynthesis.com/pipermail/xsd-users/">archives</a>
may already have answers to some of your questions.</li>
-
</ul>
@@ -521,7 +520,16 @@
<h2><a name="2.1">2.1 Preliminary Information</a></h2>
- <h3><a name="2.1.1">2.1.1 Identifiers</a></h3>
+ <h3><a name="2.1.1">2.1.1 C++ Standard</a></h3>
+
+ <p>The C++/Tree mapping provides support for ISO/IEC C++ 1998/2003 (C++98)
+ and ISO/IEC C++ 2011 (C++11). To select the C++ standard for the
+ generated code we use the <code>--std</code> XSD compiler command
+ line option. While the majority of the examples in this manual use
+ C++98, support for the new functionality and library components
+ introduced in C++11 are discussed throughout the document.</p>
+
+ <h3><a name="2.1.2">2.1.2 Identifiers</a></h3>
<p>XML Schema names may happen to be reserved C++ keywords or contain
characters that are illegal in C++ identifiers. To avoid C++ compilation
@@ -567,7 +575,7 @@
CONVENTION section in the <a href="http://www.codesynthesis.com/projects/xsd/documentation/xsd.xhtml">XSD
Compiler Command Line Manual</a>.</p>
- <h3><a name="2.1.2">2.1.2 Character Type and Encoding</a></h3>
+ <h3><a name="2.1.3">2.1.3 Character Type and Encoding</a></h3>
<p>The code that implements the mapping, depending on the
<code>--char-type</code> option, is generated using either
@@ -592,7 +600,7 @@
encoding is UTF-16. On other platforms <code>wchar_t</code> is 4 bytes
long and UTF-32/UCS-4 is used.</p>
- <h3><a name="2.1.3">2.1.3 XML Schema Namespace</a></h3>
+ <h3><a name="2.1.4">2.1.4 XML Schema Namespace</a></h3>
<p>The mapping relies on some predefined types, classes, and functions
that are logically defined in the XML Schema namespace reserved for
@@ -609,7 +617,7 @@
</p>
- <h3><a name="2.1.4">2.1.4 Anonymous Types</a></h3>
+ <h3><a name="2.1.5">2.1.5 Anonymous Types</a></h3>
<p>For the purpose of code generation, anonymous types defined in
XML Schema are automatically assigned names that are derived
@@ -1136,9 +1144,10 @@ namespace system
sequences of non-fundamental C++ types is the addition of
the overloaded <code>push_back</code> and <code>insert</code>
member functions which instead of the constant reference
- to the element type accept automatic pointer to the element
- type. These functions assume ownership of the pointed to
- object and resets the passed automatic pointer.
+ to the element type accept automatic pointer (<code>std::auto_ptr</code>
+ or <code>std::unique_ptr</code>, depending on the C++ standard
+ selected) to the element type. These functions assume ownership
+ of the pointed to object and reset the passed automatic pointer.
</p>
<h3><a name="2.5.1">2.5.1 Inheritance from Built-in Data Types</a></h3>
@@ -1205,18 +1214,44 @@ public:
virtual
~type ();
-public:
type ();
type (const type&amp;);
-public:
type&amp;
operator= (const type&amp;);
-public:
virtual type*
_clone () const;
+ // anyType DOM content.
+ //
+public:
+ typedef element_optional dom_content_optional;
+
+ const dom_content_optional&amp;
+ dom_content () const;
+
+ dom_content_optional&amp;
+ dom_content ();
+
+ void
+ dom_content (const xercesc::DOMElement&amp;);
+
+ void
+ dom_content (xercesc::DOMElement*);
+
+ void
+ dom_content (const dom_content_optional&amp;);
+
+ const xercesc::DOMDocument&amp;
+ dom_content_document () const;
+
+ xercesc::DOMDocument&amp;
+ dom_content_document ();
+
+ bool
+ null_content () const;
+
// DOM association.
//
public:
@@ -1228,7 +1263,44 @@ public:
};
</pre>
- <p>For more information about DOM association refer to
+ <p>When <code>xml_schema::type</code> is used to create an instance
+ (as opposed to being a base of a derived type), it represents
+ the XML Schema <code>anyType</code> type. <code>anyType</code>
+ allows any attributes and any content in any order. In the
+ C++/Tree mapping this content can be represented as a DOM
+ fragment, similar to XML Schema wildcards (<a href="#2.12">Section
+ 2.12, "Mapping for <code>any</code> and
+ <code>anyAttribute</code>"</a>).</p>
+
+ <p>To enable automatic extraction of <code>anyType</code> content
+ during parsing, the <code>--generate-any-type</code> option must be
+ specified. Because the DOM API is used to access such content, the
+ Xerces-C++ runtime should be initialized by the application prior to
+ parsing and should remain initialized for the lifetime of objects
+ with the DOM content. For more information on the Xerces-C++ runtime
+ initialization see <a href="#3.1">Section 3.1, "Initializing the
+ Xerces-C++ Runtime"</a>.</p>
+
+ <p>The DOM content is stored as the optional DOM element container
+ and the DOM content accessors and modifiers presented above are
+ identical to those generated for an optional element wildcard.
+ Refer to <a href="#2.12.2">Section 2.12.2, "Mapping for <code>any</code>
+ with the Optional Cardinality Class"</a> for details on their
+ semantics.</p>
+
+ <p>The <code>dom_content_document()</code> function returns the
+ DOM document used to store the raw XML content corresponding
+ to the <code>anyType</code> instance. It is equivalent to the
+ <code>dom_document()</code> function generated for types
+ with wildcards.</p>
+
+ <p>The <code>null_content()</code> accessor is an optimization function
+ that allows us to check for the lack of content without actually
+ creating its empty representation, that is, empty DOM document for
+ <code>anyType</code> or empty string for <code>anySimpleType</code>
+ (see the following section for details on <code>anySimpleType</code>).</p>
+
+ <p>For more information on DOM association refer to
<a href="#5.1">Section 5.1, "DOM Association"</a>.</p>
<h3><a name="2.5.3">2.5.3 Mapping for <code>anySimpleType</code></a></h3>
@@ -1241,18 +1313,37 @@ class simple_type: public type
{
public:
simple_type ();
+ simple_type (const C*);
+ simple_type (const std::basic_string&lt;C>&amp;);
+
simple_type (const simple_type&amp;);
-public:
simple_type&amp;
operator= (const simple_type&amp;);
-public:
virtual simple_type*
_clone () const;
+
+ // anySimpleType text content.
+ //
+public:
+ const std::basic_string&lt;C>&amp;
+ text_content () const;
+
+ std::basic_string&lt;C>&amp;
+ text_content ();
+
+ void
+ text_content (const std::basic_string&lt;C>&amp;);
};
</pre>
+ <p>When <code>xml_schema::simple_type</code> is used to create an instance
+ (as opposed to being a base of a derived type), it represents
+ the XML Schema <code>anySimpleType</code> type. <code>anySimpleType</code>
+ allows any simple content. In the C++/Tree mapping this content can
+ be represented as a string and accessed or modified with the
+ <code>text_content()</code> functions shown above.</p>
<h3><a name="2.5.4">2.5.4 Mapping for <code>QName</code></a></h3>
@@ -2230,7 +2321,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class color: xml_schema::string
+class color: public xml_schema::string
{
public:
enum value
@@ -2321,9 +2412,10 @@ public:
sequences of non-fundamental C++ types is the addition of
the overloaded <code>push_back</code> and <code>insert</code>
member functions which instead of the constant reference
- to the element type accept automatic pointer to the element
- type. These functions assume ownership of the pointed to
- object and resets the passed automatic pointer.
+ to the element type accept automatic pointer (<code>std::auto_ptr</code>
+ or <code>std::unique_ptr</code>, depending on the C++ standard
+ selected) to the element type. These functions assume ownership
+ of the pointed to object and reset the passed automatic pointer.
</p>
<h3><a name="2.6.4">2.6.4 Mapping for Derivation by Union</a></h3>
@@ -2388,10 +2480,11 @@ public:
instance is initialized with copies of the passed objects. In the
second constructor, arguments that are complex types (that is,
they themselves contain elements or attributes) are passed as
- references to <code>std::auto_ptr</code>. In this case the newly
+ either <code>std::auto_ptr</code> (C++98) or <code>std::unique_ptr</code>
+ (C++11), depending on the C++ standard selected. In this case the newly
created instance is directly initialized with and assumes ownership
- of the pointed to objects and the <code>std::auto_ptr</code> arguments
- are reset to <code>0</code>. For instance:</p>
+ of the pointed to objects and the <code>std::[auto|unique]_ptr</code>
+ arguments are reset to <code>0</code>. For instance:</p>
<pre class="xml">
&lt;complexType name="complex">
@@ -2414,7 +2507,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class complex: xml_schema::type
+class complex: public xml_schema::type
{
public:
object (const int&amp; a, const xml_schema::string&amp; b);
@@ -2432,11 +2525,11 @@ public:
};
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
object (const bool&amp; s_one, const complex&amp; c_one);
- object (const bool&amp; s_one, std::auto_ptr&lt;complex>&amp; c_one);
+ object (const bool&amp; s_one, std::[auto|unique]_ptr&lt;complex> c_one);
object (const object&amp;);
public:
@@ -2453,7 +2546,7 @@ public:
</pre>
<p>Notice that the generated <code>complex</code> class does not
- have the second (<code>std::auto_ptr</code>) version of the
+ have the second (<code>std::[auto|unique]_ptr</code>) version of the
constructor since all its required members are of simple types.</p>
<p>If an XML Schema complex type has an ultimate base which is an XML
@@ -2475,7 +2568,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::string
+class object: public xml_schema::string
{
public:
object (const xml_schema::language&amp; lang);
@@ -2520,7 +2613,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class color: xml_schema::string
+class color: public xml_schema::string
{
public:
enum value
@@ -2657,7 +2750,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
typedef xml_schema::string member_type;
@@ -2683,7 +2776,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
typedef xml_schema::string data_type;
@@ -2724,9 +2817,10 @@ public:
constant of the member's type. It makes a deep copy of its argument.
Except for member's types that are mapped to fundamental C++ types,
the second modifier function is provided that expects an argument
- of type automatic pointer to the member's type. It assumes ownership
- of the pointed to object and resets the passed automatic pointer.
- For instance:</p>
+ of type automatic pointer (<code>std::auto_ptr</code> or
+ <code>std::unique_ptr</code>, depending on the C++ standard selected)
+ to the member's type. It assumes ownership of the pointed to object
+ and resets the passed automatic pointer. For instance:</p>
<pre class="xml">
&lt;complexType name="object">
@@ -2739,7 +2833,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// Type definitions.
@@ -2760,7 +2854,7 @@ public:
member (const member_type&amp;);
void
- member (std::auto_ptr&lt;member_type>);
+ member (std::[auto|unique]_ptr&lt;member_type>);
...
};
@@ -2772,12 +2866,12 @@ public:
member's type, for example:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
...
- std::auto_ptr&lt;member_type>
+ std::[auto|unique]_ptr&lt;member_type>
detach_member ();
...
@@ -2802,10 +2896,19 @@ f (object&amp; o)
o.member ("hello"); // set, deep copy
o.member () = "hello"; // set, deep copy
+ // C++98 version.
+ //
std::auto_ptr&lt;string> p (new string ("hello"));
o.member (p); // set, assumes ownership
p = o.detach_member (); // detach, member is uninitialized
o.member (p); // re-attach
+
+ // C++11 version.
+ //
+ std::unique_ptr&lt;string> p (new string ("hello"));
+ o.member (std::move (p)); // set, assumes ownership
+ p = o.detach_member (); // detach, member is uninitialized
+ o.member (std::move (p)); // re-attach
}
</pre>
@@ -2835,11 +2938,12 @@ f (object&amp; o)
member's type. It makes a deep copy of its argument.
Except for member's types that are mapped to fundamental C++ types,
the second modifier function is provided that expects an argument
- of type automatic pointer to the member's type. It assumes ownership
- of the pointed to object and resets the passed automatic pointer.
- The last modifier function expects an argument of type reference
- to constant of the container type. It makes a deep copy of its
- argument. For instance:
+ of type automatic pointer (<code>std::auto_ptr</code> or
+ <code>std::unique_ptr</code>, depending on the C++ standard selected)
+ to the member's type. It assumes ownership of the pointed to object
+ and resets the passed automatic pointer. The last modifier function
+ expects an argument of type reference to constant of the container
+ type. It makes a deep copy of its argument. For instance:
</p>
<pre class="xml">
@@ -2853,7 +2957,7 @@ f (object&amp; o)
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// Type definitions.
@@ -2875,7 +2979,7 @@ public:
member (const member_type&amp;);
void
- member (std::auto_ptr&lt;member_type>);
+ member (std::[auto|unique]_ptr&lt;member_type>);
void
member (const member_optional&amp;);
@@ -2888,7 +2992,7 @@ public:
<p>The <code>optional</code> class template is defined in an
implementation-specific namespace and has the following
- interface. The <code>auto_ptr</code>-based constructor
+ interface. The <code>[auto|unique]_ptr</code>-based constructor
and modifier function are only available if the template
argument is not a fundamental C++ type.
</p>
@@ -2908,7 +3012,7 @@ public:
// Assumes ownership.
//
explicit
- optional (std::auto_ptr&lt;X>);
+ optional (std::[auto|unique]_ptr&lt;X>);
optional (const optional&amp;);
@@ -2957,11 +3061,11 @@ public:
// Assumes ownership.
//
void
- set (std::auto_ptr&lt;X>);
+ set (std::[auto|unique]_ptr&lt;X>);
// Detach and return the contained value.
//
- std::auto_ptr&lt;X>
+ std::[auto|unique]_ptr&lt;X>
detach ();
void
@@ -3020,6 +3124,8 @@ f (object&amp; o)
o.member ().reset (); // reset
}
+ // C++98 version.
+ //
std::auto_ptr&lt;string> p (new string ("hello"));
o.member (p); // set, assumes ownership
@@ -3028,6 +3134,17 @@ f (object&amp; o)
p = o.member ().detach (); // detach, member is reset
o.member ().set (p); // re-attach
+
+ // C++11 version.
+ //
+ std::unique_ptr&lt;string> p (new string ("hello"));
+ o.member (std::move (p)); // set, assumes ownership
+
+ p.reset (new string ("hello"));
+ o.member ().set (std::move (p)); // set, assumes ownership
+
+ p = o.member ().detach (); // detach, member is reset
+ o.member ().set (std::move (p)); // re-attach
}
</pre>
@@ -3069,7 +3186,7 @@ f (object&amp; o)
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// Type definitions.
@@ -3108,9 +3225,11 @@ public:
the overloaded <code>push_back</code> and <code>insert</code>
as well as the <code>detach_back</code> and <code>detach</code>
member functions. The additional <code>push_back</code> and
- <code>insert</code> functions accept an automatic pointer to the
+ <code>insert</code> functions accept an automatic pointer
+ (<code>std::auto_ptr</code> or <code>std::unique_ptr</code>,
+ depending on the C++ standard selected) to the
element type instead of the constant reference. They assume
- ownership of the pointed to object and resets the passed
+ ownership of the pointed to object and reset the passed
automatic pointer. The <code>detach_back</code> and
<code>detach</code> functions detach the element
value from the sequence container and, by default, remove
@@ -3125,17 +3244,17 @@ public:
...
void
- push_back (std::auto_ptr&lt;X>)
+ push_back (std::[auto|unique]_ptr&lt;X>)
iterator
- insert (iterator position, std::auto_ptr&lt;X>)
+ insert (iterator position, std::[auto|unique]_ptr&lt;X>)
- std::auto_ptr&lt;X>
+ std::[auto|unique]_ptr&lt;X>
detach_back (bool pop = true);
iterator
detach (iterator position,
- std::auto_ptr&lt;X>&amp; result,
+ std::[auto|unique]_ptr&lt;X>&amp; result,
bool erase = true)
...
@@ -3163,11 +3282,20 @@ f (object&amp; o)
//
s.push_back ("hello"); // deep copy
+ // C++98 version.
+ //
std::auto_ptr&lt;string> p (new string ("hello"));
s.push_back (p); // assumes ownership
p = s.detach_back (); // detach and pop
s.push_back (p); // re-append
+ // C++11 version.
+ //
+ std::unique_ptr&lt;string> p (new string ("hello"));
+ s.push_back (std::move (p)); // assumes ownership
+ p = s.detach_back (); // detach and pop
+ s.push_back (std::move (p)); // re-append
+
// Setting a new container.
//
object::member_sequence n;
@@ -3177,6 +3305,415 @@ f (object&amp; o)
}
</pre>
+ <h3><a name="2.8.4">2.8.4 Element Order</a></h3>
+
+ <p>C++/Tree is a "flattening" mapping in a sense that many levels of
+ nested compositors (<code>choice</code> and <code>sequence</code>),
+ all potentially with their own cardinalities, are in the end mapped
+ to a flat set of elements with one of the three cardinality classes
+ discussed in the previous sections. While this results in a simple
+ and easy to use API for most types, in certain cases, the order of
+ elements in the actual XML documents is not preserved once parsed
+ into the object model. And sometimes such order has
+ application-specific significance. As an example, consider a schema
+ that defines a batch of bank transactions:</p>
+
+ <pre class="xml">
+&lt;complexType name="withdraw">
+ &lt;sequence>
+ &lt;element name="account" type="unsignedInt"/>
+ &lt;element name="amount" type="unsignedInt"/>
+ &lt;/sequence>
+&lt;/complexType>
+
+&lt;complexType name="deposit">
+ &lt;sequence>
+ &lt;element name="account" type="unsignedInt"/>
+ &lt;element name="amount" type="unsignedInt"/>
+ &lt;/sequence>
+&lt;/complexType>
+
+&lt;complexType name="batch">
+ &lt;choice minOccurs="0" maxOccurs="unbounded">
+ &lt;element name="withdraw" type="withdraw"/>
+ &lt;element name="deposit" type="deposit"/>
+ &lt;/choice>
+&lt;/complexType>
+ </pre>
+
+ <p>The batch can contain any number of transactions in any order
+ but the order of transactions in each actual batch is significant.
+ For instance, consider what could happen if we reorder the
+ transactions and apply all the withdrawals before deposits.</p>
+
+ <p>For the <code>batch</code> schema type defined above the default
+ C++/Tree mapping will produce a C++ class that contains a pair of
+ sequence containers, one for each of the two elements. While this
+ will capture the content (transactions), the order of this content
+ as it appears in XML will be lost. Also, if we try to serialize the
+ batch we just loaded back to XML, all the withdrawal transactions
+ will appear before deposits.</p>
+
+ <p>To overcome this limitation of a flattening mapping, C++/Tree
+ allows us to mark certain XML Schema types, for which content
+ order is important, as ordered.</p>
+
+ <p>There are several command line options that control which
+ schema types are treated as ordered. To make an individual
+ type ordered, we use the <code>--ordered-type</code> option,
+ for example:</p>
+
+ <pre class="term">
+--ordered-type batch
+ </pre>
+
+ <p>To automatically treat all the types that are derived from an ordered
+ type also ordered, we use the <code>--ordered-type-derived</code>
+ option. This is primarily useful if you would like to iterate
+ over the complete hierarchy's content using the content order
+ sequence (discussed below).</p>
+
+ <p>Ordered types are also useful for handling mixed content. To
+ automatically mark all the types with mixed content as ordered
+ we use the <code>--ordered-type-mixed</code> option. For more
+ information on handling mixed content see <a href="#2.13">Section
+ 2.13, "Mapping for Mixed Content Models"</a>.</p>
+
+ <p>Finally, we can mark all the types in the schema we are
+ compiling with the <code>--ordered-type-all</code> option.
+ You should only resort to this option if all the types in
+ your schema truly suffer from the loss of content
+ order since, as we will discuss shortly, ordered types
+ require extra effort to access and, especially, modify.
+ See the
+ <a href="http://www.codesynthesis.com/projects/xsd/documentation/xsd.xhtml">XSD
+ Compiler Command Line Manual</a> for more information on
+ these options.</p>
+
+ <p>Once a type is marked ordered, C++/Tree alters its mapping
+ in several ways. Firstly, for each local element, element
+ wildcard (<a href="#2.12.4">Section 2.12.4, "Element Wildcard
+ Order"</a>), and mixed content text (<a href="#2.13">Section
+ 2.13, "Mapping for Mixed Content Models"</a>) in this type, a
+ content id constant is generated. Secondly, an addition sequence
+ is added to the class that captures the content order. Here
+ is how the mapping of our <code>batch</code> class changes
+ once we make it ordered:</p>
+
+ <pre class="c++">
+class batch: public xml_schema::type
+{
+public:
+ // withdraw
+ //
+ typedef withdraw withdraw_type;
+ typedef sequence&lt;withdraw_type> withdraw_sequence;
+ typedef withdraw_sequence::iterator withdraw_iterator;
+ typedef withdraw_sequence::const_iterator withdraw_const_iterator;
+
+ static const std::size_t withdraw_id = 1;
+
+ const withdraw_sequence&amp;
+ withdraw () const;
+
+ withdraw_sequence&amp;
+ withdraw ();
+
+ void
+ withdraw (const withdraw_sequence&amp;);
+
+ // deposit
+ //
+ typedef deposit deposit_type;
+ typedef sequence&lt;deposit_type> deposit_sequence;
+ typedef deposit_sequence::iterator deposit_iterator;
+ typedef deposit_sequence::const_iterator deposit_const_iterator;
+
+ static const std::size_t deposit_id = 2;
+
+ const deposit_sequence&amp;
+ deposit () const;
+
+ deposit_sequence&amp;
+ deposit ();
+
+ void
+ deposit (const deposit_sequence&amp;);
+
+ // content_order
+ //
+ typedef xml_schema::content_order content_order_type;
+ typedef std::vector&lt;content_order_type> content_order_sequence;
+ typedef content_order_sequence::iterator content_order_iterator;
+ typedef content_order_sequence::const_iterator content_order_const_iterator;
+
+ const content_order_sequence&amp;
+ content_order () const;
+
+ content_order_sequence&amp;
+ content_order ();
+
+ void
+ content_order (const content_order_sequence&amp;);
+
+ ...
+};
+ </pre>
+
+ <p>Notice the <code>withdraw_id</code> and <code>deposit_id</code>
+ content ids as well as the extra <code>content_order</code>
+ sequence that does not correspond to any element in the
+ schema definition. The other changes to the mapping for ordered
+ types has to do with XML parsing and serialization code. During
+ parsing the content order is captured in the <code>content_order</code>
+ sequence while during serialization this sequence is used to
+ determine the order in which content is serialized. The
+ <code>content_order</code> sequence is also copied during
+ copy construction and assigned during copy assignment. It is also
+ taken into account during comparison.</p>
+
+ <p>The entry type of the <code>content_order</code> sequence is the
+ <code>xml_schema::content_order</code> type that has the following
+ interface:</p>
+
+ <pre class="c++">
+namespace xml_schema
+{
+ struct content_order
+ {
+ content_order (std::size_t id, std::size_t index = 0);
+
+ std::size_t id;
+ std::size_t index;
+ };
+
+ bool
+ operator== (const content_order&amp;, const content_order&amp;);
+
+ bool
+ operator!= (const content_order&amp;, const content_order&amp;);
+
+ bool
+ operator&lt; (const content_order&amp;, const content_order&amp;);
+}
+ </pre>
+
+ <p>The <code>content_order</code> sequence describes the order of
+ content (elements, including wildcards, as well as mixed content
+ text). Each entry in this sequence consists of the content id
+ (for example, <code>withdraw_id</code> or <code>deposit_id</code>
+ in our case) as well as, for elements of the sequence cardinality
+ class, an index into the corresponding sequence container (the
+ index is unused for the one and optional cardinality classes).
+ For example, in our case, if the content id is <code>withdraw_id</code>,
+ then the index will point into the <code>withdraw</code> element
+ sequence.</p>
+
+ <p>With all this information we can now examine how to iterate over
+ transaction in the batch in content order:</p>
+
+ <pre class="c++">
+batch&amp; b = ...
+
+for (batch::content_order_const_iterator i (b.content_order ().begin ());
+ i != b.content_order ().end ();
+ ++i)
+{
+ switch (i->id)
+ {
+ case batch::withdraw_id:
+ {
+ const withdraw&amp; t (b.withdraw ()[i->index]);
+ cerr &lt;&lt; t.account () &lt;&lt; " withdraw " &lt;&lt; t.amount () &lt;&lt; endl;
+ break;
+ }
+ case batch::deposit_id:
+ {
+ const deposit&amp; t (b.deposit ()[i->index]);
+ cerr &lt;&lt; t.account () &lt;&lt; " deposit " &lt;&lt; t.amount () &lt;&lt; endl;
+ break;
+ }
+ default:
+ {
+ assert (false); // Unknown content id.
+ }
+ }
+}
+ </pre>
+
+ <p>If we serialized our batch back to XML, we would also see that the
+ order of transactions in the output is exactly the same as in the
+ input rather than all the withdrawals first followed by all the
+ deposits.</p>
+
+ <p>The most complex aspect of working with ordered types is
+ modifications. Now we not only need to change the content,
+ but also remember to update the order information corresponding
+ to this change. As a first example, we add a deposit transaction
+ to the batch:</p>
+
+ <pre class="c++">
+using xml_schema::content_order;
+
+batch::deposit_sequence&amp; d (b.deposit ());
+batch::withdraw_sequence&amp; w (b.withdraw ());
+batch::content_order_sequence&amp; co (b.content_order ());
+
+d.push_back (deposit (123456789, 100000));
+co.push_back (content_order (batch::deposit_id, d.size () - 1));
+ </pre>
+
+ <p>In the above example we first added the content (deposit
+ transaction) and then updated the content order information
+ by adding an entry with <code>deposit_id</code> content
+ id and the index of the just added deposit transaction.</p>
+
+ <p>Removing the last transaction can be easy if we know which
+ transaction (deposit or withdrawal) is last:</p>
+
+ <pre class="c++">
+d.pop_back ();
+co.pop_back ();
+ </pre>
+
+ <p>If, however, we do not know which transaction is last, then
+ things get a bit more complicated:</p>
+
+ <pre class="c++">
+switch (co.back ().id)
+{
+case batch::withdraw_id:
+ {
+ d.pop_back ();
+ break;
+ }
+case batch::deposit_id:
+ {
+ w.pop_back ();
+ break;
+ }
+}
+
+co.pop_back ();
+ </pre>
+
+ <p>The following example shows how to add a transaction at the
+ beginning of the batch:</p>
+
+ <pre class="c++">
+w.push_back (withdraw (123456789, 100000));
+co.insert (co.begin (),
+ content_order (batch::withdraw_id, w.size () - 1));
+ </pre>
+
+ <p>Note also that when we merely modify the content of one
+ of the elements in place, we do not need to update its
+ order since it doesn't change. For example, here is how
+ we can change the amount in the first withdrawal:</p>
+
+ <pre class="c++">
+w[0].amount (10000);
+ </pre>
+
+ <p>For the complete working code shown in this section refer to the
+ <code>order/element</code> example in the
+ <code>examples/cxx/tree/</code> directory in the XSD distribution.</p>
+
+ <p>If both the base and derived types are ordered, then the
+ content order sequence is only added to the base and the content
+ ids are unique within the whole hierarchy. In this case
+ the content order sequence for the derived type contains
+ ordering information for both base and derived content.</p>
+
+ <p>In some applications we may need to perform more complex
+ content processing. For example, in our case, we may need
+ to remove all the withdrawal transactions. The default
+ container, <code>std::vector</code>, is not particularly
+ suitable for such operations. What may be required by
+ some applications is a multi-index container that not
+ only allows us to iterate in content order similar to
+ <code>std::vector</code> but also search by the content
+ id as well as the content id and index pair.</p>
+
+ <p>While C++/Tree does not provide this functionality by
+ default, it allows us to specify a custom container
+ type for content order with the <code>--order-container</code>
+ command line option. The only requirement from the
+ generated code side for such a container is to provide
+ the <code>vector</code>-like <code>push_back()</code>,
+ <code>size()</code>, and const iteration interfaces.</p>
+
+ <p>As an example, here is how we can use the Boost Multi-Index
+ container for content order. First we create the
+ <code>content-order-container.hxx</code> header with the
+ following definition (in C++11, use the alias template
+ instead):</p>
+
+ <pre class="c++">
+#ifndef CONTENT_ORDER_CONTAINER
+#define CONTENT_ORDER_CONTAINER
+
+#include &lt;cstddef> // std::size_t
+
+#include &lt;boost/multi_index_container.hpp>
+#include &lt;boost/multi_index/member.hpp>
+#include &lt;boost/multi_index/identity.hpp>
+#include &lt;boost/multi_index/ordered_index.hpp>
+#include &lt;boost/multi_index/random_access_index.hpp>
+
+struct by_id {};
+struct by_id_index {};
+
+template &lt;typename T>
+struct content_order_container:
+ boost::multi_index::multi_index_container&lt;
+ T,
+ boost::multi_index::indexed_by&lt;
+ boost::multi_index::random_access&lt;>,
+ boost::multi_index::ordered_unique&lt;
+ boost::multi_index::tag&lt;by_id_index>,
+ boost::multi_index::identity&lt;T>
+ >,
+ boost::multi_index::ordered_non_unique&lt;
+ boost::multi_index::tag&lt;by_id>,
+ boost::multi_index::member&lt;T, std::size_t, &amp;T::id>
+ >
+ >
+ >
+{};
+
+#endif
+ </pre>
+
+ <p>Next we add the following two XSD compiler options to include
+ this header into every generated header file and to use the
+ custom container type (see the XSD compiler command line manual
+ for more information on shell quoting for the first option):</p>
+
+ <pre class="term">
+--hxx-prologue '#include "content-order-container.hxx"'
+--order-container content_order_container
+ </pre>
+
+ <p>With these changes we can now use the multi-index functionality,
+ for example, to search for a specific content id:</p>
+
+ <pre class="c++">
+typedef batch::content_order_sequence::index&lt;by_id>::type id_set;
+typedef id_set::iterator id_iterator;
+
+const id_set&amp; ids (b.content_order ().get&lt;by_id> ());
+
+std::pair&lt;id_iterator, id_iterator> r (
+ ids.equal_range (std::size_t (batch::deposit_id));
+
+for (id_iterator i (r.first); i != r.second; ++i)
+{
+ const deposit&amp; t (b.deposit ()[i->index]);
+ cerr &lt;&lt; t.account () &lt;&lt; " deposit " &lt;&lt; t.amount () &lt;&lt; endl;
+}
+ </pre>
+
<h2><a name="2.9">2.9 Mapping for Global Elements</a></h2>
<p>An XML Schema element definition is called global if it appears
@@ -3196,14 +3733,16 @@ f (object&amp; o)
</p>
<p>The parsing functions read XML instance documents and return
- corresponding object models. Their signatures
+ corresponding object models as an automatic pointer
+ (<code>std::auto_ptr</code> or <code>std::unique_ptr</code>,
+ depending on the C++ standard selected). Their signatures
have the following pattern (<code>type</code> denotes
element's type and <code>name</code> denotes element's
name):
</p>
<pre class="c++">
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (....);
</pre>
@@ -3211,9 +3750,8 @@ name (....);
functions, is the subject of <a href="#3">Chapter 3, "Parsing"</a>.
</p>
- <p>The serialization functions write object models
- back to XML instance documents. Their signatures
- have the following pattern:
+ <p>The serialization functions write object models back to XML instance
+ documents. Their signatures have the following pattern:
</p>
<pre class="c++">
@@ -3276,13 +3814,13 @@ public:
value (const value_type&amp;);
void
- value (std::auto_ptr&lt;value_type>);
+ value (std::[auto|unique]_ptr&lt;value_type>);
// Constructors.
//
root (const value_type&amp;);
- root (std::auto_ptr&lt;value_type>);
+ root (std::[auto|unique]_ptr&lt;value_type>);
root (const xercesc::DOMElement&amp;, xml_schema::flags = 0);
@@ -3378,7 +3916,7 @@ namespace xml_schema
class element_map
{
public:
- static std::auto_ptr&lt;xml_schema::element_type>
+ static std::[auto|unique]_ptr&lt;xml_schema::element_type>
parse (const xercesc::DOMElement&amp;, flags = 0);
static void
@@ -3389,7 +3927,9 @@ namespace xml_schema
<p>The <code>parse()</code> function creates the corresponding
element type object based on the element name and namespace
- and returns it as a pointer to <code>xml_schema::element_type</code>.
+ and returns it as an automatic pointer (<code>std::auto_ptr</code>
+ or <code>std::unique_ptr</code>, depending on the C++ standard
+ selected) to <code>xml_schema::element_type</code>.
The <code>serialize()</code> function serializes the passed element
object to <code>DOMElement</code>. Note that in case of
<code>serialize()</code>, the <code>DOMElement</code> object
@@ -3682,7 +4222,7 @@ f (root&amp; r)
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// any
@@ -3760,7 +4300,7 @@ public:
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// Accessors.
@@ -3841,7 +4381,7 @@ f (object&amp; o, const xercesc::DOMElement&amp; e)
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// Type definitions.
@@ -4024,7 +4564,7 @@ f (object&amp; o, const xercesc::DOMElement&amp; e)
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// Type definitions.
@@ -4267,8 +4807,84 @@ f (object&amp; o, const xercesc::DOMElement&amp; e)
}
</pre>
+ <h3><a name="2.12.4">2.12.4 Element Wildcard Order</a></h3>
+
+ <p>Similar to elements, element wildcards in ordered types
+ (<a href="#2.8.4">Section 2.8.4, "Element Order"</a>) are assigned
+ content ids and are included in the content order sequence.
+ Continuing with the bank transactions example started in Section
+ 2.8.4, we can extend the batch by allowing custom transactions:</p>
+
+ <pre class="xml">
+&lt;complexType name="batch">
+ &lt;choice minOccurs="0" maxOccurs="unbounded">
+ &lt;element name="withdraw" type="withdraw"/>
+ &lt;element name="deposit" type="deposit"/>
+ &lt;any namespace="##other" processContents="lax"/>
+ &lt;/choice>
+&lt;/complexType>
+ </pre>
+
+ <p>This will lead to the following changes in the generated
+ <code>batch</code> C++ class:</p>
+
+ <pre class="c++">
+class batch: public xml_schema::type
+{
+public:
+ ...
+
+ // any
+ //
+ typedef element_sequence any_sequence;
+ typedef any_sequence::iterator any_iterator;
+ typedef any_sequence::const_iterator any_const_iterator;
+
+ static const std::size_t any_id = 3UL;
+
+ const any_sequence&amp;
+ any () const;
+
+ any_sequence&amp;
+ any ();
+
+ void
+ any (const any_sequence&amp;);
+
+ ...
+};
+ </pre>
+
+ <p>With this change we also need to update the iteration code to handle
+ the new content id:</p>
+
+ <pre class="c++">
+for (batch::content_order_const_iterator i (b.content_order ().begin ());
+ i != b.content_order ().end ();
+ ++i)
+{
+ switch (i->id)
+ {
+ ...
+
+ case batch::any_id:
+ {
+ const DOMElement&amp; e (b.any ()[i->index]);
+ ...
+ break;
+ }
+
+ ...
+ }
+}
+ </pre>
+
+ <p>For the complete working code that shows the use of wildcards in
+ ordered types refer to the <code>order/element</code> example in
+ the <code>examples/cxx/tree/</code> directory in the XSD
+ distribution.</p>
- <h3><a name="2.12.4">2.12.4 Mapping for <code>anyAttribute</code></a></h3>
+ <h3><a name="2.12.5">2.12.5 Mapping for <code>anyAttribute</code></a></h3>
<p>For <code>anyAttribute</code> the type definitions consist of an alias
of the container type with name <code>any_attribute_set</code>
@@ -4306,7 +4922,7 @@ f (object&amp; o, const xercesc::DOMElement&amp; e)
<p>is mapped to:</p>
<pre class="c++">
-class object: xml_schema::type
+class object: public xml_schema::type
{
public:
// Type definitions.
@@ -4547,14 +5163,138 @@ f (object&amp; o, const xercesc::DOMAttr&amp; a)
<h2><a name="2.13">2.13 Mapping for Mixed Content Models</a></h2>
- <p>XML Schema mixed content models do not have a direct C++ mapping.
- Instead, information in XML instance documents, corresponding to
- a mixed content model, can be accessed using generic DOM nodes that
- can optionally be associated with object model nodes. See
- <a href="#5.1">Section 5.1, "DOM Association"</a> for more
- information about keeping association with DOM nodes.
- </p>
+ <p>For XML Schema types with mixed content models C++/Tree provides
+ mapping support only if the type is marked as ordered
+ (<a href="#2.8.4">Section 2.8.4, "Element Order"</a>). Use the
+ <code>--ordered-type-mixed</code> XSD compiler option to
+ automatically mark all types with mixed content as ordered.</p>
+ <p>For an ordered type with mixed content, C++/Tree adds an extra
+ text content sequence that is used to store the text fragments.
+ This text content sequence is also assigned the content id and
+ its entries are included in the content order sequence, just
+ like elements. As a result, it is possible to capture the order
+ between elements and text fragments.</p>
+
+ <p>As an example, consider the following schema that describes text
+ with embedded links:</p>
+
+ <pre class="xml">
+&lt;complexType name="anchor">
+ &lt;simpleContent>
+ &lt;extension base="string">
+ &lt;attribute name="href" type="anyURI" use="required"/>
+ &lt;/extension>
+ &lt;/simpleContent>
+&lt;/complexType>
+
+&lt;complexType name="text" mixed="true">
+ &lt;sequence>
+ &lt;element name="a" type="anchor" minOccurs="0" maxOccurs="unbounded"/>
+ &lt;/sequence>
+&lt;/complexType>
+ </pre>
+
+ <p>The generated <code>text</code> C++ class will provide the following
+ API (assuming it is marked as ordered):</p>
+
+ <pre class="c++">
+class text: public xml_schema::type
+{
+public:
+ // a
+ //
+ typedef anchor a_type;
+ typedef sequence&lt;a_type> a_sequence;
+ typedef a_sequence::iterator a_iterator;
+ typedef a_sequence::const_iterator a_const_iterator;
+
+ static const std::size_t a_id = 1UL;
+
+ const a_sequence&amp;
+ a () const;
+
+ a_sequence&amp;
+ a ();
+
+ void
+ a (const a_sequence&amp;);
+
+ // text_content
+ //
+ typedef xml_schema::string text_content_type;
+ typedef sequence&lt;text_content_type> text_content_sequence;
+ typedef text_content_sequence::iterator text_content_iterator;
+ typedef text_content_sequence::const_iterator text_content_const_iterator;
+
+ static const std::size_t text_content_id = 2UL;
+
+ const text_content_sequence&amp;
+ text_content () const;
+
+ text_content_sequence&amp;
+ text_content ();
+
+ void
+ text_content (const text_content_sequence&amp;);
+
+ // content_order
+ //
+ typedef xml_schema::content_order content_order_type;
+ typedef std::vector&lt;content_order_type> content_order_sequence;
+ typedef content_order_sequence::iterator content_order_iterator;
+ typedef content_order_sequence::const_iterator content_order_const_iterator;
+
+ const content_order_sequence&amp;
+ content_order () const;
+
+ content_order_sequence&amp;
+ content_order ();
+
+ void
+ content_order (const content_order_sequence&amp;);
+
+ ...
+};
+ </pre>
+
+ <p>Given this interface we can iterate over both link elements
+ and text in content order. The following code fragment converts
+ our format to plain text with references.</p>
+
+ <pre class="c++">
+const text&amp; t = ...
+
+for (text::content_order_const_iterator i (t.content_order ().begin ());
+ i != t.content_order ().end ();
+ ++i)
+{
+ switch (i->id)
+ {
+ case text::a_id:
+ {
+ const anchor&amp; a (t.a ()[i->index]);
+ cerr &lt;&lt; a &lt;&lt; "[" &lt;&lt; a.href () &lt;&lt; "]";
+ break;
+ }
+ case text::text_content_id:
+ {
+ const xml_schema::string&amp; s (t.text_content ()[i->index]);
+ cerr &lt;&lt; s;
+ break;
+ }
+ default:
+ {
+ assert (false); // Unknown content id.
+ }
+ }
+}
+ </pre>
+
+ <p>For the complete working code that shows the use of mixed content
+ in ordered types refer to the <code>order/mixed</code> example in
+ the <code>examples/cxx/tree/</code> directory in the XSD
+ distribution.</p>
<!-- Parsing -->
@@ -4578,18 +5318,18 @@ f (object&amp; o, const xercesc::DOMAttr&amp; a)
// Read from a URI or a local file.
//
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (const std::basic_string&lt;C>&amp; uri,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (const std::basic_string&lt;C>&amp; uri,
xml_schema::error_handler&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (const std::basic_string&lt;C>&amp; uri,
xercesc::DOMErrorHandler&amp;,
xml_schema::flags = 0,
@@ -4599,38 +5339,38 @@ name (const std::basic_string&lt;C>&amp; uri,
// Read from std::istream.
//
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (std::istream&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (std::istream&amp;,
xml_schema::error_handler&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (std::istream&amp;,
xercesc::DOMErrorHandler&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (std::istream&amp;,
const std::basic_string&lt;C>&amp; id,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (std::istream&amp;,
const std::basic_string&lt;C>&amp; id,
xml_schema::error_handler&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (std::istream&amp;,
const std::basic_string&lt;C>&amp; id,
xercesc::DOMErrorHandler&amp;,
@@ -4641,18 +5381,18 @@ name (std::istream&amp;,
// Read from InputSource.
//
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (xercesc::InputSource&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (xercesc::InputSource&amp;,
xml_schema::error_handler&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (xercesc::InputSource&amp;,
xercesc::DOMErrorHandler&amp;,
xml_schema::flags = 0,
@@ -4662,13 +5402,13 @@ name (xercesc::InputSource&amp;,
// Read from DOM.
//
-std::auto_ptr&lt;type>
+std::[auto|unique]_ptr&lt;type>
name (const xercesc::DOMDocument&amp;,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
-std::auto_ptr&lt;type>
-name (xml_schema::dom::auto_ptr&lt;xercesc::DOMDocument>&amp;,
+std::[auto|unique]_ptr&lt;type>
+name (xml_schema::dom::[auto|unique]_ptr&lt;xercesc::DOMDocument>,
xml_schema::flags = 0,
const xml_schema::properties&amp; = xml_schema::properties ());
</pre>
@@ -4676,8 +5416,11 @@ name (xml_schema::dom::auto_ptr&lt;xercesc::DOMDocument>&amp;,
<p>You can choose between reading an XML instance from a local file,
URI, <code>std::istream</code>, <code>xercesc::InputSource</code>,
or a pre-parsed DOM instance in the form of
- <code>xercesc::DOMDocument</code>. Each of these parsing functions
- is discussed in more detail in the following sections.
+ <code>xercesc::DOMDocument</code>. All the parsing functions
+ return a dynamically allocated object model as either
+ <code>std::auto_ptr</code> or <code>std::unique_ptr</code>,
+ depending on the C++ standard selected. Each of these parsing
+ functions is discussed in more detail in the following sections.
</p>
<h2><a name="3.1">3.1 Initializing the Xerces-C++ Runtime</a></h2>
@@ -4719,7 +5462,7 @@ name (xml_schema::dom::auto_ptr&lt;xercesc::DOMDocument>&amp;,
<dd>Assume ownership of the DOM document passed. This flag only
makes sense together with the <code>keep_dom</code> flag in
the call to the parsing function with the
- <code>xml_schema::dom::auto_ptr&lt;DOMDocument></code>
+ <code>xml_schema::dom::[auto|unique]_ptr&lt;DOMDocument></code>
argument.</dd>
<dt><code>xml_schema::flags::dont_validate</code></dt>
@@ -5175,6 +5918,15 @@ auto_ptr&lt;type> r1 (name ("test.xml"));
auto_ptr&lt;type> r2 (name ("http://www.codesynthesis.com/test.xml"));
</pre>
+ <p>Or, in the C++11 mode:</p>
+
+ <pre class="c++">
+using std::unique_ptr;
+
+unique_ptr&lt;type> r1 (name ("test.xml"));
+unique_ptr&lt;type> r2 (name ("http://www.codesynthesis.com/test.xml"));
+ </pre>
+
<h2><a name="3.5">3.5 Reading from <code>std::istream</code></a></h2>
<p>When using an <code>std::istream</code> instance, you may also
@@ -5224,21 +5976,30 @@ std::auto_ptr&lt;type> r (name (is));
<p>The last parsing function is useful when you would like to perform
your own XML-to-DOM parsing and associate the resulting DOM document
- with the object model nodes. If parsing is successeful, the
- automatic <code>DOMDocument</code> pointer is reset and the
- resulting object model assumes ownership of the DOM document
- passed. For example:</p>
+ with the object model nodes. The automatic <code>DOMDocument</code>
+ pointer is reset and the resulting object model assumes ownership
+ of the DOM document passed. For example:</p>
<pre class="c++">
+// C++98 version.
+//
xml_schema::dom::auto_ptr&lt;xercesc::DOMDocument> doc = ...
std::auto_ptr&lt;type> r (
name (doc, xml_schema::flags::keep_dom | xml_schema::flags::own_dom));
// At this point doc is reset to 0.
- </pre>
+// C++11 version.
+//
+xml_schema::dom::unique_ptr&lt;xercesc::DOMDocument> doc = ...
+std::unique_ptr&lt;type> r (
+ name (std::move (doc),
+ xml_schema::flags::keep_dom | xml_schema::flags::own_dom));
+
+// At this point doc is reset to 0.
+ </pre>
<h1><a name="4">4 Serialization</a></h1>
@@ -5325,7 +6086,7 @@ name (xercesc::XMLFormatTarget&amp;,
// Serialize to DOM.
//
-xml_schema::dom::auto_ptr&lt;xercesc::DOMDocument>
+xml_schema::dom::[auto|unique]_ptr&lt;xercesc::DOMDocument>
name (const type&amp;,
const xml_schema::namespace_infomap&amp;
xml_schema::namespace_infomap (),
@@ -5767,7 +6528,7 @@ XMLPlatformUtils::Terminate ();
<p>Maintaining DOM association is normally useful when the application
needs access to XML constructs that are not preserved in the
- object model, for example, text in the mixed content model.
+ object model, for example, XML comments.
Another useful aspect of DOM association is the ability of the
application to navigate the document tree using the generic DOM
interface (for example, with the help of an XPath processor)
@@ -5777,7 +6538,7 @@ XMLPlatformUtils::Terminate ();
be ignored during serialization. If you need to not only access
but also modify some aspects of XML that are not preserved in
the object model, then type customization with custom parsing
- constructs and serialization operators should be used instead.</p>
+ constructors and serialization operators should be used instead.</p>
<p>To request DOM association you will need to pass the
<code>xml_schema::flags::keep_dom</code> flag to one of the
@@ -5788,10 +6549,39 @@ XMLPlatformUtils::Terminate ();
call, you need to initialize the Xerces-C++ runtime before calling
one of the parsing functions with the <code>keep_dom</code> flag and
terminate it after the object model is destroyed (see
- <a href="#3.1">Section 3.1, "Initializing the Xerces-C++ Runtime"</a>).
- The DOM association is also maintained in complete copies of the
- object model (that is, the DOM document is cloned and associations
- are reestablished).</p>
+ <a href="#3.1">Section 3.1, "Initializing the Xerces-C++ Runtime"</a>).</p>
+
+ <p>If the <code>keep_dom</code> flag is passed
+ as the second argument to the copy constructor and the copy
+ being made is of a complete tree, then the DOM association
+ is also maintained in the copy by cloning the underlying
+ DOM document and reestablishing the associations. For example:</p>
+
+ <pre class="c++">
+using namespace xercesc;
+
+XMLPlatformUtils::Initialize ();
+
+{
+ // Parse XML to object model.
+ //
+ std::auto_ptr&lt;type> r (root (
+ "root.xml",
+ xml_schema::flags::keep_dom |
+ xml_schema::flags::dont_initialize));
+
+ // Copy without DOM association.
+ //
+ type copy1 (*r);
+
+ // Copy with DOM association.
+ //
+ type copy2 (*r, xml_schema::flags::keep_dom);
+}
+
+XMLPlatformUtils::Terminate ();
+ </pre>
+
<p>To obtain the corresponding DOM node from an object model node
you will need to call the <code>_node</code> accessor function
@@ -5822,13 +6612,13 @@ XMLPlatformUtils::Initialize ();
{
// Parse XML to object model.
//
- std::auto_ptr&lt;type> r = root (
+ std::auto_ptr&lt;type> r (root (
"root.xml",
xml_schema::flags::keep_dom |
- xml_schema::flags::dont_initialize);
+ xml_schema::flags::dont_initialize));
DOMNode* n = root->_node ();
- assert (n->getNodeType () != DOMNode::ELEMENT_NODE);
+ assert (n->getNodeType () == DOMNode::ELEMENT_NODE);
DOMElement* re = static_cast&lt;DOMElement*> (n);
// Get the 'a' element. Note that it is not necessarily the
@@ -5913,7 +6703,7 @@ XMLPlatformUtils::Terminate ();
<pre class="c++">
// Parse XML to object model.
//
-std::auto_ptr&lt;type> r = root ("root.xml");
+std::auto_ptr&lt;type> r (root ("root.xml"));
// Save to a CDR stream.
//
diff --git a/xsd/documentation/cxx/tree/manual/makefile b/xsd/doc/cxx/tree/manual/makefile
index 398c002..3cb0d80 100644
--- a/xsd/documentation/cxx/tree/manual/makefile
+++ b/xsd/doc/cxx/tree/manual/makefile
@@ -1,6 +1,5 @@
-# file : documentation/cxx/tree/manual/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# file : doc/cxx/tree/manual/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -9,7 +8,7 @@ default := $(out_base)/
install := $(out_base)/.install
dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
-cleandoc := $(out_base)/.cleandoc
+clean := $(out_base)/.clean
# Build.
#
@@ -26,7 +25,7 @@ $(out_base)/cxx-tree-manual.pdf: $(out_base)/cxx-tree-manual.ps | $(out_base)/.
# Install & Dist.
#
-$(install): path := $(subst $(src_root)/documentation/,,$(src_base))
+$(install): path := $(subst $(src_root)/doc/,,$(src_base))
$(dist): path := $(subst $(src_root)/,,$(src_base))
$(install): $(out_base)/cxx-tree-manual.ps $(out_base)/cxx-tree-manual.pdf
@@ -44,9 +43,11 @@ $(dist-win): $(dist)
# Clean
#
-$(cleandoc):
+$(clean):
+ifneq ($(xsd_clean_gen),n)
$(call message,rm $$1,rm -f $$1,$(out_base)/cxx-tree-manual.ps)
$(call message,rm $$1,rm -f $$1,$(out_base)/cxx-tree-manual.pdf)
+endif
# How to.
#
diff --git a/xsd/documentation/cxx/tree/manual/manual.html2ps b/xsd/doc/cxx/tree/manual/manual.html2ps
index ac010b5..6e714a6 100644
--- a/xsd/documentation/cxx/tree/manual/manual.html2ps
+++ b/xsd/doc/cxx/tree/manual/manual.html2ps
@@ -21,7 +21,7 @@
<h1>&nbsp;</h1>
</div>
<p>Revision $[revision] &nbsp;&nbsp;&nbsp; $D</p>
- <p>Copyright &copy; 2005-2010 CODE SYNTHESIS TOOLS CC</p>
+ <p>Copyright &copy; 2005-2014 CODE SYNTHESIS TOOLS CC</p>
<p>Permission is granted to copy, distribute and/or modify this
document under the terms of the
diff --git a/xsd/documentation/cxx/tree/reference/footer.html b/xsd/doc/cxx/tree/reference/footer.html
index 3e5cc1e..4325116 100644
--- a/xsd/documentation/cxx/tree/reference/footer.html
+++ b/xsd/doc/cxx/tree/reference/footer.html
@@ -1,6 +1,6 @@
<hr size="1">
<div style="text-align: center; font-size: 80%;">
- Copyright &copy; 2005-2010 CODE SYNTHESIS TOOLS CC
+ Copyright &copy; 2005-2014 CODE SYNTHESIS TOOLS CC
</div>
</body>
</html>
diff --git a/xsd/documentation/cxx/tree/reference/libxsd.doxygen b/xsd/doc/cxx/tree/reference/libxsd.doxygen
index 3f524d1..376d34a 100644
--- a/xsd/documentation/cxx/tree/reference/libxsd.doxygen
+++ b/xsd/doc/cxx/tree/reference/libxsd.doxygen
@@ -1042,13 +1042,13 @@ ENABLE_PREPROCESSING = YES
# compilation will be performed. Macro expansion can be done in a controlled
# way by setting EXPAND_ONLY_PREDEF to YES.
-MACRO_EXPANSION = NO
+MACRO_EXPANSION = YES
# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
# then the macro expansion is limited to the macros specified with the
# PREDEFINED and EXPAND_AS_DEFINED tags.
-EXPAND_ONLY_PREDEF = NO
+EXPAND_ONLY_PREDEF = YES
# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
# in the INCLUDE_PATH (see below) will be search if a #include is found.
@@ -1076,7 +1076,13 @@ INCLUDE_FILE_PATTERNS =
# undefined via #undef or recursively expanded use the := operator
# instead of the = operator.
-PREDEFINED =
+# C++98 version.
+#
+PREDEFINED = XSD_AUTO_PTR=std::auto_ptr
+
+# C++11 version.
+#
+# PREDEFINED = XSD_AUTO_PTR=std::unique_ptr
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
# this tag can be used to specify a list of macro names that should be expanded.
diff --git a/xsd/documentation/cxx/tree/reference/makefile b/xsd/doc/cxx/tree/reference/makefile
index 5df62c9..5df62c9 100644
--- a/xsd/documentation/cxx/tree/reference/makefile
+++ b/xsd/doc/cxx/tree/reference/makefile
diff --git a/xsd/documentation/default.css b/xsd/doc/default.css
index bb3805b..bb3805b 100644
--- a/xsd/documentation/default.css
+++ b/xsd/doc/default.css
diff --git a/xsd/doc/makefile b/xsd/doc/makefile
new file mode 100644
index 0000000..4ed00cc
--- /dev/null
+++ b/xsd/doc/makefile
@@ -0,0 +1,143 @@
+# file : doc/makefile
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make
+
+default := $(out_base)/
+install := $(out_base)/.install
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
+
+# Import.
+#
+$(call import,\
+ $(scf_root)/import/cli/stub.make,\
+ cli: cli,cli-rules: cli_rules)
+
+# Build.
+#
+$(default): \
+$(out_base)/cxx/ \
+$(out_base)/xsd.xhtml \
+$(out_base)/xsd.1
+
+# Man/html pages.
+#
+$(out_base)/xsd.xhtml $(out_base)/xsd.1: cli := $(cli)
+$(out_base)/xsd.xhtml $(out_base)/xsd.1: cli_options += -I $(src_root)/xsd
+
+$(out_base)/xsd.xhtml $(out_base)/xsd.1: \
+$(src_root)/xsd/options.cli \
+$(src_root)/xsd/cxx/options.cli \
+$(src_root)/xsd/cxx/tree/options.cli \
+$(src_root)/xsd/cxx/parser/options.cli
+
+# Assemble the options from different files in a specific order.
+#
+
+# XHTML
+#
+$(out_base)/xsd.xhtml: $(src_base)/xsd-prologue.xhtml \
+ $(src_base)/xsd-epilogue.xhtml \
+ $(src_base)/xsd-tree-header.xhtml \
+ $(src_base)/xsd-parser-header.xhtml \
+ | $(out_base)/.
+# Common options.
+#
+ $(call message,cli-html $$1,$(cli) $(cli_options) --generate-html \
+--stdout --suppress-undocumented --exclude-base --class CXX::options \
+--class options --html-prologue-file $(src_base)/xsd-prologue.xhtml \
+$$1 >$@, $(src_root)/xsd/cxx/options.cli)
+
+# C++/Tree options.
+#
+ $(call message,cli-html $$1,$(cli) $(cli_options) --generate-html \
+--stdout --suppress-undocumented --exclude-base \
+--html-prologue-file $(src_base)/xsd-tree-header.xhtml \
+$$1 >>$@, $(src_root)/xsd/cxx/tree/options.cli)
+
+# C++/Parser options.
+#
+ $(call message,cli-html $$1,$(cli) $(cli_options) --generate-html \
+--stdout --suppress-undocumented --exclude-base \
+--html-prologue-file $(src_base)/xsd-parser-header.xhtml \
+--html-epilogue-file $(src_base)/xsd-epilogue.xhtml \
+$$1 >>$@, $(src_root)/xsd/cxx/parser/options.cli)
+
+# MAN
+#
+$(out_base)/xsd.1: $(src_base)/xsd-prologue.1 \
+ $(src_base)/xsd-epilogue.1 \
+ $(src_base)/xsd-tree-header.1 \
+ $(src_base)/xsd-parser-header.1 \
+ | $(out_base)/.
+# Common options.
+#
+ $(call message,cli-man $$1,$(cli) $(cli_options) --generate-man \
+--stdout --suppress-undocumented --exclude-base --class CXX::options \
+--class options --man-prologue-file $(src_base)/xsd-prologue.1 \
+$$1 >$@, $(src_root)/xsd/cxx/options.cli)
+
+# C++/Tree options.
+#
+ $(call message,cli-man $$1,$(cli) $(cli_options) --generate-man \
+--stdout --suppress-undocumented --exclude-base \
+--man-prologue-file $(src_base)/xsd-tree-header.1 \
+$$1 >>$@, $(src_root)/xsd/cxx/tree/options.cli)
+
+# C++/Parser options.
+#
+ $(call message,cli-man $$1,$(cli) $(cli_options) --generate-man \
+--stdout --suppress-undocumented --exclude-base \
+--man-prologue-file $(src_base)/xsd-parser-header.1 \
+--man-epilogue-file $(src_base)/xsd-epilogue.1 \
+$$1 >>$@, $(src_root)/xsd/cxx/parser/options.cli)
+
+
+# Install.
+#
+$(install): $(out_base)/cxx/.install \
+ $(out_base)/xsd.xhtml \
+ $(out_base)/xsd.1
+ $(call install-data,$(src_base)/default.css,$(install_doc_dir)/xsd/default.css)
+ $(call install-data,$(out_base)/xsd.xhtml,$(install_doc_dir)/xsd/xsd.xhtml)
+ $(call install-data,$(src_base)/custom-literals.xsd,$(install_doc_dir)/xsd/custom-literals.xsd)
+ $(call install-data,$(out_base)/xsd.1,$(install_man_dir)/man1/xsd.1)
+
+# Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+$(dist-common): $(out_base)/xsd.xhtml \
+ $(out_base)/xsd.1
+ $(call install-data,$(src_base)/default.css,$(dist_prefix)/doc/default.css)
+ $(call install-data,$(out_base)/xsd.xhtml,$(dist_prefix)/doc/xsd.xhtml)
+ $(call install-data,$(out_base)/xsd.1,$(dist_prefix)/doc/xsd.1)
+ $(call install-data,$(src_base)/custom-literals.xsd,$(dist_prefix)/doc/custom-literals.xsd)
+
+$(dist): $(dist-common) $(out_base)/cxx/.dist
+$(dist-win): $(dist-common) $(out_base)/cxx/.dist-win
+
+# Clean.
+#
+$(clean): $(out_base)/cxx/.clean
+ifneq ($(xsd_clean_gen),n)
+ $(call message,rm $$1,rm -f $$1,$(out_base)/xsd.1)
+ $(call message,rm $$1,rm -f $$1,$(out_base)/xsd.xhtml)
+endif
+
+# Generated .gitignore.
+#
+ifeq ($(out_base),$(src_base))
+$(out_base)/xsd.xhtml $(out_base)/xsd.1: | $(out_base)/.gitignore
+
+$(out_base)/.gitignore: files := xsd.1 xsd.xhtml
+$(clean): $(out_base)/.gitignore.clean
+
+$(call include,$(bld_root)/git/gitignore.make)
+endif
+
+$(call include,$(bld_root)/install.make)
+$(call import,$(src_base)/cxx/makefile)
diff --git a/xsd/doc/xsd-epilogue.1 b/xsd/doc/xsd-epilogue.1
new file mode 100644
index 0000000..2b78ff7
--- /dev/null
+++ b/xsd/doc/xsd-epilogue.1
@@ -0,0 +1,566 @@
+\"
+\" NAMING CONVENTION
+\"
+
+.SH NAMING CONVENTION
+The compiler can be instructed to use a particular naming convention in
+the generated code. A number of widely-used conventions can be selected
+using the
+.B --type-naming
+and
+.B --function-naming
+options. A custom naming convention can be achieved using the
+.BR --type-regex ,
+.BR --accessor-regex ,
+.BR --one-accessor-regex ,
+.BR --opt-accessor-regex ,
+.BR --seq-accessor-regex ,
+.BR --modifier-regex ,
+.BR --one-modifier-regex ,
+.BR --opt-modifier-regex ,
+.BR --seq-modifier-regex ,
+.BR --parser-regex ,
+.BR --serializer-regex ,
+.BR --const-regex ,
+.BR --enumerator-regex ,
+and
+.B --element-type-regex
+options.
+
+The
+.B --type-naming
+option specifies the convention that should be used for naming C++ types.
+Possible values for this option are
+.B knr
+(default),
+.BR ucc ,
+and
+.BR java .
+The
+.B knr
+value (stands for K&R) signifies the standard, lower-case naming convention
+with the underscore used as a word delimiter, for example: foo, foo_bar.
+The
+.B ucc
+(stands for upper-camel-case) and
+.B java
+values a synonyms for the same naming convention where the first letter
+of each word in the name is capitalized, for example: Foo, FooBar.
+
+Similarly, the
+.B --function-naming
+option specifies the convention that should be used for naming C++ functions.
+Possible values for this option are
+.B knr
+(default),
+.BR lcc ,
+and
+.BR java .
+The
+.B knr
+value (stands for K&R) signifies the standard, lower-case naming convention
+with the underscore used as a word delimiter, for example: foo(), foo_bar().
+The
+.B lcc
+value (stands for lower-camel-case) signifies a naming convention where the
+first letter of each word except the first is capitalized, for example: foo(),
+fooBar(). The
+.B java
+naming convention is similar to the lower-camel-case one except that accessor
+functions are prefixed with get, modifier functions are prefixed with set,
+parsing functions are prefixed with parse, and serialization functions are
+prefixed with serialize, for example: getFoo(), setFooBar(), parseRoot(),
+serializeRoot().
+
+Note that the naming conventions specified with the
+.B --type-naming
+and
+.B --function-naming
+options perform only limited transformations on the
+names that come from the schema in the form of type, attribute, and element
+names. In other words, to get consistent results, your schemas should follow
+a similar naming convention as the one you would like to have in the generated
+code. Alternatively, you can use the
+.B --*-regex
+options (discussed below) to perform further transformations on the names
+that come from the schema.
+
+The
+.BR --type-regex ,
+.BR --accessor-regex ,
+.BR --one-accessor-regex ,
+.BR --opt-accessor-regex ,
+.BR --seq-accessor-regex ,
+.BR --modifier-regex ,
+.BR --one-modifier-regex ,
+.BR --opt-modifier-regex ,
+.BR --seq-modifier-regex ,
+.BR --parser-regex ,
+.BR --serializer-regex ,
+.BR --const-regex ,
+.BR --enumerator-regex ,
+and
+.B --element-type-regex
+options allow you to specify extra regular expressions for each name
+category in addition to the predefined set that is added depending on
+the
+.B --type-naming
+and
+.B --function-naming
+options. Expressions that are provided with the
+.B --*-regex
+options are evaluated prior to any predefined expressions. This allows
+you to selectively override some or all of the predefined transformations.
+When debugging your own expressions, it is often useful to see which
+expressions match which names. The
+.B --name-regex-trace
+option allows you to trace the process of applying
+regular expressions to names.
+
+The value for the
+.B --*-regex
+options should be a perl-like regular expression in the form
+.BI / pattern / replacement /\fR.
+Any character can be used as a delimiter instead of
+.BR / .
+Escaping of the delimiter character in
+.I pattern
+or
+.I replacement
+is not supported. All the regular expressions for each category are pushed
+into a category-specific stack with the last specified expression
+considered first. The first match that succeeds is used. For the
+.B --one-accessor-regex
+(accessors with cardinality one),
+.B --opt-accessor-regex
+(accessors with cardinality optional), and
+.B --seq-accessor-regex
+(accessors with cardinality sequence) categories the
+.B --accessor-regex
+expressions are used as a fallback. For the
+.BR --one-modifier-regex ,
+.BR --opt-modifier-regex ,
+and
+.B --seq-modifier-regex
+categories the
+.B --modifier-regex
+expressions are used as a fallback. For the
+.B --element-type-regex
+category the
+.B --type-regex
+expressions are used as a fallback.
+
+The type name expressions
+.RB ( --type-regex )
+are evaluated on the name string that has the following format:
+
+[\fInamespace \fR]\fIname\fR[\fB,\fIname\fR][\fB,\fIname\fR][\fB,\fIname\fR]
+
+The element type name expressions
+.RB ( --element-type-regex ),
+effective only when the
+.B --generate-element-type
+option is specified, are evaluated on the name string that has the following
+format:
+
+.I namespace name
+
+In the type name format the
+.I namespace
+part followed by a space is only present for global type names. For global
+types and elements defined in schemas without a target namespace, the
+.I namespace
+part is empty but the space is still present. In the type name format after
+the initial
+.I name
+component, up to three additional
+.I name
+components can be present, separated by commas. For example:
+
+.B http://example.com/hello type
+
+.B foo
+
+.B foo,iterator
+
+.B foo,const,iterator
+
+The following set of predefined regular expressions is used to transform
+type names when the upper-camel-case naming convention is selected:
+
+.B /(?:[^ ]* )?([^,]+)/\\\\u$1/
+
+.B /(?:[^ ]* )?([^,]+),([^,]+)/\\\\u$1\\\\u$2/
+
+.B /(?:[^ ]* )?([^,]+),([^,]+),([^,]+)/\\\\u$1\\\\u$2\\\\u$3/
+
+.B /(?:[^ ]* )?([^,]+),([^,]+),([^,]+),([^,]+)/\\\\u$1\\\\u$2\\\\u$3\\\\u$4/
+
+The accessor and modifier expressions
+.RB ( --*accessor-regex
+and
+.BR --*modifier-regex )
+are evaluated on the name string that has the following format:
+
+\fIname\fR[\fB,\fIname\fR][\fB,\fIname\fR]
+
+After the initial
+.I name
+component, up to two additional
+.I name
+components can be present, separated by commas. For example:
+
+.B foo
+
+.B dom,document
+
+.B foo,default,value
+
+The following set of predefined regular expressions is used to transform
+accessor names when the
+.B java
+naming convention is selected:
+
+.B /([^,]+)/get\\\\u$1/
+
+.B /([^,]+),([^,]+)/get\\\\u$1\\\\u$2/
+
+.B /([^,]+),([^,]+),([^,]+)/get\\\\u$1\\\\u$2\\\\u$3/
+
+For the parser, serializer, and enumerator categories, the corresponding
+regular expressions are evaluated on local names of elements and on
+enumeration values, respectively. For example, the following predefined
+regular expression is used to transform parsing function names when the
+.B java
+naming convention is selected:
+
+.B /(.+)/parse\\\\u$1/
+
+The const category is used to create C++ constant names for the
+element/wildcard/text content ids in ordered types.
+
+See also the REGEX AND SHELL QUOTING section below.
+
+\"
+\" TYPE MAP
+\"
+.SH TYPE MAP
+Type map files are used in C++/Parser to define a mapping between XML
+Schema and C++ types. The compiler uses this information to determine
+the return types of
+.B post_*
+functions in parser skeletons corresponding to XML Schema types
+as well as argument types for callbacks corresponding to elements
+and attributes of these types.
+
+The compiler has a set of predefined mapping rules that map built-in
+XML Schema types to suitable C++ types (discussed below) and all
+other types to
+.BR void .
+By providing your own type maps you can override these predefined rules.
+The format of the type map file is presented below:
+
+.RS
+.B namespace
+.I schema-namespace
+[
+.I cxx-namespace
+]
+.br
+.B {
+.br
+ (
+.B include
+.IB file-name ;
+)*
+.br
+ ([
+.B type
+]
+.I schema-type cxx-ret-type
+[
+.I cxx-arg-type
+.RB ] ;
+)*
+.br
+.B }
+.br
+.RE
+
+Both
+.I schema-namespace
+and
+.I schema-type
+are regex patterns while
+.IR cxx-namespace ,
+.IR cxx-ret-type ,
+and
+.I cxx-arg-type
+are regex pattern substitutions. All names can be optionally enclosed
+in \fR" "\fR, for example, to include white-spaces.
+
+.I schema-namespace
+determines XML Schema namespace. Optional
+.I cxx-namespace
+is prefixed to every C++ type name in this namespace declaration.
+.I cxx-ret-type
+is a C++ type name that is used as a return type for the
+.B post_*
+functions. Optional
+.I cxx-arg-type
+is an argument type for callback functions corresponding to elements and
+attributes of this type. If
+.I cxx-arg-type
+is not specified, it defaults to
+.I cxx-ret-type
+if
+.I cxx-ret-type
+ends with
+.B *
+or
+.B &
+(that is, it is a pointer or a reference) and
+.B const
+\fIcxx-ret-type\fB&\fR otherwise.
+.I file-name
+is a file name either in the \fR" "\fR or < > format and is added with the
+.B #include
+directive to the generated code.
+
+The \fB#\fR character starts a comment that ends with a new line or end of
+file. To specify a name that contains \fB#\fR enclose it in \fR" "\fR. For
+example:
+
+.RS
+namespace http://www.example.com/xmlns/my my
+.br
+{
+.br
+ include "my.hxx";
+.br
+
+ # Pass apples by value.
+ #
+ apple apple;
+.br
+
+ # Pass oranges as pointers.
+ #
+ orange orange_t*;
+.br
+}
+.br
+.RE
+
+In the example above, for the
+.B http://www.example.com/xmlns/my#orange
+XML Schema type, the
+.B my::orange_t*
+C++ type will be used as both return and argument types.
+
+Several namespace declarations can be specified in a single file.
+The namespace declaration can also be completely omitted to map
+types in a schema without a namespace. For instance:
+
+.RS
+include "my.hxx";
+.br
+apple apple;
+.br
+
+namespace http://www.example.com/xmlns/my
+.br
+{
+.br
+ orange "const orange_t*";
+.br
+}
+.br
+.RE
+
+
+The compiler has a number of predefined mapping rules that can be
+presented as the following map files. The string-based XML Schema
+built-in types are mapped to either
+.B std::string
+or
+.B std::wstring
+depending on the character type selected with the
+.B --char-type
+option
+.RB ( char
+by default).
+
+.RS
+namespace http://www.w3.org/2001/XMLSchema
+.br
+{
+.br
+ boolean bool bool;
+.br
+
+ byte "signed char" "signed char";
+.br
+ unsignedByte "unsigned char" "unsigned char";
+.br
+
+ short short short;
+.br
+ unsignedShort "unsigned short" "unsigned short";
+.br
+
+ int int int;
+.br
+ unsignedInt "unsigned int" "unsigned int";
+.br
+
+ long "long long" "long long";
+.br
+ unsignedLong "unsigned long long" "unsigned long long";
+.br
+
+ integer "long long" "long long";
+.br
+
+ negativeInteger "long long" "long long";
+.br
+ nonPositiveInteger "long long" "long long";
+.br
+
+ positiveInteger "unsigned long long" "unsigned long long";
+.br
+ nonNegativeInteger "unsigned long long" "unsigned long long";
+.br
+
+ float float float;
+.br
+ double double double;
+.br
+ decimal double double;
+.br
+
+ string std::string;
+.br
+ normalizedString std::string;
+.br
+ token std::string;
+.br
+ Name std::string;
+.br
+ NMTOKEN std::string;
+.br
+ NCName std::string;
+.br
+ ID std::string;
+.br
+ IDREF std::string;
+.br
+ language std::string;
+.br
+ anyURI std::string;
+.br
+
+ NMTOKENS xml_schema::string_sequence;
+.br
+ IDREFS xml_schema::string_sequence;
+.br
+
+ QName xml_schema::qname;
+.br
+
+ base64Binary std::auto_ptr<xml_schema::buffer>
+.br
+ std::auto_ptr<xml_schema::buffer>;
+.br
+ hexBinary std::auto_ptr<xml_schema::buffer>
+.br
+ std::auto_ptr<xml_schema::buffer>;
+.br
+
+ date xml_schema::date;
+.br
+ dateTime xml_schema::date_time;
+.br
+ duration xml_schema::duration;
+.br
+ gDay xml_schema::gday;
+.br
+ gMonth xml_schema::gmonth;
+.br
+ gMonthDay xml_schema::gmonth_day;
+.br
+ gYear xml_schema::gyear;
+.br
+ gYearMonth xml_schema::gyear_month;
+.br
+ time xml_schema::time;
+.br
+}
+.br
+.RE
+
+
+The last predefined rule maps anything that wasn't mapped by previous
+rules to
+.BR void :
+
+.RS
+namespace .*
+.br
+{
+.br
+ .* void void;
+.br
+}
+.br
+.RE
+
+When you provide your own type maps with the
+.B --type-map
+option, they are evaluated first. This allows you to selectively override
+predefined rules.
+
+.\"
+.\" REGEX AND SHELL QUOTING
+.\"
+.SH REGEX AND SHELL QUOTING
+When entering a regular expression argument in the shell command line
+it is often necessary to use quoting (enclosing the argument in " "
+or ' ') in order to prevent the shell from interpreting certain
+characters, for example, spaces as argument separators and $ as
+variable expansions.
+
+Unfortunately it is hard to achieve this in a manner that is portable
+across POSIX shells, such as those found on GNU/Linux and UNIX, and
+Windows shell. For example, if you use " " for quoting you will get
+a wrong result with POSIX shells if your expression contains $. The
+standard way of dealing with this on POSIX systems is to use ' '
+instead. Unfortunately, Windows shell does not remove ' ' from
+arguments when they are passed to applications. As a result you may
+have to use ' ' for POSIX and " " for Windows ($ is not treated as
+a special character on Windows).
+
+Alternatively, you can save regular expression options into a file,
+one option per line, and use this file with the
+.B --options-file
+option. With this approach you don't need to worry about shell quoting.
+
+.\"
+.\" DIAGNOSTICS
+.\"
+.SH DIAGNOSTICS
+If the input file is not a valid W3C XML Schema definition,
+.B xsd
+will issue diagnostic messages to
+.B STDERR
+and exit with non-zero exit code.
+.SH BUGS
+Send bug reports to the xsd-users@codesynthesis.com mailing list.
+.SH COPYRIGHT
+Copyright (c) 2005-2014 Code Synthesis Tools CC.
+
+Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License,
+version 1.2; with no Invariant Sections, no Front-Cover Texts and
+no Back-Cover Texts. Copy of the license can be obtained from
+http://codesynthesis.com/licenses/fdl-1.2.txt
diff --git a/xsd/doc/xsd-epilogue.xhtml b/xsd/doc/xsd-epilogue.xhtml
new file mode 100644
index 0000000..5f91450
--- /dev/null
+++ b/xsd/doc/xsd-epilogue.xhtml
@@ -0,0 +1,422 @@
+ <h1>NAMING CONVENTION</h1>
+
+ <p>The compiler can be instructed to use a particular naming
+ convention in the generated code. A number of widely-used
+ conventions can be selected using the <code><b>--type-naming</b></code>
+ and <code><b>--function-naming</b></code> options. A custom
+ naming convention can be achieved using the
+ <code><b>--type-regex</b></code>,
+ <code><b>--accessor-regex</b></code>,
+ <code><b>--one-accessor-regex</b></code>,
+ <code><b>--opt-accessor-regex</b></code>,
+ <code><b>--seq-accessor-regex</b></code>,
+ <code><b>--modifier-regex</b></code>,
+ <code><b>--one-modifier-regex</b></code>,
+ <code><b>--opt-modifier-regex</b></code>,
+ <code><b>--seq-modifier-regex</b></code>,
+ <code><b>--parser-regex</b></code>,
+ <code><b>--serializer-regex</b></code>,
+ <code><b>--const-regex</b></code>,
+ <code><b>--enumerator-regex</b></code>, and
+ <code><b>--element-type-regex</b></code> options.
+ </p>
+
+ <p>The <code><b>--type-naming</b></code> option specifies the
+ convention that should be used for naming C++ types. Possible
+ values for this option are <code><b>knr</b></code> (default),
+ <code><b>ucc</b></code>, and <code><b>java</b></code>. The
+ <code><b>knr</b></code> value (stands for K&amp;R) signifies
+ the standard, lower-case naming convention with the underscore
+ used as a word delimiter, for example: <code>foo</code>,
+ <code>foo_bar</code>. The <code><b>ucc</b></code> (stands
+ for upper-camel-case) and
+ <code><b>java</b></code> values a synonyms for the same
+ naming convention where the first letter of each word in the
+ name is capitalized, for example: <code>Foo</code>,
+ <code>FooBar</code>.</p>
+
+ <p>Similarly, the <code><b>--function-naming</b></code> option
+ specifies the convention that should be used for naming C++
+ functions. Possible values for this option are <code><b>knr</b></code>
+ (default), <code><b>lcc</b></code>, and <code><b>java</b></code>. The
+ <code><b>knr</b></code> value (stands for K&amp;R) signifies
+ the standard, lower-case naming convention with the underscore
+ used as a word delimiter, for example: <code>foo()</code>,
+ <code>foo_bar()</code>. The <code><b>lcc</b></code> value
+ (stands for lower-camel-case) signifies a naming convention
+ where the first letter of each word except the first is
+ capitalized, for example: <code>foo()</code>, <code>fooBar()</code>.
+ The <code><b>java</b></code> naming convention is similar to
+ the lower-camel-case one except that accessor functions are prefixed
+ with <code>get</code>, modifier functions are prefixed
+ with <code>set</code>, parsing functions are prefixed
+ with <code>parse</code>, and serialization functions are
+ prefixed with <code>serialize</code>, for example:
+ <code>getFoo()</code>, <code>setFooBar()</code>,
+ <code>parseRoot()</code>, <code>serializeRoot()</code>.</p>
+
+ <p>Note that the naming conventions specified with the
+ <code><b>--type-naming</b></code> and
+ <code><b>--function-naming</b></code> options perform only limited
+ transformations on the names that come from the schema in the
+ form of type, attribute, and element names. In other words, to
+ get consistent results, your schemas should follow a similar
+ naming convention as the one you would like to have in the
+ generated code. Alternatively, you can use the
+ <code><b>--*-regex</b></code> options (discussed below)
+ to perform further transformations on the names that come from
+ the schema.</p>
+
+ <p>The
+ <code><b>--type-regex</b></code>,
+ <code><b>--accessor-regex</b></code>,
+ <code><b>--one-accessor-regex</b></code>,
+ <code><b>--opt-accessor-regex</b></code>,
+ <code><b>--seq-accessor-regex</b></code>,
+ <code><b>--modifier-regex</b></code>,
+ <code><b>--one-modifier-regex</b></code>,
+ <code><b>--opt-modifier-regex</b></code>,
+ <code><b>--seq-modifier-regex</b></code>,
+ <code><b>--parser-regex</b></code>,
+ <code><b>--serializer-regex</b></code>,
+ <code><b>--const-regex</b></code>,
+ <code><b>--enumerator-regex</b></code>, and
+ <code><b>--element-type-regex</b></code> options allow you to
+ specify extra regular expressions for each name category in
+ addition to the predefined set that is added depending on
+ the <code><b>--type-naming</b></code> and
+ <code><b>--function-naming</b></code> options. Expressions
+ that are provided with the <code><b>--*-regex</b></code>
+ options are evaluated prior to any predefined expressions.
+ This allows you to selectively override some or all of the
+ predefined transformations. When debugging your own expressions,
+ it is often useful to see which expressions match which names.
+ The <code><b>--name-regex-trace</b></code> option allows you
+ to trace the process of applying regular expressions to
+ names.</p>
+
+ <p>The value for the <code><b>--*-regex</b></code> options should be
+ a perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
+ Any character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported.
+ All the regular expressions for each category are pushed into a
+ category-specific stack with the last specified expression
+ considered first. The first match that succeeds is used. For the
+ <code><b>--one-accessor-regex</b></code> (accessors with cardinality one),
+ <code><b>--opt-accessor-regex</b></code> (accessors with cardinality optional), and
+ <code><b>--seq-accessor-regex</b></code> (accessors with cardinality sequence)
+ categories the <code><b>--accessor-regex</b></code> expressions are
+ used as a fallback. For the
+ <code><b>--one-modifier-regex</b></code>,
+ <code><b>--opt-modifier-regex</b></code>, and
+ <code><b>--seq-modifier-regex</b></code>
+ categories the <code><b>--modifier-regex</b></code> expressions are
+ used as a fallback. For the <code><b>--element-type-regex</b></code>
+ category the <code><b>--type-regex</b></code> expressions are
+ used as a fallback.</p>
+
+ <p>The type name expressions (<code><b>--type-regex</b></code>)
+ are evaluated on the name string that has the following
+ format:</p>
+
+ <p><code>[<i>namespace</i> ]<i>name</i>[,<i>name</i>][,<i>name</i>][,<i>name</i>]</code></p>
+
+ <p>The element type name expressions
+ (<code><b>--element-type-regex</b></code>), effective only when
+ the <code><b>--generate-element-type</b></code> option is specified,
+ are evaluated on the name string that has the following
+ format:</p>
+
+ <p><code><i>namespace</i> <i>name</i></code></p>
+
+ <p>In the type name format the <code><i>namespace</i></code> part
+ followed by a space is only present for global type names. For
+ global types and elements defined in schemas without a target
+ namespace, the <code><i>namespace</i></code> part is empty but
+ the space is still present. In the type name format after the
+ initial <code><i>name</i></code> component, up to three additional
+ <code><i>name</i></code> components can be present, separated
+ by commas. For example:</p>
+
+ <p><code><b>http://example.com/hello type</b></code></p>
+ <p><code><b>foo</b></code></p>
+ <p><code><b>foo,iterator</b></code></p>
+ <p><code><b>foo,const,iterator</b></code></p>
+
+ <p>The following set of predefined regular expressions is used to
+ transform type names when the upper-camel-case naming convention
+ is selected:</p>
+
+ <p><code><b>/(?:[^ ]* )?([^,]+)/\u$1/</b></code></p>
+ <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+)/\u$1\u$2/</b></code></p>
+ <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+),([^,]+)/\u$1\u$2\u$3/</b></code></p>
+ <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+),([^,]+),([^,]+)/\u$1\u$2\u$3\u$4/</b></code></p>
+
+ <p>The accessor and modifier expressions
+ (<code><b>--*accessor-regex</b></code> and
+ <code><b>--*modifier-regex</b></code>) are evaluated on the name string
+ that has the following format:</p>
+
+ <p><code><i>name</i>[,<i>name</i>][,<i>name</i>]</code></p>
+
+ <p>After the initial <code><i>name</i></code> component, up to two
+ additional <code><i>name</i></code> components can be present,
+ separated by commas. For example:</p>
+
+ <p><code><b>foo</b></code></p>
+ <p><code><b>dom,document</b></code></p>
+ <p><code><b>foo,default,value</b></code></p>
+
+ <p>The following set of predefined regular expressions is used to
+ transform accessor names when the <code><b>java</b></code> naming
+ convention is selected:</p>
+
+ <p><code><b>/([^,]+)/get\u$1/</b></code></p>
+ <p><code><b>/([^,]+),([^,]+)/get\u$1\u$2/</b></code></p>
+ <p><code><b>/([^,]+),([^,]+),([^,]+)/get\u$1\u$2\u$3/</b></code></p>
+
+ <p>For the parser, serializer, and enumerator categories, the
+ corresponding regular expressions are evaluated on local names of
+ elements and on enumeration values, respectively. For example, the
+ following predefined regular expression is used to transform parsing
+ function names when the <code><b>java</b></code> naming convention
+ is selected:</p>
+
+ <p><code><b>/(.+)/parse\u$1/</b></code></p>
+
+ <p>The const category is used to create C++ constant names for the
+ element/wildcard/text content ids in ordered types.</p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p>
+
+ <h1>TYPE MAP</h1>
+
+ <p>Type map files are used in C++/Parser to define a mapping between
+ XML Schema and C++ types. The compiler uses this information
+ to determine the return types of <code><b>post_*</b></code>
+ functions in parser skeletons corresponding to XML Schema
+ types as well as argument types for callbacks corresponding
+ to elements and attributes of these types.</p>
+
+ <p>The compiler has a set of predefined mapping rules that map
+ built-in XML Schema types to suitable C++ types (discussed
+ below) and all other types to <code><b>void</b></code>.
+ By providing your own type maps you can override these predefined
+ rules. The format of the type map file is presented below:
+ </p>
+
+ <pre>
+namespace &lt;schema-namespace> [&lt;cxx-namespace>]
+{
+ (include &lt;file-name>;)*
+ ([type] &lt;schema-type> &lt;cxx-ret-type> [&lt;cxx-arg-type>];)*
+}
+ </pre>
+
+ <p>Both <code><i>&lt;schema-namespace></i></code> and
+ <code><i>&lt;schema-type></i></code> are regex patterns while
+ <code><i>&lt;cxx-namespace></i></code>,
+ <code><i>&lt;cxx-ret-type></i></code>, and
+ <code><i>&lt;cxx-arg-type></i></code> are regex pattern
+ substitutions. All names can be optionally enclosed in
+ <code><b>" "</b></code>, for example, to include white-spaces.</p>
+
+ <p><code><i>&lt;schema-namespace></i></code> determines XML
+ Schema namespace. Optional <code><i>&lt;cxx-namespace></i></code>
+ is prefixed to every C++ type name in this namespace declaration.
+ <code><i>&lt;cxx-ret-type></i></code> is a C++ type name that is
+ used as a return type for the <code><b>post_*</b></code> functions.
+ Optional <code><i>&lt;cxx-arg-type></i></code> is an argument
+ type for callback functions corresponding to elements and attributes
+ of this type. If
+ <code><i>&lt;cxx-arg-type></i></code> is not specified, it defaults
+ to <code><i>&lt;cxx-ret-type></i></code> if <code><i>&lt;cxx-ret-type></i></code>
+ ends with <code><b>*</b></code> or <code><b>&amp;</b></code> (that is,
+ it is a pointer or a reference) and
+ <code><b>const</b>&nbsp;<i>&lt;cxx-ret-type></i><b>&amp;</b></code>
+ otherwise.
+ <code><i>&lt;file-name></i></code> is a file name either in the
+ <code><b>" "</b></code> or <code><b>&lt; ></b></code> format
+ and is added with the <code><b>#include</b></code> directive to
+ the generated code.</p>
+
+ <p>The <code><b>#</b></code> character starts a comment that ends
+ with a new line or end of file. To specify a name that contains
+ <code><b>#</b></code> enclose it in <code><b>" "</b></code>.
+ For example:</p>
+
+ <pre>
+namespace http://www.example.com/xmlns/my my
+{
+ include "my.hxx";
+
+ # Pass apples by value.
+ #
+ apple apple;
+
+ # Pass oranges as pointers.
+ #
+ orange orange_t*;
+}
+ </pre>
+
+ <p>In the example above, for the
+ <code><b>http://www.example.com/xmlns/my#orange</b></code>
+ XML Schema type, the <code><b>my::orange_t*</b></code> C++ type will
+ be used as both return and argument types.</p>
+
+ <p>Several namespace declarations can be specified in a single
+ file. The namespace declaration can also be completely
+ omitted to map types in a schema without a namespace. For
+ instance:</p>
+
+ <pre>
+include "my.hxx";
+apple apple;
+
+namespace http://www.example.com/xmlns/my
+{
+ orange "const orange_t*";
+}
+ </pre>
+
+ <p>The compiler has a number of predefined mapping rules that can be
+ presented as the following map files. The string-based XML Schema
+ built-in types are mapped to either <code><b>std::string</b></code>
+ or <code><b>std::wstring</b></code> depending on the character type
+ selected with the <code><b>--char-type</b></code> option
+ (<code><b>char</b></code> by default).</p>
+
+ <pre>
+namespace http://www.w3.org/2001/XMLSchema
+{
+ boolean bool bool;
+
+ byte "signed char" "signed char";
+ unsignedByte "unsigned char" "unsigned char";
+
+ short short short;
+ unsignedShort "unsigned short" "unsigned short";
+
+ int int int;
+ unsignedInt "unsigned int" "unsigned int";
+
+ long "long long" "long long";
+ unsignedLong "unsigned long long" "unsigned long long";
+
+ integer "long long" "long long";
+
+ negativeInteger "long long" "long long";
+ nonPositiveInteger "long long" "long long";
+
+ positiveInteger "unsigned long long" "unsigned long long";
+ nonNegativeInteger "unsigned long long" "unsigned long long";
+
+ float float float;
+ double double double;
+ decimal double double;
+
+ string std::string;
+ normalizedString std::string;
+ token std::string;
+ Name std::string;
+ NMTOKEN std::string;
+ NCName std::string;
+ ID std::string;
+ IDREF std::string;
+ language std::string;
+ anyURI std::string;
+
+ NMTOKENS xml_schema::string_sequence;
+ IDREFS xml_schema::string_sequence;
+
+ QName xml_schema::qname;
+
+ base64Binary std::auto_ptr&lt;xml_schema::buffer>
+ std::auto_ptr&lt;xml_schema::buffer>;
+ hexBinary std::auto_ptr&lt;xml_schema::buffer>
+ std::auto_ptr&lt;xml_schema::buffer>;
+
+ date xml_schema::date;
+ dateTime xml_schema::date_time;
+ duration xml_schema::duration;
+ gDay xml_schema::gday;
+ gMonth xml_schema::gmonth;
+ gMonthDay xml_schema::gmonth_day;
+ gYear xml_schema::gyear;
+ gYearMonth xml_schema::gyear_month;
+ time xml_schema::time;
+}
+ </pre>
+
+ <p>The last predefined rule maps anything that wasn't mapped by
+ previous rules to <code><b>void</b></code>:</p>
+
+ <pre>
+namespace .*
+{
+ .* void void;
+}
+ </pre>
+
+
+ <p>When you provide your own type maps with the
+ <code><b>--type-map</b></code> option, they are evaluated first.
+ This allows you to selectively override predefined rules.</p>
+
+ <h1>REGEX AND SHELL QUOTING</h1>
+
+ <p>When entering a regular expression argument in the shell
+ command line it is often necessary to use quoting (enclosing
+ the argument in <code><b>"&nbsp;"</b></code> or
+ <code><b>'&nbsp;'</b></code>) in order to prevent the shell
+ from interpreting certain characters, for example, spaces as
+ argument separators and <code><b>$</b></code> as variable
+ expansions.</p>
+
+ <p>Unfortunately it is hard to achieve this in a manner that is
+ portable across POSIX shells, such as those found on
+ GNU/Linux and UNIX, and Windows shell. For example, if you
+ use <code><b>"&nbsp;"</b></code> for quoting you will get a
+ wrong result with POSIX shells if your expression contains
+ <code><b>$</b></code>. The standard way of dealing with this
+ on POSIX systems is to use <code><b>'&nbsp;'</b></code> instead.
+ Unfortunately, Windows shell does not remove <code><b>'&nbsp;'</b></code>
+ from arguments when they are passed to applications. As a result you
+ may have to use <code><b>'&nbsp;'</b></code> for POSIX and
+ <code><b>"&nbsp;"</b></code> for Windows (<code><b>$</b></code> is
+ not treated as a special character on Windows).</p>
+
+ <p>Alternatively, you can save regular expression options into
+ a file, one option per line, and use this file with the
+ <code><b>--options-file</b></code> option. With this approach
+ you don't need to worry about shell quoting.</p>
+
+ <h1>DIAGNOSTICS</h1>
+
+ <p>If the input file is not a valid W3C XML Schema definition,
+ <code><b>xsd</b></code> will issue diagnostic messages to STDERR
+ and exit with non-zero exit code.</p>
+
+ <h1>BUGS</h1>
+
+ <p>Send bug reports to the
+ <a href="mailto:xsd-users@codesynthesis.com">xsd-users@codesynthesis.com</a> mailing list.</p>
+
+ </div>
+ <div id="footer">
+ &copy;2005-2014 <a href="http://codesynthesis.com">CODE SYNTHESIS TOOLS CC</a>
+
+ <div id="terms">
+ Permission is granted to copy, distribute and/or modify this
+ document under the terms of the
+ <a href="http://codesynthesis.com/licenses/fdl-1.2.txt">GNU Free
+ Documentation License, version 1.2</a>; with no Invariant Sections,
+ no Front-Cover Texts and no Back-Cover Texts.
+ </div>
+ </div>
+</div>
+</body>
+</html>
diff --git a/xsd/doc/xsd-parser-header.1 b/xsd/doc/xsd-parser-header.1
new file mode 100644
index 0000000..e0cf84e
--- /dev/null
+++ b/xsd/doc/xsd-parser-header.1
@@ -0,0 +1,4 @@
+\"
+\" C++/Parser
+\"
+.SS cxx-parser command options
diff --git a/xsd/doc/xsd-parser-header.xhtml b/xsd/doc/xsd-parser-header.xhtml
new file mode 100644
index 0000000..94fa2c1
--- /dev/null
+++ b/xsd/doc/xsd-parser-header.xhtml
@@ -0,0 +1 @@
+ <h2>CXX-PARSER COMMAND OPTIONS</h2>
diff --git a/xsd/doc/xsd-prologue.1 b/xsd/doc/xsd-prologue.1
new file mode 100644
index 0000000..f5c93b8
--- /dev/null
+++ b/xsd/doc/xsd-prologue.1
@@ -0,0 +1,119 @@
+.\" Process this file with
+.\" groff -man -Tascii xsd.1
+.\"
+.TH XSD 1 "July 2014" "XSD 4.0.0"
+.SH NAME
+xsd \- W3C XML Schema to C++ Compiler
+.\"
+.\"
+.\"
+.\"--------------------------------------------------------------------
+.SH SYNOPSIS
+.\"--------------------------------------------------------------------
+.B xsd
+.I command
+.B [
+.I options
+.B ]
+.I file
+.B [
+.I file
+.B ...]
+.in
+.B xsd help
+.B [
+.I command
+.B ]
+.in
+.B xsd version
+.\"
+.\"
+.\"
+.\"--------------------------------------------------------------------
+.SH DESCRIPTION
+.\"--------------------------------------------------------------------
+.B xsd
+generates vocabulary-specific, statically-typed C++ mapping from W3C XML
+Schema definitions. Particular mapping to produce is selected by a
+.IR command .
+Each mapping has a number of mapping-specific
+.I options
+that should appear, if any, after the
+.IR command .
+Input files should be W3C XML Schema definitions. The exact set of the
+generated files depends on the selected mapping and options.
+.\"
+.\"
+.\"
+.\"--------------------------------------------------------------------
+.SH COMMANDS
+.\"--------------------------------------------------------------------
+.IP \fBcxx-tree\fR
+Generate the C++/Tree mapping. For each input file in the form
+.B name.xsd
+the following C++ files are generated:
+.B name.hxx
+(header file),
+.B name.ixx
+(inline file, generated only if the
+.B --generate-inline
+option is specified),
+.B name.cxx
+(source file), and
+.B name-fwd.hxx
+(forward declaration file, generated only if the
+.B --generate-forward
+option is specified).
+
+.IP \fBcxx-parser\fR
+Generate the C++/Parser mapping. For each input file in the form
+.B name.xsd
+the following C++ files are generated:
+.B name-pskel.hxx
+(parser skeleton header file),
+.B name-pskel.ixx
+(parser skeleton inline file, generated only if the
+.B --generate-inline
+option is specified), and
+.B name-pskel.cxx
+(parser skeleton source file). If the
+.B --generate-noop-impl
+or
+.B --generate-print-impl
+option is specified, the following additional sample implementation files
+are generated:
+.B name-pimpl.hxx
+(parser implementation header file) and
+.B name-pimpl.cxx
+(parser implementation source file). If the
+.B --generate-test-driver
+option is specified, the additional
+.B name-driver.cxx
+test driver file is generated.
+
+.IP \fBhelp\fR
+Print usage information and exit. Use
+.PP
+.RS
+.RS 3
+.B xsd help
+.I command
+.RE
+.PP
+for command-specific help.
+.RE
+.IP \fBversion\fR
+Print version and exit.
+.\"--------------------------------------------------------------------
+.SH OPTIONS
+.\"--------------------------------------------------------------------
+Command-specific
+.IR options ,
+if any, should appear after the corresponding
+.IR command .
+
+.\"
+.\" Common options.
+.\"
+.SS common options
+.
diff --git a/xsd/doc/xsd-prologue.xhtml b/xsd/doc/xsd-prologue.xhtml
new file mode 100644
index 0000000..4be8de7
--- /dev/null
+++ b/xsd/doc/xsd-prologue.xhtml
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+
+<head>
+ <title>XSD 4.0.0 Compiler Command Line Manual</title>
+
+ <meta name="copyright" content="&copy; 2005-2014 Code Synthesis Tools CC"/>
+ <meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,code,generator,manual,man,page"/>
+ <meta name="description" content="XSD Compiler Command Line Manual"/>
+
+ <link rel="stylesheet" type="text/css" href="default.css" />
+
+<style type="text/css">
+
+ #synopsis {
+ list-style-type: none;
+ }
+
+ #synopsis li {
+ padding-top : 0.0em;
+ padding-bottom : 0.0em;
+ }
+
+ #commands dt {
+ padding-top : 0.4em;
+ }
+
+ #commands dd {
+ padding-bottom : 0.4em;
+ padding-left : 2em;
+ }
+
+ .options dt {
+ padding-top : 0.4em;
+ }
+
+ .options dd {
+ padding-top : 0.1em;
+ padding-bottom : 0.4em;
+ padding-left : 1.4em;
+ }
+
+</style>
+</head>
+
+<body>
+<div id="container">
+ <div id="content">
+
+ <h1>NAME</h1>
+
+ <p>xsd - W3C XML Schema to C++ Compiler</p>
+
+ <h1>SYNOPSIS</h1>
+
+ <dl id="synopsis">
+ <dt><code><b>xsd</b> <i>command</i> [<i>options</i>] <i>file</i> [<i>file</i> ...]</code></dt>
+ <dt><code><b>xsd help</b> [<i>command</i>]</code></dt>
+ <dt><code><b>xsd version</b></code></dt>
+ </dl>
+
+ <h1>DESCRIPTION</h1>
+
+ <p><code><b>xsd</b></code> generates vocabulary-specific, statically-typed
+ C++ mapping from W3C XML Schema definitions. Particular mapping to
+ produce is selected by a <code><i>command</i></code>. Each mapping has
+ a number of mapping-specific <code><i>options</i></code> that should
+ appear, if any, after the <code><i>command</i></code>. Input files should
+ be W3C XML Schema definitions. The exact set of the generated files depends
+ on the selected mapping and options.</p>
+
+ <h1>COMMANDS</h1>
+
+ <dl id="commands">
+ <dt><code><b>cxx-tree</b></code></dt>
+ <dd>Generate the C++/Tree mapping. For each input file in the form
+ <code><b>name.xsd</b></code> the following C++ files are generated:
+ <code><b>name.hxx</b></code> (header file),
+ <code><b>name.ixx</b></code> (inline file, generated only if the
+ <code><b>--generate-inline</b></code> option is specified),
+ <code><b>name.cxx</b></code> (source file), and
+ <code><b>name-fwd.hxx</b></code> (forward declaration file, generated
+ only if the <code><b>--generate-forward</b></code> option is
+ specified).</dd>
+
+ <dt><code><b>cxx-parser</b></code></dt>
+ <dd>Generate the C++/Parser mapping. For each input file in the form
+ <code><b>name.xsd</b></code> the following C++ files are generated:
+ <code><b>name-pskel.hxx</b></code> (parser skeleton header file),
+ <code><b>name-pskel.ixx</b></code> (parser skeleton inline file,
+ generated only if the <code><b>--generate-inline</b></code>
+ option is specified), and
+ <code><b>name-pskel.cxx</b></code> (parser skeleton source file).
+ If the <code><b>--generate-noop-impl</b></code> or
+ <code><b>--generate-print-impl</b></code> option is specified,
+ the following additional sample implementation files are generated:
+ <code><b>name-pimpl.hxx</b></code> (parser implementation header
+ file) and
+ <code><b>name-pimpl.cxx</b></code> (parser implementation source
+ file). If the <code><b>--generate-test-driver</b></code> option
+ is specified, the additional <code><b>name-driver.cxx</b></code>
+ test driver file is generated.</dd>
+
+ <dt><code><b>help</b></code></dt>
+ <dd>Print usage information and exit. Use
+ <p><code><b>xsd help</b> <i>command</i></code></p>
+ for command-specific help.
+ </dd>
+
+ <dt><code><b>version</b></code></dt>
+ <dd>Print version and exit.</dd>
+ </dl>
+
+ <h1>OPTIONS</h1>
+
+ <p>Command-specific <code><i>options</i></code>, if any, should appear
+ after the corresponding <code><i>command</i></code>.</p>
+
+ <h2>COMMON OPTIONS</h2>
diff --git a/xsd/doc/xsd-tree-header.1 b/xsd/doc/xsd-tree-header.1
new file mode 100644
index 0000000..b9146a7
--- /dev/null
+++ b/xsd/doc/xsd-tree-header.1
@@ -0,0 +1,4 @@
+.\"
+.\" C++/Tree options.
+.\"
+.SS cxx-tree command options
diff --git a/xsd/doc/xsd-tree-header.xhtml b/xsd/doc/xsd-tree-header.xhtml
new file mode 100644
index 0000000..73f9c99
--- /dev/null
+++ b/xsd/doc/xsd-tree-header.xhtml
@@ -0,0 +1 @@
+ <h2>CXX-TREE COMMAND OPTIONS</h2>
diff --git a/xsd/doc/xsd.1 b/xsd/doc/xsd.1
new file mode 100644
index 0000000..dc5b38a
--- /dev/null
+++ b/xsd/doc/xsd.1
@@ -0,0 +1,1648 @@
+.\" Process this file with
+.\" groff -man -Tascii xsd.1
+.\"
+.TH XSD 1 "July 2014" "XSD 4.0.0"
+.SH NAME
+xsd \- W3C XML Schema to C++ Compiler
+.\"
+.\"
+.\"
+.\"--------------------------------------------------------------------
+.SH SYNOPSIS
+.\"--------------------------------------------------------------------
+.B xsd
+.I command
+.B [
+.I options
+.B ]
+.I file
+.B [
+.I file
+.B ...]
+.in
+.B xsd help
+.B [
+.I command
+.B ]
+.in
+.B xsd version
+.\"
+.\"
+.\"
+.\"--------------------------------------------------------------------
+.SH DESCRIPTION
+.\"--------------------------------------------------------------------
+.B xsd
+generates vocabulary-specific, statically-typed C++ mapping from W3C XML
+Schema definitions. Particular mapping to produce is selected by a
+.IR command .
+Each mapping has a number of mapping-specific
+.I options
+that should appear, if any, after the
+.IR command .
+Input files should be W3C XML Schema definitions. The exact set of the
+generated files depends on the selected mapping and options.
+.\"
+.\"
+.\"
+.\"--------------------------------------------------------------------
+.SH COMMANDS
+.\"--------------------------------------------------------------------
+.IP \fBcxx-tree\fR
+Generate the C++/Tree mapping. For each input file in the form
+.B name.xsd
+the following C++ files are generated:
+.B name.hxx
+(header file),
+.B name.ixx
+(inline file, generated only if the
+.B --generate-inline
+option is specified),
+.B name.cxx
+(source file), and
+.B name-fwd.hxx
+(forward declaration file, generated only if the
+.B --generate-forward
+option is specified).
+
+.IP \fBcxx-parser\fR
+Generate the C++/Parser mapping. For each input file in the form
+.B name.xsd
+the following C++ files are generated:
+.B name-pskel.hxx
+(parser skeleton header file),
+.B name-pskel.ixx
+(parser skeleton inline file, generated only if the
+.B --generate-inline
+option is specified), and
+.B name-pskel.cxx
+(parser skeleton source file). If the
+.B --generate-noop-impl
+or
+.B --generate-print-impl
+option is specified, the following additional sample implementation files
+are generated:
+.B name-pimpl.hxx
+(parser implementation header file) and
+.B name-pimpl.cxx
+(parser implementation source file). If the
+.B --generate-test-driver
+option is specified, the additional
+.B name-driver.cxx
+test driver file is generated.
+
+.IP \fBhelp\fR
+Print usage information and exit. Use
+.PP
+.RS
+.RS 3
+.B xsd help
+.I command
+.RE
+.PP
+for command-specific help.
+.RE
+.IP \fBversion\fR
+Print version and exit.
+.\"--------------------------------------------------------------------
+.SH OPTIONS
+.\"--------------------------------------------------------------------
+Command-specific
+.IR options ,
+if any, should appear after the corresponding
+.IR command .
+
+.\"
+.\" Common options.
+.\"
+.SS common options
+.
+.\"
+.\" The following documentation was generated by CLI, a command
+.\" line interface compiler for C++.
+.\"
+.IP "\fB--std\fP \fIversion\fP"
+Specify the C++ standard that the generated code should conform to\. Valid
+values are \fBc++98\fP (default) and \fBc++11\fP\.
+
+The C++ standard affects various aspects of the generated code that are
+discussed in more detail in various mapping-specific documentation\.
+Overall, when C++11 is selected, the generated code relies on the move
+semantics and uses \fBstd::unique_ptr\fP instead of deprecated
+\fBstd::auto_ptr\fP\.
+
+When the C++11 mode is selected, you normally don't need to perform any
+extra steps other than enable C++11 in your C++ compiler, if required\. The
+XSD compiler will automatically add the necessary macro defines to the
+generated header files that will switch the header-only XSD runtime library
+(\fBlibxsd\fP) to the C++11 mode\. However, if you include any of the XSD
+runtime headers directly in your application (normally you just include the
+generated headers), then you will need to define the \fBXSD_CXX11\fP macro
+for your entire project\.
+
+.IP "\fB--char-type\fP \fItype\fP"
+Generate code using the provided character \fItype\fP instead of the default
+\fBchar\fP\. Valid values are \fBchar\fP and \fBwchar_t\fP\.
+
+.IP "\fB--char-encoding\fP \fIenc\fP"
+Specify the character encoding that should be used in the generated code\.
+Valid values for the \fBchar\fP character type are \fButf8\fP (default),
+\fBiso8859-1\fP, \fBlcp\fP (Xerces-C++ local code page), and \fBcustom\fP\.
+If you pass \fBcustom\fP as the value then you will need to include the
+transcoder implementation header for your encoding at the beginning of the
+generated header files (see the \fB--hxx-prologue\fP option)\.
+
+For the \fBwchar_t\fP character type the only valid value is \fBauto\fP and
+the encoding is automatically selected between UTF-16 and UTF-32/UCS-4,
+depending on the \fBwchar_t\fP type size\.
+
+.IP "\fB--output-dir\fP \fIdir\fP"
+Write generated files to \fIdir\fP instead of the current directory\.
+
+.IP "\fB--generate-inline\fP"
+Generate simple functions inline\. This option triggers creation of the
+inline file\.
+
+.IP "\fB--generate-xml-schema\fP"
+Generate a C++ header file as if the schema being compiled defines the XML
+Schema namespace\. For the C++/Tree mapping, the resulting file will contain
+definitions for all XML Schema built-in types\. For the C++/Parser mapping,
+the resulting file will contain definitions for all the parser skeletons and
+implementations corresponding to the XML Schema built-in types\.
+
+The schema file provided to the compiler need not exist and is only used to
+derive the name of the resulting header file\. Use the
+\fB--extern-xml-schema\fP option to include this file in the generated files
+for other schemas\.
+
+.IP "\fB--extern-xml-schema\fP \fIfile\fP"
+Include a header file derived from \fIfile\fP instead of generating the XML
+Schema namespace mapping inline\. The provided file need not exist and is
+only used to derive the name of the included header file\. Use the
+\fB--generate-xml-schema\fP option to generate this header file\.
+
+.IP "\fB--namespace-map\fP \fIxns\fP=\fIcns\fP"
+Map XML Schema namespace \fIxns\fP to C++ namespace \fIcns\fP\. Repeat this
+option to specify mapping for more than one XML Schema namespace\. For
+example, the following option:
+
+\fB--namespace-map http://example\.com/foo/bar=foo::bar\fP
+
+Will map the \fBhttp://example\.com/foo/bar\fP XML Schema namespace to the
+\fBfoo::bar\fP C++ namespace\.
+
+.IP "\fB--namespace-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema namespace names to C++ namespace names\. \fIregex\fP is a Perl-like
+regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. Any character can be
+used as a delimiter instead of \fB/\fP\. Escaping of the delimiter character
+in \fIpattern\fP or \fIreplacement\fP is not supported\.
+
+All the regular expressions are pushed into a stack with the last specified
+expression considered first\. The first match that succeeds is used\.
+Regular expressions are applied to a string in the form
+
+\fIfilename\fP \fInamespace\fP
+
+For example, if you have file \fBhello\.xsd\fP with namespace
+\fBhttp://example\.com/hello\fP and you run \fBxsd\fP on this file, then the
+string in question will be:
+
+\fBhello\.xsd\. http://example\.com/hello\fP
+
+For the built-in XML Schema namespace the string is:
+
+\fBXMLSchema\.xsd http://www\.w3\.org/2001/XMLSchema\fP
+
+The following three steps are performed for each regular expression until
+the match is found:
+
+1\. The expression is applied and if the result is empty the next expression
+is considered\.
+
+2\. All \fB/\fP are replaced with \fB::\fP\.
+
+3\. The result is verified to be a valid C++ scope name (e\.g\.,
+\fBfoo::bar\fP)\. If this test succeeds, the result is used as a C++
+namespace name\.
+
+As an example, the following expression maps XML Schema namespaces in the
+form \fBhttp://example\.com/foo/bar\fP to C++ namespaces in the form
+\fBfoo::bar\fP:
+
+\fB%\.* http://example\.com/(\.+)%$1%\fP
+
+See also the REGEX AND SHELL QUOTING section below\.
+
+.IP "\fB--namespace-regex-trace\fP"
+Trace the process of applying regular expressions specified with the
+\fB--namespace-regex\fP option\. Use this option to find out why your
+regular expressions don't do what you expected them to do\.
+
+.IP "\fB--reserved-name\fP \fIn\fP[=\fIr\fP]"
+Add name \fIn\fP to the list of names that should not be used as
+identifiers\. The name can optionally be followed by \fB=\fP and the
+replacement name \fIr\fP that should be used instead\. All the C++ keywords
+are already in this list\.
+
+.IP "\fB--include-with-brackets\fP"
+Use angle brackets (<>) instead of quotes ("") in generated \fB#include\fP
+directives\.
+
+.IP "\fB--include-prefix\fP \fIprefix\fP"
+Add \fIprefix\fP to generated \fB#include\fP directive paths\.
+
+For example, if you had the following import element in your schema
+
+\fB<import namespace="\.\.\." schemaLocation="base\.xsd"/>\fP
+
+and compiled this fragment with \fB--include-prefix schemas/\fP, then the
+include directive in the generated code would be:
+
+\fB#include "schemas/base\.hxx"\fP
+
+.IP "\fB--include-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to transform
+\fB#include\fP directive paths\. \fIregex\fP is a Perl-like regular
+expression in the form \fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\.
+Any character can be used as a delimiter instead of \fB/\fP\. Escaping of
+the delimiter character in \fIpattern\fP or \fIreplacement\fP is not
+supported\.
+
+All the regular expressions are pushed into a stack with the last specified
+expression considered first\. The first match that succeeds is used\.
+
+As an example, the following expression transforms paths in the form
+\fBschemas/foo/bar\fP to paths in the form \fBgenerated/foo/bar\fP:
+
+\fB%schemas/(\.+)%generated/$1%\fP
+
+See also the REGEX AND SHELL QUOTING section below\.
+
+.IP "\fB--include-regex-trace\fP"
+Trace the process of applying regular expressions specified with the
+\fB--include-regex\fP option\. Use this option to find out why your regular
+expressions don't do what you expected them to do\.
+
+.IP "\fB--guard-prefix\fP \fIprefix\fP"
+Add \fIprefix\fP to generated header inclusion guards\. The prefix is
+transformed to upper case and characters that are illegal in a preprocessor
+macro name are replaced with underscores\. If this option is not specified
+then the directory part of the input schema file is used as a prefix\.
+
+.IP "\fB--hxx-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB\.hxx\fP to
+construct the name of the header file\. Note that this suffix is also used
+to construct names of header files corresponding to included/imported
+schemas\.
+
+.IP "\fB--ixx-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB\.ixx\fP to
+construct the name of the inline file\.
+
+.IP "\fB--cxx-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB\.cxx\fP to
+construct the name of the source file\.
+
+.IP "\fB--fwd-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB-fwd\.hxx\fP to
+construct the name of the forward declaration file\.
+
+.IP "\fB--hxx-regex\fP \fIregex\fP"
+Use the provided expression to construct the name of the header file\.
+\fIregex\fP is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. Note that this
+expression is also used to construct names of header files corresponding to
+included/imported schemas\. See also the REGEX AND SHELL QUOTING section
+below\.
+
+.IP "\fB--ixx-regex\fP \fIregex\fP"
+Use the provided expression to construct the name of the inline file\.
+\fIregex\fP is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. See also the REGEX AND
+SHELL QUOTING section below\.
+
+.IP "\fB--cxx-regex\fP \fIregex\fP"
+Use the provided expression to construct the name of the source file\.
+\fIregex\fP is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. See also the REGEX AND
+SHELL QUOTING section below\.
+
+.IP "\fB--fwd-regex\fP \fIregex\fP"
+Use the provided expression to construct the name of the forward declaration
+file\. \fIregex\fP is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. See also the REGEX AND
+SHELL QUOTING section below\.
+
+.IP "\fB--hxx-prologue\fP \fItext\fP"
+Insert \fItext\fP at the beginning of the header file\.
+
+.IP "\fB--ixx-prologue\fP \fItext\fP"
+Insert \fItext\fP at the beginning of the inline file\.
+
+.IP "\fB--cxx-prologue\fP \fItext\fP"
+Insert \fItext\fP at the beginning of the source file\.
+
+.IP "\fB--fwd-prologue\fP \fItext\fP"
+Insert \fItext\fP at the beginning of the forward declaration file\.
+
+.IP "\fB--prologue\fP \fItext\fP"
+Insert \fItext\fP at the beginning of each generated file for which there is
+no file-specific prologue\.
+
+.IP "\fB--hxx-epilogue\fP \fItext\fP"
+Insert \fItext\fP at the end of the header file\.
+
+.IP "\fB--ixx-epilogue\fP \fItext\fP"
+Insert \fItext\fP at the end of the inline file\.
+
+.IP "\fB--cxx-epilogue\fP \fItext\fP"
+Insert \fItext\fP at the end of the source file\.
+
+.IP "\fB--fwd-epilogue\fP \fItext\fP"
+Insert \fItext\fP at the end of the forward declaration file\.
+
+.IP "\fB--epilogue\fP \fItext\fP"
+Insert \fItext\fP at the end of each generated file for which there is no
+file-specific epilogue\.
+
+.IP "\fB--hxx-prologue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the beginning of the header file\.
+
+.IP "\fB--ixx-prologue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the beginning of the inline file\.
+
+.IP "\fB--cxx-prologue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the beginning of the source file\.
+
+.IP "\fB--fwd-prologue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the beginning of the forward
+declaration file\.
+
+.IP "\fB--prologue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the beginning of each generated file
+for which there is no file-specific prologue file\.
+
+.IP "\fB--hxx-epilogue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the end of the header file\.
+
+.IP "\fB--ixx-epilogue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the end of the inline file\.
+
+.IP "\fB--cxx-epilogue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the end of the source file\.
+
+.IP "\fB--fwd-epilogue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the end of the forward declaration
+file\.
+
+.IP "\fB--epilogue-file\fP \fIfile\fP"
+Insert the content of the \fIfile\fP at the end of each generated file for
+which there is no file-specific epilogue file\.
+
+.IP "\fB--export-symbol\fP \fIsymbol\fP"
+Insert \fIsymbol\fP in places where DLL export/import control statements
+(\fB__declspec(dllexport/dllimport)\fP) are necessary\.
+
+.IP "\fB--export-xml-schema\fP"
+Export/import types in the XML Schema namespace using the export symbol
+provided with the \fB--export-symbol\fP option\. The \fBXSD_NO_EXPORT\fP
+macro can be used to omit this code during C++ compilation, which may be
+useful if you would like to use the same generated code across multiple
+platforms\.
+
+.IP "\fB--export-maps\fP"
+Export polymorphism support maps from a Win32 DLL into which this generated
+code is placed\. This is necessary when your type hierarchy is split across
+several DLLs since otherwise each DLL will have its own set of maps\. In
+this situation the generated code for the DLL which contains base types
+and/or substitution group heads should be compiled with this option and the
+generated code for all other DLLs should be compiled with
+\fB--import-maps\fP\. This option is only valid together with
+\fB--generate-polymorphic\fP\. The \fBXSD_NO_EXPORT\fP macro can be used to
+omit this code during C++ compilation, which may be useful if you would like
+to use the same generated code across multiple platforms\.
+
+.IP "\fB--import-maps\fP"
+Import polymorphism support maps to a Win32 DLL or executable into which
+this generated code is linked\. See the \fB--export-maps\fP option
+documentation for details\. This options is only valid together with
+\fB--generate-polymorphic\fP\. The \fBXSD_NO_EXPORT\fP macro can be used to
+omit this code during C++ compilation, which may be useful if you would like
+to use the same generated code across multiple platforms\.
+
+.IP "\fB--generate-dep\fP"
+Generate \fBmake\fP dependency information\. This option triggers the
+creation of the \fB\.d\fP file containing the dependencies of the generated
+files on the main schema file as well as all the schema files that it
+includes/imports, transitively\. This dependency file is then normally
+included into the main \fBmakefile\fP to implement automatic dependency
+tracking\.
+
+Note also that automatic dependency generation is not supported in the
+file-per-type mode (\fB--file-per-type\fP)\. In this case, all the generated
+files are produced with a single compiler invocation and depend on all the
+schemas\. As a result, it is easier to establish such a dependency manually,
+perhaps with the help of the \fB--file-list*\fP options\.
+
+.IP "\fB--generate-dep-only\fP"
+Generate \fBmake\fP dependency information only\.
+
+.IP "\fB--dep-phony\fP"
+Generate phony targets for included/imported schema files, causing each to
+depend on nothing\. Such dummy rules work around \fBmake\fP errors caused by
+the removal of schema files without also updating the dependency file to
+match\.
+
+.IP "\fB--dep-target\fP \fItarget\fP"
+Change the target of the dependency rule\. By default it contains all the
+generated C++ files as well as the dependency file itself, without any
+directory prefixes\. If you require multiple targets, then you can specify
+them as a single, space-separated argument or you can repeat this option
+multiple times\.
+
+.IP "\fB--dep-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB\.d\fP to construct
+the name of the dependency file\.
+
+.IP "\fB--dep-regex\fP \fIregex\fP"
+Use the provided expression to construct the name of the dependency file\.
+\fIregex\fP is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. See also the REGEX AND
+SHELL QUOTING section below\.
+
+.IP "\fB--disable-warning\fP \fIwarn\fP"
+Disable printing warning with id \fIwarn\fP\. If \fBall\fP is specified for
+the warning id then all warnings are disabled\.
+
+.IP "\fB--options-file\fP \fIfile\fP"
+Read additional options from \fIfile\fP\. Each option should appearing on a
+separate line optionally followed by space and an option value\. Empty lines
+and lines starting with \fB#\fP are ignored\. Option values can be enclosed
+in double (\fB"\fP) or single (\fB'\fP) quotes to preserve leading and
+trailing whitespaces as well as to specify empty values\. If the value
+itself contains trailing or leading quotes, enclose it with an extra pair of
+quotes, for example \fB'"x"'\fP\. Non-leading and non-trailing quotes are
+interpreted as being part of the option value\.
+
+The semantics of providing options in a file is equivalent to providing the
+same set of options in the same order on the command line at the point where
+the \fB--options-file\fP option is specified except that the shell escaping
+and quoting is not required\. You can repeat this option to specify more
+than one options file\.
+
+.IP "\fB--show-sloc\fP"
+Show the number of generated physical source lines of code (SLOC)\.
+
+.IP "\fB--sloc-limit\fP \fInum\fP"
+Check that the number of generated physical source lines of code (SLOC) does
+not exceed \fInum\fP\.
+
+.IP "\fB--proprietary-license\fP"
+Indicate that the generated code is licensed under a proprietary license
+instead of the GPL\.
+
+.IP "\fB--custom-literals\fP \fIfile\fP"
+Load custom XML string to C++ literal mappings from \fIfile\fP\. This
+mechanism can be useful if you are using a custom character encoding and
+some of the strings in your schemas, for example element/attribute names or
+enumeration values, contain non-ASCII characters\. In this case you will
+need to provide a custom mapping to C++ literals for such strings\. The
+format of this file is specified in the \fBcustom-literals\.xsd\fP XML
+Schema file that can be found in the documentation directory\.
+
+.IP "\fB--preserve-anonymous\fP"
+Preserve anonymous types\. By default anonymous types are automatically
+named with names derived from the enclosing elements/attributes\. Because
+mappings implemented by this compiler require all types to be named, this
+option is only useful if you want to make sure your schemas don't have
+anonymous types\.
+
+.IP "\fB--show-anonymous\fP"
+Show elements and attributes that are of anonymous types\. This option only
+makes sense together with the \fB--preserve-anonymous\fP option\.
+
+.IP "\fB--anonymous-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to derive names for
+anonymous types from the enclosing attributes/elements\. \fIregex\fP is a
+Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. Any character can be
+used as a delimiter instead of \fB/\fP\. Escaping of the delimiter character
+in \fIpattern\fP or \fIreplacement\fP is not supported\.
+
+All the regular expressions are pushed into a stack with the last specified
+expression considered first\. The first match that succeeds is used\.
+Regular expressions are applied to a string in the form
+
+\fIfilename\fP \fInamespace\fP \fIxpath\fP
+
+For instance:
+
+\fBhello\.xsd http://example\.com/hello element\fP
+
+\fBhello\.xsd http://example\.com/hello type/element\fP
+
+As an example, the following expression makes all the derived names start
+with capital letters\. This could be useful when your naming convention
+requires type names to start with capital letters:
+
+\fB%\.* \.* (\.+/)*(\.+)%\eu$2%\fP
+
+See also the REGEX AND SHELL QUOTING section below\.
+
+.IP "\fB--anonymous-regex-trace\fP"
+Trace the process of applying regular expressions specified with the
+\fB--anonymous-regex\fP option\. Use this option to find out why your
+regular expressions don't do what you expected them to do\.
+
+.IP "\fB--location-map\fP \fIol\fP=\fInl\fP"
+Map the original schema location \fIol\fP that is specified in the XML
+Schema include or import elements to new schema location \fInl\fP\. Repeat
+this option to map more than one schema location\. For example, the
+following option maps the \fBhttp://example\.com/foo\.xsd\fP URL to the
+\fBfoo\.xsd\fP local file\.
+
+\fB--location-map http://example\.com/foo\.xsd=foo\.xsd\fP
+
+.IP "\fB--location-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to map schema
+locations that are specified in the XML Schema include or import elements\.
+\fIregex\fP is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. Any character can be
+used as a delimiter instead of \fB/\fP\. Escaping of the delimiter character
+in \fIpattern\fP or \fIreplacement\fP is not supported\. All the regular
+expressions are pushed into a stack with the last specified expression
+considered first\. The first match that succeeds is used\.
+
+For example, the following expression maps URL locations in the form
+\fBhttp://example\.com/foo/bar\.xsd\fP to local files in the form
+\fBbar\.xsd\fP:
+
+\fB%http://\.+/(\.+)%$1%\fP
+
+See also the REGEX AND SHELL QUOTING section below\.
+
+.IP "\fB--location-regex-trace\fP"
+Trace the process of applying regular expressions specified with the
+\fB--location-regex\fP option\. Use this option to find out why your regular
+expressions don't do what you expected them to do\.
+
+.IP "\fB--file-per-type\fP"
+Generate a separate set of C++ files for each type defined in XML Schema\.
+Note that in this mode you only need to compile the root schema(s) and the
+code will be generated for all included and imported schemas\. This
+compilation mode is primarily useful when some of your schemas cannot be
+compiled separately or have cyclic dependencies which involve type
+inheritance\. Other options related to this mode are:
+\fB--type-file-regex\fP, \fB--schema-file-regex\fP, \fB--fat-type-file\fP,
+and \fB--file-list\fP\.
+
+.IP "\fB--type-file-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate type
+names to file names when the \fB--file-per-type\fP option is specified\.
+\fIregex\fP is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. Any character can be
+used as a delimiter instead of \fB/\fP\. Escaping of the delimiter character
+in \fIpattern\fP or \fIreplacement\fP is not supported\. All the regular
+expressions are pushed into a stack with the last specified expression
+considered first\. The first match that succeeds is used\. Regular
+expressions are applied to a string in the form
+
+\fInamespace\fP \fItype-name\fP
+
+For example, the following expression maps type \fBfoo\fP that is defined in
+the \fBhttp://example\.com/bar\fP namespace to file name \fBbar-foo\fP:
+
+\fB%http://example\.com/(\.+) (\.+)%$1-$2%\fP
+
+See also the REGEX AND SHELL QUOTING section below\.
+
+.IP "\fB--type-file-regex-trace\fP"
+Trace the process of applying regular expressions specified with the
+\fB--type-file-regex\fP option\. Use this option to find out why your
+regular expressions don't do what you expected them to do\.
+
+.IP "\fB--schema-file-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate schema
+file names when the \fB--file-per-type\fP option is specified\. \fIregex\fP
+is a Perl-like regular expression in the form
+\fB/\fP\fIpattern\fP\fB/\fP\fIreplacement\fP\fB/\fP\. Any character can be
+used as a delimiter instead of \fB/\fP\. Escaping of the delimiter character
+in \fIpattern\fP or \fIreplacement\fP is not supported\. All the regular
+expressions are pushed into a stack with the last specified expression
+considered first\. The first match that succeeds is used\. Regular
+Expressions are applied to the absolute filesystem path of a schema file and
+the result, including the directory part, if any, is used to derive the
+\fB#include\fP directive paths as well as the generated C++ file paths\.
+This option, along with \fB--type-file-regex\fP are primarily useful to
+place the generated files into subdirectories or to resolve file name
+conflicts\.
+
+For example, the following expression maps schema files in the
+\fBfoo/1\.0\.0/\fP subdirectory to the files in the \fBfoo/\fP
+subdirectory\. As a result, the \fB#include\fP directive paths for such
+schemas will be in the \fBfoo/schema\.hxx\fP form and the generated C++
+files will be placed into the \fBfoo/\fP subdirectory:
+
+\fB%\.*/foo/1\.0\.0/(\.+)%foo/$1%\fP
+
+See also the REGEX AND SHELL QUOTING section below\.
+
+.IP "\fB--schema-file-regex-trace\fP"
+Trace the process of applying regular expressions specified with the
+\fB--schema-file-regex\fP option\. Use this option to find out why your
+regular expressions don't do what you expected them to do\.
+
+.IP "\fB--fat-type-file\fP"
+Generate code corresponding to global elements into type files instead of
+schema files when the \fB--type-file-regex\fP option is specified\. This
+option is primarily useful when trying to minimize the amount of object code
+that is linked to an executable by packaging compiled generated code into a
+static (archive) library\.
+
+.IP "\fB--file-list\fP \fIfile\fP"
+Write a list of generated C++ files to \fIfile\fP\. This option is primarily
+useful in the file-per-type compilation mode (\fB--file-per-type\fP) to
+create a list of generated C++ files, for example, as a makefile fragment\.
+
+.IP "\fB--file-list-prologue\fP \fItext\fP"
+Insert \fItext\fP at the beginning of the file list\. As a convenience, all
+occurrences of the \fB\en\fP character sequence in \fItext\fP are replaced
+with new lines\. This option can, for example, be used to assign the
+generated file list to a makefile variable\.
+
+.IP "\fB--file-list-epilogue\fP \fItext\fP"
+Insert \fItext\fP at the end of the file list\. As a convenience, all
+occurrences of the \fB\en\fP character sequence in \fItext\fP are replaced
+with new lines\.
+
+.IP "\fB--file-list-delim\fP \fItext\fP"
+Delimit file names written to the file list with \fItext\fP instead of new
+lines\. As a convenience, all occurrences of the \fB\en\fP character
+sequence in \fItext\fP are replaced with new lines\.
+
+.\"
+.\" C++/Tree options.
+.\"
+.SS cxx-tree command options
+.\"
+.\" The following documentation was generated by CLI, a command
+.\" line interface compiler for C++.
+.\"
+.IP "\fB--generate-polymorphic\fP"
+Generate polymorphism-aware code\. Specify this option if you use
+substitution groups or \fBxsi:type\fP\. Use the \fB--polymorphic-type\fP or
+\fB--polymorphic-type-all\fP option to specify which type hierarchies are
+polymorphic\.
+
+.IP "\fB--polymorphic-type\fP \fItype\fP"
+Indicate that \fItype\fP is a root of a polymorphic type hierarchy\. The
+compiler can often automatically determine which types are polymorphic based
+on the substitution group declarations\. However, you may need to use this
+option if you are not using substitution groups or if substitution groups
+are defined in another schema\. You need to specify this option when
+compiling every schema file that references \fItype\fP\. The \fItype\fP
+argument is an XML Schema type name that can be optionally qualified with a
+namespace in the \fInamespace\fP\fB#\fP\fIname\fP form\.
+
+.IP "\fB--polymorphic-type-all\fP"
+Indicate that all types should be treated as polymorphic\.
+
+.IP "\fB--polymorphic-plate\fP \fInum\fP"
+Specify the polymorphic map plate the generated code should register on\.
+This functionality is primarily useful to segregate multiple schemas that
+define the same polymorphic types\.
+
+.IP "\fB--ordered-type\fP \fItype\fP"
+Indicate that element order in \fItype\fP is significant\. An example would
+be a complex type with unbounded choice as a content model where the element
+order in XML has application-specific semantics\. For ordered types the
+compiler generates a special container data member and a corresponding set
+of accessors and modifiers that are used to capture the order of elements
+and, for mixed content, of text\.
+
+The \fItype\fP argument is an XML Schema type name that can be optionally
+qualified with a namespace in the \fInamespace\fP\fB#\fP\fIname\fP form\.
+Note also that you will need to specify this option when compiling every
+schema file that has other ordered types derived from this type\.
+
+.IP "\fB--ordered-type-derived\fP"
+Automatically treat types derived from ordered bases as also ordered\. This
+is primarily useful if you would like to be able to iterate over the
+complete content using the content order container\.
+
+.IP "\fB--ordered-type-mixed\fP"
+Automatically treat complex types with mixed content as ordered\.
+
+.IP "\fB--ordered-type-all\fP"
+Indicate that element order in all types is significant\.
+
+.IP "\fB--order-container\fP \fItype\fP"
+Specify a custom class template that should be used as a container for the
+content order in ordered types instead of the default \fBstd::vector\fP\.
+See \fB--ordered-type\fP for more information on ordered type\. This option
+is primarily useful if you need to perform more complex lookups in the
+content order container, for example by element id\. In this case, a
+container like Boost multi-index may be more convenient\. Note that if using
+a custom container, you will also most likely need to include the relevant
+headers using the \fB--hxx-prologue*\fP options\.
+
+.IP "\fB--generate-serialization\fP"
+Generate serialization functions\. Serialization functions convert the
+object model back to XML\.
+
+.IP "\fB--generate-ostream\fP"
+Generate ostream insertion operators (\fBoperator<<\fP) for generated
+types\. This allows one to easily print a fragment or the whole object model
+for debugging or logging\.
+
+.IP "\fB--generate-doxygen\fP"
+Generate documentation comments suitable for extraction by the Doxygen
+documentation system\. Documentation from annotations is added to the
+comments if present in the schema\.
+
+.IP "\fB--generate-comparison\fP"
+Generate comparison operators (\fBoperator==\fP and \fBoperator!=\fP) for
+complex types\. Comparison is performed member-wise\.
+
+.IP "\fB--generate-default-ctor\fP"
+Generate default constructors even for types that have required members\.
+Required members of an instance constructed using such a constructor are not
+initialized and accessing them results in undefined behavior\.
+
+.IP "\fB--generate-from-base-ctor\fP"
+Generate constructors that expect an instance of a base type followed by all
+required members\.
+
+.IP "\fB--suppress-assignment\fP"
+Suppress the generation of copy assignment operators for complex types\. If
+this option is specified, the copy assignment operators for such types are
+declared private and left unimplemented\.
+
+.IP "\fB--generate-detach\fP"
+Generate detach functions for required elements and attributes\. Detach
+functions for optional and sequence cardinalities are provided by the
+respective containers\. These functions, for example, allow you to move
+sub-trees in the object model either within the same tree or between
+different trees\.
+
+.IP "\fB--generate-wildcard\fP"
+Generate accessors and modifiers as well as parsing and serialization code
+for XML Schema wildcards (\fBany\fP and \fBanyAttribute\fP)\. XML content
+matched by wildcards is presented as DOM fragments\. Note that you need to
+initialize the Xerces-C++ runtime if you are using this option\.
+
+.IP "\fB--generate-any-type\fP"
+Extract and store content of the XML Schema \fBanyType\fP type as a DOM
+fragment\. Note that you need to initialize the Xerces-C++ runtime if you
+are using this option\.
+
+.IP "\fB--generate-insertion\fP \fIos\fP"
+Generate data representation stream insertion operators for the \fIos\fP
+output stream type\. Repeat this option to specify more than one stream
+type\. The ACE CDR stream (\fBACE_OutputCDR\fP) and RPC XDR are recognized
+by the compiler and the necessary \fB#include\fP directives are
+automatically generated\. For custom stream types use the
+\fB--hxx-prologue*\fP options to provide the necessary declarations\.
+
+.IP "\fB--generate-extraction\fP \fIis\fP"
+Generate data representation stream extraction constructors for the \fIis\fP
+input stream type\. Repeat this option to specify more than one stream
+type\. The ACE CDR stream (\fBACE_InputCDR\fP) and RPC XDR are recognized by
+the compiler and the necessary \fB#include\fP directives are automatically
+generated\. For custom stream types use the \fB--hxx-prologue*\fP options to
+provide the necessary declarations\.
+
+.IP "\fB--generate-forward\fP"
+Generate a separate header file with forward declarations for the types
+being generated\.
+
+.IP "\fB--suppress-parsing\fP"
+Suppress the generation of the parsing functions and constructors\. Use this
+option to reduce the generated code size when parsing from XML is not
+needed\.
+
+.IP "\fB--generate-element-type\fP"
+Generate types instead of parsing and serialization functions for root
+elements\. This is primarily useful to distinguish object models with the
+same root type but with different root elements\.
+
+.IP "\fB--generate-element-map\fP"
+Generate a root element map that allows uniform parsing and serialization of
+multiple root elements\. This option is only valid together with
+\fB--generate-element-type\fP\.
+
+.IP "\fB--generate-intellisense\fP"
+Generate workarounds for IntelliSense bugs in Visual Studio 2005 (8\.0)\.
+When this option is used, the resulting code is slightly more verbose\.
+IntelliSense in Visual Studio 2008 (9\.0) and later does not require these
+workarounds\. Support for IntelliSense in Visual Studio 2003 (7\.1) is
+improved with this option but is still incomplete\.
+
+.IP "\fB--omit-default-attributes\fP"
+Omit attributes with default and fixed values from serialized XML
+documents\.
+
+.IP "\fB--type-naming\fP \fIstyle\fP"
+Specify the type naming convention that should be used in the generated
+code\. Valid styles are \fBknr\fP (default), \fBucc\fP, and \fBjava\fP\. See
+the NAMING CONVENTION section below for more information\.
+
+.IP "\fB--function-naming\fP \fIstyle\fP"
+Specify the function naming convention that should be used in the generated
+code\. Valid styles are \fBknr\fP (default), \fBlcc\fP, and \fBjava\fP\. See
+the NAMING CONVENTION section below for more information\.
+
+.IP "\fB--type-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema type names to C++ type names\. See the NAMING CONVENTION section
+below for more information\.
+
+.IP "\fB--accessor-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes to C++ accessor function names\. See the
+NAMING CONVENTION section below for more information\.
+
+.IP "\fB--one-accessor-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes with cardinality one to C++ accessor
+function names\. See the NAMING CONVENTION section below for more
+information\.
+
+.IP "\fB--opt-accessor-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes with cardinality optional to C++
+accessor function names\. See the NAMING CONVENTION section below for more
+information\.
+
+.IP "\fB--seq-accessor-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes with cardinality sequence to C++
+accessor function names\. See the NAMING CONVENTION section below for more
+information\.
+
+.IP "\fB--modifier-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes to C++ modifier function names\. See the
+NAMING CONVENTION section below for more information\.
+
+.IP "\fB--one-modifier-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes with cardinality one to C++ modifier
+function names\. See the NAMING CONVENTION section below for more
+information\.
+
+.IP "\fB--opt-modifier-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes with cardinality optional to C++
+modifier function names\. See the NAMING CONVENTION section below for more
+information\.
+
+.IP "\fB--seq-modifier-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema names of elements/attributes with cardinality sequence to C++
+modifier function names\. See the NAMING CONVENTION section below for more
+information\.
+
+.IP "\fB--parser-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema element names to C++ parsing function names\. See the NAMING
+CONVENTION section below for more information\.
+
+.IP "\fB--serializer-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema element names to C++ serialization function names\. See the NAMING
+CONVENTION section below for more information\.
+
+.IP "\fB--const-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema-derived names to C++ constant names\. See the NAMING CONVENTION
+section below for more information\.
+
+.IP "\fB--enumerator-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema enumeration values to C++ enumerator names\. See the NAMING
+CONVENTION section below for more information\.
+
+.IP "\fB--element-type-regex\fP \fIregex\fP"
+Add \fIregex\fP to the list of regular expressions used to translate XML
+Schema element names to C++ element type names\. See the NAMING CONVENTION
+section below for more information\.
+
+.IP "\fB--name-regex-trace\fP"
+Trace the process of applying regular expressions specified with the name
+transformation options\. Use this option to find out why your regular
+expressions don't do what you expected them to do\.
+
+.IP "\fB--root-element-first\fP"
+Treat only the first global element as a document root\. By default all
+global elements are considered document roots\.
+
+.IP "\fB--root-element-last\fP"
+Treat only the last global element as a document root\. By default all
+global elements are considered document roots\.
+
+.IP "\fB--root-element-all\fP"
+Treat all global elements as document roots\. This is the default behavior\.
+By explicitly specifying this option you can suppress the warning that is
+issued if more than one global element is defined\.
+
+.IP "\fB--root-element-none\fP"
+Do not treat any global elements as document roots\. By default all global
+elements are considered document roots\.
+
+.IP "\fB--root-element\fP \fIelement\fP"
+Treat only \fIelement\fP as a document root\. Repeat this option to specify
+more than one root element\.
+
+.IP "\fB--custom-type\fP \fImap\fP"
+Use a custom C++ type instead of the generated class\. The \fImap\fP
+argument is in the form \fIname\fP[\fB=\fP\fItype\fP[\fB/\fP\fIbase\fP]],
+where \fIname\fP is a type name as defined in XML Schema and \fItype\fP is a
+C++ type name that should be used instead\. If \fItype\fP is not present or
+empty then the custom type is assumed to have the same name and be defined
+in the same namespace as the generated class would have\. If \fIbase\fP is
+specified then the generated class is still generated but with that name\.
+
+.IP "\fB--custom-type-regex\fP \fIregex\fP"
+Use custom C++ types instead of the generated classes\. The \fIregex\fP
+argument is in the form
+\fB/\fP\fIname-pat\fP\fB/\fP[\fItype-sub\fP\fB/\fP[\fIbase-sub\fP\fB/\fP]],
+where \fIname-pat\fP is a regex pattern that will be matched against type
+names as defined in XML Schema and \fItype-sub\fP is a C++ type name
+substitution that should be used instead\. If \fItype-sub\fP is not present
+or its substitution results in an empty string then the custom type is
+assumed to have the same name and be defined in the same namespace as the
+generated class would have\. If \fIbase-sub\fP is present and its
+substitution results in a non-empty string then the generated class is still
+generated but with the result of this substitution as its name\. The pattern
+and substitutions are in the Perl regular expression format\. See also the
+REGEX AND SHELL QUOTING section below\.
+
+.IP "\fB--parts\fP \fInum\fP"
+Split generated source code into \fInum\fP parts\. This is useful when
+translating large, monolithic schemas and a C++ compiler is not able to
+compile the resulting source code at once (usually due to insufficient
+memory)\.
+
+.IP "\fB--parts-suffix\fP \fIsuffix\fP"
+Use \fIsuffix\fP instead of the default '\fB-\fP' to separate the file name
+from the part number\.
+
+\"
+\" C++/Parser
+\"
+.SS cxx-parser command options
+.\"
+.\" The following documentation was generated by CLI, a command
+.\" line interface compiler for C++.
+.\"
+.IP "\fB--type-map\fP \fImapfile\fP"
+Read XML Schema to C++ type mapping information from \fImapfile\fP\. Repeat
+this option to specify several type maps\. Type maps are considered in order
+of appearance and the first match is used\. By default all user-defined
+types are mapped to \fBvoid\fP\. See the TYPE MAP section below for more
+information\.
+
+.IP "\fB--xml-parser\fP \fIparser\fP"
+Use \fIparser\fP as the underlying XML parser\. Valid values are
+\fBxerces\fP for Xerces-C++ (default) and \fBexpat\fP for Expat\.
+
+.IP "\fB--generate-validation\fP"
+Generate validation code\. The validation code ("perfect parser") ensures
+that instance documents conform to the schema\. Validation code is generated
+by default when the selected underlying XML parser is non-validating
+(\fBexpat\fP)\.
+
+.IP "\fB--suppress-validation\fP"
+Suppress the generation of validation code\. Validation is suppressed by
+default when the selected underlying XML parser is validating
+(\fBxerces\fP)\.
+
+.IP "\fB--generate-polymorphic\fP"
+Generate polymorphism-aware code\. Specify this option if you use
+substitution groups or \fBxsi:type\fP\.
+
+.IP "\fB--generate-noop-impl\fP"
+Generate a sample parser implementation that does nothing (no operation)\.
+The sample implementation can then be filled with the application-specific
+code\. For an input file in the form \fBname\.xsd\fP this option triggers
+the generation of two additional C++ files in the form:
+\fBname-pimpl\.hxx\fP (parser implementation header file) and
+\fBname-pimpl\.cxx\fP (parser implementation source file)\.
+
+.IP "\fB--generate-print-impl\fP"
+Generate a sample parser implementation that prints the XML data to STDOUT\.
+For an input file in the form \fBname\.xsd\fP this option triggers the
+generation of two additional C++ files in the form: \fBname-pimpl\.hxx\fP
+(parser implementation header file) and \fBname-pimpl\.cxx\fP (parser
+implementation source file)\.
+
+.IP "\fB--generate-test-driver\fP"
+Generate a test driver for the sample parser implementation\. For an input
+file in the form \fBname\.xsd\fP this option triggers the generation of an
+additional C++ file in the form \fBname-driver\.cxx\fP\.
+
+.IP "\fB--force-overwrite\fP"
+Force overwriting of the existing implementation and test driver files\. Use
+this option only if you do not mind loosing the changes you have made in the
+sample implementation or test driver files\.
+
+.IP "\fB--root-element-first\fP"
+Indicate that the first global element is the document root\. This
+information is used to generate the test driver for the sample
+implementation\.
+
+.IP "\fB--root-element-last\fP"
+Indicate that the last global element is the document root\. This
+information is used to generate the test driver for the sample
+implementation\.
+
+.IP "\fB--root-element\fP \fIelement\fP"
+Indicate that \fIelement\fP is the document root\. This information is used
+to generate the test driver for the sample implementation\.
+
+.IP "\fB--skel-type-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB_pskel\fP to
+construct the names of the generated parser skeletons\.
+
+.IP "\fB--skel-file-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB-pskel\fP to
+construct the names of the generated parser skeleton files\.
+
+.IP "\fB--impl-type-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB_pimpl\fP to
+construct the names of the parser implementations for the built-in XML
+Schema types as well as sample parser implementations\.
+
+.IP "\fB--impl-file-suffix\fP \fIsuffix\fP"
+Use the provided \fIsuffix\fP instead of the default \fB-pimpl\fP to
+construct the names of the generated sample parser implementation files\.
+
+\"
+\" NAMING CONVENTION
+\"
+
+.SH NAMING CONVENTION
+The compiler can be instructed to use a particular naming convention in
+the generated code. A number of widely-used conventions can be selected
+using the
+.B --type-naming
+and
+.B --function-naming
+options. A custom naming convention can be achieved using the
+.BR --type-regex ,
+.BR --accessor-regex ,
+.BR --one-accessor-regex ,
+.BR --opt-accessor-regex ,
+.BR --seq-accessor-regex ,
+.BR --modifier-regex ,
+.BR --one-modifier-regex ,
+.BR --opt-modifier-regex ,
+.BR --seq-modifier-regex ,
+.BR --parser-regex ,
+.BR --serializer-regex ,
+.BR --const-regex ,
+.BR --enumerator-regex ,
+and
+.B --element-type-regex
+options.
+
+The
+.B --type-naming
+option specifies the convention that should be used for naming C++ types.
+Possible values for this option are
+.B knr
+(default),
+.BR ucc ,
+and
+.BR java .
+The
+.B knr
+value (stands for K&R) signifies the standard, lower-case naming convention
+with the underscore used as a word delimiter, for example: foo, foo_bar.
+The
+.B ucc
+(stands for upper-camel-case) and
+.B java
+values a synonyms for the same naming convention where the first letter
+of each word in the name is capitalized, for example: Foo, FooBar.
+
+Similarly, the
+.B --function-naming
+option specifies the convention that should be used for naming C++ functions.
+Possible values for this option are
+.B knr
+(default),
+.BR lcc ,
+and
+.BR java .
+The
+.B knr
+value (stands for K&R) signifies the standard, lower-case naming convention
+with the underscore used as a word delimiter, for example: foo(), foo_bar().
+The
+.B lcc
+value (stands for lower-camel-case) signifies a naming convention where the
+first letter of each word except the first is capitalized, for example: foo(),
+fooBar(). The
+.B java
+naming convention is similar to the lower-camel-case one except that accessor
+functions are prefixed with get, modifier functions are prefixed with set,
+parsing functions are prefixed with parse, and serialization functions are
+prefixed with serialize, for example: getFoo(), setFooBar(), parseRoot(),
+serializeRoot().
+
+Note that the naming conventions specified with the
+.B --type-naming
+and
+.B --function-naming
+options perform only limited transformations on the
+names that come from the schema in the form of type, attribute, and element
+names. In other words, to get consistent results, your schemas should follow
+a similar naming convention as the one you would like to have in the generated
+code. Alternatively, you can use the
+.B --*-regex
+options (discussed below) to perform further transformations on the names
+that come from the schema.
+
+The
+.BR --type-regex ,
+.BR --accessor-regex ,
+.BR --one-accessor-regex ,
+.BR --opt-accessor-regex ,
+.BR --seq-accessor-regex ,
+.BR --modifier-regex ,
+.BR --one-modifier-regex ,
+.BR --opt-modifier-regex ,
+.BR --seq-modifier-regex ,
+.BR --parser-regex ,
+.BR --serializer-regex ,
+.BR --const-regex ,
+.BR --enumerator-regex ,
+and
+.B --element-type-regex
+options allow you to specify extra regular expressions for each name
+category in addition to the predefined set that is added depending on
+the
+.B --type-naming
+and
+.B --function-naming
+options. Expressions that are provided with the
+.B --*-regex
+options are evaluated prior to any predefined expressions. This allows
+you to selectively override some or all of the predefined transformations.
+When debugging your own expressions, it is often useful to see which
+expressions match which names. The
+.B --name-regex-trace
+option allows you to trace the process of applying
+regular expressions to names.
+
+The value for the
+.B --*-regex
+options should be a perl-like regular expression in the form
+.BI / pattern / replacement /\fR.
+Any character can be used as a delimiter instead of
+.BR / .
+Escaping of the delimiter character in
+.I pattern
+or
+.I replacement
+is not supported. All the regular expressions for each category are pushed
+into a category-specific stack with the last specified expression
+considered first. The first match that succeeds is used. For the
+.B --one-accessor-regex
+(accessors with cardinality one),
+.B --opt-accessor-regex
+(accessors with cardinality optional), and
+.B --seq-accessor-regex
+(accessors with cardinality sequence) categories the
+.B --accessor-regex
+expressions are used as a fallback. For the
+.BR --one-modifier-regex ,
+.BR --opt-modifier-regex ,
+and
+.B --seq-modifier-regex
+categories the
+.B --modifier-regex
+expressions are used as a fallback. For the
+.B --element-type-regex
+category the
+.B --type-regex
+expressions are used as a fallback.
+
+The type name expressions
+.RB ( --type-regex )
+are evaluated on the name string that has the following format:
+
+[\fInamespace \fR]\fIname\fR[\fB,\fIname\fR][\fB,\fIname\fR][\fB,\fIname\fR]
+
+The element type name expressions
+.RB ( --element-type-regex ),
+effective only when the
+.B --generate-element-type
+option is specified, are evaluated on the name string that has the following
+format:
+
+.I namespace name
+
+In the type name format the
+.I namespace
+part followed by a space is only present for global type names. For global
+types and elements defined in schemas without a target namespace, the
+.I namespace
+part is empty but the space is still present. In the type name format after
+the initial
+.I name
+component, up to three additional
+.I name
+components can be present, separated by commas. For example:
+
+.B http://example.com/hello type
+
+.B foo
+
+.B foo,iterator
+
+.B foo,const,iterator
+
+The following set of predefined regular expressions is used to transform
+type names when the upper-camel-case naming convention is selected:
+
+.B /(?:[^ ]* )?([^,]+)/\\\\u$1/
+
+.B /(?:[^ ]* )?([^,]+),([^,]+)/\\\\u$1\\\\u$2/
+
+.B /(?:[^ ]* )?([^,]+),([^,]+),([^,]+)/\\\\u$1\\\\u$2\\\\u$3/
+
+.B /(?:[^ ]* )?([^,]+),([^,]+),([^,]+),([^,]+)/\\\\u$1\\\\u$2\\\\u$3\\\\u$4/
+
+The accessor and modifier expressions
+.RB ( --*accessor-regex
+and
+.BR --*modifier-regex )
+are evaluated on the name string that has the following format:
+
+\fIname\fR[\fB,\fIname\fR][\fB,\fIname\fR]
+
+After the initial
+.I name
+component, up to two additional
+.I name
+components can be present, separated by commas. For example:
+
+.B foo
+
+.B dom,document
+
+.B foo,default,value
+
+The following set of predefined regular expressions is used to transform
+accessor names when the
+.B java
+naming convention is selected:
+
+.B /([^,]+)/get\\\\u$1/
+
+.B /([^,]+),([^,]+)/get\\\\u$1\\\\u$2/
+
+.B /([^,]+),([^,]+),([^,]+)/get\\\\u$1\\\\u$2\\\\u$3/
+
+For the parser, serializer, and enumerator categories, the corresponding
+regular expressions are evaluated on local names of elements and on
+enumeration values, respectively. For example, the following predefined
+regular expression is used to transform parsing function names when the
+.B java
+naming convention is selected:
+
+.B /(.+)/parse\\\\u$1/
+
+The const category is used to create C++ constant names for the
+element/wildcard/text content ids in ordered types.
+
+See also the REGEX AND SHELL QUOTING section below.
+
+\"
+\" TYPE MAP
+\"
+.SH TYPE MAP
+Type map files are used in C++/Parser to define a mapping between XML
+Schema and C++ types. The compiler uses this information to determine
+the return types of
+.B post_*
+functions in parser skeletons corresponding to XML Schema types
+as well as argument types for callbacks corresponding to elements
+and attributes of these types.
+
+The compiler has a set of predefined mapping rules that map built-in
+XML Schema types to suitable C++ types (discussed below) and all
+other types to
+.BR void .
+By providing your own type maps you can override these predefined rules.
+The format of the type map file is presented below:
+
+.RS
+.B namespace
+.I schema-namespace
+[
+.I cxx-namespace
+]
+.br
+.B {
+.br
+ (
+.B include
+.IB file-name ;
+)*
+.br
+ ([
+.B type
+]
+.I schema-type cxx-ret-type
+[
+.I cxx-arg-type
+.RB ] ;
+)*
+.br
+.B }
+.br
+.RE
+
+Both
+.I schema-namespace
+and
+.I schema-type
+are regex patterns while
+.IR cxx-namespace ,
+.IR cxx-ret-type ,
+and
+.I cxx-arg-type
+are regex pattern substitutions. All names can be optionally enclosed
+in \fR" "\fR, for example, to include white-spaces.
+
+.I schema-namespace
+determines XML Schema namespace. Optional
+.I cxx-namespace
+is prefixed to every C++ type name in this namespace declaration.
+.I cxx-ret-type
+is a C++ type name that is used as a return type for the
+.B post_*
+functions. Optional
+.I cxx-arg-type
+is an argument type for callback functions corresponding to elements and
+attributes of this type. If
+.I cxx-arg-type
+is not specified, it defaults to
+.I cxx-ret-type
+if
+.I cxx-ret-type
+ends with
+.B *
+or
+.B &
+(that is, it is a pointer or a reference) and
+.B const
+\fIcxx-ret-type\fB&\fR otherwise.
+.I file-name
+is a file name either in the \fR" "\fR or < > format and is added with the
+.B #include
+directive to the generated code.
+
+The \fB#\fR character starts a comment that ends with a new line or end of
+file. To specify a name that contains \fB#\fR enclose it in \fR" "\fR. For
+example:
+
+.RS
+namespace http://www.example.com/xmlns/my my
+.br
+{
+.br
+ include "my.hxx";
+.br
+
+ # Pass apples by value.
+ #
+ apple apple;
+.br
+
+ # Pass oranges as pointers.
+ #
+ orange orange_t*;
+.br
+}
+.br
+.RE
+
+In the example above, for the
+.B http://www.example.com/xmlns/my#orange
+XML Schema type, the
+.B my::orange_t*
+C++ type will be used as both return and argument types.
+
+Several namespace declarations can be specified in a single file.
+The namespace declaration can also be completely omitted to map
+types in a schema without a namespace. For instance:
+
+.RS
+include "my.hxx";
+.br
+apple apple;
+.br
+
+namespace http://www.example.com/xmlns/my
+.br
+{
+.br
+ orange "const orange_t*";
+.br
+}
+.br
+.RE
+
+
+The compiler has a number of predefined mapping rules that can be
+presented as the following map files. The string-based XML Schema
+built-in types are mapped to either
+.B std::string
+or
+.B std::wstring
+depending on the character type selected with the
+.B --char-type
+option
+.RB ( char
+by default).
+
+.RS
+namespace http://www.w3.org/2001/XMLSchema
+.br
+{
+.br
+ boolean bool bool;
+.br
+
+ byte "signed char" "signed char";
+.br
+ unsignedByte "unsigned char" "unsigned char";
+.br
+
+ short short short;
+.br
+ unsignedShort "unsigned short" "unsigned short";
+.br
+
+ int int int;
+.br
+ unsignedInt "unsigned int" "unsigned int";
+.br
+
+ long "long long" "long long";
+.br
+ unsignedLong "unsigned long long" "unsigned long long";
+.br
+
+ integer "long long" "long long";
+.br
+
+ negativeInteger "long long" "long long";
+.br
+ nonPositiveInteger "long long" "long long";
+.br
+
+ positiveInteger "unsigned long long" "unsigned long long";
+.br
+ nonNegativeInteger "unsigned long long" "unsigned long long";
+.br
+
+ float float float;
+.br
+ double double double;
+.br
+ decimal double double;
+.br
+
+ string std::string;
+.br
+ normalizedString std::string;
+.br
+ token std::string;
+.br
+ Name std::string;
+.br
+ NMTOKEN std::string;
+.br
+ NCName std::string;
+.br
+ ID std::string;
+.br
+ IDREF std::string;
+.br
+ language std::string;
+.br
+ anyURI std::string;
+.br
+
+ NMTOKENS xml_schema::string_sequence;
+.br
+ IDREFS xml_schema::string_sequence;
+.br
+
+ QName xml_schema::qname;
+.br
+
+ base64Binary std::auto_ptr<xml_schema::buffer>
+.br
+ std::auto_ptr<xml_schema::buffer>;
+.br
+ hexBinary std::auto_ptr<xml_schema::buffer>
+.br
+ std::auto_ptr<xml_schema::buffer>;
+.br
+
+ date xml_schema::date;
+.br
+ dateTime xml_schema::date_time;
+.br
+ duration xml_schema::duration;
+.br
+ gDay xml_schema::gday;
+.br
+ gMonth xml_schema::gmonth;
+.br
+ gMonthDay xml_schema::gmonth_day;
+.br
+ gYear xml_schema::gyear;
+.br
+ gYearMonth xml_schema::gyear_month;
+.br
+ time xml_schema::time;
+.br
+}
+.br
+.RE
+
+
+The last predefined rule maps anything that wasn't mapped by previous
+rules to
+.BR void :
+
+.RS
+namespace .*
+.br
+{
+.br
+ .* void void;
+.br
+}
+.br
+.RE
+
+When you provide your own type maps with the
+.B --type-map
+option, they are evaluated first. This allows you to selectively override
+predefined rules.
+
+.\"
+.\" REGEX AND SHELL QUOTING
+.\"
+.SH REGEX AND SHELL QUOTING
+When entering a regular expression argument in the shell command line
+it is often necessary to use quoting (enclosing the argument in " "
+or ' ') in order to prevent the shell from interpreting certain
+characters, for example, spaces as argument separators and $ as
+variable expansions.
+
+Unfortunately it is hard to achieve this in a manner that is portable
+across POSIX shells, such as those found on GNU/Linux and UNIX, and
+Windows shell. For example, if you use " " for quoting you will get
+a wrong result with POSIX shells if your expression contains $. The
+standard way of dealing with this on POSIX systems is to use ' '
+instead. Unfortunately, Windows shell does not remove ' ' from
+arguments when they are passed to applications. As a result you may
+have to use ' ' for POSIX and " " for Windows ($ is not treated as
+a special character on Windows).
+
+Alternatively, you can save regular expression options into a file,
+one option per line, and use this file with the
+.B --options-file
+option. With this approach you don't need to worry about shell quoting.
+
+.\"
+.\" DIAGNOSTICS
+.\"
+.SH DIAGNOSTICS
+If the input file is not a valid W3C XML Schema definition,
+.B xsd
+will issue diagnostic messages to
+.B STDERR
+and exit with non-zero exit code.
+.SH BUGS
+Send bug reports to the xsd-users@codesynthesis.com mailing list.
+.SH COPYRIGHT
+Copyright (c) 2005-2014 Code Synthesis Tools CC.
+
+Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License,
+version 1.2; with no Invariant Sections, no Front-Cover Texts and
+no Back-Cover Texts. Copy of the license can be obtained from
+http://codesynthesis.com/licenses/fdl-1.2.txt
diff --git a/xsd/doc/xsd.xhtml b/xsd/doc/xsd.xhtml
new file mode 100644
index 0000000..989d1bd
--- /dev/null
+++ b/xsd/doc/xsd.xhtml
@@ -0,0 +1,1555 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+
+<head>
+ <title>XSD 4.0.0 Compiler Command Line Manual</title>
+
+ <meta name="copyright" content="&copy; 2005-2014 Code Synthesis Tools CC"/>
+ <meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,code,generator,manual,man,page"/>
+ <meta name="description" content="XSD Compiler Command Line Manual"/>
+
+ <link rel="stylesheet" type="text/css" href="default.css" />
+
+<style type="text/css">
+
+ #synopsis {
+ list-style-type: none;
+ }
+
+ #synopsis li {
+ padding-top : 0.0em;
+ padding-bottom : 0.0em;
+ }
+
+ #commands dt {
+ padding-top : 0.4em;
+ }
+
+ #commands dd {
+ padding-bottom : 0.4em;
+ padding-left : 2em;
+ }
+
+ .options dt {
+ padding-top : 0.4em;
+ }
+
+ .options dd {
+ padding-top : 0.1em;
+ padding-bottom : 0.4em;
+ padding-left : 1.4em;
+ }
+
+</style>
+</head>
+
+<body>
+<div id="container">
+ <div id="content">
+
+ <h1>NAME</h1>
+
+ <p>xsd - W3C XML Schema to C++ Compiler</p>
+
+ <h1>SYNOPSIS</h1>
+
+ <dl id="synopsis">
+ <dt><code><b>xsd</b> <i>command</i> [<i>options</i>] <i>file</i> [<i>file</i> ...]</code></dt>
+ <dt><code><b>xsd help</b> [<i>command</i>]</code></dt>
+ <dt><code><b>xsd version</b></code></dt>
+ </dl>
+
+ <h1>DESCRIPTION</h1>
+
+ <p><code><b>xsd</b></code> generates vocabulary-specific, statically-typed
+ C++ mapping from W3C XML Schema definitions. Particular mapping to
+ produce is selected by a <code><i>command</i></code>. Each mapping has
+ a number of mapping-specific <code><i>options</i></code> that should
+ appear, if any, after the <code><i>command</i></code>. Input files should
+ be W3C XML Schema definitions. The exact set of the generated files depends
+ on the selected mapping and options.</p>
+
+ <h1>COMMANDS</h1>
+
+ <dl id="commands">
+ <dt><code><b>cxx-tree</b></code></dt>
+ <dd>Generate the C++/Tree mapping. For each input file in the form
+ <code><b>name.xsd</b></code> the following C++ files are generated:
+ <code><b>name.hxx</b></code> (header file),
+ <code><b>name.ixx</b></code> (inline file, generated only if the
+ <code><b>--generate-inline</b></code> option is specified),
+ <code><b>name.cxx</b></code> (source file), and
+ <code><b>name-fwd.hxx</b></code> (forward declaration file, generated
+ only if the <code><b>--generate-forward</b></code> option is
+ specified).</dd>
+
+ <dt><code><b>cxx-parser</b></code></dt>
+ <dd>Generate the C++/Parser mapping. For each input file in the form
+ <code><b>name.xsd</b></code> the following C++ files are generated:
+ <code><b>name-pskel.hxx</b></code> (parser skeleton header file),
+ <code><b>name-pskel.ixx</b></code> (parser skeleton inline file,
+ generated only if the <code><b>--generate-inline</b></code>
+ option is specified), and
+ <code><b>name-pskel.cxx</b></code> (parser skeleton source file).
+ If the <code><b>--generate-noop-impl</b></code> or
+ <code><b>--generate-print-impl</b></code> option is specified,
+ the following additional sample implementation files are generated:
+ <code><b>name-pimpl.hxx</b></code> (parser implementation header
+ file) and
+ <code><b>name-pimpl.cxx</b></code> (parser implementation source
+ file). If the <code><b>--generate-test-driver</b></code> option
+ is specified, the additional <code><b>name-driver.cxx</b></code>
+ test driver file is generated.</dd>
+
+ <dt><code><b>help</b></code></dt>
+ <dd>Print usage information and exit. Use
+ <p><code><b>xsd help</b> <i>command</i></code></p>
+ for command-specific help.
+ </dd>
+
+ <dt><code><b>version</b></code></dt>
+ <dd>Print version and exit.</dd>
+ </dl>
+
+ <h1>OPTIONS</h1>
+
+ <p>Command-specific <code><i>options</i></code>, if any, should appear
+ after the corresponding <code><i>command</i></code>.</p>
+
+ <h2>COMMON OPTIONS</h2>
+
+<!--
+ The following documentation was generated by CLI, a command
+ line interface compiler for C++.
+-->
+
+<dl class="options">
+ <dt><code><b>--std</b></code> <i>version</i></dt>
+ <dd>Specify the C++ standard that the generated code should conform to. Valid
+ values are <code><b>c++98</b></code> (default) and
+ <code><b>c++11</b></code>.
+
+ <p>The C++ standard affects various aspects of the generated code that are
+ discussed in more detail in various mapping-specific documentation. Overall,
+ when C++11 is selected, the generated code relies on the move semantics and
+ uses <code><b>std::unique_ptr</b></code> instead of deprecated
+ <code><b>std::auto_ptr</b></code>.</p>
+
+ <p>When the C++11 mode is selected, you normally don't need to perform any
+ extra steps other than enable C++11 in your C++ compiler, if required. The
+ XSD compiler will automatically add the necessary macro defines to the
+ generated header files that will switch the header-only XSD runtime library
+ (<code><b>libxsd</b></code>) to the C++11 mode. However, if you include any
+ of the XSD runtime headers directly in your application (normally you just
+ include the generated headers), then you will need to define the
+ <code><b>XSD_CXX11</b></code> macro for your entire project.</p></dd>
+
+ <dt><code><b>--char-type</b></code> <i>type</i></dt>
+ <dd>Generate code using the provided character <i>type</i> instead of the
+ default <code><b>char</b></code>. Valid values are <code><b>char</b></code>
+ and <code><b>wchar_t</b></code>.</dd>
+
+ <dt><code><b>--char-encoding</b></code> <i>enc</i></dt>
+ <dd>Specify the character encoding that should be used in the generated code.
+ Valid values for the <code><b>char</b></code> character type are
+ <code><b>utf8</b></code> (default), <code><b>iso8859-1</b></code>,
+ <code><b>lcp</b></code> (Xerces-C++ local code page), and
+ <code><b>custom</b></code>. If you pass <code><b>custom</b></code> as the
+ value then you will need to include the transcoder implementation header for
+ your encoding at the beginning of the generated header files (see the
+ <code><b>--hxx-prologue</b></code> option).
+
+ <p>For the <code><b>wchar_t</b></code> character type the only valid value
+ is <code><b>auto</b></code> and the encoding is automatically selected
+ between UTF-16 and UTF-32/UCS-4, depending on the
+ <code><b>wchar_t</b></code> type size.</p></dd>
+
+ <dt><code><b>--output-dir</b></code> <i>dir</i></dt>
+ <dd>Write generated files to <i>dir</i> instead of the current directory.</dd>
+
+ <dt><code><b>--generate-inline</b></code></dt>
+ <dd>Generate simple functions inline. This option triggers creation of the
+ inline file.</dd>
+
+ <dt><code><b>--generate-xml-schema</b></code></dt>
+ <dd>Generate a C++ header file as if the schema being compiled defines the XML
+ Schema namespace. For the C++/Tree mapping, the resulting file will contain
+ definitions for all XML Schema built-in types. For the C++/Parser mapping,
+ the resulting file will contain definitions for all the parser skeletons and
+ implementations corresponding to the XML Schema built-in types.
+
+ <p>The schema file provided to the compiler need not exist and is only used
+ to derive the name of the resulting header file. Use the
+ <code><b>--extern-xml-schema</b></code> option to include this file in the
+ generated files for other schemas.</p></dd>
+
+ <dt><code><b>--extern-xml-schema</b></code> <i>file</i></dt>
+ <dd>Include a header file derived from <i>file</i> instead of generating the XML
+ Schema namespace mapping inline. The provided file need not exist and is
+ only used to derive the name of the included header file. Use the
+ <code><b>--generate-xml-schema</b></code> option to generate this header
+ file.</dd>
+
+ <dt><code><b>--namespace-map</b></code> <i>xns</i>=<i>cns</i></dt>
+ <dd>Map XML Schema namespace <i>xns</i> to C++ namespace <i>cns</i>. Repeat this
+ option to specify mapping for more than one XML Schema namespace. For
+ example, the following option:
+
+ <p><code><b>--namespace-map
+ http://example.com/foo/bar=foo::bar</b></code></p>
+
+ <p>Will map the <code><b>http://example.com/foo/bar</b></code> XML Schema
+ namespace to the <code><b>foo::bar</b></code> C++ namespace.</p></dd>
+
+ <dt><code><b>--namespace-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema namespace names to C++ namespace names. <i>regex</i> is a Perl-like
+ regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. Any
+ character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported.
+
+ <p>All the regular expressions are pushed into a stack with the last
+ specified expression considered first. The first match that succeeds is
+ used. Regular expressions are applied to a string in the form</p>
+
+ <p><code><i>filename</i> <i>namespace</i></code></p>
+
+ <p>For example, if you have file <code><b>hello.xsd</b></code> with
+ namespace <code><b>http://example.com/hello</b></code> and you run
+ <code><b>xsd</b></code> on this file, then the string in question will
+ be:</p>
+
+ <p><code><b>hello.xsd. http://example.com/hello</b></code></p>
+
+ <p>For the built-in XML Schema namespace the string is:</p>
+
+ <p><code><b>XMLSchema.xsd http://www.w3.org/2001/XMLSchema</b></code></p>
+
+ <p>The following three steps are performed for each regular expression until
+ the match is found:</p>
+
+ <p>1. The expression is applied and if the result is empty the next
+ expression is considered.</p>
+
+ <p>2. All <code><b>/</b></code> are replaced with
+ <code><b>::</b></code>.</p>
+
+ <p>3. The result is verified to be a valid C++ scope name (e.g.,
+ <code><b>foo::bar</b></code>). If this test succeeds, the result is used as
+ a C++ namespace name.</p>
+
+ <p>As an example, the following expression maps XML Schema namespaces in
+ the form <code><b>http://example.com/foo/bar</b></code> to C++ namespaces in
+ the form <code><b>foo::bar</b></code>:</p>
+
+ <p><code><b>%.* http://example.com/(.+)%$1%</b></code></p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p></dd>
+
+ <dt><code><b>--namespace-regex-trace</b></code></dt>
+ <dd>Trace the process of applying regular expressions specified with the
+ <code><b>--namespace-regex</b></code> option. Use this option to find out
+ why your regular expressions don't do what you expected them to do.</dd>
+
+ <dt><code><b>--reserved-name</b></code> <i>n</i>[=<i>r</i>]</dt>
+ <dd>Add name <i>n</i> to the list of names that should not be used as
+ identifiers. The name can optionally be followed by <code><b>=</b></code>
+ and the replacement name <i>r</i> that should be used instead. All the C++
+ keywords are already in this list.</dd>
+
+ <dt><code><b>--include-with-brackets</b></code></dt>
+ <dd>Use angle brackets (&lt;>) instead of quotes ("") in generated
+ <code><b>#include</b></code> directives.</dd>
+
+ <dt><code><b>--include-prefix</b></code> <i>prefix</i></dt>
+ <dd>Add <i>prefix</i> to generated <code><b>#include</b></code> directive paths.
+
+ <p>For example, if you had the following import element in your schema</p>
+
+ <p><code><b>&lt;import namespace="..."
+ schemaLocation="base.xsd"/></b></code></p>
+
+ <p>and compiled this fragment with <code><b>--include-prefix
+ schemas/</b></code>, then the include directive in the generated code would
+ be:</p>
+
+ <p><code><b>#include "schemas/base.hxx"</b></code></p></dd>
+
+ <dt><code><b>--include-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to transform
+ <code><b>#include</b></code> directive paths. <i>regex</i> is a Perl-like
+ regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. Any
+ character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported.
+
+ <p>All the regular expressions are pushed into a stack with the last
+ specified expression considered first. The first match that succeeds is
+ used.</p>
+
+ <p>As an example, the following expression transforms paths in the form
+ <code><b>schemas/foo/bar</b></code> to paths in the form
+ <code><b>generated/foo/bar</b></code>:</p>
+
+ <p><code><b>%schemas/(.+)%generated/$1%</b></code></p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p></dd>
+
+ <dt><code><b>--include-regex-trace</b></code></dt>
+ <dd>Trace the process of applying regular expressions specified with the
+ <code><b>--include-regex</b></code> option. Use this option to find out why
+ your regular expressions don't do what you expected them to do.</dd>
+
+ <dt><code><b>--guard-prefix</b></code> <i>prefix</i></dt>
+ <dd>Add <i>prefix</i> to generated header inclusion guards. The prefix is
+ transformed to upper case and characters that are illegal in a preprocessor
+ macro name are replaced with underscores. If this option is not specified
+ then the directory part of the input schema file is used as a prefix.</dd>
+
+ <dt><code><b>--hxx-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>.hxx</b></code> to construct the name of the header file. Note that
+ this suffix is also used to construct names of header files corresponding to
+ included/imported schemas.</dd>
+
+ <dt><code><b>--ixx-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>.ixx</b></code> to construct the name of the inline file.</dd>
+
+ <dt><code><b>--cxx-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>.cxx</b></code> to construct the name of the source file.</dd>
+
+ <dt><code><b>--fwd-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>-fwd.hxx</b></code> to construct the name of the forward
+ declaration file.</dd>
+
+ <dt><code><b>--hxx-regex</b></code> <i>regex</i></dt>
+ <dd>Use the provided expression to construct the name of the header file.
+ <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. Note
+ that this expression is also used to construct names of header files
+ corresponding to included/imported schemas. See also the REGEX AND SHELL
+ QUOTING section below.</dd>
+
+ <dt><code><b>--ixx-regex</b></code> <i>regex</i></dt>
+ <dd>Use the provided expression to construct the name of the inline file.
+ <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. See
+ also the REGEX AND SHELL QUOTING section below.</dd>
+
+ <dt><code><b>--cxx-regex</b></code> <i>regex</i></dt>
+ <dd>Use the provided expression to construct the name of the source file.
+ <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. See
+ also the REGEX AND SHELL QUOTING section below.</dd>
+
+ <dt><code><b>--fwd-regex</b></code> <i>regex</i></dt>
+ <dd>Use the provided expression to construct the name of the forward declaration
+ file. <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. See
+ also the REGEX AND SHELL QUOTING section below.</dd>
+
+ <dt><code><b>--hxx-prologue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the beginning of the header file.</dd>
+
+ <dt><code><b>--ixx-prologue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the beginning of the inline file.</dd>
+
+ <dt><code><b>--cxx-prologue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the beginning of the source file.</dd>
+
+ <dt><code><b>--fwd-prologue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the beginning of the forward declaration file.</dd>
+
+ <dt><code><b>--prologue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the beginning of each generated file for which there
+ is no file-specific prologue.</dd>
+
+ <dt><code><b>--hxx-epilogue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the end of the header file.</dd>
+
+ <dt><code><b>--ixx-epilogue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the end of the inline file.</dd>
+
+ <dt><code><b>--cxx-epilogue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the end of the source file.</dd>
+
+ <dt><code><b>--fwd-epilogue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the end of the forward declaration file.</dd>
+
+ <dt><code><b>--epilogue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the end of each generated file for which there is no
+ file-specific epilogue.</dd>
+
+ <dt><code><b>--hxx-prologue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the beginning of the header file.</dd>
+
+ <dt><code><b>--ixx-prologue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the beginning of the inline file.</dd>
+
+ <dt><code><b>--cxx-prologue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the beginning of the source file.</dd>
+
+ <dt><code><b>--fwd-prologue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the beginning of the forward
+ declaration file.</dd>
+
+ <dt><code><b>--prologue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the beginning of each generated
+ file for which there is no file-specific prologue file.</dd>
+
+ <dt><code><b>--hxx-epilogue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the end of the header file.</dd>
+
+ <dt><code><b>--ixx-epilogue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the end of the inline file.</dd>
+
+ <dt><code><b>--cxx-epilogue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the end of the source file.</dd>
+
+ <dt><code><b>--fwd-epilogue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the end of the forward declaration
+ file.</dd>
+
+ <dt><code><b>--epilogue-file</b></code> <i>file</i></dt>
+ <dd>Insert the content of the <i>file</i> at the end of each generated file for
+ which there is no file-specific epilogue file.</dd>
+
+ <dt><code><b>--export-symbol</b></code> <i>symbol</i></dt>
+ <dd>Insert <i>symbol</i> in places where DLL export/import control statements
+ (<code><b>__declspec(dllexport/dllimport)</b></code>) are necessary.</dd>
+
+ <dt><code><b>--export-xml-schema</b></code></dt>
+ <dd>Export/import types in the XML Schema namespace using the export symbol
+ provided with the <code><b>--export-symbol</b></code> option. The
+ <code><b>XSD_NO_EXPORT</b></code> macro can be used to omit this code during
+ C++ compilation, which may be useful if you would like to use the same
+ generated code across multiple platforms.</dd>
+
+ <dt><code><b>--export-maps</b></code></dt>
+ <dd>Export polymorphism support maps from a Win32 DLL into which this generated
+ code is placed. This is necessary when your type hierarchy is split across
+ several DLLs since otherwise each DLL will have its own set of maps. In this
+ situation the generated code for the DLL which contains base types and/or
+ substitution group heads should be compiled with this option and the
+ generated code for all other DLLs should be compiled with
+ <code><b>--import-maps</b></code>. This option is only valid together with
+ <code><b>--generate-polymorphic</b></code>. The
+ <code><b>XSD_NO_EXPORT</b></code> macro can be used to omit this code during
+ C++ compilation, which may be useful if you would like to use the same
+ generated code across multiple platforms.</dd>
+
+ <dt><code><b>--import-maps</b></code></dt>
+ <dd>Import polymorphism support maps to a Win32 DLL or executable into which
+ this generated code is linked. See the <code><b>--export-maps</b></code>
+ option documentation for details. This options is only valid together with
+ <code><b>--generate-polymorphic</b></code>. The
+ <code><b>XSD_NO_EXPORT</b></code> macro can be used to omit this code during
+ C++ compilation, which may be useful if you would like to use the same
+ generated code across multiple platforms.</dd>
+
+ <dt><code><b>--generate-dep</b></code></dt>
+ <dd>Generate <code><b>make</b></code> dependency information. This option
+ triggers the creation of the <code><b>.d</b></code> file containing the
+ dependencies of the generated files on the main schema file as well as all
+ the schema files that it includes/imports, transitively. This dependency
+ file is then normally included into the main <code><b>makefile</b></code> to
+ implement automatic dependency tracking.
+
+ <p>Note also that automatic dependency generation is not supported in the
+ file-per-type mode (<code><b>--file-per-type</b></code>). In this case, all
+ the generated files are produced with a single compiler invocation and
+ depend on all the schemas. As a result, it is easier to establish such a
+ dependency manually, perhaps with the help of the
+ <code><b>--file-list*</b></code> options.</p></dd>
+
+ <dt><code><b>--generate-dep-only</b></code></dt>
+ <dd>Generate <code><b>make</b></code> dependency information only.</dd>
+
+ <dt><code><b>--dep-phony</b></code></dt>
+ <dd>Generate phony targets for included/imported schema files, causing each to
+ depend on nothing. Such dummy rules work around <code><b>make</b></code>
+ errors caused by the removal of schema files without also updating the
+ dependency file to match.</dd>
+
+ <dt><code><b>--dep-target</b></code> <i>target</i></dt>
+ <dd>Change the target of the dependency rule. By default it contains all the
+ generated C++ files as well as the dependency file itself, without any
+ directory prefixes. If you require multiple targets, then you can specify
+ them as a single, space-separated argument or you can repeat this option
+ multiple times.</dd>
+
+ <dt><code><b>--dep-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default <code><b>.d</b></code>
+ to construct the name of the dependency file.</dd>
+
+ <dt><code><b>--dep-regex</b></code> <i>regex</i></dt>
+ <dd>Use the provided expression to construct the name of the dependency file.
+ <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. See
+ also the REGEX AND SHELL QUOTING section below.</dd>
+
+ <dt><code><b>--disable-warning</b></code> <i>warn</i></dt>
+ <dd>Disable printing warning with id <i>warn</i>. If <code><b>all</b></code> is
+ specified for the warning id then all warnings are disabled.</dd>
+
+ <dt><code><b>--options-file</b></code> <i>file</i></dt>
+ <dd>Read additional options from <i>file</i>. Each option should appearing on a
+ separate line optionally followed by space and an option value. Empty lines
+ and lines starting with <code><b>#</b></code> are ignored. Option values can
+ be enclosed in double (<code><b>"</b></code>) or single
+ (<code><b>'</b></code>) quotes to preserve leading and trailing whitespaces
+ as well as to specify empty values. If the value itself contains trailing or
+ leading quotes, enclose it with an extra pair of quotes, for example
+ <code><b>'"x"'</b></code>. Non-leading and non-trailing quotes are
+ interpreted as being part of the option value.
+
+ <p>The semantics of providing options in a file is equivalent to providing
+ the same set of options in the same order on the command line at the point
+ where the <code><b>--options-file</b></code> option is specified except that
+ the shell escaping and quoting is not required. You can repeat this option
+ to specify more than one options file.</p></dd>
+
+ <dt><code><b>--show-sloc</b></code></dt>
+ <dd>Show the number of generated physical source lines of code (SLOC).</dd>
+
+ <dt><code><b>--sloc-limit</b></code> <i>num</i></dt>
+ <dd>Check that the number of generated physical source lines of code (SLOC) does
+ not exceed <i>num</i>.</dd>
+
+ <dt><code><b>--proprietary-license</b></code></dt>
+ <dd>Indicate that the generated code is licensed under a proprietary license
+ instead of the GPL.</dd>
+
+ <dt><code><b>--custom-literals</b></code> <i>file</i></dt>
+ <dd>Load custom XML string to C++ literal mappings from <i>file</i>. This
+ mechanism can be useful if you are using a custom character encoding and
+ some of the strings in your schemas, for example element/attribute names or
+ enumeration values, contain non-ASCII characters. In this case you will need
+ to provide a custom mapping to C++ literals for such strings. The format of
+ this file is specified in the <code><b>custom-literals.xsd</b></code> XML
+ Schema file that can be found in the documentation directory.</dd>
+
+ <dt><code><b>--preserve-anonymous</b></code></dt>
+ <dd>Preserve anonymous types. By default anonymous types are automatically named
+ with names derived from the enclosing elements/attributes. Because mappings
+ implemented by this compiler require all types to be named, this option is
+ only useful if you want to make sure your schemas don't have anonymous
+ types.</dd>
+
+ <dt><code><b>--show-anonymous</b></code></dt>
+ <dd>Show elements and attributes that are of anonymous types. This option only
+ makes sense together with the <code><b>--preserve-anonymous</b></code>
+ option.</dd>
+
+ <dt><code><b>--anonymous-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to derive names for
+ anonymous types from the enclosing attributes/elements. <i>regex</i> is a
+ Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. Any
+ character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported.
+
+ <p>All the regular expressions are pushed into a stack with the last
+ specified expression considered first. The first match that succeeds is
+ used. Regular expressions are applied to a string in the form</p>
+
+ <p><code><i>filename</i> <i>namespace</i> <i>xpath</i></code></p>
+
+ <p>For instance:</p>
+
+ <p><code><b>hello.xsd http://example.com/hello element</b></code></p>
+
+ <p><code><b>hello.xsd http://example.com/hello type/element</b></code></p>
+
+ <p>As an example, the following expression makes all the derived names start
+ with capital letters. This could be useful when your naming convention
+ requires type names to start with capital letters:</p>
+
+ <p><code><b>%.* .* (.+/)*(.+)%\u$2%</b></code></p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p></dd>
+
+ <dt><code><b>--anonymous-regex-trace</b></code></dt>
+ <dd>Trace the process of applying regular expressions specified with the
+ <code><b>--anonymous-regex</b></code> option. Use this option to find out
+ why your regular expressions don't do what you expected them to do.</dd>
+
+ <dt><code><b>--location-map</b></code> <i>ol</i>=<i>nl</i></dt>
+ <dd>Map the original schema location <i>ol</i> that is specified in the XML
+ Schema include or import elements to new schema location <i>nl</i>. Repeat
+ this option to map more than one schema location. For example, the following
+ option maps the <code><b>http://example.com/foo.xsd</b></code> URL to the
+ <code><b>foo.xsd</b></code> local file.
+
+ <p><code><b>--location-map http://example.com/foo.xsd=foo.xsd</b></code></p></dd>
+
+ <dt><code><b>--location-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to map schema
+ locations that are specified in the XML Schema include or import elements.
+ <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. Any
+ character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported. All the regular
+ expressions are pushed into a stack with the last specified expression
+ considered first. The first match that succeeds is used.
+
+ <p>For example, the following expression maps URL locations in the form
+ <code><b>http://example.com/foo/bar.xsd</b></code> to local files in the
+ form <code><b>bar.xsd</b></code>:</p>
+
+ <p><code><b>%http://.+/(.+)%$1%</b></code></p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p></dd>
+
+ <dt><code><b>--location-regex-trace</b></code></dt>
+ <dd>Trace the process of applying regular expressions specified with the
+ <code><b>--location-regex</b></code> option. Use this option to find out why
+ your regular expressions don't do what you expected them to do.</dd>
+
+ <dt><code><b>--file-per-type</b></code></dt>
+ <dd>Generate a separate set of C++ files for each type defined in XML Schema.
+ Note that in this mode you only need to compile the root schema(s) and the
+ code will be generated for all included and imported schemas. This
+ compilation mode is primarily useful when some of your schemas cannot be
+ compiled separately or have cyclic dependencies which involve type
+ inheritance. Other options related to this mode are:
+ <code><b>--type-file-regex</b></code>,
+ <code><b>--schema-file-regex</b></code>,
+ <code><b>--fat-type-file</b></code>, and <code><b>--file-list</b></code>.</dd>
+
+ <dt><code><b>--type-file-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate type
+ names to file names when the <code><b>--file-per-type</b></code> option is
+ specified. <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. Any
+ character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported. All the regular
+ expressions are pushed into a stack with the last specified expression
+ considered first. The first match that succeeds is used. Regular expressions
+ are applied to a string in the form
+
+ <p><code><i>namespace</i> <i>type-name</i></code></p>
+
+ <p>For example, the following expression maps type <code><b>foo</b></code>
+ that is defined in the <code><b>http://example.com/bar</b></code> namespace
+ to file name <code><b>bar-foo</b></code>:</p>
+
+ <p><code><b>%http://example.com/(.+) (.+)%$1-$2%</b></code></p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p></dd>
+
+ <dt><code><b>--type-file-regex-trace</b></code></dt>
+ <dd>Trace the process of applying regular expressions specified with the
+ <code><b>--type-file-regex</b></code> option. Use this option to find out
+ why your regular expressions don't do what you expected them to do.</dd>
+
+ <dt><code><b>--schema-file-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate schema
+ file names when the <code><b>--file-per-type</b></code> option is specified.
+ <i>regex</i> is a Perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>. Any
+ character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported. All the regular
+ expressions are pushed into a stack with the last specified expression
+ considered first. The first match that succeeds is used. Regular Expressions
+ are applied to the absolute filesystem path of a schema file and the result,
+ including the directory part, if any, is used to derive the
+ <code><b>#include</b></code> directive paths as well as the generated C++
+ file paths. This option, along with <code><b>--type-file-regex</b></code>
+ are primarily useful to place the generated files into subdirectories or to
+ resolve file name conflicts.
+
+ <p>For example, the following expression maps schema files in the
+ <code><b>foo/1.0.0/</b></code> subdirectory to the files in the
+ <code><b>foo/</b></code> subdirectory. As a result, the
+ <code><b>#include</b></code> directive paths for such schemas will be in the
+ <code><b>foo/schema.hxx</b></code> form and the generated C++ files will be
+ placed into the <code><b>foo/</b></code> subdirectory:</p>
+
+ <p><code><b>%.*/foo/1.0.0/(.+)%foo/$1%</b></code></p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p></dd>
+
+ <dt><code><b>--schema-file-regex-trace</b></code></dt>
+ <dd>Trace the process of applying regular expressions specified with the
+ <code><b>--schema-file-regex</b></code> option. Use this option to find out
+ why your regular expressions don't do what you expected them to do.</dd>
+
+ <dt><code><b>--fat-type-file</b></code></dt>
+ <dd>Generate code corresponding to global elements into type files instead of
+ schema files when the <code><b>--type-file-regex</b></code> option is
+ specified. This option is primarily useful when trying to minimize the
+ amount of object code that is linked to an executable by packaging compiled
+ generated code into a static (archive) library.</dd>
+
+ <dt><code><b>--file-list</b></code> <i>file</i></dt>
+ <dd>Write a list of generated C++ files to <i>file</i>. This option is primarily
+ useful in the file-per-type compilation mode
+ (<code><b>--file-per-type</b></code>) to create a list of generated C++
+ files, for example, as a makefile fragment.</dd>
+
+ <dt><code><b>--file-list-prologue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the beginning of the file list. As a convenience, all
+ occurrences of the <code><b>\n</b></code> character sequence in <i>text</i>
+ are replaced with new lines. This option can, for example, be used to assign
+ the generated file list to a makefile variable.</dd>
+
+ <dt><code><b>--file-list-epilogue</b></code> <i>text</i></dt>
+ <dd>Insert <i>text</i> at the end of the file list. As a convenience, all
+ occurrences of the <code><b>\n</b></code> character sequence in <i>text</i>
+ are replaced with new lines.</dd>
+
+ <dt><code><b>--file-list-delim</b></code> <i>text</i></dt>
+ <dd>Delimit file names written to the file list with <i>text</i> instead of new
+ lines. As a convenience, all occurrences of the <code><b>\n</b></code>
+ character sequence in <i>text</i> are replaced with new lines.</dd>
+
+</dl>
+ <h2>CXX-TREE COMMAND OPTIONS</h2>
+
+<!--
+ The following documentation was generated by CLI, a command
+ line interface compiler for C++.
+-->
+
+<dl class="options">
+ <dt><code><b>--generate-polymorphic</b></code></dt>
+ <dd>Generate polymorphism-aware code. Specify this option if you use
+ substitution groups or <code><b>xsi:type</b></code>. Use the
+ <code><b>--polymorphic-type</b></code> or
+ <code><b>--polymorphic-type-all</b></code> option to specify which type
+ hierarchies are polymorphic.</dd>
+
+ <dt><code><b>--polymorphic-type</b></code> <i>type</i></dt>
+ <dd>Indicate that <i>type</i> is a root of a polymorphic type hierarchy. The
+ compiler can often automatically determine which types are polymorphic based
+ on the substitution group declarations. However, you may need to use this
+ option if you are not using substitution groups or if substitution groups
+ are defined in another schema. You need to specify this option when
+ compiling every schema file that references <i>type</i>. The <i>type</i>
+ argument is an XML Schema type name that can be optionally qualified with a
+ namespace in the <code><i>namespace</i><b>#</b><i>name</i></code> form.</dd>
+
+ <dt><code><b>--polymorphic-type-all</b></code></dt>
+ <dd>Indicate that all types should be treated as polymorphic.</dd>
+
+ <dt><code><b>--polymorphic-plate</b></code> <i>num</i></dt>
+ <dd>Specify the polymorphic map plate the generated code should register on.
+ This functionality is primarily useful to segregate multiple schemas that
+ define the same polymorphic types.</dd>
+
+ <dt><code><b>--ordered-type</b></code> <i>type</i></dt>
+ <dd>Indicate that element order in <i>type</i> is significant. An example would
+ be a complex type with unbounded choice as a content model where the element
+ order in XML has application-specific semantics. For ordered types the
+ compiler generates a special container data member and a corresponding set
+ of accessors and modifiers that are used to capture the order of elements
+ and, for mixed content, of text.
+
+ <p>The <i>type</i> argument is an XML Schema type name that can be
+ optionally qualified with a namespace in the
+ <code><i>namespace</i><b>#</b><i>name</i></code> form. Note also that you
+ will need to specify this option when compiling every schema file that has
+ other ordered types derived from this type.</p></dd>
+
+ <dt><code><b>--ordered-type-derived</b></code></dt>
+ <dd>Automatically treat types derived from ordered bases as also ordered. This
+ is primarily useful if you would like to be able to iterate over the
+ complete content using the content order container.</dd>
+
+ <dt><code><b>--ordered-type-mixed</b></code></dt>
+ <dd>Automatically treat complex types with mixed content as ordered.</dd>
+
+ <dt><code><b>--ordered-type-all</b></code></dt>
+ <dd>Indicate that element order in all types is significant.</dd>
+
+ <dt><code><b>--order-container</b></code> <i>type</i></dt>
+ <dd>Specify a custom class template that should be used as a container for the
+ content order in ordered types instead of the default
+ <code><b>std::vector</b></code>. See <code><b>--ordered-type</b></code> for
+ more information on ordered type. This option is primarily useful if you
+ need to perform more complex lookups in the content order container, for
+ example by element id. In this case, a container like Boost multi-index may
+ be more convenient. Note that if using a custom container, you will also
+ most likely need to include the relevant headers using the
+ <code><b>--hxx-prologue*</b></code> options.</dd>
+
+ <dt><code><b>--generate-serialization</b></code></dt>
+ <dd>Generate serialization functions. Serialization functions convert the object
+ model back to XML.</dd>
+
+ <dt><code><b>--generate-ostream</b></code></dt>
+ <dd>Generate ostream insertion operators (<code><b>operator&lt;&lt;</b></code>)
+ for generated types. This allows one to easily print a fragment or the whole
+ object model for debugging or logging.</dd>
+
+ <dt><code><b>--generate-doxygen</b></code></dt>
+ <dd>Generate documentation comments suitable for extraction by the Doxygen
+ documentation system. Documentation from annotations is added to the
+ comments if present in the schema.</dd>
+
+ <dt><code><b>--generate-comparison</b></code></dt>
+ <dd>Generate comparison operators (<code><b>operator==</b></code> and
+ <code><b>operator!=</b></code>) for complex types. Comparison is performed
+ member-wise.</dd>
+
+ <dt><code><b>--generate-default-ctor</b></code></dt>
+ <dd>Generate default constructors even for types that have required members.
+ Required members of an instance constructed using such a constructor are not
+ initialized and accessing them results in undefined behavior.</dd>
+
+ <dt><code><b>--generate-from-base-ctor</b></code></dt>
+ <dd>Generate constructors that expect an instance of a base type followed by all
+ required members.</dd>
+
+ <dt><code><b>--suppress-assignment</b></code></dt>
+ <dd>Suppress the generation of copy assignment operators for complex types. If
+ this option is specified, the copy assignment operators for such types are
+ declared private and left unimplemented.</dd>
+
+ <dt><code><b>--generate-detach</b></code></dt>
+ <dd>Generate detach functions for required elements and attributes. Detach
+ functions for optional and sequence cardinalities are provided by the
+ respective containers. These functions, for example, allow you to move
+ sub-trees in the object model either within the same tree or between
+ different trees.</dd>
+
+ <dt><code><b>--generate-wildcard</b></code></dt>
+ <dd>Generate accessors and modifiers as well as parsing and serialization code
+ for XML Schema wildcards (<code><b>any</b></code> and
+ <code><b>anyAttribute</b></code>). XML content matched by wildcards is
+ presented as DOM fragments. Note that you need to initialize the Xerces-C++
+ runtime if you are using this option.</dd>
+
+ <dt><code><b>--generate-any-type</b></code></dt>
+ <dd>Extract and store content of the XML Schema <code><b>anyType</b></code> type
+ as a DOM fragment. Note that you need to initialize the Xerces-C++ runtime
+ if you are using this option.</dd>
+
+ <dt><code><b>--generate-insertion</b></code> <i>os</i></dt>
+ <dd>Generate data representation stream insertion operators for the <i>os</i>
+ output stream type. Repeat this option to specify more than one stream type.
+ The ACE CDR stream (<code><b>ACE_OutputCDR</b></code>) and RPC XDR are
+ recognized by the compiler and the necessary <code><b>#include</b></code>
+ directives are automatically generated. For custom stream types use the
+ <code><b>--hxx-prologue*</b></code> options to provide the necessary
+ declarations.</dd>
+
+ <dt><code><b>--generate-extraction</b></code> <i>is</i></dt>
+ <dd>Generate data representation stream extraction constructors for the
+ <i>is</i> input stream type. Repeat this option to specify more than one
+ stream type. The ACE CDR stream (<code><b>ACE_InputCDR</b></code>) and RPC
+ XDR are recognized by the compiler and the necessary
+ <code><b>#include</b></code> directives are automatically generated. For
+ custom stream types use the <code><b>--hxx-prologue*</b></code> options to
+ provide the necessary declarations.</dd>
+
+ <dt><code><b>--generate-forward</b></code></dt>
+ <dd>Generate a separate header file with forward declarations for the types
+ being generated.</dd>
+
+ <dt><code><b>--suppress-parsing</b></code></dt>
+ <dd>Suppress the generation of the parsing functions and constructors. Use this
+ option to reduce the generated code size when parsing from XML is not
+ needed.</dd>
+
+ <dt><code><b>--generate-element-type</b></code></dt>
+ <dd>Generate types instead of parsing and serialization functions for root
+ elements. This is primarily useful to distinguish object models with the
+ same root type but with different root elements.</dd>
+
+ <dt><code><b>--generate-element-map</b></code></dt>
+ <dd>Generate a root element map that allows uniform parsing and serialization of
+ multiple root elements. This option is only valid together with
+ <code><b>--generate-element-type</b></code>.</dd>
+
+ <dt><code><b>--generate-intellisense</b></code></dt>
+ <dd>Generate workarounds for IntelliSense bugs in Visual Studio 2005 (8.0). When
+ this option is used, the resulting code is slightly more verbose.
+ IntelliSense in Visual Studio 2008 (9.0) and later does not require these
+ workarounds. Support for IntelliSense in Visual Studio 2003 (7.1) is
+ improved with this option but is still incomplete.</dd>
+
+ <dt><code><b>--omit-default-attributes</b></code></dt>
+ <dd>Omit attributes with default and fixed values from serialized XML documents.</dd>
+
+ <dt><code><b>--type-naming</b></code> <i>style</i></dt>
+ <dd>Specify the type naming convention that should be used in the generated
+ code. Valid styles are <code><b>knr</b></code> (default),
+ <code><b>ucc</b></code>, and <code><b>java</b></code>. See the NAMING
+ CONVENTION section below for more information.</dd>
+
+ <dt><code><b>--function-naming</b></code> <i>style</i></dt>
+ <dd>Specify the function naming convention that should be used in the generated
+ code. Valid styles are <code><b>knr</b></code> (default),
+ <code><b>lcc</b></code>, and <code><b>java</b></code>. See the NAMING
+ CONVENTION section below for more information.</dd>
+
+ <dt><code><b>--type-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema type names to C++ type names. See the NAMING CONVENTION section below
+ for more information.</dd>
+
+ <dt><code><b>--accessor-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes to C++ accessor function names. See the
+ NAMING CONVENTION section below for more information.</dd>
+
+ <dt><code><b>--one-accessor-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes with cardinality one to C++ accessor
+ function names. See the NAMING CONVENTION section below for more
+ information.</dd>
+
+ <dt><code><b>--opt-accessor-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes with cardinality optional to C++
+ accessor function names. See the NAMING CONVENTION section below for more
+ information.</dd>
+
+ <dt><code><b>--seq-accessor-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes with cardinality sequence to C++
+ accessor function names. See the NAMING CONVENTION section below for more
+ information.</dd>
+
+ <dt><code><b>--modifier-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes to C++ modifier function names. See the
+ NAMING CONVENTION section below for more information.</dd>
+
+ <dt><code><b>--one-modifier-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes with cardinality one to C++ modifier
+ function names. See the NAMING CONVENTION section below for more
+ information.</dd>
+
+ <dt><code><b>--opt-modifier-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes with cardinality optional to C++
+ modifier function names. See the NAMING CONVENTION section below for more
+ information.</dd>
+
+ <dt><code><b>--seq-modifier-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema names of elements/attributes with cardinality sequence to C++
+ modifier function names. See the NAMING CONVENTION section below for more
+ information.</dd>
+
+ <dt><code><b>--parser-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema element names to C++ parsing function names. See the NAMING
+ CONVENTION section below for more information.</dd>
+
+ <dt><code><b>--serializer-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema element names to C++ serialization function names. See the NAMING
+ CONVENTION section below for more information.</dd>
+
+ <dt><code><b>--const-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema-derived names to C++ constant names. See the NAMING CONVENTION
+ section below for more information.</dd>
+
+ <dt><code><b>--enumerator-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema enumeration values to C++ enumerator names. See the NAMING CONVENTION
+ section below for more information.</dd>
+
+ <dt><code><b>--element-type-regex</b></code> <i>regex</i></dt>
+ <dd>Add <i>regex</i> to the list of regular expressions used to translate XML
+ Schema element names to C++ element type names. See the NAMING CONVENTION
+ section below for more information.</dd>
+
+ <dt><code><b>--name-regex-trace</b></code></dt>
+ <dd>Trace the process of applying regular expressions specified with the name
+ transformation options. Use this option to find out why your regular
+ expressions don't do what you expected them to do.</dd>
+
+ <dt><code><b>--root-element-first</b></code></dt>
+ <dd>Treat only the first global element as a document root. By default all
+ global elements are considered document roots.</dd>
+
+ <dt><code><b>--root-element-last</b></code></dt>
+ <dd>Treat only the last global element as a document root. By default all global
+ elements are considered document roots.</dd>
+
+ <dt><code><b>--root-element-all</b></code></dt>
+ <dd>Treat all global elements as document roots. This is the default behavior.
+ By explicitly specifying this option you can suppress the warning that is
+ issued if more than one global element is defined.</dd>
+
+ <dt><code><b>--root-element-none</b></code></dt>
+ <dd>Do not treat any global elements as document roots. By default all global
+ elements are considered document roots.</dd>
+
+ <dt><code><b>--root-element</b></code> <i>element</i></dt>
+ <dd>Treat only <i>element</i> as a document root. Repeat this option to specify
+ more than one root element.</dd>
+
+ <dt><code><b>--custom-type</b></code> <i>map</i></dt>
+ <dd>Use a custom C++ type instead of the generated class. The <i>map</i>
+ argument is in the form
+ <code><i>name</i>[<b>=</b><i>type</i>[<b>/</b><i>base</i>]]</code>, where
+ <i>name</i> is a type name as defined in XML Schema and <i>type</i> is a C++
+ type name that should be used instead. If <i>type</i> is not present or
+ empty then the custom type is assumed to have the same name and be defined
+ in the same namespace as the generated class would have. If <i>base</i> is
+ specified then the generated class is still generated but with that name.</dd>
+
+ <dt><code><b>--custom-type-regex</b></code> <i>regex</i></dt>
+ <dd>Use custom C++ types instead of the generated classes. The <i>regex</i>
+ argument is in the form
+ <code><b>/</b><i>name-pat</i><b>/</b>[<i>type-sub</i><b>/</b>[<i>base-sub</i><b>/</b>]]</code>,
+ where <i>name-pat</i> is a regex pattern that will be matched against type
+ names as defined in XML Schema and <i>type-sub</i> is a C++ type name
+ substitution that should be used instead. If <i>type-sub</i> is not present
+ or its substitution results in an empty string then the custom type is
+ assumed to have the same name and be defined in the same namespace as the
+ generated class would have. If <i>base-sub</i> is present and its
+ substitution results in a non-empty string then the generated class is still
+ generated but with the result of this substitution as its name. The pattern
+ and substitutions are in the Perl regular expression format. See also the
+ REGEX AND SHELL QUOTING section below.</dd>
+
+ <dt><code><b>--parts</b></code> <i>num</i></dt>
+ <dd>Split generated source code into <i>num</i> parts. This is useful when
+ translating large, monolithic schemas and a C++ compiler is not able to
+ compile the resulting source code at once (usually due to insufficient
+ memory).</dd>
+
+ <dt><code><b>--parts-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use <i>suffix</i> instead of the default '<code><b>-</b></code>' to separate
+ the file name from the part number.</dd>
+
+</dl>
+ <h2>CXX-PARSER COMMAND OPTIONS</h2>
+
+<!--
+ The following documentation was generated by CLI, a command
+ line interface compiler for C++.
+-->
+
+<dl class="options">
+ <dt><code><b>--type-map</b></code> <i>mapfile</i></dt>
+ <dd>Read XML Schema to C++ type mapping information from <i>mapfile</i>. Repeat
+ this option to specify several type maps. Type maps are considered in order
+ of appearance and the first match is used. By default all user-defined types
+ are mapped to <code><b>void</b></code>. See the TYPE MAP section below for
+ more information.</dd>
+
+ <dt><code><b>--xml-parser</b></code> <i>parser</i></dt>
+ <dd>Use <i>parser</i> as the underlying XML parser. Valid values are
+ <code><b>xerces</b></code> for Xerces-C++ (default) and
+ <code><b>expat</b></code> for Expat.</dd>
+
+ <dt><code><b>--generate-validation</b></code></dt>
+ <dd>Generate validation code. The validation code ("perfect parser") ensures
+ that instance documents conform to the schema. Validation code is generated
+ by default when the selected underlying XML parser is non-validating
+ (<code><b>expat</b></code>).</dd>
+
+ <dt><code><b>--suppress-validation</b></code></dt>
+ <dd>Suppress the generation of validation code. Validation is suppressed by
+ default when the selected underlying XML parser is validating
+ (<code><b>xerces</b></code>).</dd>
+
+ <dt><code><b>--generate-polymorphic</b></code></dt>
+ <dd>Generate polymorphism-aware code. Specify this option if you use
+ substitution groups or <code><b>xsi:type</b></code>.</dd>
+
+ <dt><code><b>--generate-noop-impl</b></code></dt>
+ <dd>Generate a sample parser implementation that does nothing (no operation).
+ The sample implementation can then be filled with the application-specific
+ code. For an input file in the form <code><b>name.xsd</b></code> this option
+ triggers the generation of two additional C++ files in the form:
+ <code><b>name-pimpl.hxx</b></code> (parser implementation header file) and
+ <code><b>name-pimpl.cxx</b></code> (parser implementation source file).</dd>
+
+ <dt><code><b>--generate-print-impl</b></code></dt>
+ <dd>Generate a sample parser implementation that prints the XML data to
+ <code>STDOUT</code>. For an input file in the form
+ <code><b>name.xsd</b></code> this option triggers the generation of two
+ additional C++ files in the form: <code><b>name-pimpl.hxx</b></code> (parser
+ implementation header file) and <code><b>name-pimpl.cxx</b></code> (parser
+ implementation source file).</dd>
+
+ <dt><code><b>--generate-test-driver</b></code></dt>
+ <dd>Generate a test driver for the sample parser implementation. For an input
+ file in the form <code><b>name.xsd</b></code> this option triggers the
+ generation of an additional C++ file in the form
+ <code><b>name-driver.cxx</b></code>.</dd>
+
+ <dt><code><b>--force-overwrite</b></code></dt>
+ <dd>Force overwriting of the existing implementation and test driver files. Use
+ this option only if you do not mind loosing the changes you have made in the
+ sample implementation or test driver files.</dd>
+
+ <dt><code><b>--root-element-first</b></code></dt>
+ <dd>Indicate that the first global element is the document root. This
+ information is used to generate the test driver for the sample
+ implementation.</dd>
+
+ <dt><code><b>--root-element-last</b></code></dt>
+ <dd>Indicate that the last global element is the document root. This information
+ is used to generate the test driver for the sample implementation.</dd>
+
+ <dt><code><b>--root-element</b></code> <i>element</i></dt>
+ <dd>Indicate that <i>element</i> is the document root. This information is used
+ to generate the test driver for the sample implementation.</dd>
+
+ <dt><code><b>--skel-type-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>_pskel</b></code> to construct the names of the generated parser
+ skeletons.</dd>
+
+ <dt><code><b>--skel-file-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>-pskel</b></code> to construct the names of the generated parser
+ skeleton files.</dd>
+
+ <dt><code><b>--impl-type-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>_pimpl</b></code> to construct the names of the parser
+ implementations for the built-in XML Schema types as well as sample parser
+ implementations.</dd>
+
+ <dt><code><b>--impl-file-suffix</b></code> <i>suffix</i></dt>
+ <dd>Use the provided <i>suffix</i> instead of the default
+ <code><b>-pimpl</b></code> to construct the names of the generated sample
+ parser implementation files.</dd>
+
+</dl>
+ <h1>NAMING CONVENTION</h1>
+
+ <p>The compiler can be instructed to use a particular naming
+ convention in the generated code. A number of widely-used
+ conventions can be selected using the <code><b>--type-naming</b></code>
+ and <code><b>--function-naming</b></code> options. A custom
+ naming convention can be achieved using the
+ <code><b>--type-regex</b></code>,
+ <code><b>--accessor-regex</b></code>,
+ <code><b>--one-accessor-regex</b></code>,
+ <code><b>--opt-accessor-regex</b></code>,
+ <code><b>--seq-accessor-regex</b></code>,
+ <code><b>--modifier-regex</b></code>,
+ <code><b>--one-modifier-regex</b></code>,
+ <code><b>--opt-modifier-regex</b></code>,
+ <code><b>--seq-modifier-regex</b></code>,
+ <code><b>--parser-regex</b></code>,
+ <code><b>--serializer-regex</b></code>,
+ <code><b>--const-regex</b></code>,
+ <code><b>--enumerator-regex</b></code>, and
+ <code><b>--element-type-regex</b></code> options.
+ </p>
+
+ <p>The <code><b>--type-naming</b></code> option specifies the
+ convention that should be used for naming C++ types. Possible
+ values for this option are <code><b>knr</b></code> (default),
+ <code><b>ucc</b></code>, and <code><b>java</b></code>. The
+ <code><b>knr</b></code> value (stands for K&amp;R) signifies
+ the standard, lower-case naming convention with the underscore
+ used as a word delimiter, for example: <code>foo</code>,
+ <code>foo_bar</code>. The <code><b>ucc</b></code> (stands
+ for upper-camel-case) and
+ <code><b>java</b></code> values a synonyms for the same
+ naming convention where the first letter of each word in the
+ name is capitalized, for example: <code>Foo</code>,
+ <code>FooBar</code>.</p>
+
+ <p>Similarly, the <code><b>--function-naming</b></code> option
+ specifies the convention that should be used for naming C++
+ functions. Possible values for this option are <code><b>knr</b></code>
+ (default), <code><b>lcc</b></code>, and <code><b>java</b></code>. The
+ <code><b>knr</b></code> value (stands for K&amp;R) signifies
+ the standard, lower-case naming convention with the underscore
+ used as a word delimiter, for example: <code>foo()</code>,
+ <code>foo_bar()</code>. The <code><b>lcc</b></code> value
+ (stands for lower-camel-case) signifies a naming convention
+ where the first letter of each word except the first is
+ capitalized, for example: <code>foo()</code>, <code>fooBar()</code>.
+ The <code><b>java</b></code> naming convention is similar to
+ the lower-camel-case one except that accessor functions are prefixed
+ with <code>get</code>, modifier functions are prefixed
+ with <code>set</code>, parsing functions are prefixed
+ with <code>parse</code>, and serialization functions are
+ prefixed with <code>serialize</code>, for example:
+ <code>getFoo()</code>, <code>setFooBar()</code>,
+ <code>parseRoot()</code>, <code>serializeRoot()</code>.</p>
+
+ <p>Note that the naming conventions specified with the
+ <code><b>--type-naming</b></code> and
+ <code><b>--function-naming</b></code> options perform only limited
+ transformations on the names that come from the schema in the
+ form of type, attribute, and element names. In other words, to
+ get consistent results, your schemas should follow a similar
+ naming convention as the one you would like to have in the
+ generated code. Alternatively, you can use the
+ <code><b>--*-regex</b></code> options (discussed below)
+ to perform further transformations on the names that come from
+ the schema.</p>
+
+ <p>The
+ <code><b>--type-regex</b></code>,
+ <code><b>--accessor-regex</b></code>,
+ <code><b>--one-accessor-regex</b></code>,
+ <code><b>--opt-accessor-regex</b></code>,
+ <code><b>--seq-accessor-regex</b></code>,
+ <code><b>--modifier-regex</b></code>,
+ <code><b>--one-modifier-regex</b></code>,
+ <code><b>--opt-modifier-regex</b></code>,
+ <code><b>--seq-modifier-regex</b></code>,
+ <code><b>--parser-regex</b></code>,
+ <code><b>--serializer-regex</b></code>,
+ <code><b>--const-regex</b></code>,
+ <code><b>--enumerator-regex</b></code>, and
+ <code><b>--element-type-regex</b></code> options allow you to
+ specify extra regular expressions for each name category in
+ addition to the predefined set that is added depending on
+ the <code><b>--type-naming</b></code> and
+ <code><b>--function-naming</b></code> options. Expressions
+ that are provided with the <code><b>--*-regex</b></code>
+ options are evaluated prior to any predefined expressions.
+ This allows you to selectively override some or all of the
+ predefined transformations. When debugging your own expressions,
+ it is often useful to see which expressions match which names.
+ The <code><b>--name-regex-trace</b></code> option allows you
+ to trace the process of applying regular expressions to
+ names.</p>
+
+ <p>The value for the <code><b>--*-regex</b></code> options should be
+ a perl-like regular expression in the form
+ <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
+ Any character can be used as a delimiter instead of <code><b>/</b></code>.
+ Escaping of the delimiter character in <code><i>pattern</i></code> or
+ <code><i>replacement</i></code> is not supported.
+ All the regular expressions for each category are pushed into a
+ category-specific stack with the last specified expression
+ considered first. The first match that succeeds is used. For the
+ <code><b>--one-accessor-regex</b></code> (accessors with cardinality one),
+ <code><b>--opt-accessor-regex</b></code> (accessors with cardinality optional), and
+ <code><b>--seq-accessor-regex</b></code> (accessors with cardinality sequence)
+ categories the <code><b>--accessor-regex</b></code> expressions are
+ used as a fallback. For the
+ <code><b>--one-modifier-regex</b></code>,
+ <code><b>--opt-modifier-regex</b></code>, and
+ <code><b>--seq-modifier-regex</b></code>
+ categories the <code><b>--modifier-regex</b></code> expressions are
+ used as a fallback. For the <code><b>--element-type-regex</b></code>
+ category the <code><b>--type-regex</b></code> expressions are
+ used as a fallback.</p>
+
+ <p>The type name expressions (<code><b>--type-regex</b></code>)
+ are evaluated on the name string that has the following
+ format:</p>
+
+ <p><code>[<i>namespace</i> ]<i>name</i>[,<i>name</i>][,<i>name</i>][,<i>name</i>]</code></p>
+
+ <p>The element type name expressions
+ (<code><b>--element-type-regex</b></code>), effective only when
+ the <code><b>--generate-element-type</b></code> option is specified,
+ are evaluated on the name string that has the following
+ format:</p>
+
+ <p><code><i>namespace</i> <i>name</i></code></p>
+
+ <p>In the type name format the <code><i>namespace</i></code> part
+ followed by a space is only present for global type names. For
+ global types and elements defined in schemas without a target
+ namespace, the <code><i>namespace</i></code> part is empty but
+ the space is still present. In the type name format after the
+ initial <code><i>name</i></code> component, up to three additional
+ <code><i>name</i></code> components can be present, separated
+ by commas. For example:</p>
+
+ <p><code><b>http://example.com/hello type</b></code></p>
+ <p><code><b>foo</b></code></p>
+ <p><code><b>foo,iterator</b></code></p>
+ <p><code><b>foo,const,iterator</b></code></p>
+
+ <p>The following set of predefined regular expressions is used to
+ transform type names when the upper-camel-case naming convention
+ is selected:</p>
+
+ <p><code><b>/(?:[^ ]* )?([^,]+)/\u$1/</b></code></p>
+ <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+)/\u$1\u$2/</b></code></p>
+ <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+),([^,]+)/\u$1\u$2\u$3/</b></code></p>
+ <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+),([^,]+),([^,]+)/\u$1\u$2\u$3\u$4/</b></code></p>
+
+ <p>The accessor and modifier expressions
+ (<code><b>--*accessor-regex</b></code> and
+ <code><b>--*modifier-regex</b></code>) are evaluated on the name string
+ that has the following format:</p>
+
+ <p><code><i>name</i>[,<i>name</i>][,<i>name</i>]</code></p>
+
+ <p>After the initial <code><i>name</i></code> component, up to two
+ additional <code><i>name</i></code> components can be present,
+ separated by commas. For example:</p>
+
+ <p><code><b>foo</b></code></p>
+ <p><code><b>dom,document</b></code></p>
+ <p><code><b>foo,default,value</b></code></p>
+
+ <p>The following set of predefined regular expressions is used to
+ transform accessor names when the <code><b>java</b></code> naming
+ convention is selected:</p>
+
+ <p><code><b>/([^,]+)/get\u$1/</b></code></p>
+ <p><code><b>/([^,]+),([^,]+)/get\u$1\u$2/</b></code></p>
+ <p><code><b>/([^,]+),([^,]+),([^,]+)/get\u$1\u$2\u$3/</b></code></p>
+
+ <p>For the parser, serializer, and enumerator categories, the
+ corresponding regular expressions are evaluated on local names of
+ elements and on enumeration values, respectively. For example, the
+ following predefined regular expression is used to transform parsing
+ function names when the <code><b>java</b></code> naming convention
+ is selected:</p>
+
+ <p><code><b>/(.+)/parse\u$1/</b></code></p>
+
+ <p>The const category is used to create C++ constant names for the
+ element/wildcard/text content ids in ordered types.</p>
+
+ <p>See also the REGEX AND SHELL QUOTING section below.</p>
+
+ <h1>TYPE MAP</h1>
+
+ <p>Type map files are used in C++/Parser to define a mapping between
+ XML Schema and C++ types. The compiler uses this information
+ to determine the return types of <code><b>post_*</b></code>
+ functions in parser skeletons corresponding to XML Schema
+ types as well as argument types for callbacks corresponding
+ to elements and attributes of these types.</p>
+
+ <p>The compiler has a set of predefined mapping rules that map
+ built-in XML Schema types to suitable C++ types (discussed
+ below) and all other types to <code><b>void</b></code>.
+ By providing your own type maps you can override these predefined
+ rules. The format of the type map file is presented below:
+ </p>
+
+ <pre>
+namespace &lt;schema-namespace> [&lt;cxx-namespace>]
+{
+ (include &lt;file-name>;)*
+ ([type] &lt;schema-type> &lt;cxx-ret-type> [&lt;cxx-arg-type>];)*
+}
+ </pre>
+
+ <p>Both <code><i>&lt;schema-namespace></i></code> and
+ <code><i>&lt;schema-type></i></code> are regex patterns while
+ <code><i>&lt;cxx-namespace></i></code>,
+ <code><i>&lt;cxx-ret-type></i></code>, and
+ <code><i>&lt;cxx-arg-type></i></code> are regex pattern
+ substitutions. All names can be optionally enclosed in
+ <code><b>" "</b></code>, for example, to include white-spaces.</p>
+
+ <p><code><i>&lt;schema-namespace></i></code> determines XML
+ Schema namespace. Optional <code><i>&lt;cxx-namespace></i></code>
+ is prefixed to every C++ type name in this namespace declaration.
+ <code><i>&lt;cxx-ret-type></i></code> is a C++ type name that is
+ used as a return type for the <code><b>post_*</b></code> functions.
+ Optional <code><i>&lt;cxx-arg-type></i></code> is an argument
+ type for callback functions corresponding to elements and attributes
+ of this type. If
+ <code><i>&lt;cxx-arg-type></i></code> is not specified, it defaults
+ to <code><i>&lt;cxx-ret-type></i></code> if <code><i>&lt;cxx-ret-type></i></code>
+ ends with <code><b>*</b></code> or <code><b>&amp;</b></code> (that is,
+ it is a pointer or a reference) and
+ <code><b>const</b>&nbsp;<i>&lt;cxx-ret-type></i><b>&amp;</b></code>
+ otherwise.
+ <code><i>&lt;file-name></i></code> is a file name either in the
+ <code><b>" "</b></code> or <code><b>&lt; ></b></code> format
+ and is added with the <code><b>#include</b></code> directive to
+ the generated code.</p>
+
+ <p>The <code><b>#</b></code> character starts a comment that ends
+ with a new line or end of file. To specify a name that contains
+ <code><b>#</b></code> enclose it in <code><b>" "</b></code>.
+ For example:</p>
+
+ <pre>
+namespace http://www.example.com/xmlns/my my
+{
+ include "my.hxx";
+
+ # Pass apples by value.
+ #
+ apple apple;
+
+ # Pass oranges as pointers.
+ #
+ orange orange_t*;
+}
+ </pre>
+
+ <p>In the example above, for the
+ <code><b>http://www.example.com/xmlns/my#orange</b></code>
+ XML Schema type, the <code><b>my::orange_t*</b></code> C++ type will
+ be used as both return and argument types.</p>
+
+ <p>Several namespace declarations can be specified in a single
+ file. The namespace declaration can also be completely
+ omitted to map types in a schema without a namespace. For
+ instance:</p>
+
+ <pre>
+include "my.hxx";
+apple apple;
+
+namespace http://www.example.com/xmlns/my
+{
+ orange "const orange_t*";
+}
+ </pre>
+
+ <p>The compiler has a number of predefined mapping rules that can be
+ presented as the following map files. The string-based XML Schema
+ built-in types are mapped to either <code><b>std::string</b></code>
+ or <code><b>std::wstring</b></code> depending on the character type
+ selected with the <code><b>--char-type</b></code> option
+ (<code><b>char</b></code> by default).</p>
+
+ <pre>
+namespace http://www.w3.org/2001/XMLSchema
+{
+ boolean bool bool;
+
+ byte "signed char" "signed char";
+ unsignedByte "unsigned char" "unsigned char";
+
+ short short short;
+ unsignedShort "unsigned short" "unsigned short";
+
+ int int int;
+ unsignedInt "unsigned int" "unsigned int";
+
+ long "long long" "long long";
+ unsignedLong "unsigned long long" "unsigned long long";
+
+ integer "long long" "long long";
+
+ negativeInteger "long long" "long long";
+ nonPositiveInteger "long long" "long long";
+
+ positiveInteger "unsigned long long" "unsigned long long";
+ nonNegativeInteger "unsigned long long" "unsigned long long";
+
+ float float float;
+ double double double;
+ decimal double double;
+
+ string std::string;
+ normalizedString std::string;
+ token std::string;
+ Name std::string;
+ NMTOKEN std::string;
+ NCName std::string;
+ ID std::string;
+ IDREF std::string;
+ language std::string;
+ anyURI std::string;
+
+ NMTOKENS xml_schema::string_sequence;
+ IDREFS xml_schema::string_sequence;
+
+ QName xml_schema::qname;
+
+ base64Binary std::auto_ptr&lt;xml_schema::buffer>
+ std::auto_ptr&lt;xml_schema::buffer>;
+ hexBinary std::auto_ptr&lt;xml_schema::buffer>
+ std::auto_ptr&lt;xml_schema::buffer>;
+
+ date xml_schema::date;
+ dateTime xml_schema::date_time;
+ duration xml_schema::duration;
+ gDay xml_schema::gday;
+ gMonth xml_schema::gmonth;
+ gMonthDay xml_schema::gmonth_day;
+ gYear xml_schema::gyear;
+ gYearMonth xml_schema::gyear_month;
+ time xml_schema::time;
+}
+ </pre>
+
+ <p>The last predefined rule maps anything that wasn't mapped by
+ previous rules to <code><b>void</b></code>:</p>
+
+ <pre>
+namespace .*
+{
+ .* void void;
+}
+ </pre>
+
+
+ <p>When you provide your own type maps with the
+ <code><b>--type-map</b></code> option, they are evaluated first.
+ This allows you to selectively override predefined rules.</p>
+
+ <h1>REGEX AND SHELL QUOTING</h1>
+
+ <p>When entering a regular expression argument in the shell
+ command line it is often necessary to use quoting (enclosing
+ the argument in <code><b>"&nbsp;"</b></code> or
+ <code><b>'&nbsp;'</b></code>) in order to prevent the shell
+ from interpreting certain characters, for example, spaces as
+ argument separators and <code><b>$</b></code> as variable
+ expansions.</p>
+
+ <p>Unfortunately it is hard to achieve this in a manner that is
+ portable across POSIX shells, such as those found on
+ GNU/Linux and UNIX, and Windows shell. For example, if you
+ use <code><b>"&nbsp;"</b></code> for quoting you will get a
+ wrong result with POSIX shells if your expression contains
+ <code><b>$</b></code>. The standard way of dealing with this
+ on POSIX systems is to use <code><b>'&nbsp;'</b></code> instead.
+ Unfortunately, Windows shell does not remove <code><b>'&nbsp;'</b></code>
+ from arguments when they are passed to applications. As a result you
+ may have to use <code><b>'&nbsp;'</b></code> for POSIX and
+ <code><b>"&nbsp;"</b></code> for Windows (<code><b>$</b></code> is
+ not treated as a special character on Windows).</p>
+
+ <p>Alternatively, you can save regular expression options into
+ a file, one option per line, and use this file with the
+ <code><b>--options-file</b></code> option. With this approach
+ you don't need to worry about shell quoting.</p>
+
+ <h1>DIAGNOSTICS</h1>
+
+ <p>If the input file is not a valid W3C XML Schema definition,
+ <code><b>xsd</b></code> will issue diagnostic messages to STDERR
+ and exit with non-zero exit code.</p>
+
+ <h1>BUGS</h1>
+
+ <p>Send bug reports to the
+ <a href="mailto:xsd-users@codesynthesis.com">xsd-users@codesynthesis.com</a> mailing list.</p>
+
+ </div>
+ <div id="footer">
+ &copy;2005-2014 <a href="http://codesynthesis.com">CODE SYNTHESIS TOOLS CC</a>
+
+ <div id="terms">
+ Permission is granted to copy, distribute and/or modify this
+ document under the terms of the
+ <a href="http://codesynthesis.com/licenses/fdl-1.2.txt">GNU Free
+ Documentation License, version 1.2</a>; with no Invariant Sections,
+ no Front-Cover Texts and no Back-Cover Texts.
+ </div>
+ </div>
+</div>
+</body>
+</html>
diff --git a/xsd/documentation/cxx/parser/guide/cxx-parser-guide.pdf b/xsd/documentation/cxx/parser/guide/cxx-parser-guide.pdf
deleted file mode 100644
index c549f94..0000000
--- a/xsd/documentation/cxx/parser/guide/cxx-parser-guide.pdf
+++ /dev/null
Binary files differ
diff --git a/xsd/documentation/cxx/tree/dbxml/driver.cxx b/xsd/documentation/cxx/tree/dbxml/driver.cxx
deleted file mode 100644
index 56cbb4a..0000000
--- a/xsd/documentation/cxx/tree/dbxml/driver.cxx
+++ /dev/null
@@ -1,175 +0,0 @@
-// file : examples/cxx/tree/dbxml/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : not copyrighted - public domain
-
-#include <memory> // std::auto_ptr
-#include <string>
-#include <cassert>
-#include <iostream>
-
-#include <dbxml/DbXml.hpp>
-
-#include "library.hxx"
-
-using std::cerr;
-using std::endl;
-using std::string;
-using std::auto_ptr;
-
-using namespace DbXml;
-using namespace xsd::cxx; // for xml::string
-
-void
-print_document (const string& desc,
- XmlContainer container,
- const string& name)
-{
- XmlDocument doc (container.getDocument (name));
-
- string content;
- doc.getContent (content);
-
- cerr << endl
- << desc << endl
- << content << endl;
-}
-
-int
-main ()
-{
- try
- {
- using namespace library;
- using xml_schema::date;
-
- XmlManager manager;
-
- {
- XmlContainer container (manager.createContainer ("new.bdbxml"));
-
- XmlUpdateContext update_context (manager.createUpdateContext ());
-
- XmlQueryContext context (manager.createQueryContext ());
- context.setNamespace ("lib", "http://www.codesynthesis.com/library");
-
-
- // Create a new document from an object model.
- //
- {
- // Create a new catalog with one book.
- //
- catalog c;
-
- book b (20530902, // ISBN
- "The Elements of Style", // Title
- genre::reference, // Genre
- "ES"); // ID
-
- author strunk ("William Strunk, Jr.", date (1869, 7, 1));
- strunk.died (date (1946, 9, 26));
-
- b.author ().push_back (strunk);
- c.book ().push_back (b);
-
-
- // Create a new XML document.
- //
- XmlDocument doc (manager.createDocument ());
- doc.setName ("new.xml");
-
-
- // Obtain its DOM representation and add the root element.
- //
- xercesc::DOMDocument& dom_doc (*doc.getContentAsDOM ());
-
- dom_doc.appendChild (
- dom_doc.createElementNS (
- xml::string ("http://www.codesynthesis.com/library").c_str (),
- xml::string ("lib:catalog").c_str ()));
-
-
- // Serialize the object model to the XML document. Also avoid
- // re-initializing the Xerces-C++ runtime since XmlManager has
- // it initialized.
- //
- catalog_ (dom_doc, c, xml_schema::flags::dont_initialize);
-
-
- // Place the document into the container.
- //
- container.putDocument (doc, update_context);
-
- print_document ("after create:", container, "new.xml");
- }
-
- // Create an object model from a document in DB.
- //
- {
- // Resolve the document in the container.
- //
- XmlDocument doc (container.getDocument ("new.xml"));
-
-
- // Create the object model from the document's DOM. Also avoid
- // re-initializing the Xerces-C++ runtime since XmlManager has
- // it initialized.
- //
- auto_ptr<catalog> c (catalog_ (*doc.getContentAsDOM (),
- xml_schema::flags::dont_initialize));
-
- cerr << *c << endl;
- }
-
-
- // Lookup a document fragment.
- //
-
- string query ("collection('new.bdbxml')/lib:catalog/book[@id='ES']");
-
- // Find "The Elements of Style".
- //
- XmlValue v;
- XmlResults results (manager.query (query, context));
-
- if (results.next (v))
- {
- // Create an object model from the document fragment.
- //
- auto_ptr<book> b (
- new book (
- *static_cast<xercesc::DOMElement*> (v.asNode ())));
-
- cerr << *b << endl;
-
-
- // Add another author, change the availability status.
- //
- author white ("E.B. White", date (1899, 7, 11));
- white.died (date (1985, 10, 1));
-
- b->author ().push_back (white);
- b->available (false);
-
-
- // Update the document fragment from the object model.
- //
- *static_cast<xercesc::DOMElement*> (v.asNode ()) << *b;
-
-
- // Update the document in the container.
- //
- XmlDocument doc (v.asDocument ());
- container.updateDocument (doc, update_context);
- }
-
- print_document ("after update:", container, "new.xml");
- }
-
- manager.removeContainer ("new.bdbxml");
- }
- catch (const std::exception& e)
- {
- cerr << e.what () << endl;
- return 1;
- }
-}
diff --git a/xsd/documentation/cxx/tree/dbxml/index.xhtml b/xsd/documentation/cxx/tree/dbxml/index.xhtml
deleted file mode 100644
index adfeb24..0000000
--- a/xsd/documentation/cxx/tree/dbxml/index.xhtml
+++ /dev/null
@@ -1,348 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
-
-<head>
- <title>C++/Tree Mapping and Berkeley DB XML Integration Guide</title>
-
- <meta name="copyright" content="&copy; 2006-2010 Code Synthesis Tools CC"/>
- <meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,berkeley,db,dbxml"/>
- <meta name="description" content="C++/Tree Mapping and Berkeley DB XML Integration Guide"/>
-
- <link rel="stylesheet" type="text/css" href="../../../default.css" />
-
-<style type="text/css">
- pre {
- background : #cde8f6;
-
- padding : 0 0 0 1em;
- margin : 2em 0em 2em 0;
-
- }
-
- h1 {padding-top: 1em;}
-
-</style>
-</head>
-
-<body>
-<div id="container">
- <div id="content">
-
- <h1>Introduction</h1>
-
- <p>This guide shows how to integrate the
- <a href="http://www.codesynthesis.com/products/xsd/c++/tree/">C++/Tree</a>
- mapping generated by
- <a href="http://www.codesynthesis.com/products/xsd/">CodeSynthesis XSD</a>
- with
- <a href="http://www.oracle.com/database/berkeley-db/xml/index.html">Berkeley DB XML</a>.
-
- Berkeley DB XML is an embedded XML database which allows efficient
- storage and query of XML instance documents.
-
- CodeSynthesis XSD is a W3C XML Schema to C++ data binding compiler.
-
- The C++/Tree mapping allows you to manipulate the data stored in XML
- using objects that semantically correspond to your application
- domain rather than dealing with direct representations of XML.
-
- For an introduction to
- the Berkeley DB XML refer to the
- <a href="http://www.oracle.com/database/berkeley-db/xml/index.html">Berkeley DB XML
- Getting Started Guide</a>.
- For an introduction to the C++/Tree mapping refer to
- the <a href="../guide/">C++/Tree Mapping Getting Started Guide</a>.
- </p>
-
-
- <p>This guide describes the following four operations:</p>
-
- <ul>
- <li>Create a new document in DB from an object model</li>
- <li>Create an object model from a document in DB</li>
- <li>Create an object model from a document fragment in DB</li>
- <li>Update a document fragment in DB from an object model</li>
- </ul>
-
- <p>Our examples will be based on simple XML for book library. The XML
- Schema definition for the library is in
- <a href="./library.xsd">library.xsd</a> and is compiled by XSD
- to obtain <code>library.hxx</code> and <code>library.cxx</code>.
- All C++ code fragments that are presented in this guide are available
- as a single program in <a href="./driver.cxx">driver.cxx</a>.
- The complete example is available in the
- <code>examples/cxx/tree/dbxml</code> directory of the XSD distribution.</p>
-
- <p>Note that due to the incomplete DOM API implementation provided by DB
- XML (as of version 2.3.10), the generated code and your application
- should be compiled with the <code>DBXML_DOM</code> macro defined in
- order to avoid using unsupported parts of the API.
- </p>
-
- <p>A sample XML document for the library schema is presented below:</p>
-
- <pre>
-&lt;lib:catalog xmlns:lib="http://www.codesynthesis.com/library">
- &lt;book available="true" id="ES">
- &lt;isbn>20530902&lt;/isbn>
- &lt;title>The Elements of Style&lt;/title>
- &lt;genre>reference&lt;/genre>
-
- &lt;author>
- &lt;name>William Strunk, Jr.&lt;/name>
- &lt;born>1869-07-01&lt;/born>
- &lt;died>1946-09-26&lt;/died>
- &lt;/author>
-
- &lt;author>
- &lt;name>E.B. White&lt;/name>
- &lt;born>1899-07-11&lt;/born>
- &lt;died>1985-10-01&lt;/died>
- &lt;/author>
- &lt;/book>
-&lt;/lib:catalog>
- </pre>
-
- <h1>Create Document from Object Model</h1>
-
- <p>In this step, we will programmatically create a book catalog
- with one book, save it into an <code>XmlDocument</code> object
- using one of the serialization functions generated by XSD (
- <code>catalog_</code> in our case), and store the
- <code>XmlDocument</code> object as a new document in the
- DB container:</p>
-
- <pre>
-XmlManager manager;
-XmlContainer container (manager.createContainer ("new.bdbxml"));
-XmlUpdateContext update_context (manager.createUpdateContext ());
-XmlQueryContext context (manager.createQueryContext ());
-context.setNamespace ("lib", "http://www.codesynthesis.com/library");
-
-// Create a new catalog with one book.
-//
-catalog c;
-
-book b (20530902, // ISBN
- title ("The Elements of Style"), // Title
- genre::reference, // Genre
- "ES"); // ID
-
-author strunk ("William Strunk, Jr.", date (1869, 7, 1));
-strunk.died (date (1946, 9, 26));
-
-b.author ().push_back (strunk);
-c.book ().push_back (b);
-
-// Create a new XML document.
-//
-XmlDocument doc (manager.createDocument ());
-doc.setName ("new.xml");
-
-// Obtain its DOM representation and add the root element.
-//
-xercesc::DOMDocument&amp; dom_doc (*doc.getContentAsDOM ());
-
-dom_doc.appendChild (
- dom_doc.createElementNS (
- xml::string ("http://www.codesynthesis.com/library").c_str (),
- xml::string ("lib:catalog").c_str ()));
-
-// Serialize the object model to the XML document. Also avoid
-// re-initializing the Xerces-C++ runtime since XmlManager has
-// it initialized.
-//
-catalog_ (dom_doc, c, xml_schema::flags::dont_initialize);
-
-// Place the document into the container.
-//
-container.putDocument (doc, update_context);
- </pre>
-
- <p>If we now resolve the <code>new.xml</code> in the container and
- print its content, we will get:</p>
-
- <pre>
-&lt;lib:catalog xmlns:lib="http://www.codesynthesis.com/library">
- &lt;book available="true" id="ES">
- &lt;isbn>20530902&lt;/isbn>
- &lt;title>The Elements of Style&lt;/title>
- &lt;genre>reference&lt;/genre>
- &lt;author>
- &lt;name>William Strunk, Jr.&lt;/name>
- &lt;born>1869-07-01&lt;/born>
- &lt;died>1946-09-26&lt;/died>
- &lt;/author>
- &lt;/book>
-&lt;/lib:catalog>
- </pre>
-
- <h1>Create Object Model from Document</h1>
-
- <p>Creating an object model from a document is a matter
- of obtaining <code>XmlDocument</code> object and passing its DOM
- representation to one of the parsing functions generated by XSD
- (<code>catalog_</code> in our case):
- </p>
-
- <pre>
-// Resolve the document in the container.
-//
-XmlDocument doc (container.getDocument ("new.xml"));
-
-// Create the object model from the document's DOM. Also avoid
-// re-initializing the Xerces-C++ runtime since XmlManager has
-// it initialized.
-//
-auto_ptr&lt;catalog> c (catalog_ (*doc.getContentAsDOM (),
- xml_schema::flags::dont_initialize));
-
-cerr &lt;&lt; *c &lt;&lt; endl;
- </pre>
-
- <p>This code fragment prints:</p>
-
- <pre>
-book:
-isbn: 20530902
-title: The Elements of Style
-genre: reference
-author:
-name: William Strunk, Jr.
-born: 1869-07-01
-died: 1946-09-26
-available: 1
-id: ES
- </pre>
-
- <h1>Create Object Model from Document Fragment</h1>
-
- <p>The following code fragment looks up the book with id <code>"ES"</code>
- using XQuery. It then creates a <code>book</code> object from the
- resulting <code>XmlValue</code>:</p>
-
- <pre>
-string query ("collection('new.bdbxml')/lib:catalog/book[@id='ES']");
-
-// Find "The Elements of Style".
-//
-XmlValue v;
-XmlResults results (manager.query (query, context));
-
-if (results.next (v))
-{
- // Create an object model from the document fragment.
- //
- auto_ptr&lt;book> b (
- new book (
- *static_cast&lt;xercesc::DOMElement*> (v.asNode ())));
-
- cerr &lt;&lt; *b &lt;&lt; endl;
-}
- </pre>
-
-<p>This code fragment prints:</p>
-
- <pre>
-isbn: 20530902
-title: The Elements of Style
-genre: reference
-author:
-name: William Strunk, Jr.
-born: 1869-07-01
-died: 1946-09-26
-available: 1
-id: ES
- </pre>
-
- <p>Note that we had to perform a <code>static_cast</code> from
- <code>xercesc::DOMNode</code>
- returned by the <code>XmlValue::asNode</code> member function to
- <code>xercesc::DOMElement</code>. This is safe since we know
- that in our schema books are represented as XML elements.</p>
-
- <h1>Update Document Fragment from Object Model</h1>
-
- <p>Analogous to the create case, the following code fragment looks
- up the book with id <code>"ES"</code> using XQuery. It then creates
- a <code>book</code> object from the resulting <code>XmlValue</code>,
- adds another author, changes the availability status, and saves
- the changes back to the <code>XmlValue</code> object:
- </p>
-
- <pre>
-string query ("collection('new.bdbxml')/lib:catalog/book[@id='ES']");
-
-// Find "The Elements of Style".
-//
-XmlValue v;
-XmlResults results (manager.query (query, context));
-
-if (results.next (v))
-{
- // Create an object model from the document fragment.
- //
- auto_ptr&lt;book> b (
- new book (
- *static_cast&lt;xercesc::DOMElement*> (v.asNode ())));
-
- // Add another author, change the availability status.
- //
- author white ("E.B. White", date (1899, 7, 11));
- white.died (date (1985, 10, 1));
-
- b->author ().push_back (white);
- b->available (false);
-
- // Update the document fragment from the object model.
- //
- *static_cast&lt;xercesc::DOMElement*> (v.asNode ()) &lt;&lt; *b;
-
- // Update the document in the container.
- //
- XmlDocument doc (v.asDocument ());
- container.updateDocument (doc, update_context);
-}
- </pre>
-
- <p>If we now resolve the <code>new.xml</code> in the container and
- print its content, we will get:</p>
-
- <pre>
-&lt;lib:catalog xmlns:lib="http://www.codesynthesis.com/library">
- &lt;book available="false" id="ES">
- &lt;isbn>20530902&lt;/isbn>
- &lt;title>The Elements of Style&lt;/title>
- &lt;genre>reference&lt;/genre>
- &lt;author>
- &lt;name>William Strunk, Jr.&lt;/name>
- &lt;born>1869-07-01&lt;/born>
- &lt;died>1946-09-26&lt;/died>
- &lt;/author>
- &lt;author>
- &lt;name>E.B. White&lt;/name>
- &lt;born>1899-07-11&lt;/born>
- &lt;died>1985-10-01&lt;/died>
- &lt;/author>
- &lt;/book>
-&lt;/lib:catalog>
- </pre>
-
- </div>
- <div id="footer">
- &copy;2006-2010 <a href="http://www.codesynthesis.com">CODE SYNTHESIS TOOLS CC</a>
-
- <div id="terms">
- Permission is granted to copy, distribute and/or modify this
- document under the terms of the
- <a href="http://www.codesynthesis.com/licenses/fdl-1.2.txt">GNU Free
- Documentation License, version 1.2</a>; with no Invariant Sections,
- no Front-Cover Texts and no Back-Cover Texts.
- </div>
- </div>
-
-</div>
-
-</body>
-</html>
diff --git a/xsd/documentation/cxx/tree/dbxml/library.xsd b/xsd/documentation/cxx/tree/dbxml/library.xsd
deleted file mode 100644
index c71c312..0000000
--- a/xsd/documentation/cxx/tree/dbxml/library.xsd
+++ /dev/null
@@ -1,75 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
-
-file : examples/cxx/tree/dbxml/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
-copyright : not copyrighted - public domain
-
--->
-
-<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:xse="http://www.codesynthesis.com/xmlns/xml-schema-extension"
- xmlns:lib="http://www.codesynthesis.com/library"
- targetNamespace="http://www.codesynthesis.com/library">
-
- <xsd:simpleType name="isbn">
- <xsd:restriction base="xsd:unsignedInt"/>
- </xsd:simpleType>
-
-
- <xsd:complexType name="title">
- <xsd:simpleContent>
- <xsd:extension base="xsd:string">
- <xsd:attribute name="lang" type="xsd:language"/>
- </xsd:extension>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <xsd:simpleType name="genre">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="romance"/>
- <xsd:enumeration value="fiction"/>
- <xsd:enumeration value="horror"/>
- <xsd:enumeration value="history"/>
- <xsd:enumeration value="philosophy"/>
- <xsd:enumeration value="reference"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:complexType name="person">
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string"/>
- <xsd:element name="born" type="xsd:date"/>
- <xsd:element name="died" type="xsd:date" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:complexType name="author">
- <xsd:complexContent>
- <xsd:extension base="lib:person">
- <xsd:attribute name="recommends" type="xsd:IDREF" xse:refType="lib:book"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="book">
- <xsd:sequence>
- <xsd:element name="isbn" type="lib:isbn"/>
- <xsd:element name="title" type="lib:title"/>
- <xsd:element name="genre" type="lib:genre"/>
- <xsd:element name="author" type="lib:author" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="available" type="xsd:boolean" default="true"/>
- <xsd:attribute name="id" type="xsd:ID" use="required"/>
- </xsd:complexType>
-
- <xsd:complexType name="catalog">
- <xsd:sequence>
- <xsd:element name="book" type="lib:book" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:element name="catalog" type="lib:catalog"/>
-
-</xsd:schema>
diff --git a/xsd/documentation/cxx/tree/guide/cxx-tree-guide.pdf b/xsd/documentation/cxx/tree/guide/cxx-tree-guide.pdf
deleted file mode 100644
index 03d94fd..0000000
--- a/xsd/documentation/cxx/tree/guide/cxx-tree-guide.pdf
+++ /dev/null
Binary files differ
diff --git a/xsd/documentation/cxx/tree/manual/cxx-tree-manual.pdf b/xsd/documentation/cxx/tree/manual/cxx-tree-manual.pdf
deleted file mode 100644
index b340c2a..0000000
--- a/xsd/documentation/cxx/tree/manual/cxx-tree-manual.pdf
+++ /dev/null
Binary files differ
diff --git a/xsd/documentation/future.xhtml b/xsd/documentation/future.xhtml
deleted file mode 100644
index 812de0c..0000000
--- a/xsd/documentation/future.xhtml
+++ /dev/null
@@ -1,103 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
-
-<head>
- <title>XSD Planned Features List</title>
-
- <meta name="copyright" content="&copy; 2005-2010 Code Synthesis Tools CC"/>
- <meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,code,generator,future,features,plan"/>
- <meta name="description" content="List of features planned for XSD."/>
-
- <link rel="stylesheet" type="text/css" href="default.css" />
-</head>
-
-<body>
-<div id="container">
- <div id="content">
-
- <p>Below is the list of features that we plan to implement in the
- future. They are divided into two sections: ones that will
- likely appear in the forthcoming releases and those that we
- have no definite time-line for. Send an email to
- <a href="mailto:xsd-users@codesynthesis.com">xsd-users@codesynthesis.com</a>
- if you are interested in a particular feature or would like to suggest
- one.</p>
-
- <h1>Forthcoming Releases</h1>
-
- <h2>C++/Serializer</h2>
-
- <ul class="multiline">
- <li>New mapping that will support event-driven XML serialization.</li>
- </ul>
-
- <h2>C++/Hybrid</h2>
-
- <ul class="multiline">
- <li>New mapping that will support hybrid, event-driven/in-memory
- XML processing.</li>
- </ul>
-
- <h1>No Definite Time-line</h1>
-
- <h2>IDL</h2>
-
- <ul class="multiline">
- <li>New mapping that will produce CORBA IDL from XML Schema.</li>
- </ul>
-
- <h2>IDL/C++</h2>
-
- <ul class="multiline">
- <li>New co-mapping that will produce C++ parsing/serialization
- code for the C++ types produced from CORBA IDL.</li>
- </ul>
-
- <h2>C++/Tree</h2>
-
- <ul class="multiline">
- <li>Mapping for <code>xsd:unique</code>, <code>xsd:key</code>,
- and <code>xsd:keyref</code>.</li>
-
- <li>Option to select between <code>std::vector</code> and
- <code>std::list</code> as an underlying sequence type.</li>
-
- <li>Special attribute in XML Schema definition that would
- instruct code generators to use a different container type
- such as associative containers (<code>std::set</code> and
- <code>std::multiset</code>). This will allow you to
- construct a light-weight, object-oriented database with XML Schema
- as a specification language and XML as an underlying
- representation.
- </li>
-
- <li>Make dependency generator.</li>
-
- <li>Generate typedef instead of inheritance for some cases of
- inheritance from fundamental types.</li>
-
- <li>Option to suppress the generation of enum mapping.</li>
-
- <li>Map arbitrary-length integers to a suitable user-defined types.</li>
-
- <li>Option to map <code>xsd:long</code> to C++ <code>long</code> instead
- of <code>long long</code> for 64-bit architectures (can be achieved
- now with --custom-type).</li>
- </ul>
-
- </div>
- <div id="footer">
- &copy;2005-2010 <a href="http://codesynthesis.com">CODE SYNTHESIS TOOLS CC</a>
-
- <div id="terms">
- Permission is granted to copy, distribute and/or modify this
- document under the terms of the
- <a href="http://codesynthesis.com/licenses/fdl-1.2.txt">GNU Free
- Documentation License, version 1.2</a>; with no Invariant Sections,
- no Front-Cover Texts and no Back-Cover Texts.
- </div>
- </div>
-</div>
-</body>
-</html>
diff --git a/xsd/documentation/makefile b/xsd/documentation/makefile
deleted file mode 100644
index 0b39bdb..0000000
--- a/xsd/documentation/makefile
+++ /dev/null
@@ -1,47 +0,0 @@
-# file : documentation/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
-# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make
-
-default := $(out_base)/
-install := $(out_base)/.install
-dist := $(out_base)/.dist
-dist-win := $(out_base)/.dist-win
-cleandoc := $(out_base)/.cleandoc
-
-$(default): $(out_base)/cxx/
-
-# Install.
-#
-$(install): $(out_base)/cxx/.install
- $(call install-data,$(src_base)/default.css,$(install_doc_dir)/xsd/default.css)
- $(call install-data,$(src_base)/future.xhtml,$(install_doc_dir)/xsd/future.xhtml)
- $(call install-data,$(src_base)/schema-authoring-guide.xhtml,$(install_doc_dir)/xsd/schema-authoring-guide.xhtml)
- $(call install-data,$(src_base)/xsd.xhtml,$(install_doc_dir)/xsd/xsd.xhtml)
- $(call install-data,$(src_base)/custom-literals.xsd,$(install_doc_dir)/xsd/custom-literals.xsd)
- $(call install-data,$(src_base)/xsd.1,$(install_man_dir)/man1/xsd.1)
-
-# Dist.
-#
-dist-common := $(out_base)/.dist-common
-
-$(dist-common):
- $(call install-data,$(src_base)/default.css,$(dist_prefix)/documentation/default.css)
- $(call install-data,$(src_base)/xsd.xhtml,$(dist_prefix)/documentation/xsd.xhtml)
- $(call install-data,$(src_base)/xsd.1,$(dist_prefix)/documentation/xsd.1)
- $(call install-data,$(src_base)/future.xhtml,$(dist_prefix)/documentation/future.xhtml)
- $(call install-data,$(src_base)/schema-authoring-guide.xhtml,$(dist_prefix)/documentation/schema-authoring-guide.xhtml)
- $(call install-data,$(src_base)/custom-literals.xsd,$(dist_prefix)/documentation/custom-literals.xsd)
-
-$(dist): $(dist-common) $(out_base)/cxx/.dist
-$(dist-win): $(dist-common) $(out_base)/cxx/.dist-win
-
-# Clean.
-#
-$(cleandoc): $(src_base)/cxx/.cleandoc
-
-$(call include,$(bld_root)/install.make)
-
-$(call import,$(src_base)/cxx/makefile)
diff --git a/xsd/documentation/schema-authoring-guide.xhtml b/xsd/documentation/schema-authoring-guide.xhtml
deleted file mode 100644
index 2eaab14..0000000
--- a/xsd/documentation/schema-authoring-guide.xhtml
+++ /dev/null
@@ -1,187 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
-
-<head>
- <title>XML Schema Authoring Guide</title>
-
- <meta name="copyright" content="&copy; 2005-2010 Code Synthesis Tools CC"/>
- <meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,authoring,guide"/>
- <meta name="description" content="XML Schema Authoring Guide"/>
-
- <link rel="stylesheet" type="text/css" href="default.css" />
-
-<style type="text/css">
- pre {
- background : #cde8f6;
-
- padding : 0 0 0 1em;
- margin : 2em 0em 2em 0;
-
- font-size : 95%
- }
-
- body {
- min-width: 46em;
- }
-
- ul.toc li {
- padding : .4em 0em 0em 0em;
- list-style : none;
- }
-
-</style>
-
-
-</head>
-
-<body>
-<div id="container">
- <div id="content">
-
- <h1>Table of Contents</h1>
-
- <ul class="toc">
- <li>1. <a href="#intro">Introduction</a></li>
-
- <li>2. <a href="#global_element">Don't define a global element which
- is not a valid document root</a></li>
-
- <li>3. <a href="#same_local">Don't name a type and an element/attribute
- of this type with the same name</a></li>
-
- <li>3. <a href="#integer">Don't use <code>xsd:integer</code> and
- friends</a></li>
-
- <li>4. <a href="#int">Use <code>xsd:int/xsd:unsignedInt</code> for 32 bit
- integers</a></li>
- </ul>
-
- <h1><a name="intro">Introduction</a></h1>
-
- <p>Making it possible to cleanly map W3C XML Schema to programming languages
- was never a goal of the XML Schema Working Group. As a result there
- is a number of Schema constructs, techniques, and styles that don't
- have appropriate counterparts in C++. This document presents a list
- of do's and don'ts that will help ensure your schemas, when translated
- by XSD, result in C++ code that is enjoyable to work with.</p>
-
-
- <h1><a name="global_element">Don't define a global element which is not
- a valid document root</a></h1>
-
- <p>Instead of</p>
-
- <pre>
-&lt;xsd:element name="author" type="Author"/>
-
-&lt;xsd:complexType name="Book">
- &lt;xsd:sequence>
- &lt;xsd:element ref="author"/>
- &lt;/xsd:sequence>
-&lt;/xsd:complexType>
- </pre>
-
- <p>Write</p>
-
- <pre>
-&lt;xsd:complexType name="Book">
- &lt;xsd:sequence>
- &lt;xsd:element name="author" type="Author"/>
- &lt;/xsd:sequence>
-&lt;/xsd:complexType>
- </pre>
-
- <p>Any globally-defined element is a potential document root. For every
- such element XSD generates a set of overloaded parsing
- functions. If you cannot change your schema, consider using the
- <code>--root-element-*</code> options to specify which global
- element(s) are actual document root(s).</p>
-
-
-
- <h1><a name="same_local">Don't name a type and an element/attribute of
- this type with the same name</a></h1>
-
- <p>Instead of</p>
-
- <pre>
-&lt;xsd:complexType name="name">
- &lt;xsd:sequence>
- &lt;xsd:element name="name" type="xsd:string"/>
- &lt;/xsd:sequence>
- &lt;xsd:attribute name="lang" type="xsd:language"/>
-&lt;/xsd:complexType>
- </pre>
-
- <p>Write</p>
-
- <pre>
-&lt;xsd:complexType name="Name">
- &lt;xsd:sequence>
- &lt;xsd:element name="name" type="xsd:string"/>
- &lt;/xsd:sequence>
- &lt;xsd:attribute name="lang" type="xsd:language"/>
-&lt;/xsd:complexType>
- </pre>
-
- <p>Use of a class name as a member function name within this class is
- illegal in C++. XSD will resolve such conflicts by renaming
- the conflicting member function. In the example above, you will end
- up with the following generated code:</p>
-
- <pre>
- class name
- {
- public:
- string
- name1 () const;
-
- language
- lang () const;
-
- ...
-
- };
- </pre>
-
- <h1><a name="integer">Don't use <code>xsd:integer</code> and
- friends</a></h1>
-
- <p>XML Schema built-in types <code>integer</code>,
- <code>nonPositiveInteger</code>, <code>nonNegativeInteger</code>,
- <code>positiveInteger</code>, and <code>negativeInteger</code>
- are arbitrary-length integral types. XSD maps them to the
- <code>long long</code> and <code>unsigned long long</code> C++
- types. In most cases you would prefer to use either
- <code>xsd:int/xsd:unsignedInt</code> (32 bit, maps to C++
- <code>int/unsigned int</code>) or
- <code>xsd:long/xsd:unsignedLong</code> (64 bit, maps to C++
- <code>long long/unsigned long long</code>).
- </p>
-
- <h1><a name="int">Use <code>xsd:int/xsd:unsignedInt</code> for 32 bit
- integers</a></h1>
-
- <p>XML Schema built-in types <code>long</code> and
- <code>unsignedLong</code> are 64 bit wide so use 32 bit <code>int</code>
- and <code>unsignedInt</code> unless you meant 64 bit.</p>
-
- </div>
- <div id="footer">
- &copy;2005-2010 <a href="http://codesynthesis.com">CODE SYNTHESIS TOOLS CC</a>
-
- <div id="terms">
- Permission is granted to copy, distribute and/or modify this
- document under the terms of the
- <a href="http://codesynthesis.com/licenses/fdl-1.2.txt">GNU Free
- Documentation License, version 1.2</a>; with no Invariant Sections,
- no Front-Cover Texts and no Back-Cover Texts.
- </div>
- </div>
-
-</div>
-
-
-</body>
-</html>
diff --git a/xsd/documentation/xsd.1 b/xsd/documentation/xsd.1
deleted file mode 100644
index 8b97b14..0000000
--- a/xsd/documentation/xsd.1
+++ /dev/null
@@ -1,1893 +0,0 @@
-.\" Process this file with
-.\" groff -man -Tascii xsd.1
-.\"
-.TH XSD 1 "April 2010" "XSD 3.3.0"
-.SH NAME
-xsd \- W3C XML Schema to C++ Compiler
-.\"
-.\"
-.\"
-.\"--------------------------------------------------------------------
-.SH SYNOPSIS
-.\"--------------------------------------------------------------------
-.B xsd
-.I command
-.B [
-.I options
-.B ]
-.I file
-.B [
-.I file
-.B ...]
-.in
-.B xsd help
-.B [
-.I command
-.B ]
-.in
-.B xsd version
-.\"
-.\"
-.\"
-.\"--------------------------------------------------------------------
-.SH DESCRIPTION
-.\"--------------------------------------------------------------------
-.B xsd
-generates vocabulary-specific, statically-typed C++ mapping from W3C XML
-Schema definitions. Particular mapping to produce is selected by a
-.IR command .
-Each mapping has a number of mapping-specific
-.I options
-that should appear, if any, after the
-.IR command .
-Input files should be W3C XML Schema definitions. The exact set of the
-generated files depends on the selected mapping and options.
-.\"
-.\"
-.\"
-.\"--------------------------------------------------------------------
-.SH COMMANDS
-.\"--------------------------------------------------------------------
-.IP \fBcxx-tree\fR
-Generate the C++/Tree mapping. For each input file in the form
-.B name.xsd
-the following C++ files are generated:
-.B name.hxx
-(header file),
-.B name.ixx
-(inline file, generated only if the
-.B --generate-inline
-option is specified),
-.B name.cxx
-(source file), and
-.B name-fwd.hxx
-(forward declaration file, generated only if the
-.B --generate-forward
-option is specified).
-
-.IP \fBcxx-parser\fR
-Generate the C++/Parser mapping. For each input file in the form
-.B name.xsd
-the following C++ files are generated:
-.B name-pskel.hxx
-(parser skeleton header file),
-.B name-pskel.ixx
-(parser skeleton inline file, generated only if the
-.B --generate-inline
-option is specified), and
-.B name-pskel.cxx
-(parser skeleton source file). If the
-.B --generate-noop-impl
-or
-.B --generate-print-impl
-option is specified, the following additional sample implementation files
-are generated:
-.B name-pimpl.hxx
-(parser implementation header file) and
-.B name-pimpl.cxx
-(parser implementation source file). If the
-.B --generate-test-driver
-option is specified, the additional
-.B name-driver.cxx
-test driver file is generated.
-
-.IP \fBhelp\fR
-Print usage information and exit. Use
-.PP
-.RS
-.RS 3
-.B xsd help
-.I command
-.RE
-.PP
-for command-specific help.
-.RE
-.IP \fBversion\fR
-Print version and exit.
-.\"--------------------------------------------------------------------
-.SH OPTIONS
-.\"--------------------------------------------------------------------
-Command-specific
-.IR options ,
-if any, should appear after the corresponding
-.IR command .
-
-.\"
-.\" Common options.
-.\"
-.SS common options
-.
-.IP "\fB\--char-type \fItype\fR"
-Generate code using the provided character
-.I type
-instead of the default
-.BR char .
-Valid values are
-.B char
-and
-.BR wchar_t .
-.
-.IP "\fB\--char-encoding \fIenc\fR"
-Specify the character encoding that should be used in the generated code.
-Valid values for the
-.B char
-character type are
-.B utf8
-(default),
-.BR iso8859-1 , lcp
-(Xerces-C++ local code page),
-and
-.BR custom .
-If you pass
-.B custom
-as the value then you will need to include the transcoder implementation
-header for your encoding at the beginning of the generated header files
-(see the
-.B --hxx-prologue
-option).
-
-For the
-.B wchar_t
-character type the only valid value is
-.B auto
-and the encoding is automatically selected between UTF-16 and UTF-32/UCS-4,
-depending on the
-.B wchar_t
-type size.
-.
-.IP "\fB\--output-dir \fIdir\fR"
-Write generated files to
-.I dir
-instead of the current directory.
-
-.IP "\fB\--namespace-map \fIxns\fB=\fIcns"
-Map XML Schema namespace
-.I xns
-to C++ namespace
-.IR cns .
-Repeat this option to specify mapping for more than one XML Schema namespace.
-For example, the following option:
-
-.B --namespace-map http://example.com/foo/bar=foo::bar
-
-will map the
-.B http://example.com/foo/bar
-XML Schema namespace to the
-.B foo::bar
-C++ namespace.
-.
-.IP "\fB\--namespace-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema namespace
-names to C++ namespace names.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Any character can be used as a delimiter instead of
-.BR / .
-Escaping of the delimiter character in
-.I pattern
-or
-.I replacement
-is not supported.
-
-All the regular expressions are pushed into a stack with the last specified
-expression considered first. The first match that succeeds is used. Regular
-expressions are applied to a string in the form
-
-.I filename namespace
-
-For example, if you have file
-.B hello.xsd
-with namespace
-.B http://example.com/hello
-and you run
-.B xsd
-on this file, then the string in question will be:
-
-.B hello.xsd. http://example.com/hello
-
-For the built-in XML Schema namespace the string is:
-
-.B XMLSchema.xsd http://www.w3.org/2001/XMLSchema
-
-The following three steps are performed for each regular expression until
-the match is found:
-.RS
-.RS 3
-.TP 3
-1.
-The expression is applied and if the result is empty the next expression
-is considered.
-.TP 3
-2.
-All
-.B /
-are replaced with
-.BR :: .
-.TP 3
-3.
-The result is verified to be a valid C++ scope name (e.g.,
-.BR foo::bar ).
-If this test succeeds, the result is used as a C++ namespace name.
-.RE
-.PP
-As an example, the following expression maps XML Schema namespaces in the
-form
-.B http://example.com/foo/bar
-to C++ namespaces in the form
-.BR foo::bar :
-.PP
-.B "%.* http://example.com/(.+)%$1%"
-
-See also the REGEX AND SHELL QUOTING section below.
-.RE
-
-.IP "\fB\--namespace-regex-trace\fR"
-Trace the process of applying regular expressions specified with
-the
-.B --namespace-regex
-option. Use this option to find out why your regular expressions
-don't do what you expected them to do.
-
-\"
-\" Reserved names.
-\"
-
-.IP "\fB\--reserved-name \fIname\fR[\fB=\fIrep\fR]"
-Add
-.I name
-to the list of names that should not be used as identifiers. The name
-can optionally be followed by
-.B =
-and the replacement name that should be used instead. All the C++ keywords
-are already in this list.
-
-\"
-\" Include
-\"
-
-.IP "\fB\--include-with-brackets\fR"
-Use angle brackets (<>) instead of quotes ("") in generated
-.B #include
-directives.
-
-.IP "\fB\--include-prefix \fIprefix\fR"
-Add
-.I prefix
-to generated
-.B #include
-directive paths.
-
-For example, if you had the following import element in your schema
-
-.B <import namespace="..." schemaLocation="base.xsd"/>
-
-and compiled this fragment with
-.B --include-prefix schemas/\fR,
-then the include directive in the generated code would be:
-
-.B #include "schemas/base.hxx"
-
-.IP "\fB\--include-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to transform
-.B #include
-directive paths.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Any character can be used as a delimiter instead of
-.BR / .
-Escaping of the delimiter character in
-.I pattern
-or
-.I replacement
-is not supported.
-
-All the regular expressions are pushed into a stack with the last specified
-expression considered first. The first match that succeeds is used.
-
-As an example, the following expression transforms paths in the form
-.B schemas/foo/bar
-to paths in the form
-.BR generated/foo/bar :
-
-.B "%schemas/(.+)%generated/$1%"
-
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--include-regex-trace\fR"
-Trace the process of applying regular expressions specified with
-the
-.B --include-regex
-option. Use this option to find out why your regular expressions
-don't do what you expected them to do.
-
-.IP "\fB\--guard-prefix \fIprefix\fR"
-Add
-.I prefix
-to generated header inclusion guards. The prefix is transformed to upper
-case and characters that are illegal in a preprocessor macro name are
-replaced with underscores. If this option is not specified then the
-directory part of the input schema file is used as a prefix.
-
-.\"
-.\" Suffixes.
-.\"
-
-.IP "\fB\--hxx-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B .hxx
-to construct the name of the header file. Note that this suffix is also
-used to construct names for included/imported schemas.
-
-.IP "\fB\--ixx-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B .ixx
-to construct the name of the inline file.
-
-.IP "\fB\--cxx-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B .cxx
-to construct the name of the source file.
-
-.IP "\fB\--hxx-regex \fIregex\fR"
-Use the provided expression to construct the name of the header file.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Note that this expression is also used to construct names for
-included/imported schemas. See also the REGEX AND SHELL QUOTING section
-below.
-
-.IP "\fB\--ixx-regex \fIregex\fR"
-Use the provided expression to construct the name of the inline file.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--cxx-regex \fIregex\fR"
-Use the provided expression to construct the name of the source file.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--hxx-prologue \fItext\fR"
-Insert
-.I text
-at the beginning of the header file.
-
-.IP "\fB\--ixx-prologue \fItext\fR"
-Insert
-.I text
-at the beginning of the inline file.
-
-.IP "\fB\--cxx-prologue \fItext\fR"
-Insert
-.I text
-at the beginning of the source file.
-
-.IP "\fB\--prologue \fItext\fR"
-Insert
-.I text
-at the beginning of each generated file for which there is no file-specific
-prologue.
-
-.IP "\fB\--hxx-epilogue \fItext\fR"
-Insert
-.I text
-at the end of the header file.
-
-.IP "\fB\--ixx-epilogue \fItext\fR"
-Insert
-.I text
-at the end of the inline file.
-
-.IP "\fB\--cxx-epilogue \fItext\fR"
-Insert
-.I text
-at the end of the source file.
-
-.IP "\fB\--epilogue \fItext\fR"
-Insert
-.I text
-at the end of each generated file for which there is no file-specific
-epilogue.
-
-.IP "\fB\--hxx-prologue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the beginning of the header file.
-
-.IP "\fB\--ixx-prologue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the beginning of the inline file.
-
-.IP "\fB\--cxx-prologue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the beginning of the source file.
-
-.IP "\fB\--prologue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the beginning of each generated file for which there is no file-specific
-prologue file.
-
-.IP "\fB\--hxx-epilogue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the end of the header file.
-
-.IP "\fB\--ixx-epilogue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the end of the inline file.
-
-.IP "\fB\--cxx-epilogue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the end of the source file.
-
-.IP "\fB\--epilogue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the end of each generated file for which there is no file-specific
-epilogue file.
-
-.IP "\fB\--custom-literals \fIfile\fR"
-Load custom XML string to C++ literal mappings from
-.IR file .
-This mechanism can be useful if you are using a custom character encoding
-and some of the strings in your schemas, for example element/attribute
-names or enumeration values, contain non-ASCII characters. In this case
-you will need to provide a custom mapping to C++ literals for such
-strings. The format of this file is specified in the
-.B custom-literals.xsd
-XML Schema file that can be found in the documentation directory.
-
-.IP "\fB\--export-symbol \fIsymbol\fR"
-Insert
-.I symbol
-in places where DLL export/import control statements (
-.BR __declspec(dllexport/dllimport) )
-are necessary.
-
-.IP "\fB\--export-xml-schema\fR"
-Export/import types in the XML Schema namespace using the export
-symbol provided with the
-.B --export-symbol
-option. The
-.B XSD_NO_EXPORT
-macro can be used to omit this code during C++ compilation, which may be
-useful if you would like to use the same generated code across multiple
-platforms.
-
-.IP "\fB\--export-maps\fR"
-Export polymorphism support maps from a Win32 DLL into which this generated
-code is linked. This is necessary when your type hierarchy is split across
-several DLLs since otherwise each DLL will have its own set of maps. In
-this situation the generated code for the DLL which contains base types
-and/or substitution group heads should be compiled with this option and
-the generated code for all other DLLs should be compiled with
-.BR --import-maps .
-This option is only valid together with
-.BR --generate-polymorphic.
-The
-.B XSD_NO_EXPORT
-macro can be used to omit this code during C++ compilation, which may be
-useful if you would like to use the same generated code across multiple
-platforms.
-
-.IP "\fB\--import-maps\fR"
-Import polymorphism support maps to a Win32 DLL or executable into which
-this generated code is linked. See the
-.B --export-maps
-option documentation for details. This option is only valid together with
-.BR --generate-polymorphic.
-The
-.B XSD_NO_EXPORT
-macro can be used to omit this code during C++ compilation, which may be
-useful if you would like to use the same generated code across multiple
-platforms.
-
-.IP "\fB\--disable-warning \fIwarn\fR"
-Disable printing warning with id
-.IR warn .
-If
-.B all
-is specified for the warning id then all warnings are disabled.
-
-.IP "\fB\--show-sloc\fR"
-Show the number of generated physical source lines of code (SLOC).
-
-.IP "\fB\--sloc-limit \fInum\fR"
-Check that the number of generated physical source lines of code (SLOC)
-does not exceed
-.I num.
-
-.IP "\fB\--options-file \fIfile\fR"
-Read additional options from
-.IR file .
-Each option should appear on a separate line optionally followed by
-space and an argument. Empty lines and lines starting with
-.B #
-are ignored. The semantics of providing options in a file is equivalent
-to providing the same set of options in the same order in the command
-line at the point where the
-.B --options-file
-option is specified except that shell escaping and quoting is not
-required. Repeat this option to specify more than one options files.
-
-.IP "\fB\--proprietary-license\fR"
-Indicate that the generated code is licensed under a proprietary license
-instead of the GPL.
-
-.IP "\fB\--preserve-anonymous\fR"
-Preserve anonymous types. By default anonymous types are
-automatically named with names derived from the enclosing
-elements/attributes. Because mappings implemented by this
-compiler require all types to be named, this option is only
-useful if you want to make sure your schemas don't have
-anonymous types.
-
-.IP "\fB\--show-anonymous\fR"
-Show elements and attributes that are of anonymous types. This option
-only makes sense together with the
-.B --preserve-anonymous
-option.
-
-.IP "\fB\--anonymous-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to derive names for anonymous
-types from the enclosing attributes/elements.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Any character can be used as a delimiter instead of
-.BR / .
-Escaping of the delimiter character in
-.I pattern
-or
-.I replacement
-is not supported.
-
-All the regular expressions are pushed into a stack with the last
-specified expression considered first. The first match that
-succeeds is used. Regular expressions are applied to a string
-in the form
-
-.I filename namespace xpath
-
-For instance:
-
-.B hello.xsd http://example.com/hello element
-
-.B hello.xsd http://example.com/hello type/element
-
-As an example, the following expression makes all the derived
-names start with capital letters. This could be useful when
-your naming convention requires type names to start with
-capital letters:
-
-.B %.* .* (.+/)*(.+)%\\\\u$2%
-
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--anonymous-regex-trace\fR"
-Trace the process of applying regular expressions specified with
-the
-.B --anonymous-regex
-option. Use this option to find out why your regular expressions
-don't do what you expected them to do.
-
-.IP "\fB\--location-map \fIol\fB=\fInl"
-Map the original schema location
-.I ol
-that is specified in the XML Schema include or import elements to new
-schema location
-.IR nl .
-Repeat this option to map more than one schema location. For example,
-the following option maps the
-.B http://example.com/foo.xsd
-URL to the
-.B foo.xsd
-local file.
-
-.B --location-map http://example.com/foo.xsd=foo.xsd
-
-.IP "\fB\--location-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to map schema locations that are
-specified in the XML Schema include or import elements.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Any character can be used as a delimiter instead of
-.BR / .
-Escaping of the delimiter character in
-.I pattern
-or
-.I replacement
-is not supported. All the regular expressions are pushed into a stack with the
-last specified expression considered first. The first match that succeeds
-is used.
-
-For example, the following expression maps URL locations in the form
-.B http://example.com/foo/bar.xsd
-to local files in the form
-.BR bar.xsd :
-
-.B %http://.+/(.+)%$1%
-
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--location-regex-trace\fR"
-Trace the process of applying regular expressions specified with
-the
-.B --location-regex
-option. Use this option to find out why your regular expressions
-don't do what you expected them to do.
-
-.IP "\fB\--file-per-type\fR"
-Generate a separate set of C++ files for each type defined in XML Schema.
-Note that in this mode you only need to compile the root schema(s) and the
-code will be generated for all included and imported schemas. This
-compilation mode is primarily useful when some of your schemas cannot be
-compiled separately or have cyclic dependencies which involve type
-inheritance. Other options related to this mode are:
-.BR --type-file-regex ,
-.BR --schema-file-regex,
-and
-.BR --file-list .
-
-.IP "\fB\--type-file-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate type names to file
-names when the
-.B --file-per-type
-option is specified.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Any character can be used as a delimiter instead of
-.BR / .
-Escaping of the delimiter character in
-.I pattern
-or
-.I replacement
-is not supported. All the regular expressions are pushed into a stack with
-the last specified expression considered first. The first match that
-succeeds is used. Regular expressions are applied to a string
-in the form
-
-.I namespace type-name
-
-For example, the following expression maps type
-.B foo
-that is defined in the
-.B http://example.com/bar
-namespace to file name
-.BR bar-foo :
-
-.B %http://example.com/(.+) (.+)%$1-$2%
-
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--type-file-regex-trace\fR"
-Trace the process of applying regular expressions specified with
-the
-.B --type-file-regex
-option. Use this option to find out why your regular expressions
-don't do what you expected them to do.
-
-.IP "\fB\--schema-file-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate schema file names
-when the
-.B --file-per-type
-option is specified.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Any character can be used as a delimiter instead of
-.BR / .
-Escaping of the delimiter character in
-.I pattern
-or
-.I replacement
-is not supported. All the regular expressions are pushed into a stack
-with the last specified expression considered first. The first match
-that succeeds is used. Regular expressions are applied to the absolute
-filesystem path of a schema file and the result, including the directory
-part, if any, is used to derive the
-.B #include
-directive paths as well as the generated C++ file paths. This option, along
-with
-.B --type-file-regex
-are primarily used to place the generated files into subdirectories or to
-resolve file name conflicts.
-
-For example, the following expression maps schema files in the
-.B foo/1.0.0/
-subdirectory to the files in the
-.B foo/
-subdirectory. As a result, the
-.B #include
-directive paths for such schemas will be in the
-.B foo/schema.hxx
-form and the generated C++ files will be placed into the
-.B foo/
-subdirectory:
-
-.B %.*/foo/1.0.0/(.+)%foo/$1%
-
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--schema-file-regex-trace\fR"
-Trace the process of applying regular expressions specified with
-the
-.B --schema-file-regex
-option. Use this option to find out why your regular expressions
-don't do what you expected them to do.
-
-.IP "\fB\--file-list \fIfile\fR"
-Write a list of generated C++ files to
-.IR file .
-This option is primarily useful in the file-per-type compilation mode
-.RB ( --file-per-type )
-to create a list of generated C++ files, for example, as a makefile fragment.
-
-.IP "\fB\--file-list-prologue \fItext\fR"
-Insert
-.I text
-at the beginning of the file list. As a convenience, all occurrences of the
-\\n character sequence in
-.I text
-are replaced with new lines. This option can, for example, be used to assign
-the generated file list to a makefile variable.
-
-.IP "\fB\--file-list-epilogue \fItext\fR"
-Insert
-.I text
-at the end of the file list. As a convenience, all occurrences of the
-\\n character sequence in
-.I text
-are replaced with new lines.
-
-.IP "\fB\--file-list-delim \fItext\fR"
-Delimit file names written to the file list with
-.I text
-instead of new lines. As a convenience, all occurrences of the \\n character
-sequence in
-.I text
-are replaced with new lines.
-
-.\"
-.\" C++/Tree options.
-.\"
-.SS cxx-tree command options
-
-.IP "\fB\--generate-polymorphic\fR"
-Generate polymorphism-aware code. Specify this option if you use substitution
-groups or
-.BR xsi:type .
-Use the
-.B --polymorphic-type
-or
-.B --polymorphic-type-all
-option to specify which type hierarchies are polymorphic.
-
-.IP "\fB\--polymorphic-type \fItype\fR"
-Indicate that
-.I type
-is a root of a polymorphic type hierarchy. The compiler can often
-automatically determine which types are polymorphic based on the
-substitution group declarations. However, you may need to use this
-option if you are not using substitution groups or if substitution
-groups are defined in another schema. You need to specify this option
-when compiling every schema file that references
-.IR type .
-The
-.I type
-argument is an XML Schema type name that can be optionally qualified
-with a namespace in the
-.IB namespace # name
-form.
-
-.IP "\fB\--polymorphic-type-all\fR"
-Indicate that all types should be treated as polymorphic.
-
-.IP "\fB\--generate-serialization\fR"
-Generate serialization functions. Serialization functions convert
-the object model back to XML.
-
-.IP "\fB\--generate-inline\fR"
-Generate simple functions inline. This option triggers creation of the
-inline file.
-
-.IP "\fB\--generate-ostream\fR"
-Generate ostream insertion operators
-.RB ( operator<< )
-for generated types. This allows to easily print a fragment or the whole
-object model for debugging or logging.
-
-.IP "\fB\--generate-doxygen\fR"
-Generate documentation comments suitable for extraction by the Doxygen
-documentation system. Documentation from annotations is added to the
-comments if present in the schema.
-
-.IP "\fB\--generate-comparison\fR"
-Generate comparison operators
-.RB ( operator==
-and
-.BR operator!= )
-for complex types. Comparison is performed memberwise.
-
-.IP "\fB\--generate-default-ctor\fR"
-Generate default constructors even for types that have required members.
-Required members of an instance constructed using such a constructor are
-not initialized and accessing them results in undefined behavior.
-
-.IP "\fB\--generate-from-base-ctor\fR"
-Generate constructors that expect an instance of a base type followed by all
-required members.
-
-.IP "\fB\--generate-detach\fR"
-Generate detach functions for required elements and attributes (detach
-functions for optional and sequence cardinalities are provided by the
-respective containers). These functions, for example, allow you to move
-sub-trees in the object model either within the same tree or between
-different trees.
-
-.IP "\fB\--generate-wildcard\fR"
-Generate accessors and modifiers as well as parsing and serialization code
-for XML Schema wildcards
-.RB ( any
-and
-.BR anyAttribute ).
-XML content matched by wildcards is presented as DOM fragments. Note that
-you need to initialize the Xerces-C++ runtime if you are using this option.
-
-.IP "\fB\--generate-insertion \fIos\fR"
-Generate data representation stream insertion operators for the
-.I os
-output stream type. Repeat this option to specify more than one stream
-type. The ACE CDR stream
-.RB ( ACE_OutputCDR )
-and RPC XDR are recognized by the compiler and the necessary
-.B #include
-directives are automatically generated. For custom stream types use the
-.B --hxx-prologue*
-options to provide the necessary declarations.
-
-.IP "\fB\--generate-extraction \fIis\fR"
-Generate data representation stream extraction constructors for the
-.I is
-input stream type. Repeat this option to specify more than one stream
-type. The ACE CDR stream
-.RB ( ACE_InputCDR )
-and RPC XDR are recognized by the compiler and the necessary
-.B #include
-directives are automatically generated. For custom stream types use the
-.B --hxx-prologue*
-options to provide the necessary declarations.
-
-.IP "\fB\--generate-forward\fR"
-Generate a separate header file with forward declarations for the types
-being generated.
-
-.IP "\fB\--generate-xml-schema\fR"
-Generate a C++ header file as if the schema being compiled defines the
-XML Schema namespace. In particular, the resulting file will have
-definitions for all XML Schema built-in types. The schema file provided
-to the compiler need not exist and is only used to derive the name of the
-resulting header file. Use the
-.B --extern-xml-schema
-option to include this file in the generated files for other schemas.
-
-.IP "\fB\--extern-xml-schema \fIfile\fR"
-Include a header file derived from
-.I file
-instead of generating the XML Schema namespace mapping inline. The provided
-file need not exist and is only used to derive the name of the included
-header file. Use the
-.B --generate-xml-schema
-option to generate this header file.
-
-.IP "\fB\--suppress-parsing\fR"
-Suppress the generation of the parsing functions and constructors. Use this
-option to reduce the generated code size when parsing from XML is not
-needed.
-
-.IP "\fB\--generate-element-type\fR"
-Generate types instead of parsing and serialization functions for root
-elements. This is primarily useful to distinguish object models with the
-same root type but with different root elements.
-
-.IP "\fB\--generate-element-map\fR"
-Generate a root element map that allows uniform parsing and serialization
-of multiple root elements. This option is only valid together with
-.BR --generate-element-type .
-
-.IP "\fB\--generate-intellisense\fR"
-Generate workarounds for IntelliSense bugs in Visual Studio 2005 (8.0). When
-this option is used, the resulting code is slightly more verbose. IntelliSense
-in Visual Studio 2008 (9.0) does not require these workarounds. Support for
-IntelliSense in Visual Studio 2003 (7.1) is improved with this option but
-is still incomplete.
-
-.IP "\fB\--omit-default-attributes\fR"
-Omit attributes with default and fixed values from serialized XML
-documents.
-
-\"
-\" Naming
-\"
-
-.IP "\fB\--type-naming \fIstyle\fR"
-Specify the type naming convention that should be used in the generated code.
-Valid styles are
-.B knr
-(default),
-.BR ucc ,
-and
-.BR java .
-See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--function-naming \fIstyle\fR"
-Specify the function naming convention that should be used in the generated
-code. Valid styles are
-.B knr
-(default),
-.BR lcc ,
-and
-.BR java.
-See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--type-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-type names to C++ type names. See the NAMING CONVENTION section below for
-more information.
-
-.IP "\fB\--accessor-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes to C++ accessor function names. See the NAMING
-CONVENTION section below for more information.
-
-.IP "\fB\--one-accessor-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes with cardinality one to C++ accessor function
-names. See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--opt-accessor-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes with cardinality optional to C++ accessor
-function names. See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--seq-accessor-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes with cardinality sequence to C++ accessor
-function names. See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--modifier-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes to C++ modifier function names. See the NAMING
-CONVENTION section below for more information.
-
-.IP "\fB\--one-modifier-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes with cardinality one to C++ modifier function
-names. See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--opt-modifier-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes with cardinality optional to C++ modifier
-function names. See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--seq-modifier-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-names of elements/attributes with cardinality sequence to C++ modifier
-function names. See the NAMING CONVENTION section below for more information.
-
-.IP "\fB\--parser-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-element names to C++ parsing function names. See the NAMING CONVENTION
-section below for more information.
-
-.IP "\fB\--serializer-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-element names to C++ serialization function names. See the NAMING
-CONVENTION section below for more information.
-
-.IP "\fB\--enumerator-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-enumeration values to C++ enumerator names. See the NAMING CONVENTION
-section below for more information.
-
-.IP "\fB\--element-type-regex \fIregex\fR"
-Add
-.I regex
-to the list of regular expressions used to translate XML Schema
-element names to C++ element type names. See the NAMING CONVENTION section
-below for more information.
-
-.IP "\fB\--name-regex-trace\fR"
-Trace the process of applying regular expressions specified with the name
-transformation options. Use this option to find out why your regular
-expressions don't do what you expected them to do.
-
-\"
-\" Root element.
-\"
-
-.IP "\fB\--root-element-first\fR"
-Treat only the first global element as a document root. By default all
-global elements are considered document roots.
-
-.IP "\fB\--root-element-last\fR"
-Treat only the last global element as a document root. By default all
-global elements are considered document roots.
-
-.IP "\fB\--root-element-all\fR"
-Treat all global elements as document roots. This is the default behavior.
-By explicitly specifying this option you can suppress the warning that is
-issued if more than one global element is defined.
-
-.IP "\fB\--root-element-none\fR"
-Do not treat any global elements as document roots. By default all global
-elements are considered document roots.
-
-.IP "\fB\--root-element \fIelement\fR"
-Treat only
-.I element
-as a document root. Repeat this option to specify more than one root element.
-
-\"
-\" Custom type.
-\"
-
-.IP "\fB\--custom-type \fIname\fR[\fB=\fItype\fR[\fB/\fIbase\fR]]"
-Use a custom C++ type
-.I type
-instead of the generated class for XML Schema type
-.IR name .
-If
-.I type
-is not present or empty then the custom type is assumed to have the same name
-and be defined in the same namespace as the generated class would have. If
-.I base
-is specified then the generated class is still generated but with that name.
-
-.IP "\fB\--custom-type-regex \fB/\fIname-pat\fB/\fR[\fItype-sub\fB/\fR[\fIbase-sub\fB/\fR]]"
-For each type defined in XML Schema that matches the
-.I name-pat
-pattern use a custom C++ type instead of the generated class. The
-name of the custom type is obtained by substituting
-.IR type-sub .
-If
-.I type-sub
-is not present or its substitution results in an empty string then the
-custom type is assumed to have the same name and be defined in the same
-namespace as the generated class would have. If
-.I base-sub
-is present and its substitution results in a non-empty string then the
-generated class is still generated but with the result of substitution
-as its name. The pattern and substitutions are in the perl regular
-expression format. See also the REGEX AND SHELL QUOTING section below.
-
-\"
-\" Suffixes.
-\"
-
-.IP "\fB\--fwd-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B -fwd.hxx
-to construct the name of the forward declaration file.
-
-.IP "\fB\--fwd-regex \fIregex\fR"
-Use the provided expression to construct the name of the forward
-declaration file.
-.I regex
-is a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-See also the REGEX AND SHELL QUOTING section below.
-
-.IP "\fB\--fwd-prologue \fItext\fR"
-Insert
-.I text
-at the beginning of the forward declaration file.
-
-.IP "\fB\--fwd-epilogue \fItext\fR"
-Insert
-.I text
-at the end of the forward declaration file.
-
-.IP "\fB\--fwd-prologue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the beginning of the forward declaration file.
-
-.IP "\fB\--fwd-epilogue-file \fIfile\fR"
-Insert the content of the
-.I file
-at the end of the forward declaration file.
-
-\"
-\" Parts.
-\"
-
-.IP "\fB\--parts \fInum\fR"
-Split generated source code into
-.I num
-parts. This is useful when translating large, monolithic schemas and a C++
-compiler is not able to compile the resulting source code at once (usually
-due to insufficient memory).
-
-.IP "\fB\--parts-suffix \fIsuffix\fR"
-Use
-.I suffix
-instead of the default '\fB-\fR' to separate the file name from the part
-number.
-
-\"
-\" C++/Parser
-\"
-
-.SS cxx-parser command options
-
-.IP "\fB\--type-map \fImapfile\fR"
-Read XML Schema to C++ type mapping information from
-.I mapfile
-Repeat this option to specify several type maps. Type maps are
-considered in order of appearance and the first match is used.
-By default all user-defined types are mapped to
-.BR void .
-See the TYPE MAP section below for more information.
-
-.IP "\fB\--xml-parser \fIparser\fR"
-Use
-.I parser
-as the underlying XML parser. Valid values are
-.B xerces
-for Xerces-C++ (default) and
-.B expat
-for Expat.
-
-.IP "\fB\--generate-inline\fR"
-Generate simple functions inline. This option triggers creation of the
-inline file.
-
-.IP "\fB\--generate-validation\fR"
-Generate validation code ("perfect" parser) which ensures that instance
-documents conform to the schema. Validation code is generated by default
-when the selected underlying XML parser is non-validating (\fBexpat\fR).
-
-.IP "\fB\--suppress-validation\fR"
-Suppress the generation of validation code ("perfect" parser). Validation is
-suppressed by default when the selected underlying XML parser is
-validating (\fBxerces\fR).
-
-.IP "\fB\--generate-polymorphic\fR"
-Generate polymorphism-aware code. Specify this option if you use substitution
-groups or
-.BR xsi:type .
-
-.IP "\fB\--generate-noop-impl\fR"
-Generate a sample parser implementation that does nothing (no operation).
-The sample implementation can then be filled with the application-specific
-code. For an input file in the form
-.B name.xsd
-this option triggers the generation of the two additional C++ files in the form:
-.B name-pimpl.hxx
-(parser implementation header file) and
-.B name-pimpl.cxx
-(parser implementation source file).
-
-.IP "\fB\--generate-print-impl\fR"
-Generate a sample parser implementation that prints the XML data to STDOUT.
-For an input file in the form
-.B name.xsd
-this option triggers the generation of the two additional C++ files in the form:
-.B name-pimpl.hxx
-(parser implementation header file) and
-.B name-pimpl.cxx
-(parser implementation source file).
-
-.IP "\fB\--generate-test-driver\fR"
-Generate a test driver for the sample parser implementation. For an input
-file in the form
-.B name.xsd
-this option triggers the generation of an additional C++ file in the form
-.BR name-driver.cxx .
-
-.IP "\fB\--force-overwrite\fR"
-Force overwriting of the existing implementation and test driver files.
-Use this option only if you do not mind loosing the changes you have made
-in the sample implementation or test driver files.
-
-.IP "\fB\--root-element-first\fR"
-Indicate that the first global element is the document root. This information
-is used to generate the test driver for the sample implementation.
-
-.IP "\fB\--root-element-last\fR"
-Indicate that the last global element is the document root. This information
-is used to generate the test driver for the sample implementation.
-
-.IP "\fB\--root-element \fIelement\fR"
-Indicate that
-.I element
-is the document root. This information is used to generate the test driver
-for the sample implementation.
-
-.IP "\fB\--generate-xml-schema\fR"
-Generate a C++ header file as if the schema being compiled defines the
-XML Schema namespace. In particular, the resulting file will have
-definitions for all parser skeletons and implementations corresponding
-to the XML Schema built-in types. The schema file provided to the compiler
-need not exist and is only used to derive the name of the resulting header
-file. Use the
-.B --extern-xml-schema
-option to include this file in the generated files for other schemas.
-
-.IP "\fB\--extern-xml-schema \fIfile\fR"
-Include a header file derived from
-.I file
-instead of generating the XML Schema namespace mapping inline. The provided
-file need not exist and is only used to derive the name of the included
-header file. Use the
-.B --generate-xml-schema
-option to generate this header file.
-
-.IP "\fB\--skel-type-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B _pskel
-to construct the names of generated parser skeletons.
-
-.IP "\fB\--skel-file-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B -pskel
-to construct the names of generated parser skeleton files.
-
-.IP "\fB\--impl-type-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B _pimpl
-to construct the names of parser implementations for the built-in XML
-Schema types and sample parser implementations.
-
-.IP "\fB\--impl-file-suffix \fIsuffix\fR"
-Use the provided
-.I suffix
-instead of the default
-.B -pimpl
-to construct the names of generated sample parser implementation files.
-
-\"
-\" NAMING CONVENTION
-\"
-
-.SH NAMING CONVENTION
-The compiler can be instructed to use a particular naming convention in
-the generated code. A number of widely-used conventions can be selected
-using the
-.B --type-naming
-and
-.B --function-naming
-options. A custom naming convention can be achieved using the
-.BR --type-regex ,
-.BR --accessor-regex ,
-.BR --one-accessor-regex ,
-.BR --opt-accessor-regex ,
-.BR --seq-accessor-regex ,
-.BR --modifier-regex ,
-.BR --one-modifier-regex ,
-.BR --opt-modifier-regex ,
-.BR --seq-modifier-regex ,
-.BR --parser-regex ,
-.BR --serializer-regex ,
-.BR --enumerator-regex ,
-and
-.B --element-type-regex
-options.
-
-The
-.B --type-naming
-option specifies the convention that should be used for naming C++ types.
-Possible values for this option are
-.B knr
-(default),
-.BR ucc ,
-and
-.BR java .
-The
-.B knr
-value (stands for K&R) signifies the standard, lower-case naming convention
-with the underscore used as a word delimiter, for example: foo, foo_bar.
-The
-.B ucc
-(stands for upper-camel-case) and
-.B java
-values a synonyms for the same naming convention where the first letter
-of each word in the name is capitalized, for example: Foo, FooBar.
-
-Similarly, the
-.B --function-naming
-option specifies the convention that should be used for naming C++ functions.
-Possible values for this option are
-.B knr
-(default),
-.BR lcc ,
-and
-.BR java .
-The
-.B knr
-value (stands for K&R) signifies the standard, lower-case naming convention
-with the underscore used as a word delimiter, for example: foo(), foo_bar().
-The
-.B lcc
-value (stands for lower-camel-case) signifies a naming convention where the
-first letter of each word except the first is capitalized, for example: foo(),
-fooBar(). The
-.B java
-naming convention is similar to the lower-camel-case one except that accessor
-functions are prefixed with get, modifier functions are prefixed with set,
-parsing functions are prefixed with parse, and serialization functions are
-prefixed with serialize, for example: getFoo(), setFooBar(), parseRoot(),
-serializeRoot().
-
-Note that the naming conventions specified with the
-.B --type-naming
-and
-.B --function-naming
-options perform only limited transformations on the
-names that come from the schema in the form of type, attribute, and element
-names. In other words, to get consistent results, your schemas should follow
-a similar naming convention as the one you would like to have in the generated
-code. Alternatively, you can use the
-.B --*-regex
-options (discussed below) to perform further transformations on the names
-that come from the schema.
-
-The
-.BR --type-regex ,
-.BR --accessor-regex ,
-.BR --one-accessor-regex ,
-.BR --opt-accessor-regex ,
-.BR --seq-accessor-regex ,
-.BR --modifier-regex ,
-.BR --one-modifier-regex ,
-.BR --opt-modifier-regex ,
-.BR --seq-modifier-regex ,
-.BR --parser-regex ,
-.BR --serializer-regex ,
-.BR --enumerator-regex ,
-and
-.B --element-type-regex
-options allow you to specify extra regular expressions for each name
-category in addition to the predefined set that is added depending on
-the
-.B --type-naming
-and
-.B --function-naming
-options. Expressions that are provided with the
-.B --*-regex
-options are evaluated prior to any predefined expressions. This allows
-you to selectively override some or all of the predefined transformations.
-When debugging your own expressions, it is often useful to see which
-expressions match which names. The
-.B --name-regex-trace
-option allows you to trace the process of applying
-regular expressions to names.
-
-The value for the
-.B --*-regex
-options should be a perl-like regular expression in the form
-.BI / pattern / replacement /\fR.
-Any character can be used as a delimiter instead of
-.BR / .
-Escaping of the delimiter character in
-.I pattern
-or
-.I replacement
-is not supported. All the regular expressions for each category are pushed
-into a category-specific stack with the last specified expression
-considered first. The first match that succeeds is used. For the
-.B --one-accessor-regex
-(accessors with cardinality one),
-.B --opt-accessor-regex
-(accessors with cardinality optional), and
-.B --seq-accessor-regex
-(accessors with cardinality sequence) categories the
-.B --accessor-regex
-expressions are used as a fallback. For the
-.BR --one-modifier-regex ,
-.BR --opt-modifier-regex ,
-and
-.B --seq-modifier-regex
-categories the
-.B --modifier-regex
-expressions are used as a fallback. For the
-.B --element-type-regex
-category the
-.B --type-regex
-expressions are used as a fallback.
-
-The type name expressions
-.RB ( --type-regex )
-are evaluated on the name string that has the following format:
-
-[\fInamespace \fR]\fIname\fR[\fB,\fIname\fR][\fB,\fIname\fR][\fB,\fIname\fR]
-
-The element type name expressions
-.RB ( --element-type-regex ),
-effective only when the
-.B --generate-element-type
-option is specified, are evaluated on the name string that has the following
-format:
-
-.I namespace name
-
-In the type name format the
-.I namespace
-part followed by a space is only present for global type names. For global
-types and elements defined in schemas without a target namespace, the
-.I namespace
-part is empty but the space is still present. In the type name format after
-the initial
-.I name
-component, up to three additional
-.I name
-components can be present, separated by commas. For example:
-
-.B http://example.com/hello type
-
-.B foo
-
-.B foo,iterator
-
-.B foo,const,iterator
-
-The following set of predefined regular expressions is used to transform
-type names when the upper-camel-case naming convention is selected:
-
-.B /(?:[^ ]* )?([^,]+)/\\\\u$1/
-
-.B /(?:[^ ]* )?([^,]+),([^,]+)/\\\\u$1\\\\u$2/
-
-.B /(?:[^ ]* )?([^,]+),([^,]+),([^,]+)/\\\\u$1\\\\u$2\\\\u$3/
-
-.B /(?:[^ ]* )?([^,]+),([^,]+),([^,]+),([^,]+)/\\\\u$1\\\\u$2\\\\u$3\\\\u$4/
-
-The accessor and modifier expressions
-.RB ( --*accessor-regex
-and
-.BR --*modifier-regex )
-are evaluated on the name string that has the following format:
-
-\fIname\fR[\fB,\fIname\fR][\fB,\fIname\fR]
-
-After the initial
-.I name
-component, up to two additional
-.I name
-components can be present, separated by commas. For example:
-
-.B foo
-
-.B dom,document
-
-.B foo,default,value
-
-The following set of predefined regular expressions is used to transform
-accessor names when the
-.B java
-naming convention is selected:
-
-.B /([^,]+)/get\\\\u$1/
-
-.B /([^,]+),([^,]+)/get\\\\u$1\\\\u$2/
-
-.B /([^,]+),([^,]+),([^,]+)/get\\\\u$1\\\\u$2\\\\u$3/
-
-For the parser, serializer, and enumerator categories, the corresponding
-regular expressions are evaluated on local names of elements and on
-enumeration values, respectively. For example, the following predefined
-regular expression is used to transform parsing function names when the
-.B java
-naming convention is selected:
-
-.B /(.+)/parse\\\\u$1/
-
-See also the REGEX AND SHELL QUOTING section below.
-
-\"
-\" TYPE MAP
-\"
-.SH TYPE MAP
-Type map files are used in C++/Parser to define a mapping between XML
-Schema and C++ types. The compiler uses this information to determine
-the return types of
-.B post_*
-functions in parser skeletons corresponding to XML Schema types
-as well as argument types for callbacks corresponding to elements
-and attributes of these types.
-
-The compiler has a set of predefined mapping rules that map built-in
-XML Schema types to suitable C++ types (discussed below) and all
-other types to
-.BR void .
-By providing your own type maps you can override these predefined rules.
-The format of the type map file is presented below:
-
-.RS
-.B namespace
-.I schema-namespace
-[
-.I cxx-namespace
-]
-.br
-.B {
-.br
- (
-.B include
-.IB file-name ;
-)*
-.br
- ([
-.B type
-]
-.I schema-type cxx-ret-type
-[
-.I cxx-arg-type
-.RB ] ;
-)*
-.br
-.B }
-.br
-.RE
-
-Both
-.I schema-namespace
-and
-.I schema-type
-are regex patterns while
-.IR cxx-namespace ,
-.IR cxx-ret-type ,
-and
-.I cxx-arg-type
-are regex pattern substitutions. All names can be optionally enclosed
-in \fR" "\fR, for example, to include white-spaces.
-
-.I schema-namespace
-determines XML Schema namespace. Optional
-.I cxx-namespace
-is prefixed to every C++ type name in this namespace declaration.
-.I cxx-ret-type
-is a C++ type name that is used as a return type for the
-.B post_*
-functions. Optional
-.I cxx-arg-type
-is an argument type for callback functions corresponding to elements and
-attributes of this type. If
-.I cxx-arg-type
-is not specified, it defaults to
-.I cxx-ret-type
-if
-.I cxx-ret-type
-ends with
-.B *
-or
-.B &
-(that is, it is a pointer or a reference) and
-.B const
-\fIcxx-ret-type\fB&\fR otherwise.
-.I file-name
-is a file name either in the \fR" "\fR or < > format and is added with the
-.B #include
-directive to the generated code.
-
-The \fB#\fR character starts a comment that ends with a new line or end of
-file. To specify a name that contains \fB#\fR enclose it in \fR" "\fR. For
-example:
-
-.RS
-namespace http://www.example.com/xmlns/my my
-.br
-{
-.br
- include "my.hxx";
-.br
-
- # Pass apples by value.
- #
- apple apple;
-.br
-
- # Pass oranges as pointers.
- #
- orange orange_t*;
-.br
-}
-.br
-.RE
-
-In the example above, for the
-.B http://www.example.com/xmlns/my#orange
-XML Schema type, the
-.B my::orange_t*
-C++ type will be used as both return and argument types.
-
-Several namespace declarations can be specified in a single file.
-The namespace declaration can also be completely omitted to map
-types in a schema without a namespace. For instance:
-
-.RS
-include "my.hxx";
-.br
-apple apple;
-.br
-
-namespace http://www.example.com/xmlns/my
-.br
-{
-.br
- orange "const orange_t*";
-.br
-}
-.br
-.RE
-
-
-The compiler has a number of predefined mapping rules that can be
-presented as the following map files. The string-based XML Schema
-built-in types are mapped to either
-.B std::string
-or
-.B std::wstring
-depending on the character type selected with the
-.B --char-type
-option
-.RB ( char
-by default).
-
-.RS
-namespace http://www.w3.org/2001/XMLSchema
-.br
-{
-.br
- boolean bool bool;
-.br
-
- byte "signed char" "signed char";
-.br
- unsignedByte "unsigned char" "unsigned char";
-.br
-
- short short short;
-.br
- unsignedShort "unsigned short" "unsigned short";
-.br
-
- int int int;
-.br
- unsignedInt "unsigned int" "unsigned int";
-.br
-
- long "long long" "long long";
-.br
- unsignedLong "unsigned long long" "unsigned long long";
-.br
-
- integer "long long" "long long";
-.br
-
- negativeInteger "long long" "long long";
-.br
- nonPositiveInteger "long long" "long long";
-.br
-
- positiveInteger "unsigned long long" "unsigned long long";
-.br
- nonNegativeInteger "unsigned long long" "unsigned long long";
-.br
-
- float float float;
-.br
- double double double;
-.br
- decimal double double;
-.br
-
- string std::string;
-.br
- normalizedString std::string;
-.br
- token std::string;
-.br
- Name std::string;
-.br
- NMTOKEN std::string;
-.br
- NCName std::string;
-.br
- ID std::string;
-.br
- IDREF std::string;
-.br
- language std::string;
-.br
- anyURI std::string;
-.br
-
- NMTOKENS xml_schema::string_sequence;
-.br
- IDREFS xml_schema::string_sequence;
-.br
-
- QName xml_schema::qname;
-.br
-
- base64Binary std::auto_ptr<xml_schema::buffer>
-.br
- std::auto_ptr<xml_schema::buffer>;
-.br
- hexBinary std::auto_ptr<xml_schema::buffer>
-.br
- std::auto_ptr<xml_schema::buffer>;
-.br
-
- date xml_schema::date;
-.br
- dateTime xml_schema::date_time;
-.br
- duration xml_schema::duration;
-.br
- gDay xml_schema::gday;
-.br
- gMonth xml_schema::gmonth;
-.br
- gMonthDay xml_schema::gmonth_day;
-.br
- gYear xml_schema::gyear;
-.br
- gYearMonth xml_schema::gyear_month;
-.br
- time xml_schema::time;
-.br
-}
-.br
-.RE
-
-
-The last predefined rule maps anything that wasn't mapped by previous
-rules to
-.BR void :
-
-.RS
-namespace .*
-.br
-{
-.br
- .* void void;
-.br
-}
-.br
-.RE
-
-When you provide your own type maps with the
-.B --type-map
-option, they are evaluated first. This allows you to selectively override
-predefined rules.
-
-.\"
-.\" REGEX AND SHELL QUOTING
-.\"
-.SH REGEX AND SHELL QUOTING
-When entering a regular expression argument in the shell command line
-it is often necessary to use quoting (enclosing the argument in " "
-or ' ') in order to prevent the shell from interpreting certain
-characters, for example, spaces as argument separators and $ as
-variable expansions.
-
-Unfortunately it is hard to achieve this in a manner that is portable
-across POSIX shells, such as those found on GNU/Linux and UNIX, and
-Windows shell. For example, if you use " " for quoting you will get
-a wrong result with POSIX shells if your expression contains $. The
-standard way of dealing with this on POSIX systems is to use ' '
-instead. Unfortunately, Windows shell does not remove ' ' from
-arguments when they are passed to applications. As a result you may
-have to use ' ' for POSIX and " " for Windows ($ is not treated as
-a special character on Windows).
-
-Alternatively, you can save regular expression options into a file,
-one option per line, and use this file with the
-.B --options-file
-option. With this approach you don't need to worry about shell quoting.
-
-.\"
-.\" DIAGNOSTICS
-.\"
-.SH DIAGNOSTICS
-If the input file is not a valid W3C XML Schema definition,
-.B xsd
-will issue diagnostic messages to
-.B STDERR
-and exit with non-zero exit code.
-.SH BUGS
-Send bug reports to the xsd-users@codesynthesis.com mailing list.
-.SH COPYRIGHT
-Copyright (c) 2005-2010 Code Synthesis Tools CC.
-
-Permission is granted to copy, distribute and/or modify this
-document under the terms of the GNU Free Documentation License,
-version 1.2; with no Invariant Sections, no Front-Cover Texts and
-no Back-Cover Texts. Copy of the license can be obtained from
-http://codesynthesis.com/licenses/fdl-1.2.txt
diff --git a/xsd/documentation/xsd.xhtml b/xsd/documentation/xsd.xhtml
deleted file mode 100644
index 4acf822..0000000
--- a/xsd/documentation/xsd.xhtml
+++ /dev/null
@@ -1,1600 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
-
-<head>
- <title>XSD 3.3.0 Compiler Command Line Manual</title>
-
- <meta name="copyright" content="&copy; 2005-2010 Code Synthesis Tools CC"/>
- <meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,code,generator,manual,man,page"/>
- <meta name="description" content="XSD Compiler Command Line Manual"/>
-
- <link rel="stylesheet" type="text/css" href="default.css" />
-
-<style type="text/css">
-
- #synopsis {
- list-style-type: none;
- }
-
- #synopsis li {
- padding-top : 0.0em;
- padding-bottom : 0.0em;
- }
-
- #commands dt {
- padding-top : 0.4em;
- }
-
- #commands dd {
- padding-bottom : 0.4em;
- padding-left : 2em;
- }
-
- .options dt {
- padding-top : 0.4em;
- }
-
- .options dd {
- padding-top : 0.1em;
- padding-bottom : 0.4em;
- padding-left : 1.4em;
- }
-
-</style>
-</head>
-
-<body>
-<div id="container">
- <div id="content">
-
- <h1>NAME</h1>
-
- <p>xsd - W3C XML Schema to C++ Compiler</p>
-
- <h1>SYNOPSIS</h1>
-
- <dl id="synopsis">
- <dt><code><b>xsd</b> <i>command</i> [<i>options</i>] <i>file</i> [<i>file</i> ...]</code></dt>
- <dt><code><b>xsd help</b> [<i>command</i>]</code></dt>
- <dt><code><b>xsd version</b></code></dt>
- </dl>
-
- <h1>DESCRIPTION</h1>
-
- <p><code><b>xsd</b></code> generates vocabulary-specific, statically-typed
- C++ mapping from W3C XML Schema definitions. Particular mapping to
- produce is selected by a <code><i>command</i></code>. Each mapping has
- a number of mapping-specific <code><i>options</i></code> that should
- appear, if any, after the <code><i>command</i></code>. Input files should
- be W3C XML Schema definitions. The exact set of the generated files depends
- on the selected mapping and options.</p>
-
- <h1>COMMANDS</h1>
-
- <dl id="commands">
- <dt><code><b>cxx-tree</b></code></dt>
- <dd>Generate the C++/Tree mapping. For each input file in the form
- <code><b>name.xsd</b></code> the following C++ files are generated:
- <code><b>name.hxx</b></code> (header file),
- <code><b>name.ixx</b></code> (inline file, generated only if the
- <code><b>--generate-inline</b></code> option is specified),
- <code><b>name.cxx</b></code> (source file), and
- <code><b>name-fwd.hxx</b></code> (forward declaration file, generated
- only if the <code><b>--generate-forward</b></code> option is
- specified).</dd>
-
- <dt><code><b>cxx-parser</b></code></dt>
- <dd>Generate the C++/Parser mapping. For each input file in the form
- <code><b>name.xsd</b></code> the following C++ files are generated:
- <code><b>name-pskel.hxx</b></code> (parser skeleton header file),
- <code><b>name-pskel.ixx</b></code> (parser skeleton inline file,
- generated only if the <code><b>--generate-inline</b></code>
- option is specified), and
- <code><b>name-pskel.cxx</b></code> (parser skeleton source file).
- If the <code><b>--generate-noop-impl</b></code> or
- <code><b>--generate-print-impl</b></code> option is specified,
- the following additional sample implementation files are generated:
- <code><b>name-pimpl.hxx</b></code> (parser implementation header
- file) and
- <code><b>name-pimpl.cxx</b></code> (parser implementation source
- file). If the <code><b>--generate-test-driver</b></code> option
- is specified, the additional <code><b>name-driver.cxx</b></code>
- test driver file is generated.</dd>
-
- <dt><code><b>help</b></code></dt>
- <dd>Print usage information and exit. Use
- <p><code><b>xsd help</b> <i>command</i></code></p>
- for command-specific help.
- </dd>
-
- <dt><code><b>version</b></code></dt>
- <dd>Print version and exit.</dd>
- </dl>
-
- <h1>OPTIONS</h1>
-
- <p>Command-specific <code><i>options</i></code>, if any, should appear
- after the corresponding <code><i>command</i></code>.</p>
-
- <h2>COMMON OPTIONS</h2>
-
- <dl class="options">
- <dt><code><b>--char-type</b> <i>type</i></code></dt>
- <dd>Generate code using the provided character <code><i>type</i></code>
- instead of the default <code><b>char</b></code>. Valid values
- are <code><b>char</b></code> and <code><b>wchar_t</b></code>.</dd>
-
- <dt><code><b>--char-encoding</b> <i>enc</i></code></dt>
- <dd>Specify the character encoding that should be used in the generated
- code. Valid values for the <code><b>char</b></code> character type
- are <code><b>utf8</b></code> (default), <code><b>iso8859-1</b></code>,
- <code><b>lcp</b></code> (Xerces-C++ local code page), and
- <code><b>custom</b></code>. If you pass <code><b>custom</b></code> as
- the value then you will need to include the transcoder implementation
- header for your encoding at the beginning of the generated header
- files (see the <code><b>--hxx-prologue</b></code> option).
-
- <p>For the <code><b>wchar_t</b></code> character type the only valid
- value is <code><b>auto</b></code> and the encoding is automatically
- selected between UTF-16 and UTF-32/UCS-4, depending on the
- <code><b>wchar_t</b></code> type size.</p></dd>
-
- <dt><code><b>--output-dir</b> <i>dir</i></code></dt>
- <dd>Write generated files to <code><i>dir</i></code> instead of
- the current directory.</dd>
-
- <dt><code><b>--namespace-map</b> <i>xns</i><b>=</b><i>cns</i></code></dt>
- <dd>Map XML Schema namespace <i>xns</i> to C++ namespace <i>cns</i>.
- Repeat this option to specify mapping for more than one XML Schema
- namespace. For example, the following option:
-
- <p><code><b>--namespace-map http://example.com/foo/bar=foo::bar</b></code></p>
-
- <p>will map the <code><b>http://example.com/foo/bar</b></code>
- XML Schema namespace to the <code><b>foo::bar</b></code> C++
- namespace.</p>
- </dd>
-
- <dt><code><b>--namespace-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema namespace names to C++ namespace
- names. <code><i>regex</i></code> is a perl-like regular expression in
- the form <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Any character can be used as a delimiter instead of <code><b>/</b></code>.
- Escaping of the delimiter character in <code><i>pattern</i></code> or
- <code><i>replacement</i></code> is not supported.
-
- <p>All the regular expressions are pushed into a stack with the last
- specified expression considered first. The first match that
- succeeds is used. Regular expressions are applied to a string
- in the form</p>
-
- <p><code><i>filename</i> <i>namespace</i></code></p>
-
- <p>For example, if you have file <code><b>hello.xsd</b></code>
- with namespace <code><b>http://example.com/hello</b></code> and you run
- <code><b>xsd</b></code> on this file, then the string in question
- will be:</p>
-
- <p><code><b>hello.xsd. http://example.com/hello</b></code></p>
-
- <p>For the built-in XML Schema namespace the string is:</p>
-
- <p><code><b>XMLSchema.xsd http://www.w3.org/2001/XMLSchema</b></code></p>
-
- <p>The following three steps are performed for each regular expression
- until the match is found:</p>
-
- <ol>
- <li>The expression is applied and if the result is empty the
- next expression is considered.</li>
-
- <li>All <code><b>/</b></code> are replaced with
- <code><b>::</b></code>.</li>
-
- <li>The result is verified to be a valid C++ scope name (e.g.,
- <code><b>foo::bar</b></code>). If this test succeeds, the
- result is used as a C++ namespace name.</li>
- </ol>
-
- <p>As an example, the following expression maps XML Schema
- namespaces in the form
- <code><b>http://example.com/foo/bar</b></code> to C++
- namespaces in the form <code><b>foo::bar</b></code>:</p>
-
- <p><code><b>%.* http://example.com/(.+)%$1%</b></code></p>
-
- <p>See also the REGEX AND SHELL QUOTING section below.</p>
- </dd>
-
- <dt><code><b>--namespace-regex-trace</b></code></dt>
- <dd>Trace the process of applying regular expressions specified with
- the <code><b>--namespace-regex</b></code> option. Use this option
- to find out why your regular expressions don't do what you expected
- them to do.
- </dd>
-
- <!-- Reserved names -->
-
- <dt><code><b>--reserved-name</b> <i>name</i>[<b>=</b><i>rep</i>]</code></dt>
- <dd>Add <code><i>name</i></code> to the list of names that should not
- be used as identifiers. The name can optionally be followed by
- <code><b>=</b></code> and the replacement name that should be
- used instead. All the C++ keywords are already in this list.
- </dd>
-
- <!-- Include -->
-
- <dt><code><b>--include-with-brackets</b></code></dt>
- <dd>Use angle brackets (&lt;&gt;) instead of quotes ("") in
- generated <code><b>#include</b></code> directives.
- </dd>
-
- <dt><code><b>--include-prefix</b> <i>prefix</i></code></dt>
- <dd>Add <code><i>prefix</i></code> to generated <code><b>#include</b></code>
- directive paths.
-
- <p>For example, if you had the following import element in your
- schema</p>
-
- <p><code><b>&lt;import namespace="..." schemaLocation="base.xsd"/&gt;</b></code></p>
-
- <p>and compiled this fragment with <code><b>--include-prefix schemas/</b></code>,
- then the include directive in the generated code would be:</p>
-
- <p><code><b>#include "schemas/base.hxx"</b></code></p>
- </dd>
-
- <dt><code><b>--include-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to transform <code><b>#include</b></code> directive paths.
- <code><i>regex</i></code> is a perl-like regular expression in
- the form <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Any character can be used as a delimiter instead of <code><b>/</b></code>.
- Escaping of the delimiter character in <code><i>pattern</i></code> or
- <code><i>replacement</i></code> is not supported.
-
- <p>All the regular expressions are pushed into a stack with the last
- specified expression considered first. The first match that
- succeeds is used.</p>
-
- <p>As an example, the following expression transforms paths
- in the form <code><b>schemas/foo/bar</b></code> to paths
- in the form <code><b>generated/foo/bar</b></code>:</p>
-
- <p><code><b>%schemas/(.+)%generated/$1%</b></code></p>
-
- <p>See also the REGEX AND SHELL QUOTING section below.</p>
- </dd>
-
- <dt><code><b>--include-regex-trace</b></code></dt>
- <dd>Trace the process of applying regular expressions specified with
- the <code><b>--include-regex</b></code> option. Use this option
- to find out why your regular expressions don't do what you expected
- them to do.
- </dd>
-
- <dt><code><b>--guard-prefix</b> <i>prefix</i></code></dt>
- <dd>Add <code><i>prefix</i></code> to generated header inclusion guards.
- The prefix is transformed to upper case and characters that are
- illegal in a preprocessor macro name are replaced with underscores.
- If this option is not specified then the directory part of the
- input schema file is used as a prefix.
- </dd>
-
- <!-- Suffixes. -->
-
- <dt><code><b>--hxx-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the default
- <code><b>.hxx</b></code> to construct the name of the header file.
- Note that this suffix is also used to construct names for
- included/imported schemas.
- </dd>
-
- <dt><code><b>--ixx-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the default
- <code><b>.ixx</b></code> to construct the name of the inline file.
- </dd>
-
- <dt><code><b>--cxx-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the default
- <code><b>.cxx</b></code> to construct the name of the source file.
- </dd>
-
- <dt><code><b>--hxx-regex</b> <i>regex</i></code></dt>
- <dd>Use the provided expression to construct the name of the header
- file. <code><i>regex</i></code> is a perl-like regular expression
- in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Note that this expression is also used to construct names for
- included/imported schemas. See also the REGEX AND SHELL QUOTING
- section below.
- </dd>
-
- <dt><code><b>--ixx-regex</b> <i>regex</i></code></dt>
- <dd>Use the provided expression to construct the name of the inline
- file. <code><i>regex</i></code> is a perl-like regular expression
- in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- See also the REGEX AND SHELL QUOTING section below.
- </dd>
-
- <dt><code><b>--cxx-regex</b> <i>regex</i></code></dt>
- <dd>Use the provided expression to construct the name of the source
- file. <code><i>regex</i></code> is a perl-like regular expression
- in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- See also the REGEX AND SHELL QUOTING section below.
- </dd>
-
-
- <dt><code><b>--hxx-prologue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the beginning of the header file.
- </dd>
-
- <dt><code><b>--ixx-prologue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the beginning of the inline file.
- </dd>
-
- <dt><code><b>--cxx-prologue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the beginning of the source file.
- </dd>
-
- <dt><code><b>--prologue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the beginning of each generated
- file for which there is no file-specific prologue.
- </dd>
-
- <dt><code><b>--hxx-epilogue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the end of the header file.
- </dd>
-
- <dt><code><b>--ixx-epilogue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the end of the inline file.
- </dd>
-
- <dt><code><b>--cxx-epilogue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the end of the source file.
- </dd>
-
- <dt><code><b>--epilogue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the end of each generated
- file for which there is no file-specific epilogue.
- </dd>
-
-
- <dt><code><b>--hxx-prologue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the beginning
- of the header file.
- </dd>
-
- <dt><code><b>--ixx-prologue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the beginning
- of the inline file.
- </dd>
-
- <dt><code><b>--cxx-prologue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the beginning
- of the source file.
- </dd>
-
- <dt><code><b>--prologue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the beginning
- of each generated file for which there is no file-specific prologue
- file.
- </dd>
-
- <dt><code><b>--hxx-epilogue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the end of the
- header file.
- </dd>
-
- <dt><code><b>--ixx-epilogue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the end of the
- inline file.
- </dd>
-
- <dt><code><b>--cxx-epilogue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the end of the
- source file.
- </dd>
-
- <dt><code><b>--epilogue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the end of each
- generated file for which there is no file-specific epilogue file.
- </dd>
-
- <dt><code><b>--custom-literals</b> <i>file</i></code></dt>
- <dd>Load custom XML string to C++ literal mappings from
- <code><i>file</i></code>. This mechanism can be useful if you
- are using a custom character encoding and some of the strings
- in your schemas, for example element/attribute names or enumeration
- values, contain non-ASCII characters. In this case you will need
- to provide a custom mapping to C++ literals for such
- strings. The format of this file is specified in the
- <code><b>custom-literals.xsd</b></code> XML Schema file that
- can be found in the documentation directory.
- </dd>
-
- <dt><code><b>--export-symbol</b> <i>symbol</i></code></dt>
- <dd>Insert <code><i>symbol</i></code> in places where DLL
- export/import control statements
- (<code><b>__declspec(dllexport/dllimport)</b></code>) are necessary.
- </dd>
-
- <dt><code><b>--export-xml-schema</b></code></dt>
- <dd>Export/import types in the XML Schema namespace using the export
- symbol provided with the <code><b>--export-symbol</b></code> option.
- The <code><b>XSD_NO_EXPORT</b></code> macro can be used to omit
- this code during C++ compilation, which may be useful if you
- would like to use the same generated code across multiple platforms.
- </dd>
-
- <dt><code><b>--export-maps</b></code></dt>
- <dd>Export polymorphism support maps from a Win32 DLL into which this
- generated code is linked. This is necessary when your type hierarchy
- is split across several DLLs since otherwise each DLL will have its
- own set of maps. In this situation the generated code for the DLL
- which contains base types and/or substitution group heads should be
- compiled with this option and the generated code for all other
- DLLs should be compiled with <code><b>--import-maps</b></code>.
- This option is only valid together with
- <code><b>--generate-polymorphic</b></code>.
- The <code><b>XSD_NO_EXPORT</b></code> macro can be used to omit
- this code during C++ compilation, which may be useful if you
- would like to use the same generated code across multiple platforms.
- </dd>
-
- <dt><code><b>--import-maps</b></code></dt>
- <dd>Import polymorphism support maps to a Win32 DLL or executable into
- which this generated code is linked. See the <code><b>--export-maps</b></code>
- option documentation for details. This options is only valid together
- with <code><b>--generate-polymorphic</b></code>.
- The <code><b>XSD_NO_EXPORT</b></code> macro can be used to omit
- this code during C++ compilation, which may be useful if you
- would like to use the same generated code across multiple platforms.
- </dd>
-
- <dt><code><b>--disable-warning</b> <i>warn</i></code></dt>
- <dd>Disable printing warning with id <i>warn</i>. If <code><b>all</b></code>
- is specified for the warning id then all warnings are disabled.
- </dd>
-
- <!-- misc options -->
-
- <dt><code><b>--show-sloc</b></code></dt>
- <dd>Show the number of generated physical source lines of code (SLOC).
- </dd>
-
- <dt><code><b>--sloc-limit</b> <i>num</i></code></dt>
- <dd>Check that the number of generated physical source lines of code
- (SLOC) does not exceed <code><i>num</i></code>.
- </dd>
-
- <dt><code><b>--options-file</b> <i>file</i></code></dt>
- <dd>Read additional options from <code><i>file</i></code>. Each option
- should appear on a separate line optionally followed by space and
- an argument. Empty lines and lines starting with <code><b>#</b></code>
- are ignored. The semantics of providing options in a
- file is equivalent to providing the same set of options in
- the same order in the command line at the point where the
- <code><b>--options-file</b></code> option is specified
- except that shell escaping and quoting is not required.
- Repeat this option to specify more than one options files.
- </dd>
-
- <dt><code><b>--proprietary-license</b></code></dt>
- <dd>Indicate that the generated code is licensed under a proprietary
- license instead of the GPL.
- </dd>
-
- <!-- Anonymous options. -->
-
- <dt><code><b>--preserve-anonymous</b></code></dt>
- <dd>Preserve anonymous types. By default anonymous types are
- automatically named with names derived from the enclosing
- elements/attributes. Because mappings implemented by this
- compiler require all types to be named, this option is only
- useful if you want to make sure your schemas don't have
- anonymous types.
- </dd>
-
- <dt><code><b>--show-anonymous</b></code></dt>
- <dd>Show elements and attributes that are of anonymous types.
- This option only makes sense together with the
- <code><b>--preserve-anonymous</b></code> option.
- </dd>
-
- <dt><code><b>--anonymous-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to derive names for anonymous types from the enclosing
- attributes/elements. <code><i>regex</i></code> is a perl-like regular
- expression in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Any character can be used as a delimiter instead of <code><b>/</b></code>.
- Escaping of the delimiter character in <code><i>pattern</i></code> or
- <code><i>replacement</i></code> is not supported.
-
- <p>All the regular expressions are pushed into a stack with the last
- specified expression considered first. The first match that
- succeeds is used. Regular expressions are applied to a string
- in the form</p>
-
- <p><code><i>filename</i> <i>namespace</i> <i>xpath</i></code></p>
-
- <p>For instance:</p>
-
- <p><code><b>hello.xsd http://example.com/hello element</b></code></p>
- <p><code><b>hello.xsd http://example.com/hello type/element</b></code></p>
-
- <p>As an example, the following expression makes all the derived
- names start with capital letters. This could be useful when
- your naming convention requires type names to start with
- capital letters:</p>
-
- <p><code><b>%.* .* (.+/)*(.+)%\u$2%</b></code></p>
-
- <p>See also the REGEX AND SHELL QUOTING section below.</p>
- </dd>
-
- <dt><code><b>--anonymous-regex-trace</b></code></dt>
- <dd>Trace the process of applying regular expressions specified with
- the <code><b>--anonymous-regex</b></code> option. Use this option
- to find out why your regular expressions don't do what you expected
- them to do.
- </dd>
-
- <!-- Location mapping options. -->
-
- <dt><code><b>--location-map</b> <i>ol</i><b>=</b><i>nl</i></code></dt>
- <dd>Map the original schema location <i>ol</i> that is specified in
- the XML Schema include or import elements to new schema
- location <i>nl</i>. Repeat this option to map more than one
- schema location. For example, the following option maps the
- <code><b>http://example.com/foo.xsd</b></code> URL to the
- <code><b>foo.xsd</b></code> local file.
-
- <p><code><b>--location-map http://example.com/foo.xsd=foo.xsd</b></code></p>
- </dd>
-
- <dt><code><b>--location-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to map schema locations that are specified in the XML Schema
- include or import elements. <code><i>regex</i></code> is a perl-like
- regular expression in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Any character can be used as a delimiter instead of <code><b>/</b></code>.
- Escaping of the delimiter character in <code><i>pattern</i></code> or
- <code><i>replacement</i></code> is not supported. All the regular
- expressions are pushed into a stack with the last specified
- expression considered first. The first match that succeeds is used.
-
- <p>For example, the following expression maps URL locations in the form
- <code><b>http://example.com/foo/bar.xsd</b></code> to local files
- in the form <code><b>bar.xsd</b></code>:</p>
-
- <p><code><b>%http://.+/(.+)%$1%</b></code></p>
-
- <p>See also the REGEX AND SHELL QUOTING section below.</p>
- </dd>
-
- <dt><code><b>--location-regex-trace</b></code></dt>
- <dd>Trace the process of applying regular expressions specified with
- the <code><b>--location-regex</b></code> option. Use this option
- to find out why your regular expressions don't do what you expected
- them to do.
- </dd>
-
- <!-- File-per-type compilation mode options. -->
-
- <dt><code><b>--file-per-type</b></code></dt>
- <dd>Generate a separate set of C++ files for each type defined in XML
- Schema. Note that in this mode you only need to compile the root
- schema(s) and the code will be generated for all included and
- imported schemas. This compilation mode is primarily useful when
- some of your schemas cannot be compiled separately or have cyclic
- dependencies which involve type inheritance. Other options related
- to this mode are:
- <code><b>--type-file-regex</b></code>,
- <code><b>--schema-file-regex</b></code>, and
- <code><b>--file-list</b></code>.
- </dd>
-
-
- <dt><code><b>--type-file-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate type names to file names when the
- <code><b>--file-per-type</b></code> option is specified.
- <code><i>regex</i></code> is a perl-like regular expression in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Any character can be used as a delimiter instead of <code><b>/</b></code>.
- Escaping of the delimiter character in <code><i>pattern</i></code> or
- <code><i>replacement</i></code> is not supported. All the regular
- expressions are pushed into a stack with the last specified
- expression considered first. The first match that succeeds is used.
- Regular expressions are applied to a string in the form
-
- <p><code><i>namespace</i> <i>type-name</i></code></p>
-
- <p>For example, the following expression maps type <code><b>foo</b></code>
- that is defined in the <code><b>http://example.com/bar</b></code>
- namespace to file name <code><b>bar-foo</b></code>:</p>
-
- <p><code><b>%http://example.com/(.+) (.+)%$1-$2%</b></code></p>
-
- <p>See also the REGEX AND SHELL QUOTING section below.</p>
- </dd>
-
- <dt><code><b>--type-file-regex-trace</b></code></dt>
- <dd>Trace the process of applying regular expressions specified with
- the <code><b>--type-file-regex</b></code> option. Use this option
- to find out why your regular expressions don't do what you expected
- them to do.
- </dd>
-
- <dt><code><b>--schema-file-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate schema file names when the
- <code><b>--file-per-type</b></code> option is specified.
- <code><i>regex</i></code> is a perl-like regular expression in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Any character can be used as a delimiter instead of <code><b>/</b></code>.
- Escaping of the delimiter character in <code><i>pattern</i></code> or
- <code><i>replacement</i></code> is not supported. All the regular
- expressions are pushed into a stack with the last specified
- expression considered first. The first match that succeeds is used.
- Regular expressions are applied to the absolute filesystem path
- of a schema file and the result, including the directory part,
- if any, is used to derive the <code><b>#include</b></code> directive
- paths as well as the generated C++ file paths. This option, along
- with <code><b>--type-file-regex</b></code> are primarily used to
- place the generated files into subdirectories or to resolve file
- name conflicts.
-
- <p>For example, the following expression maps schema files in the
- <code><b>foo/1.0.0/</b></code> subdirectory to the files in
- the <code><b>foo/</b></code> subdirectory. As a result, the
- <code><b>#include</b></code> directive paths for such schemas
- will be in the <code><b>foo/schema.hxx</b></code> form and
- the generated C++ files will be placed into the
- <code><b>foo/</b></code> subdirectory:</p>
-
- <p><code><b>%.*/foo/1.0.0/(.+)%foo/$1%</b></code></p>
-
- <p>See also the REGEX AND SHELL QUOTING section below.</p>
- </dd>
-
- <dt><code><b>--schema-file-regex-trace</b></code></dt>
- <dd>Trace the process of applying regular expressions specified with
- the <code><b>--schema-file-regex</b></code> option. Use this option
- to find out why your regular expressions don't do what you expected
- them to do.
- </dd>
-
- <!-- File list options. -->
-
- <dt><code><b>--file-list</b> <i>file</i></code></dt>
- <dd>Write a list of generated C++ files to <code><i>file</i></code>.
- This option is primarily useful in the file-per-type compilation
- mode (<code><b>--file-per-type</b></code>) to create a list of
- generated C++ files, for example, as a makefile fragment.
- </dd>
-
- <dt><code><b>--file-list-prologue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the beginning of the file list.
- As a convenience, all occurrences of the \n character sequence in
- <code><i>text</i></code> are replaced with new lines. This option
- can, for example, be used to assign the generated file list to a
- makefile variable.
- </dd>
-
- <dt><code><b>--file-list-epilogue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the end of the file list.
- As a convenience, all occurrences of the \n character sequence in
- <code><i>text</i></code> are replaced with new lines.
- </dd>
-
- <dt><code><b>--file-list-delim</b> <i>text</i></code></dt>
- <dd>Delimit file names written to the file list with
- <code><i>text</i></code> instead of new lines. As a convenience,
- all occurrences of the \n character sequence in
- <code><i>text</i></code> are replaced with new lines.
- </dd>
-
- </dl>
-
- <h2>CXX-TREE COMMAND OPTIONS</h2>
-
- <dl class="options">
- <dt><code><b>--generate-polymorphic</b></code></dt>
- <dd>Generate polymorphism-aware code. Specify this option if you use
- substitution groups or <code><b>xsi:type</b></code>. Use the
- <code><b>--polymorphic-type</b></code> or
- <code><b>--polymorphic-type-all</b></code> option to specify
- which type hierarchies are polymorphic.</dd>
-
- <dt><code><b>--polymorphic-type</b></code> <i>type</i></dt>
- <dd>Indicate that <code><i>type</i></code> is a root of a polymorphic
- type hierarchy. The compiler can often automatically determine
- which types are polymorphic based on the substitution group
- declarations. However, you may need to use this option if you are
- not using substitution groups or if substitution groups are defined
- in another schema. You need to specify this option when compiling
- every schema file that references <code><i>type</i></code>. The
- <code><i>type</i></code> argument is an XML Schema type name that
- can be optionally qualified with a namespace in the
- <code><i>namespace</i><b>#</b><i>name</i></code> form.</dd>
-
- <dt><code><b>--polymorphic-type-all</b></code></dt>
- <dd>Indicate that all types should be treated as polymorphic.</dd>
-
- <dt><code><b>--generate-serialization</b></code></dt>
- <dd>Generate serialization functions. Serialization functions
- convert the object model back to XML.</dd>
-
- <dt><code><b>--generate-inline</b></code></dt>
- <dd>Generate simple functions inline. This option triggers creation
- of the inline file.</dd>
-
- <dt><code><b>--generate-ostream</b></code></dt>
- <dd>Generate ostream insertion operators
- (<code><b>operator&lt;&lt;</b></code>) for generated types. This
- allows to easily print a fragment or the whole object model
- for debugging or logging.</dd>
-
- <dt><code><b>--generate-doxygen</b></code></dt>
- <dd>Generate documentation comments suitable for extraction by the
- Doxygen documentation system. Documentation from annotations
- is added to the comments if present in the schema.</dd>
-
- <dt><code><b>--generate-comparison</b></code></dt>
- <dd>Generate comparison operators
- (<code><b>operator==</b></code> and <code><b>operator!=</b></code>)
- for complex types. Comparison is performed memberwise.</dd>
-
- <dt><code><b>--generate-default-ctor</b></code></dt>
- <dd>Generate default constructors even for types that have required
- members. Required members of an instance constructed using such a
- constructor are not initialized and accessing them results in
- undefined behavior.</dd>
-
- <dt><code><b>--generate-from-base-ctor</b></code></dt>
- <dd>Generate constructors that expect an instance of a base type
- followed by all required members.</dd>
-
- <dt><code><b>--generate-detach</b></code></dt>
- <dd>Generate detach functions for required elements and attributes
- (detach functions for optional and sequence cardinalities are
- provided by the respective containers). These functions, for
- example, allow you to move sub-trees in the object model either
- within the same tree or between different trees.</dd>
-
- <dt><code><b>--generate-wildcard</b></code></dt>
- <dd>Generate accessors and modifiers as well as parsing and serialization
- code for XML Schema wildcards (<code><b>any</b></code> and
- <code><b>anyAttribute</b></code>). XML content matched by wildcards
- is presented as DOM fragments. Note that you need to initialize the
- Xerces-C++ runtime if you are using this option.</dd>
-
- <dt><code><b>--generate-insertion</b> <i>os</i></code></dt>
- <dd>Generate data representation stream insertion operators for
- the <code><i>os</i></code> output stream type. Repeat this
- option to specify more than one stream type. The ACE CDR stream
- (<code><b>ACE_OutputCDR</b></code>) and RPC XDR are recognized
- by the compiler and the necessary <code><b>#include</b></code>
- directives are automatically generated. For custom stream
- types use the <code><b>--hxx-prologue*</b></code> options
- to provide the necessary declarations.</dd>
-
- <dt><code><b>--generate-extraction</b> <i>is</i></code></dt>
- <dd>Generate data representation stream extraction constructors for
- the <code><i>is</i></code> input stream type. Repeat this
- option to specify more than one stream type. The ACE CDR stream
- (<code><b>ACE_InputCDR</b></code>) and RPC XDR are recognized by
- the compiler and the necessary <code><b>#include</b></code>
- directives are automatically generated. For custom stream
- types use the <code><b>--hxx-prologue*</b></code> options
- to provide the necessary declarations.</dd>
-
- <dt><code><b>--generate-forward</b></code></dt>
- <dd>Generate a separate header file with forward declarations for the
- types being generated.</dd>
-
- <dt><code><b>--generate-xml-schema</b></code></dt>
- <dd>Generate a C++ header file as if the schema being compiled defines
- the XML Schema namespace. In particular, the resulting file will
- have definitions for all XML Schema built-in types. The schema file
- provided to the compiler need not exist and is only used to derive
- the name of the resulting header file. Use the
- <code><b>--extern-xml-schema</b></code> option to include this file
- in the generated files for other schemas.</dd>
-
- <dt><code><b>--extern-xml-schema</b> <i>file</i></code></dt>
- <dd>Include a header file derived from <i>file</i> instead of
- generating the XML Schema namespace mapping inline. The provided
- file need not exist and is only used to derive the name of the
- included header file. Use the <code><b>--generate-xml-schema</b></code>
- option to generate this header file.</dd>
-
- <dt><code><b>--suppress-parsing</b></code></dt>
- <dd>Suppress the generation of the parsing functions and constructors.
- Use this option to reduce the generated code size when parsing
- from XML is not needed.</dd>
-
- <dt><code><b>--generate-element-type</b></code></dt>
- <dd>Generate types instead of parsing and serialization functions
- for root elements. This is primarily useful to distinguish
- object models with the same root type but with different root
- elements.</dd>
-
- <dt><code><b>--generate-element-map</b></code></dt>
- <dd>Generate a root element map that allows uniform parsing and
- serialization of multiple root elements. This option is only
- valid together with <code><b>--generate-element-type</b></code>.
- </dd>
-
- <dt><code><b>--generate-intellisense</b></code></dt>
- <dd>Generate workarounds for IntelliSense bugs in Visual Studio
- 2005 (8.0). When this option is used, the resulting code is
- slightly more verbose. IntelliSense in Visual Studio 2008 (9.0)
- does not require these workarounds. Support for IntelliSense in
- Visual Studio 2003 (7.1) is improved with this option but is
- still incomplete.</dd>
-
- <dt><code><b>--omit-default-attributes</b></code></dt>
- <dd>Omit attributes with default and fixed values from serialized
- XML documents.</dd>
-
- <!-- Naming -->
-
- <dt><code><b>--type-naming</b> <i>style</i></code></dt>
- <dd>Specify the type naming convention that should be used in the
- generated code. Valid styles are <code><b>knr</b></code>
- (default), <code><b>ucc</b></code>, and <code><b>java</b></code>.
- See the NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--function-naming</b> <i>style</i></code></dt>
- <dd>Specify the function naming convention that should be used in the
- generated code. Valid styles are <code><b>knr</b></code>
- (default), <code><b>lcc</b></code>, and <code><b>java</b></code>.
- See the NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--type-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema type names to C++ type names. See the
- NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--accessor-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes to C++
- accessor function names. See the NAMING CONVENTION section below
- for more information.
- </dd>
-
- <dt><code><b>--one-accessor-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes with
- cardinality one to C++ accessor function names. See the NAMING
- CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--opt-accessor-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes with
- cardinality optional to C++ accessor function names. See the
- NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--seq-accessor-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes with
- cardinality sequence to C++ accessor function names. See the
- NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--modifier-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes to C++
- modifier function names. See the NAMING CONVENTION section below
- for more information.
- </dd>
-
- <dt><code><b>--one-modifier-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes with
- cardinality one to C++ modifier function names. See the NAMING
- CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--opt-modifier-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes with
- cardinality optional to C++ modifier function names. See the
- NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--seq-modifier-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema names of elements/attributes with
- cardinality sequence to C++ modifier function names. See the
- NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--parser-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema element names to C++ parsing function
- names. See the NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--serializer-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema element names to C++ serialization
- function names. See the NAMING CONVENTION section below for more
- information.
- </dd>
-
- <dt><code><b>--enumerator-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema enumeration values to C++ enumerator
- names. See the NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--element-type-regex</b> <i>regex</i></code></dt>
- <dd>Add <code><i>regex</i></code> to the list of regular expressions
- used to translate XML Schema element names to C++ element type
- names. See the NAMING CONVENTION section below for more information.
- </dd>
-
- <dt><code><b>--name-regex-trace</b></code></dt>
- <dd>Trace the process of applying regular expressions specified with
- the name transformation options. Use this option to find out why
- your regular expressions don't do what you expected them to do.
- </dd>
-
- <!-- Root element. -->
-
- <dt><code><b>--root-element-first</b></code></dt>
- <dd>Treat only the first global element as a document root. By default
- all global elements are considered document roots.
- </dd>
-
- <dt><code><b>--root-element-last</b></code></dt>
- <dd>Treat only the last global element as a document root. By default
- all global elements are considered document roots.
- </dd>
-
- <dt><code><b>--root-element-all</b></code></dt>
- <dd>Treat all global elements as document roots. This is the default
- behavior. By explicitly specifying this option you can suppress
- the warning that is issued if more than one global element is defined.
- </dd>
-
- <dt><code><b>--root-element-none</b></code></dt>
- <dd>Do not treat any global elements as document roots. By default
- all global elements are considered document roots.
- </dd>
-
- <dt><code><b>--root-element</b> <i>element</i></code></dt>
- <dd>Treat only <code><i>element</i></code> as a document root. Repeat this
- option to specify more than one root element.
- </dd>
-
- <!-- Custom type. -->
-
- <dt><code><b>--custom-type</b>
- <i>name</i>[<b>=</b><i>type</i>[<b>/</b><i>base</i>]]</code></dt>
- <dd>Use a custom C++ type <i>type</i> instead of the generated class for
- XML Schema type <i>name</i>. If <i>type</i> is not present
- or empty then the custom type is assumed to have the same name and
- be defined in the same namespace as the generated class would have.
- If <i>base</i> is specified then the generated class is still
- generated but with that name.
- </dd>
-
- <dt><code><b>--custom-type-regex</b>
- <b>/</b><i>name-pat</i><b>/</b>[<i>type-sub</i><b>/</b>[<i>base-sub</i><b>/</b>]]</code></dt>
- <dd>For each type defined in XML Schema that matches the <i>name-pat</i>
- pattern use a custom C++ type instead of the generated class. The
- name of the custom type is obtained by substituting <i>type-sub</i>.
- If <i>type-sub</i> is not present or its substitution results in an
- empty string then the custom type is assumed to have the same name
- and be defined in the same namespace as the generated class would
- have. If <i>base-sub</i> is present and its substitution results
- in a non-empty string then the generated class is still generated
- but with the result of substitution as its name. The pattern and
- substitutions are in the perl regular expression format. See also
- the REGEX AND SHELL QUOTING section below.
- </dd>
-
- <!-- Suffixes. -->
-
- <dt><code><b>--fwd-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the default
- <code><b>-fwd.hxx</b></code> to construct the name of the forward
- declaration file.
- </dd>
-
- <dt><code><b>--fwd-regex</b> <i>regex</i></code></dt>
- <dd>Use the provided expression to construct the name of the forward
- declaration file. <code><i>regex</i></code> is a perl-like regular
- expression in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- See also the REGEX AND SHELL QUOTING section below.
- </dd>
-
- <dt><code><b>--fwd-prologue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the beginning of the forward
- declaration file.
- </dd>
-
- <dt><code><b>--fwd-epilogue</b> <i>text</i></code></dt>
- <dd>Insert <code><i>text</i></code> at the end of the forward
- declaration file.
- </dd>
-
- <dt><code><b>--fwd-prologue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the beginning
- of the forward declaration file.
- </dd>
-
- <dt><code><b>--fwd-epilogue-file</b> <i>file</i></code></dt>
- <dd>Insert the content of the <code><i>file</i></code> at the end of the
- forward declaration file.
- </dd>
-
- <!-- Parts. -->
-
- <dt><code><b>--parts</b> <i>num</i></code></dt>
- <dd>Split generated source code into <code><i>num</i></code> parts. This
- is useful when translating large, monolithic schemas and a C++
- compiler is not able to compile the resulting source code at once
- (usually due to insufficient memory).
- </dd>
-
- <dt><code><b>--parts-suffix</b> <i>suffix</i></code></dt>
- <dd>Use <code><i>suffix</i></code> instead of the default
- '<code><b>-</b></code>' to separate the file name from the
- part number.
- </dd>
-
- </dl>
-
- <h2>CXX-PARSER COMMAND OPTIONS</h2>
-
- <dl class="options">
- <dt><code><b>--type-map</b> <i>mapfile</i></code></dt>
- <dd>Read XML Schema to C++ type mapping information from
- <code><i>mapfile</i></code>. Repeat this option to specify
- several type maps. Type maps are considered in order of
- appearance and the first match is used. By default all
- user-defined types are mapped to <code><b>void</b></code>.
- See the TYPE MAP section below for more information.</dd>
-
- <dt><code><b>--xml-parser</b> <i>parser</i></code></dt>
- <dd>Use <code><i>parser</i></code> as the underlying XML parser.
- Valid values are <code><b>xerces</b></code> for Xerces-C++ (default)
- and <code><b>expat</b></code> for Expat.</dd>
-
- <dt><code><b>--generate-inline</b></code></dt>
- <dd>Generate simple functions inline. This option triggers creation
- of the inline file.</dd>
-
- <dt><code><b>--generate-validation</b></code></dt>
- <dd>Generate validation code ("perfect" parser) which ensures that
- instance documents conform to the schema. Validation code is
- generated by default when the selected underlying XML parser
- is non-validating (<code><b>expat</b></code>).</dd>
-
- <dt><code><b>--suppress-validation</b></code></dt>
- <dd>Suppress the generation of validation code ("perfect" parser).
- Validation is suppressed by default when the selected underlying
- XML parser is validating (<code><b>xerces</b></code>).</dd>
-
- <dt><code><b>--generate-polymorphic</b></code></dt>
- <dd>Generate polymorphism-aware code. Specify this option if you use
- substitution groups or <code><b>xsi:type</b></code>.</dd>
-
- <dt><code><b>--generate-noop-impl</b></code></dt>
- <dd>Generate a sample parser implementation that does nothing (no
- operation). The sample implementation can then be filled with
- the application-specific code. For an input file in the form
- <code><b>name.xsd</b></code> this option triggers the generation
- of the two additional C++ files in the form:
- <code><b>name-pimpl.hxx</b></code> (parser implementation header
- file) and <code><b>name-pimpl.cxx</b></code> (parser implementation
- source file).</dd>
-
- <dt><code><b>--generate-print-impl</b></code></dt>
- <dd>Generate a sample parser implementation that prints the XML data
- to STDOUT. For an input file in the form <code><b>name.xsd</b></code>
- this option triggers the generation of the two additional C++ files
- in the form: <code><b>name-pimpl.hxx</b></code> (parser implementation
- header file) and <code><b>name-pimpl.cxx</b></code> (parser
- implementation source file).</dd>
-
- <dt><code><b>--generate-test-driver</b></code></dt>
- <dd>Generate a test driver for the sample parser implementation. For an
- input file in the form <code><b>name.xsd</b></code> this option
- triggers the generation of an additional C++ file in the form
- <code><b>name-driver.cxx</b></code>.</dd>
-
- <dt><code><b>--force-overwrite</b></code></dt>
- <dd>Force overwriting of the existing implementation and test driver
- files. Use this option only if you do not mind loosing the changes
- you have made in the sample implementation or test driver files.</dd>
-
- <dt><code><b>--root-element-first</b></code></dt>
- <dd>Indicate that the first global element is the document root. This
- information is used to generate the test driver for the sample
- implementation.</dd>
-
- <dt><code><b>--root-element-last</b></code></dt>
- <dd>Indicate that the last global element is the document root. This
- information is used to generate the test driver for the sample
- implementation.</dd>
-
- <dt><code><b>--root-element <i>element</i></b></code></dt>
- <dd>Indicate that <code><i>element</i></code> is the document root.
- This information is used to generate the test driver for the
- sample implementation.</dd>
-
- <dt><code><b>--generate-xml-schema</b></code></dt>
- <dd>Generate a C++ header file as if the schema being compiled defines
- the XML Schema namespace. In particular, the resulting file will
- have definitions for all parser skeletons and implementations
- corresponding to the XML Schema built-in types. The schema file
- provided to the compiler need not exist and is only used to derive
- the name of the resulting header file. Use the
- <code><b>--extern-xml-schema</b></code> option to include this file
- in the generated files for other schemas.</dd>
-
- <dt><code><b>--extern-xml-schema</b> <i>file</i></code></dt>
- <dd>Include a header file derived from <i>file</i> instead of
- generating the XML Schema namespace mapping inline. The provided
- file need not exist and is only used to derive the name of the
- included header file. Use the <code><b>--generate-xml-schema</b></code>
- option to generate this header file.</dd>
-
- <dt><code><b>--skel-type-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the
- default <code><b>_pskel</b></code> to construct the names
- of generated parser skeletons.</dd>
-
- <dt><code><b>--skel-file-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the
- default <code><b>-pskel</b></code> to construct the names of
- generated parser skeleton files.</dd>
-
- <dt><code><b>--impl-type-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the
- default <code><b>_pimpl</b></code> to construct the names of
- parser implementations for the built-in XML Schema types
- and sample parser implementations.</dd>
-
- <dt><code><b>--impl-file-suffix</b> <i>suffix</i></code></dt>
- <dd>Use the provided <code><i>suffix</i></code> instead of the
- default <code><b>-pimpl</b></code> to construct the names of
- generated sample parser implementation files.</dd>
- </dl>
-
- <h1>NAMING CONVENTION</h1>
-
- <p>The compiler can be instructed to use a particular naming
- convention in the generated code. A number of widely-used
- conventions can be selected using the <code><b>--type-naming</b></code>
- and <code><b>--function-naming</b></code> options. A custom
- naming convention can be achieved using the
- <code><b>--type-regex</b></code>,
- <code><b>--accessor-regex</b></code>,
- <code><b>--one-accessor-regex</b></code>,
- <code><b>--opt-accessor-regex</b></code>,
- <code><b>--seq-accessor-regex</b></code>,
- <code><b>--modifier-regex</b></code>,
- <code><b>--one-modifier-regex</b></code>,
- <code><b>--opt-modifier-regex</b></code>,
- <code><b>--seq-modifier-regex</b></code>,
- <code><b>--parser-regex</b></code>,
- <code><b>--serializer-regex</b></code>,
- <code><b>--enumerator-regex</b></code>, and
- <code><b>--element-type-regex</b></code> options.
- </p>
-
- <p>The <code><b>--type-naming</b></code> option specifies the
- convention that should be used for naming C++ types. Possible
- values for this option are <code><b>knr</b></code> (default),
- <code><b>ucc</b></code>, and <code><b>java</b></code>. The
- <code><b>knr</b></code> value (stands for K&amp;R) signifies
- the standard, lower-case naming convention with the underscore
- used as a word delimiter, for example: <code>foo</code>,
- <code>foo_bar</code>. The <code><b>ucc</b></code> (stands
- for upper-camel-case) and
- <code><b>java</b></code> values a synonyms for the same
- naming convention where the first letter of each word in the
- name is capitalized, for example: <code>Foo</code>,
- <code>FooBar</code>.</p>
-
- <p>Similarly, the <code><b>--function-naming</b></code> option
- specifies the convention that should be used for naming C++
- functions. Possible values for this option are <code><b>knr</b></code>
- (default), <code><b>lcc</b></code>, and <code><b>java</b></code>. The
- <code><b>knr</b></code> value (stands for K&amp;R) signifies
- the standard, lower-case naming convention with the underscore
- used as a word delimiter, for example: <code>foo()</code>,
- <code>foo_bar()</code>. The <code><b>lcc</b></code> value
- (stands for lower-camel-case) signifies a naming convention
- where the first letter of each word except the first is
- capitalized, for example: <code>foo()</code>, <code>fooBar()</code>.
- The <code><b>java</b></code> naming convention is similar to
- the lower-camel-case one except that accessor functions are prefixed
- with <code>get</code>, modifier functions are prefixed
- with <code>set</code>, parsing functions are prefixed
- with <code>parse</code>, and serialization functions are
- prefixed with <code>serialize</code>, for example:
- <code>getFoo()</code>, <code>setFooBar()</code>,
- <code>parseRoot()</code>, <code>serializeRoot()</code>.</p>
-
- <p>Note that the naming conventions specified with the
- <code><b>--type-naming</b></code> and
- <code><b>--function-naming</b></code> options perform only limited
- transformations on the names that come from the schema in the
- form of type, attribute, and element names. In other words, to
- get consistent results, your schemas should follow a similar
- naming convention as the one you would like to have in the
- generated code. Alternatively, you can use the
- <code><b>--*-regex</b></code> options (discussed below)
- to perform further transformations on the names that come from
- the schema.</p>
-
- <p>The
- <code><b>--type-regex</b></code>,
- <code><b>--accessor-regex</b></code>,
- <code><b>--one-accessor-regex</b></code>,
- <code><b>--opt-accessor-regex</b></code>,
- <code><b>--seq-accessor-regex</b></code>,
- <code><b>--modifier-regex</b></code>,
- <code><b>--one-modifier-regex</b></code>,
- <code><b>--opt-modifier-regex</b></code>,
- <code><b>--seq-modifier-regex</b></code>,
- <code><b>--parser-regex</b></code>,
- <code><b>--serializer-regex</b></code>,
- <code><b>--enumerator-regex</b></code>, and
- <code><b>--element-type-regex</b></code> options allow you to
- specify extra regular expressions for each name category in
- addition to the predefined set that is added depending on
- the <code><b>--type-naming</b></code> and
- <code><b>--function-naming</b></code> options. Expressions
- that are provided with the <code><b>--*-regex</b></code>
- options are evaluated prior to any predefined expressions.
- This allows you to selectively override some or all of the
- predefined transformations. When debugging your own expressions,
- it is often useful to see which expressions match which names.
- The <code><b>--name-regex-trace</b></code> option allows you
- to trace the process of applying regular expressions to
- names.</p>
-
- <p>The value for the <code><b>--*-regex</b></code> options should be
- a perl-like regular expression in the form
- <code><b>/</b><i>pattern</i><b>/</b><i>replacement</i><b>/</b></code>.
- Any character can be used as a delimiter instead of <code><b>/</b></code>.
- Escaping of the delimiter character in <code><i>pattern</i></code> or
- <code><i>replacement</i></code> is not supported.
- All the regular expressions for each category are pushed into a
- category-specific stack with the last specified expression
- considered first. The first match that succeeds is used. For the
- <code><b>--one-accessor-regex</b></code> (accessors with cardinality one),
- <code><b>--opt-accessor-regex</b></code> (accessors with cardinality optional), and
- <code><b>--seq-accessor-regex</b></code> (accessors with cardinality sequence)
- categories the <code><b>--accessor-regex</b></code> expressions are
- used as a fallback. For the
- <code><b>--one-modifier-regex</b></code>,
- <code><b>--opt-modifier-regex</b></code>, and
- <code><b>--seq-modifier-regex</b></code>
- categories the <code><b>--modifier-regex</b></code> expressions are
- used as a fallback. For the <code><b>--element-type-regex</b></code>
- category the <code><b>--type-regex</b></code> expressions are
- used as a fallback.</p>
-
- <p>The type name expressions (<code><b>--type-regex</b></code>)
- are evaluated on the name string that has the following
- format:</p>
-
- <p><code>[<i>namespace</i> ]<i>name</i>[,<i>name</i>][,<i>name</i>][,<i>name</i>]</code></p>
-
- <p>The element type name expressions
- (<code><b>--element-type-regex</b></code>), effective only when
- the <code><b>--generate-element-type</b></code> option is specified,
- are evaluated on the name string that has the following
- format:</p>
-
- <p><code><i>namespace</i> <i>name</i></code></p>
-
- <p>In the type name format the <code><i>namespace</i></code> part
- followed by a space is only present for global type names. For
- global types and elements defined in schemas without a target
- namespace, the <code><i>namespace</i></code> part is empty but
- the space is still present. In the type name format after the
- initial <code><i>name</i></code> component, up to three additional
- <code><i>name</i></code> components can be present, separated
- by commas. For example:</p>
-
- <p><code><b>http://example.com/hello type</b></code></p>
- <p><code><b>foo</b></code></p>
- <p><code><b>foo,iterator</b></code></p>
- <p><code><b>foo,const,iterator</b></code></p>
-
- <p>The following set of predefined regular expressions is used to
- transform type names when the upper-camel-case naming convention
- is selected:</p>
-
- <p><code><b>/(?:[^ ]* )?([^,]+)/\u$1/</b></code></p>
- <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+)/\u$1\u$2/</b></code></p>
- <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+),([^,]+)/\u$1\u$2\u$3/</b></code></p>
- <p><code><b>/(?:[^ ]* )?([^,]+),([^,]+),([^,]+),([^,]+)/\u$1\u$2\u$3\u$4/</b></code></p>
-
- <p>The accessor and modifier expressions
- (<code><b>--*accessor-regex</b></code> and
- <code><b>--*modifier-regex</b></code>) are evaluated on the name string
- that has the following format:</p>
-
- <p><code><i>name</i>[,<i>name</i>][,<i>name</i>]</code></p>
-
- <p>After the initial <code><i>name</i></code> component, up to two
- additional <code><i>name</i></code> components can be present,
- separated by commas. For example:</p>
-
- <p><code><b>foo</b></code></p>
- <p><code><b>dom,document</b></code></p>
- <p><code><b>foo,default,value</b></code></p>
-
- <p>The following set of predefined regular expressions is used to
- transform accessor names when the <code><b>java</b></code> naming
- convention is selected:</p>
-
- <p><code><b>/([^,]+)/get\u$1/</b></code></p>
- <p><code><b>/([^,]+),([^,]+)/get\u$1\u$2/</b></code></p>
- <p><code><b>/([^,]+),([^,]+),([^,]+)/get\u$1\u$2\u$3/</b></code></p>
-
- <p>For the parser, serializer, and enumerator categories, the
- corresponding regular expressions are evaluated on local names of
- elements and on enumeration values, respectively. For example, the
- following predefined regular expression is used to transform parsing
- function names when the <code><b>java</b></code> naming convention
- is selected:</p>
-
- <p><code><b>/(.+)/parse\u$1/</b></code></p>
-
- <p>See also the REGEX AND SHELL QUOTING section below.</p>
-
- <h1>TYPE MAP</h1>
-
- <p>Type map files are used in C++/Parser to define a mapping between
- XML Schema and C++ types. The compiler uses this information
- to determine the return types of <code><b>post_*</b></code>
- functions in parser skeletons corresponding to XML Schema
- types as well as argument types for callbacks corresponding
- to elements and attributes of these types.</p>
-
- <p>The compiler has a set of predefined mapping rules that map
- built-in XML Schema types to suitable C++ types (discussed
- below) and all other types to <code><b>void</b></code>.
- By providing your own type maps you can override these predefined
- rules. The format of the type map file is presented below:
- </p>
-
- <pre>
-namespace &lt;schema-namespace> [&lt;cxx-namespace>]
-{
- (include &lt;file-name>;)*
- ([type] &lt;schema-type> &lt;cxx-ret-type> [&lt;cxx-arg-type>];)*
-}
- </pre>
-
- <p>Both <code><i>&lt;schema-namespace></i></code> and
- <code><i>&lt;schema-type></i></code> are regex patterns while
- <code><i>&lt;cxx-namespace></i></code>,
- <code><i>&lt;cxx-ret-type></i></code>, and
- <code><i>&lt;cxx-arg-type></i></code> are regex pattern
- substitutions. All names can be optionally enclosed in
- <code><b>" "</b></code>, for example, to include white-spaces.</p>
-
- <p><code><i>&lt;schema-namespace></i></code> determines XML
- Schema namespace. Optional <code><i>&lt;cxx-namespace></i></code>
- is prefixed to every C++ type name in this namespace declaration.
- <code><i>&lt;cxx-ret-type></i></code> is a C++ type name that is
- used as a return type for the <code><b>post_*</b></code> functions.
- Optional <code><i>&lt;cxx-arg-type></i></code> is an argument
- type for callback functions corresponding to elements and attributes
- of this type. If
- <code><i>&lt;cxx-arg-type></i></code> is not specified, it defaults
- to <code><i>&lt;cxx-ret-type></i></code> if <code><i>&lt;cxx-ret-type></i></code>
- ends with <code><b>*</b></code> or <code><b>&amp;</b></code> (that is,
- it is a pointer or a reference) and
- <code><b>const</b>&nbsp;<i>&lt;cxx-ret-type></i><b>&amp;</b></code>
- otherwise.
- <code><i>&lt;file-name></i></code> is a file name either in the
- <code><b>" "</b></code> or <code><b>&lt; ></b></code> format
- and is added with the <code><b>#include</b></code> directive to
- the generated code.</p>
-
- <p>The <code><b>#</b></code> character starts a comment that ends
- with a new line or end of file. To specify a name that contains
- <code><b>#</b></code> enclose it in <code><b>" "</b></code>.
- For example:</p>
-
- <pre>
-namespace http://www.example.com/xmlns/my my
-{
- include "my.hxx";
-
- # Pass apples by value.
- #
- apple apple;
-
- # Pass oranges as pointers.
- #
- orange orange_t*;
-}
- </pre>
-
- <p>In the example above, for the
- <code><b>http://www.example.com/xmlns/my#orange</b></code>
- XML Schema type, the <code><b>my::orange_t*</b></code> C++ type will
- be used as both return and argument types.</p>
-
- <p>Several namespace declarations can be specified in a single
- file. The namespace declaration can also be completely
- omitted to map types in a schema without a namespace. For
- instance:</p>
-
- <pre>
-include "my.hxx";
-apple apple;
-
-namespace http://www.example.com/xmlns/my
-{
- orange "const orange_t*";
-}
- </pre>
-
- <p>The compiler has a number of predefined mapping rules that can be
- presented as the following map files. The string-based XML Schema
- built-in types are mapped to either <code><b>std::string</b></code>
- or <code><b>std::wstring</b></code> depending on the character type
- selected with the <code><b>--char-type</b></code> option
- (<code><b>char</b></code> by default).</p>
-
- <pre>
-namespace http://www.w3.org/2001/XMLSchema
-{
- boolean bool bool;
-
- byte "signed char" "signed char";
- unsignedByte "unsigned char" "unsigned char";
-
- short short short;
- unsignedShort "unsigned short" "unsigned short";
-
- int int int;
- unsignedInt "unsigned int" "unsigned int";
-
- long "long long" "long long";
- unsignedLong "unsigned long long" "unsigned long long";
-
- integer "long long" "long long";
-
- negativeInteger "long long" "long long";
- nonPositiveInteger "long long" "long long";
-
- positiveInteger "unsigned long long" "unsigned long long";
- nonNegativeInteger "unsigned long long" "unsigned long long";
-
- float float float;
- double double double;
- decimal double double;
-
- string std::string;
- normalizedString std::string;
- token std::string;
- Name std::string;
- NMTOKEN std::string;
- NCName std::string;
- ID std::string;
- IDREF std::string;
- language std::string;
- anyURI std::string;
-
- NMTOKENS xml_schema::string_sequence;
- IDREFS xml_schema::string_sequence;
-
- QName xml_schema::qname;
-
- base64Binary std::auto_ptr&lt;xml_schema::buffer>
- std::auto_ptr&lt;xml_schema::buffer>;
- hexBinary std::auto_ptr&lt;xml_schema::buffer>
- std::auto_ptr&lt;xml_schema::buffer>;
-
- date xml_schema::date;
- dateTime xml_schema::date_time;
- duration xml_schema::duration;
- gDay xml_schema::gday;
- gMonth xml_schema::gmonth;
- gMonthDay xml_schema::gmonth_day;
- gYear xml_schema::gyear;
- gYearMonth xml_schema::gyear_month;
- time xml_schema::time;
-}
- </pre>
-
- <p>The last predefined rule maps anything that wasn't mapped by
- previous rules to <code><b>void</b></code>:</p>
-
- <pre>
-namespace .*
-{
- .* void void;
-}
- </pre>
-
-
- <p>When you provide your own type maps with the
- <code><b>--type-map</b></code> option, they are evaluated first.
- This allows you to selectively override predefined rules.</p>
-
- <h1>REGEX AND SHELL QUOTING</h1>
-
- <p>When entering a regular expression argument in the shell
- command line it is often necessary to use quoting (enclosing
- the argument in <code><b>"&nbsp;"</b></code> or
- <code><b>'&nbsp;'</b></code>) in order to prevent the shell
- from interpreting certain characters, for example, spaces as
- argument separators and <code><b>$</b></code> as variable
- expansions.</p>
-
- <p>Unfortunately it is hard to achieve this in a manner that is
- portable across POSIX shells, such as those found on
- GNU/Linux and UNIX, and Windows shell. For example, if you
- use <code><b>"&nbsp;"</b></code> for quoting you will get a
- wrong result with POSIX shells if your expression contains
- <code><b>$</b></code>. The standard way of dealing with this
- on POSIX systems is to use <code><b>'&nbsp;'</b></code> instead.
- Unfortunately, Windows shell does not remove <code><b>'&nbsp;'</b></code>
- from arguments when they are passed to applications. As a result you
- may have to use <code><b>'&nbsp;'</b></code> for POSIX and
- <code><b>"&nbsp;"</b></code> for Windows (<code><b>$</b></code> is
- not treated as a special character on Windows).</p>
-
- <p>Alternatively, you can save regular expression options into
- a file, one option per line, and use this file with the
- <code><b>--options-file</b></code> option. With this approach
- you don't need to worry about shell quoting.</p>
-
- <h1>DIAGNOSTICS</h1>
-
- <p>If the input file is not a valid W3C XML Schema definition,
- <code><b>xsd</b></code> will issue diagnostic messages to STDERR
- and exit with non-zero exit code.</p>
-
- <h1>BUGS</h1>
-
- <p>Send bug reports to the
- <a href="mailto:xsd-users@codesynthesis.com">xsd-users@codesynthesis.com</a> mailing list.</p>
-
- </div>
- <div id="footer">
- &copy;2005-2010 <a href="http://codesynthesis.com">CODE SYNTHESIS TOOLS CC</a>
-
- <div id="terms">
- Permission is granted to copy, distribute and/or modify this
- document under the terms of the
- <a href="http://codesynthesis.com/licenses/fdl-1.2.txt">GNU Free
- Documentation License, version 1.2</a>; with no Invariant Sections,
- no Front-Cover Texts and no Back-Cover Texts.
- </div>
- </div>
-</div>
-</body>
-</html>
diff --git a/xsd/examples/cxx/parser/generated/library.xml b/xsd/examples/cxx/parser/generated/library.xml
index 2d9069c..b1ac98c 100644
--- a/xsd/examples/cxx/parser/generated/library.xml
+++ b/xsd/examples/cxx/parser/generated/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/library/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/generated/library.xsd b/xsd/examples/cxx/parser/generated/library.xsd
index 57654c7..71e4005 100644
--- a/xsd/examples/cxx/parser/generated/library.xsd
+++ b/xsd/examples/cxx/parser/generated/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/library/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/generated/makefile b/xsd/examples/cxx/parser/generated/makefile
index 7674f26..78a60fe 100644
--- a/xsd/examples/cxx/parser/generated/makefile
+++ b/xsd/examples/cxx/parser/generated/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/generated/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,7 +26,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) \
@@ -41,11 +40,11 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-print-impl --generate-test-driver \
+$(gen): xsd_options += --generate-print-impl --generate-test-driver \
--force-overwrite
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/parser/hello/driver.cxx b/xsd/examples/cxx/parser/hello/driver.cxx
index 9aee316..e261e10 100644
--- a/xsd/examples/cxx/parser/hello/driver.cxx
+++ b/xsd/examples/cxx/parser/hello/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/hello/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <string>
diff --git a/xsd/examples/cxx/parser/hello/hello.xml b/xsd/examples/cxx/parser/hello/hello.xml
index 2e5aaa3..dd0c13d 100644
--- a/xsd/examples/cxx/parser/hello/hello.xml
+++ b/xsd/examples/cxx/parser/hello/hello.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/hello/hello.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/hello/hello.xsd b/xsd/examples/cxx/parser/hello/hello.xsd
index f0941b7..be69957 100644
--- a/xsd/examples/cxx/parser/hello/hello.xsd
+++ b/xsd/examples/cxx/parser/hello/hello.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/hello/hello.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/hello/makefile b/xsd/examples/cxx/parser/hello/makefile
index 3d7d0f7..ccf0257 100644
--- a/xsd/examples/cxx/parser/hello/makefile
+++ b/xsd/examples/cxx/parser/hello/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/hello/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,7 +28,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
@@ -38,7 +37,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -67,7 +66,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/parser/library/driver.cxx b/xsd/examples/cxx/parser/library/driver.cxx
index ea5f1d9..3b63801 100644
--- a/xsd/examples/cxx/parser/library/driver.cxx
+++ b/xsd/examples/cxx/parser/library/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/library/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <iostream>
diff --git a/xsd/examples/cxx/parser/library/library-pimpl.cxx b/xsd/examples/cxx/parser/library/library-pimpl.cxx
index 8b6c357..7a1e484 100644
--- a/xsd/examples/cxx/parser/library/library-pimpl.cxx
+++ b/xsd/examples/cxx/parser/library/library-pimpl.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/library/library-pimpl.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "library-pimpl.hxx"
diff --git a/xsd/examples/cxx/parser/library/library-pimpl.hxx b/xsd/examples/cxx/parser/library/library-pimpl.hxx
index 180070c..5d0dcc1 100644
--- a/xsd/examples/cxx/parser/library/library-pimpl.hxx
+++ b/xsd/examples/cxx/parser/library/library-pimpl.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/library/library-pimpl.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef LIBRARY_PIMPL_HXX
diff --git a/xsd/examples/cxx/parser/library/library.hxx b/xsd/examples/cxx/parser/library/library.hxx
index fb6cc1d..552e7a5 100644
--- a/xsd/examples/cxx/parser/library/library.hxx
+++ b/xsd/examples/cxx/parser/library/library.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/library/library.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef LIBRARY_HXX
diff --git a/xsd/examples/cxx/parser/library/library.map b/xsd/examples/cxx/parser/library/library.map
index 90f4938..3a49b49 100644
--- a/xsd/examples/cxx/parser/library/library.map
+++ b/xsd/examples/cxx/parser/library/library.map
@@ -1,5 +1,4 @@
# file : examples/cxx/parser/library/library.map
-# author : Boris Kolpackov <boris@codesynthesis.com>
# copyright : not copyrighted - public domain
namespace http://www.codesynthesis.com/library ::library
diff --git a/xsd/examples/cxx/parser/library/library.xml b/xsd/examples/cxx/parser/library/library.xml
index 2d9069c..b1ac98c 100644
--- a/xsd/examples/cxx/parser/library/library.xml
+++ b/xsd/examples/cxx/parser/library/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/library/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/library/library.xsd b/xsd/examples/cxx/parser/library/library.xsd
index 57654c7..71e4005 100644
--- a/xsd/examples/cxx/parser/library/library.xsd
+++ b/xsd/examples/cxx/parser/library/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/library/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/library/makefile b/xsd/examples/cxx/parser/library/makefile
index e4eec1a..6410cf3 100644
--- a/xsd/examples/cxx/parser/library/makefile
+++ b/xsd/examples/cxx/parser/library/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/library/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-inline --type-map $(src_base)/library.map
+$(gen): xsd_options += --generate-inline --type-map $(src_base)/library.map
$(gen): $(out_root)/xsd/xsd $(src_base)/library.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -76,7 +75,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/parser/makefile b/xsd/examples/cxx/parser/makefile
index c1471cc..4744b29 100644
--- a/xsd/examples/cxx/parser/makefile
+++ b/xsd/examples/cxx/parser/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
@@ -29,14 +28,29 @@ $(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(examples)))
$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(examples)))
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): export dirs := $(examples)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(examples)))
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,parser-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,parser-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,parser-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,parser-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,parser-vc12.sln)
+ $(call meta-vctest,parser-vc8.sln,$(src_root)/dist/examples/test.bat,test.bat)
# Clean
#
$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(examples)))
$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+$(call include,$(bld_root)/meta/vctest.make)
+
$(foreach e,$(examples),$(call import,$(src_base)/$e/makefile))
diff --git a/xsd/examples/cxx/parser/mixed/anchor.hxx b/xsd/examples/cxx/parser/mixed/anchor.hxx
index bc1b54d..3adc90b 100644
--- a/xsd/examples/cxx/parser/mixed/anchor.hxx
+++ b/xsd/examples/cxx/parser/mixed/anchor.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/mixed/anchor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef ANCHOR_HXX
diff --git a/xsd/examples/cxx/parser/mixed/driver.cxx b/xsd/examples/cxx/parser/mixed/driver.cxx
index 45067f0..3f3cc65 100644
--- a/xsd/examples/cxx/parser/mixed/driver.cxx
+++ b/xsd/examples/cxx/parser/mixed/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/mixed/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <string>
diff --git a/xsd/examples/cxx/parser/mixed/makefile b/xsd/examples/cxx/parser/mixed/makefile
index 8563a1e..acf8aed 100644
--- a/xsd/examples/cxx/parser/mixed/makefile
+++ b/xsd/examples/cxx/parser/mixed/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/mixed/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --type-map $(src_base)/text.map
+$(gen): xsd_options += --type-map $(src_base)/text.map
$(gen): $(out_root)/xsd/xsd $(src_base)/text.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/parser/mixed/text.map b/xsd/examples/cxx/parser/mixed/text.map
index e44caf3..85971c4 100644
--- a/xsd/examples/cxx/parser/mixed/text.map
+++ b/xsd/examples/cxx/parser/mixed/text.map
@@ -1,5 +1,4 @@
# file : examples/cxx/parser/mixed/text.map
-# author : Boris Kolpackov <boris@codesynthesis.com>
# copyright : not copyrighted - public domain
include "anchor.hxx";
diff --git a/xsd/examples/cxx/parser/mixed/text.xml b/xsd/examples/cxx/parser/mixed/text.xml
index 97d4d21..bfdc881 100644
--- a/xsd/examples/cxx/parser/mixed/text.xml
+++ b/xsd/examples/cxx/parser/mixed/text.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/text/text.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/mixed/text.xsd b/xsd/examples/cxx/parser/mixed/text.xsd
index 4929964..92e300c 100644
--- a/xsd/examples/cxx/parser/mixed/text.xsd
+++ b/xsd/examples/cxx/parser/mixed/text.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/mixed/text.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/mixin/driver.cxx b/xsd/examples/cxx/parser/mixin/driver.cxx
index 41e5a45..04466a1 100644
--- a/xsd/examples/cxx/parser/mixin/driver.cxx
+++ b/xsd/examples/cxx/parser/mixin/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/mixin/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory>
diff --git a/xsd/examples/cxx/parser/mixin/instance.xml b/xsd/examples/cxx/parser/mixin/instance.xml
index 265271b..253f348 100644
--- a/xsd/examples/cxx/parser/mixin/instance.xml
+++ b/xsd/examples/cxx/parser/mixin/instance.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/mixin/instance.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/mixin/makefile b/xsd/examples/cxx/parser/mixin/makefile
index 9021106..7ef8084 100644
--- a/xsd/examples/cxx/parser/mixin/makefile
+++ b/xsd/examples/cxx/parser/mixin/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/mixin/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --type-map $(src_base)/schema.map
+$(gen): xsd_options += --type-map $(src_base)/schema.map
$(gen): $(out_root)/xsd/xsd $(src_base)/schema.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/parser/mixin/schema.map b/xsd/examples/cxx/parser/mixin/schema.map
index 22edb1e..a93c881 100644
--- a/xsd/examples/cxx/parser/mixin/schema.map
+++ b/xsd/examples/cxx/parser/mixin/schema.map
@@ -1,5 +1,4 @@
# file : examples/cxx/parser/mixin/schema.map
-# author : Boris Kolpackov <boris@codesynthesis.com>
# copyright : not copyrighted - public domain
include "types.hxx";
diff --git a/xsd/examples/cxx/parser/mixin/schema.xsd b/xsd/examples/cxx/parser/mixin/schema.xsd
index 59d8d3b..d2d195d 100644
--- a/xsd/examples/cxx/parser/mixin/schema.xsd
+++ b/xsd/examples/cxx/parser/mixin/schema.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/mixin/schema.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/mixin/types.hxx b/xsd/examples/cxx/parser/mixin/types.hxx
index 708dfc3..930033d 100644
--- a/xsd/examples/cxx/parser/mixin/types.hxx
+++ b/xsd/examples/cxx/parser/mixin/types.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/mixin/types.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef TYPES_HXX
diff --git a/xsd/examples/cxx/parser/multiroot/balance.xml b/xsd/examples/cxx/parser/multiroot/balance.xml
index df0a6e9..71ed493 100644
--- a/xsd/examples/cxx/parser/multiroot/balance.xml
+++ b/xsd/examples/cxx/parser/multiroot/balance.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/multiroot/balance.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/multiroot/deposit.xml b/xsd/examples/cxx/parser/multiroot/deposit.xml
index 3043c52..70f0c77 100644
--- a/xsd/examples/cxx/parser/multiroot/deposit.xml
+++ b/xsd/examples/cxx/parser/multiroot/deposit.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/multiroot/deposit.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/multiroot/driver.cxx b/xsd/examples/cxx/parser/multiroot/driver.cxx
index 9e5d874..3b32898 100644
--- a/xsd/examples/cxx/parser/multiroot/driver.cxx
+++ b/xsd/examples/cxx/parser/multiroot/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/multiroot/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/parser/multiroot/makefile b/xsd/examples/cxx/parser/multiroot/makefile
index 57fa732..60c6bac 100644
--- a/xsd/examples/cxx/parser/multiroot/makefile
+++ b/xsd/examples/cxx/parser/multiroot/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/multiroot/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --type-map $(src_base)/protocol.map
+$(gen): xsd_options += --type-map $(src_base)/protocol.map
$(gen): $(out_root)/xsd/xsd $(src_base)/protocol.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -80,7 +79,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/parser/multiroot/protocol-pimpl.cxx b/xsd/examples/cxx/parser/multiroot/protocol-pimpl.cxx
index 09a04b3..b5ec1b2 100644
--- a/xsd/examples/cxx/parser/multiroot/protocol-pimpl.cxx
+++ b/xsd/examples/cxx/parser/multiroot/protocol-pimpl.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/multiroot/protocol-pimpl.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "protocol-pimpl.hxx"
diff --git a/xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx b/xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx
index 0531790..c0693cb 100644
--- a/xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx
+++ b/xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/multiroot/protocol-pimpl.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef PROTOCOL_PIMPL_HXX
diff --git a/xsd/examples/cxx/parser/multiroot/protocol.hxx b/xsd/examples/cxx/parser/multiroot/protocol.hxx
index f076140..bbf5b56 100644
--- a/xsd/examples/cxx/parser/multiroot/protocol.hxx
+++ b/xsd/examples/cxx/parser/multiroot/protocol.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/multiroot/protocol.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef PROTOCOL_HXX
diff --git a/xsd/examples/cxx/parser/multiroot/protocol.map b/xsd/examples/cxx/parser/multiroot/protocol.map
index 7389fa9..8d8ac9f 100644
--- a/xsd/examples/cxx/parser/multiroot/protocol.map
+++ b/xsd/examples/cxx/parser/multiroot/protocol.map
@@ -1,5 +1,4 @@
# file : examples/cxx/parser/multiroot/protocol.map
-# author : Boris Kolpackov <boris@codesynthesis.com>
# copyright : not copyrighted - public domain
namespace http://www.codesynthesis.com/protocol ::protocol
diff --git a/xsd/examples/cxx/parser/multiroot/protocol.xsd b/xsd/examples/cxx/parser/multiroot/protocol.xsd
index 4b29926..e0ecc29 100644
--- a/xsd/examples/cxx/parser/multiroot/protocol.xsd
+++ b/xsd/examples/cxx/parser/multiroot/protocol.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/multiroot/protocol.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/multiroot/withdraw.xml b/xsd/examples/cxx/parser/multiroot/withdraw.xml
index 7a80aa7..6d5cb39 100644
--- a/xsd/examples/cxx/parser/multiroot/withdraw.xml
+++ b/xsd/examples/cxx/parser/multiroot/withdraw.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/multiroot/withdraw.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/performance/README b/xsd/examples/cxx/parser/performance/README
index d8d27a7..39aecca 100644
--- a/xsd/examples/cxx/parser/performance/README
+++ b/xsd/examples/cxx/parser/performance/README
@@ -7,10 +7,8 @@ The example consists of the following files:
test.xsd
XML Schema which describes the test vocabulary.
-test-5k.xml
test-50k.xml
-test-500k.xml
- Test XML documents of various sizes.
+ Test XML document.
gen.cxx
Program to generate a test document of desired size.
@@ -41,4 +39,4 @@ parser (only makes sense for Xerces-C++, off by default). The -i option
can be used to specify the number of parsing iterations (1000 by default).
For example:
-$ ./driver -v -i 100 test-500k.xml
+$ ./driver -v -i 100 test-50k.xml
diff --git a/xsd/examples/cxx/parser/performance/driver.cxx b/xsd/examples/cxx/parser/performance/driver.cxx
index 422f2b9..302464e 100644
--- a/xsd/examples/cxx/parser/performance/driver.cxx
+++ b/xsd/examples/cxx/parser/performance/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/performance/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <string>
@@ -22,7 +21,6 @@
# include <xsd/cxx/xml/sax/bits/error-handler-proxy.hxx>
# include <xsd/cxx/parser/error-handler.hxx>
-
#endif
// No-op parser implementation.
@@ -256,7 +254,7 @@ main (int argc, char* argv[])
eh.throw_if_failed ();
parser->setFeature (XMLUni::fgXercesUseCachedGrammarInParse, true);
-#if _XERCES_VERSION >= 30000
+#if _XERCES_VERSION >= 30100
parser->setFeature (XMLUni::fgXercesLoadSchema, false);
#endif
}
diff --git a/xsd/examples/cxx/parser/performance/makefile b/xsd/examples/cxx/parser/performance/makefile
index a6e2cd1..69d3239 100644
--- a/xsd/examples/cxx/parser/performance/makefile
+++ b/xsd/examples/cxx/parser/performance/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/performance/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-inline
+$(gen): xsd_options += --generate-inline
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -56,9 +55,7 @@ $(install):
$(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README)
$(call install-data,$(src_base)/driver.cxx,$(install_doc_dir)/xsd/$(path)/driver.cxx)
$(call install-data,$(src_base)/test.xsd,$(install_doc_dir)/xsd/$(path)/test.xsd)
- $(call install-data,$(src_base)/test-5k.xml,$(install_doc_dir)/xsd/$(path)/test-5k.xml)
$(call install-data,$(src_base)/test-50k.xml,$(install_doc_dir)/xsd/$(path)/test-50k.xml)
- $(call install-data,$(src_base)/test-500k.xml,$(install_doc_dir)/xsd/$(path)/test-500k.xml)
$(call install-data,$(src_base)/time.hxx,$(install_doc_dir)/xsd/$(path)/time.hxx)
$(call install-data,$(src_base)/time.cxx,$(install_doc_dir)/xsd/$(path)/time.cxx)
$(call install-data,$(src_base)/gen.cxx,$(install_doc_dir)/xsd/$(path)/gen.cxx)
@@ -66,9 +63,7 @@ $(install):
$(dist-common):
$(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
$(call install-data,$(src_base)/test.xsd,$(dist_prefix)/$(path)/test.xsd)
- $(call install-data,$(src_base)/test-5k.xml,$(dist_prefix)/$(path)/test-5k.xml)
$(call install-data,$(src_base)/test-50k.xml,$(dist_prefix)/$(path)/test-50k.xml)
- $(call install-data,$(src_base)/test-500k.xml,$(dist_prefix)/$(path)/test-500k.xml)
$(call install-data,$(src_base)/time.hxx,$(dist_prefix)/$(path)/time.hxx)
$(call install-data,$(src_base)/time.cxx,$(dist_prefix)/$(path)/time.cxx)
$(call install-data,$(src_base)/gen.cxx,$(dist_prefix)/$(path)/gen.cxx)
@@ -78,7 +73,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/parser/performance/test-500k.xml b/xsd/examples/cxx/parser/performance/test-500k.xml
deleted file mode 100644
index e895584..0000000
--- a/xsd/examples/cxx/parser/performance/test-500k.xml
+++ /dev/null
@@ -1 +0,0 @@
-<t:root xmlns:t='test' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='test test.xsd'><record orange="0" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="4" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="5"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="6" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="7"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="8" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="9"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="10" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="11"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="12" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="13"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="14" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="15"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="16" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="17"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="18" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="19"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="20" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="21"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="22" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="23"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="24" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="25"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="26" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="27"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="28" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="29"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="30" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="31"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="32" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="33"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="34" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="35"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="36" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="37"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="38" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="39"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="40" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="41"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="42" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="43"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="44" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="45"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="46" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="47"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="48" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="49"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="50" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="51"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="52" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="53"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="54" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="55"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="56" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="57"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="58" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="59"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="60" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="61"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="62" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="63"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="64" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="65"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="66" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="67"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="68" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="69"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="70" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="71"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="72" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="73"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="74" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="75"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="76" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="77"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="78" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="79"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="80" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="81"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="82" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="83"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="84" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="85"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="86" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="87"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="88" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="89"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="90" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="91"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="92" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="93"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="94" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="95"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="96" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="97"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="98" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="99"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="150" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="151"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="152" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="153"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="154" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="155"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="156" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="157"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="158" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="159"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="160" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="161"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="162" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="163"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="164" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="165"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="166" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="167"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="168" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="169"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="170" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="171"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="172" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="173"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="174" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="175"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="176" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="177"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="178" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="179"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="180" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="181"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="182" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="183"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="184" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="185"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="186" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="187"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="188" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="189"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="190" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="191"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="192" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="193"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="194" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="195"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="196" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="197"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="198" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="199"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="200" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="201"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="202" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="203"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="204" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="205"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="206" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="207"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="208" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="209"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="210" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="211"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="212" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="213"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="214" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="215"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="216" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="217"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="218" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="219"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="220" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="221"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="222" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="223"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="224" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="225"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="226" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="227"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="228" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="229"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="230" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="231"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="232" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="233"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="234" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="235"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="236" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="237"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="238" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="239"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="240" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="241"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="242" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="243"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="244" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="245"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="246" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="247"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="248" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="249"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="250" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="251"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="252" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="253"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="254" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="255"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="256" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="257"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="258" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="259"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="260" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="261"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="262" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="263"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="264" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="265"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="266" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="267"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="268" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="269"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="270" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="271"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="272" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="273"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="274" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="275"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="276" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="277"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="278" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="279"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="280" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="281"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="282" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="283"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="284" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="285"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="286" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="287"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="288" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="289"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="290" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="291"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="292" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="293"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="294" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="295"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="296" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="297"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="298" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="299"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="300" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="301"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="302" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="303"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="304" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="305"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="306" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="307"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="308" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="309"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="310" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="311"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="312" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="313"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="314" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="315"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="316" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="317"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="318" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="319"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="320" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="321"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="322" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="323"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="324" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="325"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="326" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="327"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="328" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="329"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="330" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="331"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="332" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="333"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="334" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="335"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="336" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="337"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="338" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="339"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="340" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="341"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="342" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="343"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="344" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="345"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="346" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="347"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="348" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="349"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="350" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="351"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="352" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="353"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="354" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="355"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="356" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="357"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="358" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="359"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="360" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="361"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="362" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="363"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="364" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="365"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="366" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="367"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="368" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="369"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="370" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="371"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="372" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="373"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="374" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="375"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="376" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="377"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="378" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="379"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="380" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="381"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="382" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="383"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="384" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="385"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="386" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="387"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="388" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="389"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="390" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="391"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="392" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="393"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="394" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="395"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="396" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="397"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="398" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="399"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="400" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="401"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="402" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="403"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="404" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="405"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="406" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="407"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="408" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="409"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="410" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="411"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="412" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="413"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="414" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="415"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="416" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="417"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="418" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="419"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="420" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="421"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="422" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="423"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="424" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="425"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="426" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="427"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="428" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="429"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="430" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="431"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="432" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="433"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="434" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="435"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="436" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="437"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="438" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="439"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="440" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="441"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="442" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="443"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="444" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="445"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="446" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="447"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="448" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="449"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="450" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="451"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="452" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="453"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="454" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="455"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="456" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="457"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="458" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="459"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="460" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="461"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="462" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="463"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="464" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="465"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="466" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="467"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="468" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="469"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="470" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="471"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="472" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="473"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="474" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="475"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="476" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="477"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="478" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="479"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="480" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="481"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="482" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="483"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="484" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="485"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="486" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="487"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="488" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="489"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="490" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="491"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="492" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="493"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="494" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="495"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="496" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="497"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="498" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="499"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="500" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="501"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="502" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="503"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="504" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="505"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="506" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="507"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="508" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="509"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="510" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="511"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="512" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="513"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="514" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="515"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="516" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="517"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="518" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="519"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="520" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="521"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="522" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="523"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="524" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="525"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="526" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="527"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="528" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="529"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="530" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="531"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="532" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="533"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="534" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="535"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="536" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="537"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="538" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="539"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="540" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="541"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="542" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="543"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="544" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="545"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="546" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="547"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="548" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="549"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="550" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="551"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="552" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="553"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="554" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="555"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="556" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="557"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="558" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="559"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="560" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="561"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="562" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="563"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="564" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="565"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="566" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="567"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="568" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="569"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="570" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="571"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="572" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="573"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="574" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="575"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="576" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="577"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="578" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="579"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="580" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="581"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="582" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="583"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="584" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="585"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="586" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="587"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="588" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="589"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="590" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="591"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="592" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="593"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="594" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="595"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="596" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="597"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="598" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="599"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="600" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="601"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="602" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="603"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="604" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="605"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="606" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="607"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="608" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="609"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="610" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="611"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="612" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="613"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="614" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="615"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="616" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="617"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="618" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="619"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="620" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="621"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="622" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="623"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="624" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="625"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="626" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="627"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="628" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="629"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="630" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="631"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="632" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="633"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="634" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="635"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="636" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="637"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="638" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="639"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="640" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="641"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="642" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="643"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="644" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="645"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="646" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="647"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="648" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="649"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="650" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="651"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="652" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="653"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="654" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="655"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="656" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="657"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="658" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="659"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="660" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="661"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="662" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="663"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="664" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="665"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="666" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="667"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="668" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="669"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="670" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="671"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="672" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="673"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="674" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="675"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="676" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="677"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="678" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="679"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="680" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="681"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="682" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="683"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="684" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="685"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="686" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="687"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="688" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="689"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="690" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="691"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="692" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="693"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="694" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="695"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="696" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="697"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="698" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="699"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="700" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="701"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="702" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="703"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="704" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="705"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="706" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="707"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="708" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="709"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="710" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="711"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="712" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="713"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="714" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="715"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="716" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="717"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="718" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="719"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="720" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="721"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="722" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="723"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="724" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="725"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="726" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="727"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="728" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="729"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="730" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="731"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="732" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="733"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="734" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="735"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="736" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="737"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="738" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="739"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="740" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="741"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="742" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="743"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="744" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="745"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="746" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="747"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="748" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="749"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="750" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="751"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="752" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="753"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="754" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="755"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="756" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="757"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="758" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="759"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="760" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="761"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="762" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="763"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="764" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="765"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="766" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="767"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="768" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="769"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="770" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="771"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="772" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="773"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="774" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="775"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="776" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="777"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="778" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="779"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="780" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="781"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="782" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="783"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="784" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="785"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="786" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="787"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="788" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="789"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="790" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="791"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="792" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="793"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="794" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="795"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="796" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="797"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="798" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="799"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="800" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="801"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="802" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="803"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="804" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="805"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="806" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="807"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="808" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="809"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="810" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="811"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="812" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="813"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="814" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="815"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="816" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="817"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="818" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="819"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="820" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="821"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="822" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="823"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="824" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="825"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="826" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="827"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="828" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="829"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="830" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="831"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="832" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="833"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="834" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="835"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="836" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="837"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="838" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="839"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="840" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="841"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="842" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="843"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="844" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="845"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="846" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="847"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="848" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="849"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="850" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="851"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="852" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="853"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="854" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="855"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="856" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="857"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="858" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="859"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="860" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="861"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="862" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="863"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="864" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="865"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="866" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="867"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="868" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="869"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="870" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="871"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="872" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="873"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="874" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="875"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="876" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="877"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="878" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="879"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="880" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="881"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="882" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="883"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="884" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="885"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="886" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="887"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="888" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="889"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="890" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="891"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="892" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="893"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="894" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="895"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="896" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="897"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="898" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="899"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="900" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="901"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="902" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="903"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="904" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="905"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="906" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="907"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="908" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="909"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="910" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="911"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="912" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="913"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="914" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="915"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="916" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="917"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="918" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="919"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="920" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="921"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="922" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="923"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="924" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="925"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="926" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="927"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="928" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="929"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="930" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="931"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="932" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="933"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="934" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="935"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="936" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="937"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="938" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="939"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="940" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="941"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="942" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="943"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="944" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="945"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="946" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="947"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="948" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="949"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="950" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="951"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="952" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="953"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="954" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="955"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="956" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="957"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="958" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="959"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="960" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="961"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="962" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="963"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="964" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="965"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="966" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="967"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="968" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="969"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="970" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="971"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="972" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="973"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="974" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="975"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="976" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="977"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="978" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="979"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="980" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="981"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="982" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="983"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="984" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="985"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="986" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="987"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="988" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="989"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="990" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="991"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="992" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="993"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="994" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="995"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="996" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="997"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="998" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="999"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1000" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1001"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1002" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1003"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1004" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1005"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1006" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1007"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1008" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1009"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1010" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1011"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1012" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1013"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1014" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1015"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1016" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1017"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1018" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1019"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1020" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1021"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1022" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1023"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1024" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1025"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1026" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1027"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1028" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1029"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1030" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1031"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1032" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1033"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1034" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1035"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1036" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1037"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1038" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1039"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1040" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1041"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1042" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1043"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1044" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1045"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1046" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1047"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1048" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1049"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1050" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1051"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1052" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1053"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1054" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1055"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1056" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1057"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1058" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1059"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1060" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1061"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1062" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1063"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1064" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1065"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1066" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1067"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1068" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1069"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1070" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1071"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1072" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1073"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1074" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1075"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1076" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1077"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1078" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1079"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1080" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1081"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1082" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1083"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1084" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1085"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1086" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1087"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1088" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1089"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1090" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1091"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1092" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1093"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1094" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1095"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1096" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1097"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1098" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1099"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1150" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1151"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1152" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1153"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1154" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1155"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1156" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1157"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1158" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1159"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1160" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1161"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1162" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1163"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1164" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1165"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1166" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1167"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1168" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1169"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1170" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1171"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1172" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1173"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1174" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1175"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1176" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1177"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1178" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1179"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1180" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1181"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1182" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1183"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1184" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1185"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1186" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1187"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1188" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1189"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1190" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1191"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1192" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1193"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1194" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1195"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1196" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1197"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1198" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1199"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1200" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1201"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1202" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1203"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1204" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1205"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1206" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1207"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1208" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1209"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1210" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1211"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1212" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1213"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1214" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1215"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1216" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1217"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1218" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1219"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1220" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1221"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1222" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1223"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1224" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1225"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1226" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1227"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1228" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1229"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1230" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1231"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1232" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1233"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1234" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1235"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1236" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1237"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1238" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1239"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1240" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1241"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1242" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1243"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1244" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1245"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1246" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1247"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1248" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1249"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1250" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1251"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1252" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1253"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1254" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1255"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1256" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1257"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1258" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1259"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1260" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1261"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1262" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1263"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1264" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1265"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1266" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1267"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1268" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1269"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1270" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1271"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1272" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1273"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1274" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1275"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1276" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1277"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1278" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1279"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1280" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1281"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1282" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1283"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1284" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1285"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1286" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1287"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1288" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1289"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1290" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1291"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1292" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1293"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1294" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1295"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1296" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1297"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1298" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1299"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1300" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1301"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1302" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1303"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1304" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1305"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1306" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1307"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1308" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1309"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1310" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1311"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1312" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1313"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1314" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1315"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1316" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1317"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1318" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1319"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1320" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1321"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1322" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1323"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1324" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1325"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1326" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1327"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1328" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1329"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1330" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1331"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1332" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1333"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1334" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1335"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1336" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1337"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1338" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1339"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1340" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1341"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1342" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1343"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1344" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1345"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1346" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1347"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1348" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1349"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1350" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1351"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1352" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1353"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1354" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1355"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1356" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1357"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1358" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1359"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1360" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1361"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1362" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1363"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1364" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1365"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1366" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1367"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1368" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1369"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1370" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1371"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1372" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1373"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1374" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1375"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1376" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1377"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1378" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1379"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1380" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1381"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1382" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1383"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1384" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1385"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1386" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1387"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1388" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1389"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1390" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1391"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1392" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1393"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1394" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1395"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1396" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1397"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1398" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1399"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1400" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1401"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1402" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1403"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1404" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1405"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1406" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1407"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1408" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1409"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1410" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1411"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1412" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1413"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1414" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1415"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1416" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1417"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1418" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1419"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1420" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1421"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1422" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1423"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1424" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1425"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1426" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1427"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1428" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1429"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1430" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1431"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1432" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1433"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1434" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1435"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1436" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1437"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1438" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1439"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1440" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1441"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1442" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1443"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1444" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1445"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1446" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1447"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1448" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1449"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1450" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1451"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1452" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1453"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1454" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1455"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1456" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1457"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1458" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1459"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1460" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1461"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1462" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1463"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1464" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1465"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1466" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1467"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1468" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1469"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1470" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1471"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1472" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1473"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1474" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1475"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1476" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1477"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1478" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1479"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1480" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1481"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1482" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1483"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1484" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1485"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1486" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1487"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1488" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1489"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1490" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1491"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1492" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1493"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1494" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1495"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1496" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1497"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1498" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1499"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1500" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1501"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1502" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1503"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1504" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1505"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1506" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1507"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1508" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1509"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1510" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1511"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1512" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1513"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1514" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1515"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1516" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1517"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1518" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1519"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1520" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1521"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1522" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1523"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1524" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1525"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1526" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1527"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1528" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1529"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1530" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1531"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1532" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1533"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1534" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1535"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1536" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1537"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1538" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1539"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1540" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1541"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1542" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1543"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1544" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1545"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1546" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1547"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1548" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1549"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1550" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1551"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1552" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1553"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1554" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1555"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1556" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1557"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1558" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1559"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1560" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1561"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1562" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1563"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1564" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1565"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1566" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1567"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1568" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1569"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1570" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1571"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1572" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1573"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1574" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1575"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1576" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1577"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1578" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1579"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1580" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1581"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1582" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1583"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1584" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1585"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1586" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1587"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1588" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1589"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1590" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1591"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1592" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1593"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1594" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1595"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1596" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1597"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1598" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1599"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1600" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1601"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1602" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1603"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1604" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1605"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1606" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1607"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1608" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1609"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1610" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1611"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1612" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1613"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1614" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1615"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1616" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1617"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1618" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1619"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1620" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1621"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1622" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1623"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1624" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1625"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1626" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1627"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1628" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1629"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1630" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1631"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1632" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1633"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1634" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1635"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1636" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1637"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1638" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1639"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1640" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1641"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1642" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1643"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1644" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1645"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1646" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1647"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1648" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1649"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1650" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1651"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1652" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1653"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1654" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1655"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1656" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1657"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1658" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1659"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1660" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1661"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1662" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1663"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1664" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1665"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1666" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1667"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1668" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1669"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1670" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1671"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1672" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1673"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1674" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1675"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1676" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1677"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1678" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1679"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1680" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1681"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1682" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1683"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1684" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1685"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1686" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1687"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1688" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1689"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1690" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1691"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1692" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1693"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1694" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1695"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1696" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1697"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1698" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1699"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1700" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1701"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1702" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1703"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1704" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1705"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1706" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1707"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1708" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1709"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1710" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1711"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1712" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1713"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1714" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1715"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1716" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1717"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1718" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1719"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1720" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1721"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1722" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1723"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1724" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1725"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1726" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1727"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1728" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1729"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1730" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1731"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1732" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1733"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1734" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1735"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1736" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1737"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1738" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1739"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1740" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1741"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1742" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1743"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1744" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1745"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1746" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1747"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1748" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1749"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1750" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1751"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1752" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1753"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1754" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1755"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1756" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1757"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1758" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1759"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1760" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1761"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1762" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1763"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1764" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1765"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1766" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1767"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1768" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1769"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1770" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1771"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1772" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1773"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1774" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1775"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1776" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1777"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1778" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1779"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1780" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1781"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1782" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1783"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1784" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1785"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1786" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1787"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1788" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1789"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1790" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1791"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1792" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1793"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1794" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1795"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1796" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1797"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1798" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1799"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1800" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1801"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1802" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1803"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1804" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1805"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1806" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1807"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1808" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1809"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1810" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1811"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1812" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1813"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1814" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1815"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1816" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1817"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1818" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1819"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1820" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1821"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1822" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1823"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1824" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1825"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1826" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1827"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1828" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1829"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1830" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1831"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1832" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1833"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1834" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1835"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1836" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1837"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1838" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1839"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1840" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1841"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1842" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1843"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1844" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1845"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1846" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1847"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1848" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1849"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1850" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1851"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1852" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1853"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1854" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1855"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1856" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1857"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1858" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1859"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1860" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1861"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1862" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1863"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1864" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1865"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1866" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1867"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1868" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1869"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1870" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1871"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1872" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1873"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1874" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1875"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1876" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1877"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1878" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1879"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1880" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1881"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1882" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1883"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1884" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1885"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1886" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1887"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1888" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1889"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1890" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1891"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1892" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1893"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1894" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1895"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1896" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1897"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1898" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1899"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1900" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1901"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1902" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1903"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1904" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1905"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1906" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1907"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1908" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1909"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1910" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1911"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1912" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1913"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1914" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1915"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1916" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1917"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1918" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1919"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1920" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1921"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1922" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1923"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1924" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1925"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1926" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1927"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1928" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1929"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1930" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1931"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1932" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1933"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1934" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1935"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1936" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1937"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1938" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1939"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1940" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1941"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1942" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1943"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1944" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1945"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1946" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1947"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1948" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1949"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1950" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1951"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1952" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1953"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1954" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1955"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1956" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1957"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1958" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1959"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1960" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1961"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1962" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1963"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1964" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1965"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1966" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1967"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1968" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1969"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1970" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1971"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1972" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1973"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1974" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1975"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1976" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1977"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1978" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1979"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1980" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1981"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1982" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1983"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1984" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1985"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1986" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1987"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1988" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1989"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1990" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1991"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1992" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1993"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1994" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1995"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1996" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1997"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1998" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1999"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2000" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2001"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2002" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2003"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2004" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2005"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2006" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2007"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2008" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2009"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2010" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2011"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2012" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2013"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2014" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2015"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2016" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2017"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2018" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2019"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2020" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2021"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2022" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2023"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2024" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2025"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2026" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2027"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2028" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2029"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2030" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2031"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2032" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2033"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2034" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2035"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2036" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2037"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2038" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2039"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2040" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2041"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2042" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2043"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2044" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2045"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2046" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2047"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2048" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2049"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2050" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2051"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2052" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2053"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2054" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2055"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2056" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2057"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2058" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2059"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2060" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2061"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2062" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2063"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2064" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2065"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2066" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2067"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2068" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2069"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2070" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2071"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2072" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2073"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2074" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2075"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2076" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2077"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2078" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2079"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2080" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2081"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2082" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2083"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2084" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2085"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2086" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2087"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2088" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2089"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2090" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2091"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2092" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2093"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2094" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2095"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2096" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2097"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2098" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2099"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2150" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2151"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2152" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2153"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2154" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2155"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2156" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2157"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2158" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2159"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2160" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2161"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2162" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2163"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2164" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2165"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2166" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2167"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2168" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2169"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2170" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2171"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2172" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2173"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2174" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2175"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2176" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2177"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2178" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2179"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2180" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2181"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2182" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2183"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2184" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2185"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2186" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2187"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2188" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2189"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2190" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2191"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2192" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2193"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2194" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2195"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2196" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2197"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2198" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2199"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2200" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2201"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2202" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2203"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2204" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2205"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2206" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2207"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2208" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2209"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2210" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2211"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2212" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2213"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2214" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2215"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2216" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2217"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2218" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2219"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2220" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2221"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2222" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2223"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2224" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2225"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2226" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2227"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2228" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2229"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2230" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2231"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2232" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2233"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2234" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2235"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2236" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2237"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2238" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2239"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2240" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2241"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2242" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2243"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2244" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2245"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2246" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2247"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2248" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2249"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2250" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2251"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2252" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2253"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2254" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2255"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2256" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2257"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2258" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2259"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2260" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2261"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2262" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2263"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2264" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2265"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2266" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2267"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2268" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2269"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2270" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2271"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2272" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2273"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2274" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2275"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2276" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2277"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2278" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2279"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2280" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2281"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2282" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2283"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2284" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2285"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2286" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2287"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2288" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2289"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2290" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2291"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2292" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2293"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2294" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2295"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2296" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2297"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2298" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2299"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2300" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2301"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2302" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2303"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2304" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2305"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2306" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2307"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2308" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2309"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2310" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2311"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2312" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2313"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2314" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2315"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2316" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2317"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2318" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2319"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2320" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2321"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2322" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2323"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2324" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2325"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2326" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2327"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2328" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2329"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2330" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2331"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2332" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2333"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2334" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2335"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2336" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2337"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2338" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2339"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2340" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2341"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2342" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2343"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2344" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2345"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2346" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2347"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2348" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2349"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2350" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2351"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2352" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2353"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2354" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2355"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2356" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2357"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2358" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2359"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2360" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2361"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2362" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2363"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2364" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2365"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2366" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2367"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2368" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2369"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2370" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2371"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2372" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2373"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2374" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2375"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2376" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2377"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2378" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2379"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2380" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2381"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2382" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2383"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2384" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2385"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2386" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2387"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2388" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2389"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2390" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2391"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2392" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2393"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2394" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2395"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2396" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2397"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2398" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2399"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2400" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2401"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2402" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2403"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2404" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2405"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2406" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2407"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2408" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2409"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2410" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2411"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2412" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2413"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2414" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2415"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2416" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2417"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2418" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2419"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2420" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2421"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2422" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2423"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2424" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2425"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2426" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2427"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2428" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2429"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2430" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2431"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2432" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2433"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2434" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2435"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2436" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2437"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2438" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2439"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2440" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2441"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2442" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2443"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2444" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2445"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2446" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2447"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2448" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2449"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2450" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2451"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2452" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2453"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2454" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2455"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2456" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2457"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2458" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2459"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2460" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2461"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2462" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2463"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2464" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2465"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2466" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2467"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2468" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2469"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2470" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2471"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2472" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2473"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2474" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2475"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2476" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2477"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2478" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2479"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2480" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2481"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2482" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2483"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2484" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2485"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2486" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2487"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2488" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2489"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2490" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2491"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2492" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2493"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2494" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2495"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2496" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2497"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2498" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2499"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2500" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2501"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2502" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2503"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2504" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2505"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2506" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2507"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2508" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2509"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2510" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2511"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2512" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2513"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2514" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2515"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2516" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2517"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2518" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2519"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2520" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2521"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2522" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2523"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2524" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2525"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2526" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2527"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2528" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2529"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2530" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2531"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2532" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2533"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2534" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2535"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2536" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2537"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2538" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2539"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2540" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2541"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2542" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2543"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2544" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2545"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2546" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2547"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2548" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2549"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2550" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2551"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2552" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2553"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2554" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2555"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2556" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2557"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2558" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2559"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2560" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2561"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2562" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2563"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2564" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2565"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2566" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2567"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2568" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2569"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2570" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2571"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2572" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2573"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2574" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2575"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2576" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2577"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2578" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2579"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2580" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2581"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2582" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2583"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2584" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2585"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2586" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2587"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2588" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2589"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2590" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2591"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2592" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2593"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2594" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2595"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2596" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2597"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2598" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2599"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2600" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2601"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2602" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2603"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2604" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2605"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2606" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2607"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2608" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2609"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2610" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2611"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2612" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2613"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2614" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2615"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2616" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2617"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2618" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2619"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2620" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2621"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2622" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2623"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2624" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2625"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2626" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2627"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2628" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2629"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2630" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2631"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2632" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2633"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2634" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2635"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2636" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2637"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2638" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2639"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2640" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2641"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2642" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2643"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2644" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2645"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2646" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2647"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2648" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2649"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2650" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2651"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2652" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2653"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2654" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2655"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2656" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2657"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2658" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2659"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2660" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2661"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2662" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2663"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2664" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2665"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2666" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2667"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2668" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2669"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2670" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2671"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2672" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2673"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2674" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2675"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2676" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2677"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2678" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2679"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2680" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2681"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2682" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2683"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2684" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2685"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2686" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2687"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2688" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2689"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2690" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2691"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2692" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2693"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2694" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2695"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2696" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2697"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2698" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2699"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2700" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2701"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2702" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2703"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2704" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2705"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2706" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2707"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2708" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2709"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2710" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2711"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2712" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2713"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2714" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2715"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2716" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2717"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2718" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2719"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2720" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2721"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2722" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2723"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2724" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2725"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2726" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2727"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2728" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2729"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2730" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2731"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2732" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2733"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2734" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2735"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2736" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2737"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2738" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2739"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2740" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2741"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2742" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2743"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2744" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2745"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2746" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2747"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2748" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2749"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2750" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2751"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2752" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2753"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2754" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2755"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2756" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2757"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2758" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2759"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2760" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2761"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2762" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2763"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2764" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2765"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2766" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2767"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2768" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2769"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2770" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2771"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2772" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2773"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2774" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2775"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2776" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2777"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2778" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2779"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2780" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2781"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2782" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2783"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2784" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2785"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2786" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2787"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2788" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2789"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2790" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2791"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2792" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2793"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2794" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2795"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2796" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2797"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2798" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2799"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2800" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2801"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2802" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2803"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2804" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2805"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2806" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2807"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2808" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2809"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2810" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2811"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2812" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2813"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2814" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2815"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2816" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2817"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2818" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2819"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2820" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2821"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2822" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2823"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2824" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2825"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2826" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2827"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2828" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2829"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2830" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2831"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2832" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2833"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2834" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2835"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2836" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2837"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2838" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2839"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2840" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2841"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2842" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2843"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2844" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2845"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2846" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2847"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2848" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2849"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2850" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2851"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2852" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2853"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2854" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2855"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2856" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2857"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2858" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2859"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2860" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2861"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2862" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2863"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2864" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2865"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2866" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2867"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2868" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2869"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2870" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2871"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2872" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2873"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2874" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2875"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2876" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2877"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2878" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2879"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2880" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2881"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2882" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2883"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2884" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2885"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2886" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2887"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2888" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2889"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2890" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2891"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2892" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2893"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2894" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2895"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2896" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2897"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2898" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2899"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2900" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2901"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2902" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2903"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2904" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2905"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2906" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2907"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2908" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2909"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2910" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2911"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2912" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2913"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2914" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2915"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2916" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2917"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2918" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2919"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2920" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2921"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2922" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2923"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2924" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2925"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2926" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2927"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2928" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2929"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2930" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2931"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2932" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2933"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2934" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2935"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2936" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2937"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2938" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2939"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2940" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2941"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2942" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2943"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2944" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2945"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2946" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2947"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2948" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2949"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2950" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2951"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2952" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2953"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2954" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2955"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2956" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2957"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2958" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2959"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2960" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2961"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2962" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2963"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2964" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2965"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2966" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2967"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2968" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2969"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2970" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2971"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2972" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2973"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2974" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2975"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2976" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2977"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2978" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2979"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2980" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2981"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2982" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2983"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2984" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2985"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2986" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2987"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2988" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2989"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2990" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2991"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2992" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2993"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2994" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2995"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2996" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2997"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2998" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2999"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3000" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3001"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3002" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3003"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3004" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3005"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3006" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3007"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3008" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3009"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3010" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3011"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3012" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3013"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3014" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3015"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3016" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3017"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3018" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3019"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3020" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3021"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3022" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3023"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3024" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3025"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3026" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3027"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3028" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3029"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3030" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3031"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3032" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3033"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3034" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3035"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3036" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3037"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3038" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3039"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3040" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3041"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3042" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3043"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3044" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3045"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3046" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3047"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3048" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3049"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3050" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3051"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3052" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3053"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3054" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3055"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3056" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3057"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3058" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3059"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3060" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3061"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3062" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3063"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3064" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3065"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3066" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3067"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3068" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3069"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3070" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3071"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3072" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3073"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3074" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3075"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3076" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3077"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3078" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3079"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3080" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3081"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3082" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3083"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3084" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3085"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3086" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3087"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3088" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3089"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3090" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3091"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3092" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3093"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3094" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3095"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3096" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3097"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3098" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3099"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record></t:root> \ No newline at end of file
diff --git a/xsd/examples/cxx/parser/performance/test-5k.xml b/xsd/examples/cxx/parser/performance/test-5k.xml
deleted file mode 100644
index 168cb09..0000000
--- a/xsd/examples/cxx/parser/performance/test-5k.xml
+++ /dev/null
@@ -1 +0,0 @@
-<t:root xmlns:t='test' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='test test.xsd'><record orange="0" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="4" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="5"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="6" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="7"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="8" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="9"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="10" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="11"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="12" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="13"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="14" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="15"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="16" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="17"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="18" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="19"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="20" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="21"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="22" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="23"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="24" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="25"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="26" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="27"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="28" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="29"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="30" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="31"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record></t:root> \ No newline at end of file
diff --git a/xsd/examples/cxx/parser/performance/test.xsd b/xsd/examples/cxx/parser/performance/test.xsd
index 2af594e..bb59c2a 100644
--- a/xsd/examples/cxx/parser/performance/test.xsd
+++ b/xsd/examples/cxx/parser/performance/test.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/performance/test.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/performance/time.cxx b/xsd/examples/cxx/parser/performance/time.cxx
index d7c81ce..aca5c74 100644
--- a/xsd/examples/cxx/parser/performance/time.cxx
+++ b/xsd/examples/cxx/parser/performance/time.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/performance/time.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "time.hxx"
@@ -24,7 +23,7 @@ namespace os
FILETIME ft;
GetSystemTimeAsFileTime (&ft);
unsigned long long v (
- (unsigned long long (ft.dwHighDateTime) << 32) + ft.dwLowDateTime);
+ ((unsigned long long) (ft.dwHighDateTime) << 32) + ft.dwLowDateTime);
sec_ = static_cast<unsigned long> (v / 10000000ULL);
nsec_ = static_cast<unsigned long> ((v % 10000000ULL) * 100);
diff --git a/xsd/examples/cxx/parser/performance/time.hxx b/xsd/examples/cxx/parser/performance/time.hxx
index 37ec457..3b2f040 100644
--- a/xsd/examples/cxx/parser/performance/time.hxx
+++ b/xsd/examples/cxx/parser/performance/time.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/performance/time.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef TIME_HXX
diff --git a/xsd/examples/cxx/parser/polymorphism/driver.cxx b/xsd/examples/cxx/parser/polymorphism/driver.cxx
index 842a88b..ffbe48b 100644
--- a/xsd/examples/cxx/parser/polymorphism/driver.cxx
+++ b/xsd/examples/cxx/parser/polymorphism/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/polymorphism/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <iostream>
diff --git a/xsd/examples/cxx/parser/polymorphism/makefile b/xsd/examples/cxx/parser/polymorphism/makefile
index 0eec54e..8a89ab8 100644
--- a/xsd/examples/cxx/parser/polymorphism/makefile
+++ b/xsd/examples/cxx/parser/polymorphism/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/polymorphism/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-polymorphic
+$(gen): xsd_options += --generate-polymorphic
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.cxx b/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.cxx
index 8a30cbd..f4b3bc6 100644
--- a/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.cxx
+++ b/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/polymorphism/supermen-pimpl.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
//
diff --git a/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.hxx b/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.hxx
index 3c0f549..eaf81e5 100644
--- a/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.hxx
+++ b/xsd/examples/cxx/parser/polymorphism/supermen-pimpl.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/polymorphism/supermen-pimpl.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef SUPERMEN_PIMPL_HXX
diff --git a/xsd/examples/cxx/parser/polymorphism/supermen.xml b/xsd/examples/cxx/parser/polymorphism/supermen.xml
index c2bc7b4..15054fa 100644
--- a/xsd/examples/cxx/parser/polymorphism/supermen.xml
+++ b/xsd/examples/cxx/parser/polymorphism/supermen.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/polymorphism/supermen.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/polymorphism/supermen.xsd b/xsd/examples/cxx/parser/polymorphism/supermen.xsd
index 83a7aac..c9029da 100644
--- a/xsd/examples/cxx/parser/polymorphism/supermen.xsd
+++ b/xsd/examples/cxx/parser/polymorphism/supermen.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/polymorphism/supermen.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/polyroot/batman.xml b/xsd/examples/cxx/parser/polyroot/batman.xml
index 70abdf7..fad0b71 100644
--- a/xsd/examples/cxx/parser/polyroot/batman.xml
+++ b/xsd/examples/cxx/parser/polyroot/batman.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/polyroot/batman.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/polyroot/driver.cxx b/xsd/examples/cxx/parser/polyroot/driver.cxx
index b04bba5..1c9c778 100644
--- a/xsd/examples/cxx/parser/polyroot/driver.cxx
+++ b/xsd/examples/cxx/parser/polyroot/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/polyroot/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <map>
diff --git a/xsd/examples/cxx/parser/polyroot/makefile b/xsd/examples/cxx/parser/polyroot/makefile
index 6b66233..a5a9088 100644
--- a/xsd/examples/cxx/parser/polyroot/makefile
+++ b/xsd/examples/cxx/parser/polyroot/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/polyroot/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-polymorphic
+$(gen): xsd_options += --generate-polymorphic
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/parser/polyroot/person.xml b/xsd/examples/cxx/parser/polyroot/person.xml
index 157a5af..f463bea 100644
--- a/xsd/examples/cxx/parser/polyroot/person.xml
+++ b/xsd/examples/cxx/parser/polyroot/person.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/polyroot/person.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/polyroot/superman.xml b/xsd/examples/cxx/parser/polyroot/superman.xml
index 86d9682..c831f6c 100644
--- a/xsd/examples/cxx/parser/polyroot/superman.xml
+++ b/xsd/examples/cxx/parser/polyroot/superman.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/polyroot/superman.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/polyroot/supermen-pimpl.cxx b/xsd/examples/cxx/parser/polyroot/supermen-pimpl.cxx
index db41ab2..62289e9 100644
--- a/xsd/examples/cxx/parser/polyroot/supermen-pimpl.cxx
+++ b/xsd/examples/cxx/parser/polyroot/supermen-pimpl.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/polyroot/supermen-pimpl.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
//
diff --git a/xsd/examples/cxx/parser/polyroot/supermen-pimpl.hxx b/xsd/examples/cxx/parser/polyroot/supermen-pimpl.hxx
index 035d127..49e8c74 100644
--- a/xsd/examples/cxx/parser/polyroot/supermen-pimpl.hxx
+++ b/xsd/examples/cxx/parser/polyroot/supermen-pimpl.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/polyroot/supermen-pimpl.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef SUPERMEN_PIMPL_HXX
diff --git a/xsd/examples/cxx/parser/polyroot/supermen.xsd b/xsd/examples/cxx/parser/polyroot/supermen.xsd
index 090b662..dc5d439 100644
--- a/xsd/examples/cxx/parser/polyroot/supermen.xsd
+++ b/xsd/examples/cxx/parser/polyroot/supermen.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/polyroot/supermen.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/wildcard/driver.cxx b/xsd/examples/cxx/parser/wildcard/driver.cxx
index 7bd63eb..fa82ec0 100644
--- a/xsd/examples/cxx/parser/wildcard/driver.cxx
+++ b/xsd/examples/cxx/parser/wildcard/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/parser/wildcard/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <string>
diff --git a/xsd/examples/cxx/parser/wildcard/email.xml b/xsd/examples/cxx/parser/wildcard/email.xml
index 55f1e4b..f5d0359 100644
--- a/xsd/examples/cxx/parser/wildcard/email.xml
+++ b/xsd/examples/cxx/parser/wildcard/email.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/wildcard/email.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/wildcard/email.xsd b/xsd/examples/cxx/parser/wildcard/email.xsd
index 2e1f660..087fc7e 100644
--- a/xsd/examples/cxx/parser/wildcard/email.xsd
+++ b/xsd/examples/cxx/parser/wildcard/email.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/parser/wildcard/email.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/parser/wildcard/makefile b/xsd/examples/cxx/parser/wildcard/makefile
index d8fcc8d..524f8da 100644
--- a/xsd/examples/cxx/parser/wildcard/makefile
+++ b/xsd/examples/cxx/parser/wildcard/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/parser/wildcard/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,7 +28,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
@@ -38,7 +37,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -67,7 +66,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/README b/xsd/examples/cxx/tree/README
index 348885f..569bf11 100644
--- a/xsd/examples/cxx/tree/README
+++ b/xsd/examples/cxx/tree/README
@@ -17,6 +17,10 @@ polymorphism
Shows how to use XML Schema polymorphism features such as the
xsi:type attribute and substitution groups.
+order/
+ A collection of examples that show how to use ordered types to
+ capture and maintain content order.
+
xpath
Shows how to use the C++/Tree mapping together with XPath.
@@ -45,7 +49,7 @@ caching
embedded
Shows how to embed the binary representation of the schema grammar
- into an application and then use it with the C++/Tree mapping to
+ into an application and then use it with the C++/Tree mapping to
parse and validate XML documents.
performance
@@ -68,13 +72,9 @@ streaming
that are too large to fit into memory.
compression
- Shows how to compress an XML document during serialization and decompress
+ Shows how to compress an XML document during serialization and decompress
it during parsing using the zlib library.
binary/
A collection of examples that show how to serialize the object model
into a number of predefined and custom binary formats.
-
-dbxml
- Shows how to use the C++/Tree mapping on top of the Berkeley DB
- XML embedded XML database.
diff --git a/xsd/examples/cxx/tree/binary/boost/boost-archive-extraction.hxx b/xsd/examples/cxx/tree/binary/boost/boost-archive-extraction.hxx
index 7711b28..8a1c1ef 100644
--- a/xsd/examples/cxx/tree/binary/boost/boost-archive-extraction.hxx
+++ b/xsd/examples/cxx/tree/binary/boost/boost-archive-extraction.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/binary/boost/boost-archive-insertion.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef BOOST_ARCHIVE_EXTRACTION_HXX
@@ -180,6 +179,7 @@ namespace xsd
s.impl () >> size;
x.size (size);
s.impl ().load_binary (x.data (), size);
+ return s;
}
}
}
diff --git a/xsd/examples/cxx/tree/binary/boost/boost-archive-insertion.hxx b/xsd/examples/cxx/tree/binary/boost/boost-archive-insertion.hxx
index 7a00ef8..4c89104 100644
--- a/xsd/examples/cxx/tree/binary/boost/boost-archive-insertion.hxx
+++ b/xsd/examples/cxx/tree/binary/boost/boost-archive-insertion.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/binary/boost/boost-archive-insertion.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef BOOST_ARCHIVE_INSERTION_HXX
@@ -169,6 +168,7 @@ namespace xsd
std::size_t size (x.size());
s.impl () << size;
s.impl ().save_binary (x.data (), x.size ());
+ return s;
}
}
}
diff --git a/xsd/examples/cxx/tree/binary/boost/driver.cxx b/xsd/examples/cxx/tree/binary/boost/driver.cxx
index 9490d13..df053b6 100644
--- a/xsd/examples/cxx/tree/binary/boost/driver.cxx
+++ b/xsd/examples/cxx/tree/binary/boost/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/binary/boost/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/binary/boost/library.xml b/xsd/examples/cxx/tree/binary/boost/library.xml
index da2bee6..ceb4443 100644
--- a/xsd/examples/cxx/tree/binary/boost/library.xml
+++ b/xsd/examples/cxx/tree/binary/boost/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/binary/boost/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/binary/boost/library.xsd b/xsd/examples/cxx/tree/binary/boost/library.xsd
index 9f35d4a..4bfdd1e 100644
--- a/xsd/examples/cxx/tree/binary/boost/library.xsd
+++ b/xsd/examples/cxx/tree/binary/boost/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/binary/boost/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/binary/boost/makefile b/xsd/examples/cxx/tree/binary/boost/makefile
index 7044539..1ed7e41 100644
--- a/xsd/examples/cxx/tree/binary/boost/makefile
+++ b/xsd/examples/cxx/tree/binary/boost/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/binary/boost/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -35,7 +34,7 @@ endif
#
$(driver): $(obj) $(xerces_c.l) $(boost_serialization.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd -I$(src_root)
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options) $(boost_serialization.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -43,14 +42,14 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream \
+$(gen): xsd_options += --generate-ostream \
--hxx-prologue-file $(src_base)/library-prologue.hxx \
--generate-insertion boost::archive::text_oarchive \
--generate-extraction boost::archive::text_iarchive
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -83,9 +82,16 @@ $(dist-common):
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,boost-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,boost-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,boost-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,boost-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,boost-vc12.sln)
+
# Clean.
#
@@ -111,9 +117,16 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+
+
# Dependencies.
#
$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/binary/cdr/driver.cxx b/xsd/examples/cxx/tree/binary/cdr/driver.cxx
index 08ec0d5..ec1ff32 100644
--- a/xsd/examples/cxx/tree/binary/cdr/driver.cxx
+++ b/xsd/examples/cxx/tree/binary/cdr/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/binary/cdr/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/binary/cdr/library.xml b/xsd/examples/cxx/tree/binary/cdr/library.xml
index e7ccb3f..941c03f 100644
--- a/xsd/examples/cxx/tree/binary/cdr/library.xml
+++ b/xsd/examples/cxx/tree/binary/cdr/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/binary/cdr/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/binary/cdr/library.xsd b/xsd/examples/cxx/tree/binary/cdr/library.xsd
index 92d44d1..5659e1b 100644
--- a/xsd/examples/cxx/tree/binary/cdr/library.xsd
+++ b/xsd/examples/cxx/tree/binary/cdr/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/binary/cdr/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/binary/cdr/makefile b/xsd/examples/cxx/tree/binary/cdr/makefile
index 72bdae7..b349ba2 100644
--- a/xsd/examples/cxx/tree/binary/cdr/makefile
+++ b/xsd/examples/cxx/tree/binary/cdr/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/binary/cdr/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -35,18 +34,18 @@ endif
#
$(driver): $(obj) $(xerces_c.l) $(ace.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options) $(ace.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream \
+$(gen): xsd_options += --generate-ostream \
--generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -73,9 +72,15 @@ $(dist-common):
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,cdr-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,cdr-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,cdr-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,cdr-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,cdr-vc12.sln)
# Clean.
#
@@ -101,9 +106,15 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+
# Dependencies.
#
$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/binary/makefile b/xsd/examples/cxx/tree/binary/makefile
index fbdfbe4..eb4b312 100644
--- a/xsd/examples/cxx/tree/binary/makefile
+++ b/xsd/examples/cxx/tree/binary/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/binary/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -42,7 +41,7 @@ $(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_examples)))
$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_examples)))
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/binary/xdr/driver.cxx b/xsd/examples/cxx/tree/binary/xdr/driver.cxx
index 495eafc..d109322 100644
--- a/xsd/examples/cxx/tree/binary/xdr/driver.cxx
+++ b/xsd/examples/cxx/tree/binary/xdr/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/binary/xdr/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/binary/xdr/library.xml b/xsd/examples/cxx/tree/binary/xdr/library.xml
index 9ddcd5a..dab6afb 100644
--- a/xsd/examples/cxx/tree/binary/xdr/library.xml
+++ b/xsd/examples/cxx/tree/binary/xdr/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/binary/xdr/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/binary/xdr/library.xsd b/xsd/examples/cxx/tree/binary/xdr/library.xsd
index 9999e72..7513e3b 100644
--- a/xsd/examples/cxx/tree/binary/xdr/library.xsd
+++ b/xsd/examples/cxx/tree/binary/xdr/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/binary/xdr/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/binary/xdr/makefile b/xsd/examples/cxx/tree/binary/xdr/makefile
index 092cdc7..7939b29 100644
--- a/xsd/examples/cxx/tree/binary/xdr/makefile
+++ b/xsd/examples/cxx/tree/binary/xdr/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/binary/xdr/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l) -lnsl
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream \
+$(gen): xsd_options += --generate-ostream \
--generate-insertion XDR --generate-extraction XDR
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -65,9 +64,16 @@ $(dist-common):
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,xdr-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,xdr-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,xdr-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,xdr-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,xdr-vc12.sln)
+
# Clean.
#
@@ -93,9 +99,16 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+
+
# Dependencies.
#
$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/caching/driver.cxx b/xsd/examples/cxx/tree/caching/driver.cxx
index a3877d8..2aa9396 100644
--- a/xsd/examples/cxx/tree/caching/driver.cxx
+++ b/xsd/examples/cxx/tree/caching/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/caching/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
@@ -51,10 +50,6 @@ main (int argc, char* argv[])
DOMImplementation* impl (
DOMImplementationRegistry::getDOMImplementation (ls_id));
-#if _XERCES_VERSION >= 30000
-
- // Xerces-C++ 3.0.0 and later.
- //
xml::dom::auto_ptr<DOMLSParser> parser (
impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
@@ -128,41 +123,6 @@ main (int argc, char* argv[])
//
conf->setParameter (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- xml::dom::auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder(DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
- parser->setFeature (XMLUni::fgDOMValidation, true);
- parser->setFeature (XMLUni::fgXercesSchema, true);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
-
- tree::error_handler<char> eh;
- xml::dom::bits::error_handler_proxy<char> ehp (eh);
- parser->setErrorHandler (&ehp);
-
- if (!parser->loadGrammar ("library.xsd", Grammar::SchemaGrammarType, true))
- {
- eh.handle ("library.xsd", 0, 0,
- tree::error_handler<char>::severity::fatal,
- "unable to load schema");
- }
-
- eh.throw_if_failed<xml_schema::parsing> ();
- parser->setFeature (XMLUni::fgXercesUseCachedGrammarInParse, true);
-
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
-#endif // _XERCES_VERSION >= 30000
-
// Parse XML documents.
//
for (unsigned long i (0); i < 10; ++i)
@@ -178,11 +138,7 @@ main (int argc, char* argv[])
// Parse XML to DOM.
//
-#if _XERCES_VERSION >= 30000
xml_schema::dom::auto_ptr<DOMDocument> doc (parser->parse (&wrap));
-#else
- xml_schema::dom::auto_ptr<DOMDocument> doc (parser->parse (wrap));
-#endif
eh.throw_if_failed<xml_schema::parsing> ();
diff --git a/xsd/examples/cxx/tree/caching/library.xml b/xsd/examples/cxx/tree/caching/library.xml
index 4c12c6e..6d4d6f1 100644
--- a/xsd/examples/cxx/tree/caching/library.xml
+++ b/xsd/examples/cxx/tree/caching/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/caching/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/caching/library.xsd b/xsd/examples/cxx/tree/caching/library.xsd
index 5dca460..a46c558 100644
--- a/xsd/examples/cxx/tree/caching/library.xsd
+++ b/xsd/examples/cxx/tree/caching/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/caching/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/caching/makefile b/xsd/examples/cxx/tree/caching/makefile
index cd0447e..cb9b191 100644
--- a/xsd/examples/cxx/tree/caching/makefile
+++ b/xsd/examples/cxx/tree/caching/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/caching/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,16 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options :=
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -68,7 +66,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/compression/compressed-format-target.cxx b/xsd/examples/cxx/tree/compression/compressed-format-target.cxx
index b4a8a85..1f183e2 100644
--- a/xsd/examples/cxx/tree/compression/compressed-format-target.cxx
+++ b/xsd/examples/cxx/tree/compression/compressed-format-target.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/compression/compressed-format-target.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <ostream>
@@ -81,11 +80,7 @@ compressed_format_target::
void compressed_format_target::
writeChars (const XMLByte* const buf,
-#if _XERCES_VERSION >= 30000
const XMLSize_t size,
-#else
- const unsigned int size,
-#endif
xercesc::XMLFormatter* const)
{
// Flush the buffer if the block is too large or if we don't have
diff --git a/xsd/examples/cxx/tree/compression/compressed-format-target.hxx b/xsd/examples/cxx/tree/compression/compressed-format-target.hxx
index 5d12e81..835b676 100644
--- a/xsd/examples/cxx/tree/compression/compressed-format-target.hxx
+++ b/xsd/examples/cxx/tree/compression/compressed-format-target.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/compression/compressed-format-target.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef COMPRESSED_FORMAT_TARGET_HXX
@@ -60,11 +59,7 @@ public:
virtual void
writeChars (const XMLByte* const buf,
-#if _XERCES_VERSION >= 30000
const XMLSize_t size,
-#else
- const unsigned int size,
-#endif
xercesc::XMLFormatter* const);
virtual void
diff --git a/xsd/examples/cxx/tree/compression/compressed-input-source.cxx b/xsd/examples/cxx/tree/compression/compressed-input-source.cxx
index 22d09ff..e25b169 100644
--- a/xsd/examples/cxx/tree/compression/compressed-input-source.cxx
+++ b/xsd/examples/cxx/tree/compression/compressed-input-source.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/compression/compressed-input-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <istream>
@@ -111,27 +110,14 @@ compressed_input_stream::
inflateEnd (&zs_);
}
-#if _XERCES_VERSION >= 30000
XMLFilePos compressed_input_stream::
curPos () const
{
return static_cast<XMLFilePos> (pos_);
}
-#else
-unsigned int compressed_input_stream::
-curPos () const
-{
- return static_cast<unsigned int> (pos_);
-}
-#endif
-#if _XERCES_VERSION >= 30000
XMLSize_t compressed_input_stream::
readBytes (XMLByte* const buf, const XMLSize_t size)
-#else
-unsigned int compressed_input_stream::
-readBytes (XMLByte* const buf, const unsigned int size)
-#endif
{
if (end_)
return 0;
@@ -169,20 +155,14 @@ readBytes (XMLByte* const buf, const unsigned int size)
size_t n (size - zs_.avail_out);
pos_ += n;
-#if _XERCES_VERSION >= 30000
return static_cast<XMLSize_t> (n);
-#else
- return static_cast<unsigned int> (n);
-#endif
}
-#if _XERCES_VERSION >= 30000
const XMLCh* compressed_input_stream::
getContentType () const
{
return 0;
}
-#endif
size_t compressed_input_stream::
read ()
diff --git a/xsd/examples/cxx/tree/compression/compressed-input-source.hxx b/xsd/examples/cxx/tree/compression/compressed-input-source.hxx
index 680d39f..8065445 100644
--- a/xsd/examples/cxx/tree/compression/compressed-input-source.hxx
+++ b/xsd/examples/cxx/tree/compression/compressed-input-source.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/compression/compressed-input-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef COMPRESSED_INPUT_SOURCE_HXX
@@ -96,7 +95,6 @@ public:
virtual
~compressed_input_stream ();
-#if _XERCES_VERSION >= 30000
virtual XMLFilePos
curPos () const;
@@ -106,15 +104,6 @@ public:
virtual const XMLCh*
getContentType () const;
-#else
-
- virtual unsigned int
- readBytes (XMLByte* const buf, const unsigned int size);
-
- virtual unsigned int
- curPos () const;
-#endif
-
private:
std::size_t
read ();
diff --git a/xsd/examples/cxx/tree/compression/driver.cxx b/xsd/examples/cxx/tree/compression/driver.cxx
index db285cf..34238b1 100644
--- a/xsd/examples/cxx/tree/compression/driver.cxx
+++ b/xsd/examples/cxx/tree/compression/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/compression/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
@@ -20,7 +19,7 @@ main (int argc, char* argv[])
{
if (argc != 2)
{
- cerr << "usage: " << argv[0] << " library.xml" << endl;
+ cerr << "usage: " << argv[0] << " library.xml.gz" << endl;
return 1;
}
diff --git a/xsd/examples/cxx/tree/compression/library.xsd b/xsd/examples/cxx/tree/compression/library.xsd
index 0451b36..728acc7 100644
--- a/xsd/examples/cxx/tree/compression/library.xsd
+++ b/xsd/examples/cxx/tree/compression/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/compression/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/compression/makefile b/xsd/examples/cxx/tree/compression/makefile
index 30188c1..43913f7 100644
--- a/xsd/examples/cxx/tree/compression/makefile
+++ b/xsd/examples/cxx/tree/compression/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/compression/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -34,17 +33,17 @@ endif
#
$(driver): $(obj) $(xerces_c.l) $(z.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options) $(z.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream --generate-serialization
+$(gen): xsd_options += --generate-ostream --generate-serialization
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -79,9 +78,15 @@ $(dist-common):
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,compression-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,compression-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,compression-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,compression-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,compression-vc12.sln)
# Clean.
@@ -109,9 +114,15 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+
# Dependencies.
#
$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/custom/calendar/calendar.xml b/xsd/examples/cxx/tree/custom/calendar/calendar.xml
index ae9e570..5cc898a 100644
--- a/xsd/examples/cxx/tree/custom/calendar/calendar.xml
+++ b/xsd/examples/cxx/tree/custom/calendar/calendar.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/calendar/calendar.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/calendar/calendar.xsd b/xsd/examples/cxx/tree/custom/calendar/calendar.xsd
index fa612a7..04b3af1 100644
--- a/xsd/examples/cxx/tree/custom/calendar/calendar.xsd
+++ b/xsd/examples/cxx/tree/custom/calendar/calendar.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/calendar/calendar.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/calendar/driver.cxx b/xsd/examples/cxx/tree/custom/calendar/driver.cxx
index 02f1c27..a5b223e 100644
--- a/xsd/examples/cxx/tree/custom/calendar/driver.cxx
+++ b/xsd/examples/cxx/tree/custom/calendar/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/calendar/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/custom/calendar/makefile b/xsd/examples/cxx/tree/custom/calendar/makefile
index f4f4598..6998ffd 100644
--- a/xsd/examples/cxx/tree/custom/calendar/makefile
+++ b/xsd/examples/cxx/tree/custom/calendar/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/calendar/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -34,7 +33,7 @@ endif
#
$(driver): $(obj) $(xerces_c.l) $(boost_date_time.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options) $(boost_date_time.l.cpp-options)
# Header file for XML Schema namespace.
@@ -43,7 +42,7 @@ $(out_base)/xml-schema.hxx: $(out_root)/xsd/xsd
$(call message,xsd $(src_base)/xml-schema.xsd,\
$(out_root)/xsd/xsd cxx-tree --output-dir $(out_base) --generate-xml-schema \
--custom-type date \
---hxx-epilogue '\#include "xml-schema-custom.hxx"' xml-schema.xsd)
+--hxx-epilogue '#include "xml-schema-custom.hxx"' xml-schema.xsd)
#
#
@@ -51,17 +50,13 @@ genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-
-# We have to double-escape '#' because the message function
-# (which is used in command scripts) expands things twice.
-#
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--generate-inline \
--extern-xml-schema xml-schema.xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -92,9 +87,16 @@ $(dist-common):
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,calendar-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,calendar-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,calendar-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,calendar-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,calendar-vc12.sln)
+
# Clean.
#
@@ -121,9 +123,15 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+
# Dependencies.
#
$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.cxx b/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.cxx
index 440a407..645880b 100644
--- a/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.cxx
+++ b/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/calendar/xml-schema-custom.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Include xml-schema.hxx instead of xml-schema-custom.hxx here.
diff --git a/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.hxx b/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.hxx
index 2bab0b5..58f57e6 100644
--- a/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.hxx
+++ b/xsd/examples/cxx/tree/custom/calendar/xml-schema-custom.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/calendar/xml-schema-custom.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use xml-schema.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/comments/dom-parse.cxx b/xsd/examples/cxx/tree/custom/comments/dom-parse.cxx
index 1ba62e5..9999f67 100644
--- a/xsd/examples/cxx/tree/custom/comments/dom-parse.cxx
+++ b/xsd/examples/cxx/tree/custom/comments/dom-parse.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/comments/dom-parse.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "dom-parse.hxx"
@@ -30,18 +29,14 @@ parse (std::istream& is, const std::string& id, bool validate)
DOMImplementation* impl (
DOMImplementationRegistry::getDOMImplementation (ls_id));
-#if _XERCES_VERSION >= 30000
-
- // Xerces-C++ 3.0.0 and later.
- //
xml::dom::auto_ptr<DOMLSParser> parser (
impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
DOMConfiguration* conf (parser->getDomConfig ());
- // Discard comment nodes in the document.
+ // Preserve comment nodes in the document.
//
- conf->setParameter (XMLUni::fgDOMComments, false);
+ conf->setParameter (XMLUni::fgDOMComments, true);
// Enable datatype normalization.
//
@@ -85,39 +80,12 @@ parse (std::istream& is, const std::string& id, bool validate)
xml::dom::bits::error_handler_proxy<char> ehp (eh);
conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- xml::dom::auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
- parser->setFeature (XMLUni::fgDOMValidation, validate);
- parser->setFeature (XMLUni::fgXercesSchema, validate);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
- tree::error_handler<char> eh;
- xml::dom::bits::error_handler_proxy<char> ehp (eh);
- parser->setErrorHandler (&ehp);
-
-#endif // _XERCES_VERSION >= 30000
-
// Prepare input stream.
//
xml::sax::std_input_source isrc (is, id);
Wrapper4InputSource wrap (&isrc, false);
-#if _XERCES_VERSION >= 30000
xml::dom::auto_ptr<DOMDocument> doc (parser->parse (&wrap));
-#else
- xml::dom::auto_ptr<DOMDocument> doc (parser->parse (wrap));
-#endif
eh.throw_if_failed<tree::parsing<char> > ();
diff --git a/xsd/examples/cxx/tree/custom/comments/dom-parse.hxx b/xsd/examples/cxx/tree/custom/comments/dom-parse.hxx
index 05bfa2e..fea46d0 100644
--- a/xsd/examples/cxx/tree/custom/comments/dom-parse.hxx
+++ b/xsd/examples/cxx/tree/custom/comments/dom-parse.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/comments/dom-parse.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef DOM_PARSE
diff --git a/xsd/examples/cxx/tree/custom/comments/driver.cxx b/xsd/examples/cxx/tree/custom/comments/driver.cxx
index 4ce2573..39b16f7 100644
--- a/xsd/examples/cxx/tree/custom/comments/driver.cxx
+++ b/xsd/examples/cxx/tree/custom/comments/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/commens/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/custom/comments/makefile b/xsd/examples/cxx/tree/custom/comments/makefile
index de265a1..eebb75e 100644
--- a/xsd/examples/cxx/tree/custom/comments/makefile
+++ b/xsd/examples/cxx/tree/custom/comments/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/comments/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -28,7 +27,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
# Header file for XML Schema namespace.
@@ -37,7 +36,7 @@ $(out_base)/xml-schema.hxx: $(out_root)/xsd/xsd
$(call message,xsd $(src_base)/xml-schema.xsd,\
$(out_root)/xsd/xsd cxx-tree --output-dir $(out_base) --generate-xml-schema \
--generate-serialization --custom-type anyType=/type_base \
---hxx-epilogue '\#include "xml-schema-custom.hxx"' xml-schema.xsd)
+--hxx-epilogue '#include "xml-schema-custom.hxx"' xml-schema.xsd)
#
#
@@ -45,15 +44,14 @@ genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--generate-inline \
--generate-serialization \
--extern-xml-schema xml-schema.xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -90,7 +88,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/custom/comments/people.xml b/xsd/examples/cxx/tree/custom/comments/people.xml
index b6a44e5..55c08a1 100644
--- a/xsd/examples/cxx/tree/custom/comments/people.xml
+++ b/xsd/examples/cxx/tree/custom/comments/people.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/comments/people.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/comments/people.xsd b/xsd/examples/cxx/tree/custom/comments/people.xsd
index 2f40754..e70dd2a 100644
--- a/xsd/examples/cxx/tree/custom/comments/people.xsd
+++ b/xsd/examples/cxx/tree/custom/comments/people.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/comments/people.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.cxx b/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.cxx
index d86d6af..67937d1 100644
--- a/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.cxx
+++ b/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/comments/xml-schema-custom.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Include xml-schema.hxx instead of xml-schema-custom.hxx here.
diff --git a/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.hxx b/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.hxx
index 821d0dd..0442a44 100644
--- a/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.hxx
+++ b/xsd/examples/cxx/tree/custom/comments/xml-schema-custom.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/comments/xml-schema-custom.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use xml-schema.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/contacts/contacts-custom.cxx b/xsd/examples/cxx/tree/custom/contacts/contacts-custom.cxx
index dd7c453..8bb0e22 100644
--- a/xsd/examples/cxx/tree/custom/contacts/contacts-custom.cxx
+++ b/xsd/examples/cxx/tree/custom/contacts/contacts-custom.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/contacts/contacts-custom.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <ostream>
diff --git a/xsd/examples/cxx/tree/custom/contacts/contacts-custom.hxx b/xsd/examples/cxx/tree/custom/contacts/contacts-custom.hxx
index fdb6810..65d6244 100644
--- a/xsd/examples/cxx/tree/custom/contacts/contacts-custom.hxx
+++ b/xsd/examples/cxx/tree/custom/contacts/contacts-custom.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/contacts/contacts-custom.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use contacts.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/contacts/contacts.xml b/xsd/examples/cxx/tree/custom/contacts/contacts.xml
index c6dc38f..331e692 100644
--- a/xsd/examples/cxx/tree/custom/contacts/contacts.xml
+++ b/xsd/examples/cxx/tree/custom/contacts/contacts.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/contacts/contacts.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/contacts/contacts.xsd b/xsd/examples/cxx/tree/custom/contacts/contacts.xsd
index da73c78..d6110fe 100644
--- a/xsd/examples/cxx/tree/custom/contacts/contacts.xsd
+++ b/xsd/examples/cxx/tree/custom/contacts/contacts.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/contacts/contacts.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/contacts/driver.cxx b/xsd/examples/cxx/tree/custom/contacts/driver.cxx
index 9015e87..ae8a2da 100644
--- a/xsd/examples/cxx/tree/custom/contacts/driver.cxx
+++ b/xsd/examples/cxx/tree/custom/contacts/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/contacts/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/custom/contacts/makefile b/xsd/examples/cxx/tree/custom/contacts/makefile
index e279634..ec9d902 100644
--- a/xsd/examples/cxx/tree/custom/contacts/makefile
+++ b/xsd/examples/cxx/tree/custom/contacts/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/contacts/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -29,7 +28,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -40,14 +39,14 @@ $(gen): xsd := $(out_root)/xsd/xsd
# We have to double-escape '#' because the message function
# (which is used in command scripts) expands things twice.
#
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--generate-inline \
--custom-type contact=/contact_base \
---hxx-epilogue '\\\#include "contacts-custom.hxx"'
+--hxx-epilogue '\#include "contacts-custom.hxx"'
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -80,7 +79,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/custom/double/double-custom.cxx b/xsd/examples/cxx/tree/custom/double/double-custom.cxx
index 78904a0..6aad908 100644
--- a/xsd/examples/cxx/tree/custom/double/double-custom.cxx
+++ b/xsd/examples/cxx/tree/custom/double/double-custom.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/double/double-custom.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Include xml-schema.hxx instead of double-custom.hxx here.
diff --git a/xsd/examples/cxx/tree/custom/double/double-custom.hxx b/xsd/examples/cxx/tree/custom/double/double-custom.hxx
index 17d9a44..1516211 100644
--- a/xsd/examples/cxx/tree/custom/double/double-custom.hxx
+++ b/xsd/examples/cxx/tree/custom/double/double-custom.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/double/double-custom.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use xml-schema.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/double/driver.cxx b/xsd/examples/cxx/tree/custom/double/driver.cxx
index 2e5b44d..8b102a5 100644
--- a/xsd/examples/cxx/tree/custom/double/driver.cxx
+++ b/xsd/examples/cxx/tree/custom/double/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/double/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <iostream>
diff --git a/xsd/examples/cxx/tree/custom/double/makefile b/xsd/examples/cxx/tree/custom/double/makefile
index 5bd4f71..2eed216 100644
--- a/xsd/examples/cxx/tree/custom/double/makefile
+++ b/xsd/examples/cxx/tree/custom/double/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/double/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -29,26 +28,25 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
$(out_base)/xml-schema.hxx: $(out_root)/xsd/xsd
$(call message,xsd $(src_base)/xml-schema.xsd,\
$(out_root)/xsd/xsd cxx-tree --output-dir $(out_base) --generate-xml-schema \
--generate-serialization --custom-type double=double \
---hxx-epilogue '\#include "double-custom.hxx"' xml-schema.xsd)
+--hxx-epilogue '#include "double-custom.hxx"' xml-schema.xsd)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-
-$(gen): xsd_options := \
---generate-serialization --extern-xml-schema xml-schema.xsd
+$(gen): xsd_options += --generate-serialization \
+--extern-xml-schema xml-schema.xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -79,7 +77,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/custom/double/order.xsd b/xsd/examples/cxx/tree/custom/double/order.xsd
index 0d7fe05..9cf1a1d 100644
--- a/xsd/examples/cxx/tree/custom/double/order.xsd
+++ b/xsd/examples/cxx/tree/custom/double/order.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/double/order.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/makefile b/xsd/examples/cxx/tree/custom/makefile
index d1044db..d84f840 100644
--- a/xsd/examples/cxx/tree/custom/makefile
+++ b/xsd/examples/cxx/tree/custom/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -32,15 +31,27 @@ $(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(all_examples)))
$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_examples)))
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_examples)))
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,custom-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,custom-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,custom-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,custom-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,custom-vc12.sln)
+
# Clean.
#
$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(build_examples)))
$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
ifneq ($(filter $(MAKECMDGOALS),dist dist-win install),)
$(foreach e,$(all_examples),$(call import,$(src_base)/$e/makefile))
diff --git a/xsd/examples/cxx/tree/custom/mixed/driver.cxx b/xsd/examples/cxx/tree/custom/mixed/driver.cxx
index a6dd0a7..0378f18 100644
--- a/xsd/examples/cxx/tree/custom/mixed/driver.cxx
+++ b/xsd/examples/cxx/tree/custom/mixed/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/mixed/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/custom/mixed/makefile b/xsd/examples/cxx/tree/custom/mixed/makefile
index 144299e..54610f0 100644
--- a/xsd/examples/cxx/tree/custom/mixed/makefile
+++ b/xsd/examples/cxx/tree/custom/mixed/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/mixed/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -29,7 +28,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -40,15 +39,15 @@ $(gen): xsd := $(out_root)/xsd/xsd
# We have to double-escape '#' because the message function
# (which is used in command scripts) expands things twice.
#
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--generate-inline \
--generate-serialization \
--custom-type bio=/bio_base \
---hxx-epilogue '\\\#include "people-custom.hxx"'
+--hxx-epilogue '\#include "people-custom.hxx"'
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -81,7 +80,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/custom/mixed/people-custom.cxx b/xsd/examples/cxx/tree/custom/mixed/people-custom.cxx
index af07e22..7cd1947 100644
--- a/xsd/examples/cxx/tree/custom/mixed/people-custom.cxx
+++ b/xsd/examples/cxx/tree/custom/mixed/people-custom.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/mixed/people-custom.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <ostream>
diff --git a/xsd/examples/cxx/tree/custom/mixed/people-custom.hxx b/xsd/examples/cxx/tree/custom/mixed/people-custom.hxx
index f05ba4a..54dfb21 100644
--- a/xsd/examples/cxx/tree/custom/mixed/people-custom.hxx
+++ b/xsd/examples/cxx/tree/custom/mixed/people-custom.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/mixed/people-custom.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use people.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/mixed/people.xml b/xsd/examples/cxx/tree/custom/mixed/people.xml
index 4e5c0ca..47e68b9 100644
--- a/xsd/examples/cxx/tree/custom/mixed/people.xml
+++ b/xsd/examples/cxx/tree/custom/mixed/people.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/mixed/people.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/mixed/people.xsd b/xsd/examples/cxx/tree/custom/mixed/people.xsd
index 40c1fc1..03e6c97 100644
--- a/xsd/examples/cxx/tree/custom/mixed/people.xsd
+++ b/xsd/examples/cxx/tree/custom/mixed/people.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/mixed/people.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/taxonomy/driver.cxx b/xsd/examples/cxx/tree/custom/taxonomy/driver.cxx
index f102fc3..ec562f6 100644
--- a/xsd/examples/cxx/tree/custom/taxonomy/driver.cxx
+++ b/xsd/examples/cxx/tree/custom/taxonomy/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/taxonomy/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/custom/taxonomy/makefile b/xsd/examples/cxx/tree/custom/taxonomy/makefile
index ca3327c..5637f17 100644
--- a/xsd/examples/cxx/tree/custom/taxonomy/makefile
+++ b/xsd/examples/cxx/tree/custom/taxonomy/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/taxonomy/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -29,7 +28,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=-fwd.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -40,7 +39,7 @@ $(gen): xsd := $(out_root)/xsd/xsd
# We have to double-escape '#' because the message function
# (which is used in command scripts) expands things twice.
#
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--generate-inline \
--generate-forward \
--generate-polymorphic \
@@ -48,12 +47,12 @@ $(gen): xsd_options := \
--custom-type "person=person_impl<person_base>/person_base" \
--custom-type "superman=superman_impl<superman_base>/superman_base" \
--custom-type "batman=batman_impl<batman_base>/batman_base" \
---fwd-prologue '\\\#include "people-custom-fwd.hxx"' \
---hxx-prologue '\\\#include "people-custom.hxx"'
+--fwd-prologue '\#include "people-custom-fwd.hxx"' \
+--hxx-prologue '\#include "people-custom.hxx"'
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -88,7 +87,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/custom/taxonomy/people-custom-fwd.hxx b/xsd/examples/cxx/tree/custom/taxonomy/people-custom-fwd.hxx
index 973b6e5..2c26bf5 100644
--- a/xsd/examples/cxx/tree/custom/taxonomy/people-custom-fwd.hxx
+++ b/xsd/examples/cxx/tree/custom/taxonomy/people-custom-fwd.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/taxonomy/people-custom-fwd.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use people-fwd.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/taxonomy/people-custom.cxx b/xsd/examples/cxx/tree/custom/taxonomy/people-custom.cxx
index 321d2df..a06a6ea 100644
--- a/xsd/examples/cxx/tree/custom/taxonomy/people-custom.cxx
+++ b/xsd/examples/cxx/tree/custom/taxonomy/people-custom.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/taxonomy/people-custom.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <ostream>
diff --git a/xsd/examples/cxx/tree/custom/taxonomy/people-custom.hxx b/xsd/examples/cxx/tree/custom/taxonomy/people-custom.hxx
index c601061..a60edc8 100644
--- a/xsd/examples/cxx/tree/custom/taxonomy/people-custom.hxx
+++ b/xsd/examples/cxx/tree/custom/taxonomy/people-custom.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/taxonomy/people-custom.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use people.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/taxonomy/people.xml b/xsd/examples/cxx/tree/custom/taxonomy/people.xml
index 5f84855..b53b576 100644
--- a/xsd/examples/cxx/tree/custom/taxonomy/people.xml
+++ b/xsd/examples/cxx/tree/custom/taxonomy/people.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/taxonomy/people.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/taxonomy/people.xsd b/xsd/examples/cxx/tree/custom/taxonomy/people.xsd
index c77a866..1181270 100644
--- a/xsd/examples/cxx/tree/custom/taxonomy/people.xsd
+++ b/xsd/examples/cxx/tree/custom/taxonomy/people.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/taxonomy/people.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/wildcard/driver.cxx b/xsd/examples/cxx/tree/custom/wildcard/driver.cxx
index d63fb11..d29f125 100644
--- a/xsd/examples/cxx/tree/custom/wildcard/driver.cxx
+++ b/xsd/examples/cxx/tree/custom/wildcard/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/wildcard/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/custom/wildcard/makefile b/xsd/examples/cxx/tree/custom/wildcard/makefile
index d06fff3..55e94b0 100644
--- a/xsd/examples/cxx/tree/custom/wildcard/makefile
+++ b/xsd/examples/cxx/tree/custom/wildcard/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/custom/wildcard/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -29,7 +28,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -40,16 +39,16 @@ $(gen): xsd := $(out_root)/xsd/xsd
# We have to double-escape '#' because the message function
# (which is used in command scripts) expands things twice.
#
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--generate-inline \
--generate-ostream \
--generate-serialization \
--custom-type data=/data_base \
---hxx-epilogue '\\\#include "wildcard-custom.hxx"'
+--hxx-epilogue '\#include "wildcard-custom.hxx"'
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -82,7 +81,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.cxx b/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.cxx
index 422a4b3..006f93a 100644
--- a/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.cxx
+++ b/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/wildcard/wildcard-custom.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <ostream>
diff --git a/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.hxx b/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.hxx
index 2c58cc8..0546d38 100644
--- a/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.hxx
+++ b/xsd/examples/cxx/tree/custom/wildcard/wildcard-custom.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/custom/wildcard/wildcard-custom.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// Do not include this file directly, use wildcard.hxx instead. This
diff --git a/xsd/examples/cxx/tree/custom/wildcard/wildcard.xml b/xsd/examples/cxx/tree/custom/wildcard/wildcard.xml
index c980193..80f215a 100644
--- a/xsd/examples/cxx/tree/custom/wildcard/wildcard.xml
+++ b/xsd/examples/cxx/tree/custom/wildcard/wildcard.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/wildcard/wildcard.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/custom/wildcard/wildcard.xsd b/xsd/examples/cxx/tree/custom/wildcard/wildcard.xsd
index ccce30b..1a32b1e 100644
--- a/xsd/examples/cxx/tree/custom/wildcard/wildcard.xsd
+++ b/xsd/examples/cxx/tree/custom/wildcard/wildcard.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/custom/wildcard/wildcard.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/dbxml/README b/xsd/examples/cxx/tree/dbxml/README
deleted file mode 100644
index 59e67d0..0000000
--- a/xsd/examples/cxx/tree/dbxml/README
+++ /dev/null
@@ -1,45 +0,0 @@
-This example shows how to use the C++/Tree mapping on top of the Berkeley
-DB XML embedded XML database. This example is described in detail in the
-"C++/Tree Mapping and Berkeley DB XML Integration Guide" which can be
-found in the documentation/cxx/tree/dbxml directory of the XSD
-distribution.
-
-You will need the Berkeley DB XML libraries[1] installed in order to build
-and run this example. The makefiles and project files for this example link
-to the DB XML library names corresponding to version 2.3.X. Earlier and later
-versions can also be used but may require adjustments to the library names
-being linked to.
-
-Note that due to the incomplete DOM API implementation provided by DB
-XML (as of version 2.3.10), the generated code and your application
-should be compiled with the DBXML_DOM macro defined in order to avoid
-using unsupported parts of the API.
-
-The example consists of the following files:
-
-library.xsd
- XML Schema which describes a library of books.
-
-library.hxx
-library.cxx
- C++ types that represent the given vocabulary, a set of parsing
- functions that convert XML instance documents to a tree-like in-memory
- object model, and a set of serialization functions that convert the
- object model back to XML. These are generated by XSD from library.xsd.
-
-driver.cxx
- Driver for the example. It performs the following four operations on
- the database:
-
- * Create a new document in DB from an object model
- * Create an object model from a document in DB
- * Create an object model from a document fragment in DB
- * Update a document fragment in DB from an object model
-
-
-To run the example simply execute:
-
-$ ./driver
-
-
-[1] http://www.sleepycat.com/products/bdbxml.html
diff --git a/xsd/examples/cxx/tree/dbxml/driver.cxx b/xsd/examples/cxx/tree/dbxml/driver.cxx
deleted file mode 100644
index 56cbb4a..0000000
--- a/xsd/examples/cxx/tree/dbxml/driver.cxx
+++ /dev/null
@@ -1,175 +0,0 @@
-// file : examples/cxx/tree/dbxml/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : not copyrighted - public domain
-
-#include <memory> // std::auto_ptr
-#include <string>
-#include <cassert>
-#include <iostream>
-
-#include <dbxml/DbXml.hpp>
-
-#include "library.hxx"
-
-using std::cerr;
-using std::endl;
-using std::string;
-using std::auto_ptr;
-
-using namespace DbXml;
-using namespace xsd::cxx; // for xml::string
-
-void
-print_document (const string& desc,
- XmlContainer container,
- const string& name)
-{
- XmlDocument doc (container.getDocument (name));
-
- string content;
- doc.getContent (content);
-
- cerr << endl
- << desc << endl
- << content << endl;
-}
-
-int
-main ()
-{
- try
- {
- using namespace library;
- using xml_schema::date;
-
- XmlManager manager;
-
- {
- XmlContainer container (manager.createContainer ("new.bdbxml"));
-
- XmlUpdateContext update_context (manager.createUpdateContext ());
-
- XmlQueryContext context (manager.createQueryContext ());
- context.setNamespace ("lib", "http://www.codesynthesis.com/library");
-
-
- // Create a new document from an object model.
- //
- {
- // Create a new catalog with one book.
- //
- catalog c;
-
- book b (20530902, // ISBN
- "The Elements of Style", // Title
- genre::reference, // Genre
- "ES"); // ID
-
- author strunk ("William Strunk, Jr.", date (1869, 7, 1));
- strunk.died (date (1946, 9, 26));
-
- b.author ().push_back (strunk);
- c.book ().push_back (b);
-
-
- // Create a new XML document.
- //
- XmlDocument doc (manager.createDocument ());
- doc.setName ("new.xml");
-
-
- // Obtain its DOM representation and add the root element.
- //
- xercesc::DOMDocument& dom_doc (*doc.getContentAsDOM ());
-
- dom_doc.appendChild (
- dom_doc.createElementNS (
- xml::string ("http://www.codesynthesis.com/library").c_str (),
- xml::string ("lib:catalog").c_str ()));
-
-
- // Serialize the object model to the XML document. Also avoid
- // re-initializing the Xerces-C++ runtime since XmlManager has
- // it initialized.
- //
- catalog_ (dom_doc, c, xml_schema::flags::dont_initialize);
-
-
- // Place the document into the container.
- //
- container.putDocument (doc, update_context);
-
- print_document ("after create:", container, "new.xml");
- }
-
- // Create an object model from a document in DB.
- //
- {
- // Resolve the document in the container.
- //
- XmlDocument doc (container.getDocument ("new.xml"));
-
-
- // Create the object model from the document's DOM. Also avoid
- // re-initializing the Xerces-C++ runtime since XmlManager has
- // it initialized.
- //
- auto_ptr<catalog> c (catalog_ (*doc.getContentAsDOM (),
- xml_schema::flags::dont_initialize));
-
- cerr << *c << endl;
- }
-
-
- // Lookup a document fragment.
- //
-
- string query ("collection('new.bdbxml')/lib:catalog/book[@id='ES']");
-
- // Find "The Elements of Style".
- //
- XmlValue v;
- XmlResults results (manager.query (query, context));
-
- if (results.next (v))
- {
- // Create an object model from the document fragment.
- //
- auto_ptr<book> b (
- new book (
- *static_cast<xercesc::DOMElement*> (v.asNode ())));
-
- cerr << *b << endl;
-
-
- // Add another author, change the availability status.
- //
- author white ("E.B. White", date (1899, 7, 11));
- white.died (date (1985, 10, 1));
-
- b->author ().push_back (white);
- b->available (false);
-
-
- // Update the document fragment from the object model.
- //
- *static_cast<xercesc::DOMElement*> (v.asNode ()) << *b;
-
-
- // Update the document in the container.
- //
- XmlDocument doc (v.asDocument ());
- container.updateDocument (doc, update_context);
- }
-
- print_document ("after update:", container, "new.xml");
- }
-
- manager.removeContainer ("new.bdbxml");
- }
- catch (const std::exception& e)
- {
- cerr << e.what () << endl;
- return 1;
- }
-}
diff --git a/xsd/examples/cxx/tree/dbxml/library.xsd b/xsd/examples/cxx/tree/dbxml/library.xsd
deleted file mode 100644
index c71c312..0000000
--- a/xsd/examples/cxx/tree/dbxml/library.xsd
+++ /dev/null
@@ -1,75 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
-
-file : examples/cxx/tree/dbxml/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
-copyright : not copyrighted - public domain
-
--->
-
-<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:xse="http://www.codesynthesis.com/xmlns/xml-schema-extension"
- xmlns:lib="http://www.codesynthesis.com/library"
- targetNamespace="http://www.codesynthesis.com/library">
-
- <xsd:simpleType name="isbn">
- <xsd:restriction base="xsd:unsignedInt"/>
- </xsd:simpleType>
-
-
- <xsd:complexType name="title">
- <xsd:simpleContent>
- <xsd:extension base="xsd:string">
- <xsd:attribute name="lang" type="xsd:language"/>
- </xsd:extension>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <xsd:simpleType name="genre">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="romance"/>
- <xsd:enumeration value="fiction"/>
- <xsd:enumeration value="horror"/>
- <xsd:enumeration value="history"/>
- <xsd:enumeration value="philosophy"/>
- <xsd:enumeration value="reference"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:complexType name="person">
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string"/>
- <xsd:element name="born" type="xsd:date"/>
- <xsd:element name="died" type="xsd:date" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:complexType name="author">
- <xsd:complexContent>
- <xsd:extension base="lib:person">
- <xsd:attribute name="recommends" type="xsd:IDREF" xse:refType="lib:book"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="book">
- <xsd:sequence>
- <xsd:element name="isbn" type="lib:isbn"/>
- <xsd:element name="title" type="lib:title"/>
- <xsd:element name="genre" type="lib:genre"/>
- <xsd:element name="author" type="lib:author" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="available" type="xsd:boolean" default="true"/>
- <xsd:attribute name="id" type="xsd:ID" use="required"/>
- </xsd:complexType>
-
- <xsd:complexType name="catalog">
- <xsd:sequence>
- <xsd:element name="book" type="lib:book" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:element name="catalog" type="lib:catalog"/>
-
-</xsd:schema>
diff --git a/xsd/examples/cxx/tree/embedded/driver.cxx b/xsd/examples/cxx/tree/embedded/driver.cxx
index 6e31d3b..5ceafa4 100644
--- a/xsd/examples/cxx/tree/embedded/driver.cxx
+++ b/xsd/examples/cxx/tree/embedded/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/embedded/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
@@ -12,11 +11,7 @@
#include <xercesc/validators/common/Grammar.hpp> // xercesc::Grammar
#include <xercesc/framework/Wrapper4InputSource.hpp>
-#if _XERCES_VERSION >= 30000
-# include <xercesc/framework/XMLGrammarPoolImpl.hpp>
-#else
-# include <xercesc/internal/XMLGrammarPoolImpl.hpp>
-#endif
+#include <xercesc/framework/XMLGrammarPoolImpl.hpp>
#include <xsd/cxx/xml/string.hxx>
#include <xsd/cxx/xml/dom/auto-ptr.hxx>
@@ -86,10 +81,6 @@ main (int argc, char* argv[])
DOMImplementation* impl (
DOMImplementationRegistry::getDOMImplementation (ls_id));
-#if _XERCES_VERSION >= 30000
-
- // Xerces-C++ 3.0.0 and later.
- //
xml::dom::auto_ptr<DOMLSParser> parser (
impl->createLSParser (
DOMImplementationLS::MODE_SYNCHRONOUS, 0, mm, gp.get ()));
@@ -150,32 +141,6 @@ main (int argc, char* argv[])
xml::dom::bits::error_handler_proxy<char> ehp (eh);
conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- xml::dom::auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder(
- DOMImplementationLS::MODE_SYNCHRONOUS, 0, mm, gp.get ()));
-
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
- parser->setFeature (XMLUni::fgDOMValidation, true);
- parser->setFeature (XMLUni::fgXercesSchema, true);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- parser->setFeature (XMLUni::fgXercesUseCachedGrammarInParse, true);
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
- tree::error_handler<char> eh;
- xml::dom::bits::error_handler_proxy<char> ehp (eh);
- parser->setErrorHandler (&ehp);
-
-#endif // _XERCES_VERSION >= 30000
-
// Parse XML documents.
//
for (unsigned long i (0); i < 10; ++i)
@@ -191,11 +156,7 @@ main (int argc, char* argv[])
// Parse XML to DOM.
//
-#if _XERCES_VERSION >= 30000
xml_schema::dom::auto_ptr<DOMDocument> doc (parser->parse (&wrap));
-#else
- xml_schema::dom::auto_ptr<DOMDocument> doc (parser->parse (wrap));
-#endif
eh.throw_if_failed<xml_schema::parsing> ();
diff --git a/xsd/examples/cxx/tree/embedded/grammar-input-stream.cxx b/xsd/examples/cxx/tree/embedded/grammar-input-stream.cxx
index 0c94ea6..f3a6d52 100644
--- a/xsd/examples/cxx/tree/embedded/grammar-input-stream.cxx
+++ b/xsd/examples/cxx/tree/embedded/grammar-input-stream.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/embedded/grammar-input-stream.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <cassert>
@@ -16,27 +15,14 @@ grammar_input_stream (const XMLByte* data, std::size_t size)
{
}
-#if _XERCES_VERSION >= 30000
XMLFilePos grammar_input_stream::
curPos () const
{
return static_cast<XMLFilePos> (vpos_);
}
-#else
-unsigned int grammar_input_stream::
-curPos () const
-{
- return static_cast<unsigned int> (vpos_);
-}
-#endif
-#if _XERCES_VERSION >= 30000
XMLSize_t grammar_input_stream::
readBytes (XMLByte* const buf, const XMLSize_t size)
-#else
-unsigned int grammar_input_stream::
-readBytes (XMLByte* const buf, const unsigned int size)
-#endif
{
std::size_t i (0);
@@ -99,17 +85,11 @@ readBytes (XMLByte* const buf, const unsigned int size)
vpos_ += i;
-#if _XERCES_VERSION >= 30000
return static_cast<XMLSize_t> (i);
-#else
- return static_cast<unsigned int> (i);
-#endif
}
-#if _XERCES_VERSION >= 30000
const XMLCh* grammar_input_stream::
getContentType () const
{
return 0;
}
-#endif
diff --git a/xsd/examples/cxx/tree/embedded/grammar-input-stream.hxx b/xsd/examples/cxx/tree/embedded/grammar-input-stream.hxx
index a1b73c6..ed12b7c 100644
--- a/xsd/examples/cxx/tree/embedded/grammar-input-stream.hxx
+++ b/xsd/examples/cxx/tree/embedded/grammar-input-stream.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/embedded/grammar-input-stream.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef GRAMMAR_INPUT_STREAM_HXX
@@ -16,8 +15,6 @@ class grammar_input_stream: public xercesc::BinInputStream
public :
grammar_input_stream (const XMLByte* data, std::size_t size);
-#if _XERCES_VERSION >= 30000
-
virtual XMLFilePos
curPos () const;
@@ -27,16 +24,6 @@ public :
virtual const XMLCh*
getContentType () const;
-#else
-
- virtual unsigned int
- curPos () const;
-
- virtual unsigned int
- readBytes (XMLByte* const buf, const unsigned int size);
-
-#endif
-
private :
const XMLByte* data_;
std::size_t size_;
diff --git a/xsd/examples/cxx/tree/embedded/library.xml b/xsd/examples/cxx/tree/embedded/library.xml
index cb8faf3..f57c042 100644
--- a/xsd/examples/cxx/tree/embedded/library.xml
+++ b/xsd/examples/cxx/tree/embedded/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/embedded/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/embedded/library.xsd b/xsd/examples/cxx/tree/embedded/library.xsd
index f1b4dac..6a9ad01 100644
--- a/xsd/examples/cxx/tree/embedded/library.xsd
+++ b/xsd/examples/cxx/tree/embedded/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/embedded/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/embedded/makefile b/xsd/examples/cxx/tree/embedded/makefile
index 0550bd5..d0fdc33 100644
--- a/xsd/examples/cxx/tree/embedded/makefile
+++ b/xsd/examples/cxx/tree/embedded/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/embedded/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -33,14 +32,13 @@ $(call import,\
$(driver): $(obj) $(xerces_c.l)
$(xsdbin): $(obj2) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(obj2) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options :=
$(gen): $(out_root)/xsd/xsd
genf += $(xsd:.xsd=-schema.hxx) $(xsd:.xsd=-schema.cxx)
@@ -50,7 +48,7 @@ $(out_base)/%: xsdbin := $(xsdbin)
$(out_base)/%-schema.hxx $(out_base)/%-schema.cxx: $(src_base)/%.xsd $(xsdbin)
$(call message,xsdbin $<,$(xsdbin) --output-dir $(out_base) $<)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -83,10 +81,11 @@ $(dist-common):
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
-
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ # Note: solution files are not automatically generated.
# Clean.
#
@@ -115,9 +114,10 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/install.make)
+
# Dependencies.
#
$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/embedded/xsdbin.cxx b/xsd/examples/cxx/tree/embedded/xsdbin.cxx
index 53e2533..656b830 100644
--- a/xsd/examples/cxx/tree/embedded/xsdbin.cxx
+++ b/xsd/examples/cxx/tree/embedded/xsdbin.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/embedded/xsdbin.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
// This program loads the XML Schema file(s) and converts them to
@@ -28,11 +27,7 @@
#include <xercesc/sax2/SAX2XMLReader.hpp>
#include <xercesc/sax2/XMLReaderFactory.hpp>
-#if _XERCES_VERSION >= 30000
-# include <xercesc/framework/XMLGrammarPoolImpl.hpp>
-#else
-# include <xercesc/internal/XMLGrammarPoolImpl.hpp>
-#endif
+#include <xercesc/framework/XMLGrammarPoolImpl.hpp>
using namespace std;
using namespace xercesc;
@@ -88,10 +83,13 @@ main (int argc, char* argv[])
string base;
string outdir;
- class usage {};
+ struct usage
+ {
+ usage (bool e = true): error (e) {}
+ bool error;
+ };
int argi (1);
- bool help (false);
bool multi_import (true);
bool verbose (false);
@@ -102,10 +100,7 @@ main (int argc, char* argv[])
string a (argv[argi]);
if (a == "--help")
- {
- help = true;
- throw usage ();
- }
+ throw usage (false);
else if (a == "--verbose")
{
verbose = true;
@@ -154,20 +149,22 @@ main (int argc, char* argv[])
base = argv[argi];
}
- catch (usage const&)
+ catch (usage const& e)
{
- cerr << "Usage: " << argv[0] << " [options] <files>" << endl
- << "Options:" << endl
- << " --help Print usage information and exit." << endl
- << " --verbose Print progress information." << endl
- << " --output-dir <dir> Write generated files to <dir>." << endl
- << " --hxx-suffix <sfx> Header file suffix instead of '-schema.hxx'." << endl
- << " --cxx-suffix <sfx> Source file suffix instead of '-schema.cxx'." << endl
- << " --array-name <name> Binary data array name." << endl
- << " --disable-multi-import Disable multiple import support." << endl
- << endl;
-
- return help ? 0 : 1;
+ ostream& o (e.error ? cerr : cout);
+
+ o << "Usage: " << argv[0] << " [options] <files>" << endl
+ << "Options:" << endl
+ << " --help Print usage information and exit." << endl
+ << " --verbose Print progress information." << endl
+ << " --output-dir <dir> Write generated files to <dir>." << endl
+ << " --hxx-suffix <sfx> Header file suffix instead of '-schema.hxx'." << endl
+ << " --cxx-suffix <sfx> Source file suffix instead of '-schema.cxx'." << endl
+ << " --array-name <name> Binary data array name." << endl
+ << " --disable-multi-import Disable multiple import support." << endl
+ << endl;
+
+ return e.error ? 0 : 1;
}
XMLPlatformUtils::Initialize ();
@@ -488,17 +485,9 @@ handle (const SAXParseException& e, severity s)
char* id (XMLString::transcode (xid));
char* msg (XMLString::transcode (e.getMessage ()));
- cerr << id << ":";
-
-#if _XERCES_VERSION >= 30000
- cerr << e.getLineNumber () << ":" << e.getColumnNumber () << " ";
-#else
- XMLSSize_t l (e.getLineNumber ());
- XMLSSize_t c (e.getColumnNumber ());
- cerr << (l == -1 ? 0 : l) << ":" << (c == -1 ? 0 : c) << " ";
-#endif
-
- cerr << (s == s_warning ? "warning: " : "error: ") << msg << endl;
+ cerr << id << ":"
+ << e.getLineNumber () << ":" << e.getColumnNumber () << " "
+ << (s == s_warning ? "warning: " : "error: ") << msg << endl;
XMLString::release (&id);
XMLString::release (&msg);
diff --git a/xsd/examples/cxx/tree/hello/driver.cxx b/xsd/examples/cxx/tree/hello/driver.cxx
index 6ea6823..b6629b3 100644
--- a/xsd/examples/cxx/tree/hello/driver.cxx
+++ b/xsd/examples/cxx/tree/hello/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/hello/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/hello/hello.xml b/xsd/examples/cxx/tree/hello/hello.xml
index bcde610..8b25b5b 100644
--- a/xsd/examples/cxx/tree/hello/hello.xml
+++ b/xsd/examples/cxx/tree/hello/hello.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/hello/hello.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/hello/hello.xsd b/xsd/examples/cxx/tree/hello/hello.xsd
index e8f5147..8326ff0 100644
--- a/xsd/examples/cxx/tree/hello/hello.xsd
+++ b/xsd/examples/cxx/tree/hello/hello.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/hello/hello.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/hello/makefile b/xsd/examples/cxx/tree/hello/makefile
index b2618ca..2657fc6 100644
--- a/xsd/examples/cxx/tree/hello/makefile
+++ b/xsd/examples/cxx/tree/hello/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/hello/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,16 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options :=
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -68,7 +66,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/library/driver.cxx b/xsd/examples/cxx/tree/library/driver.cxx
index ae68b87..5913ddf 100644
--- a/xsd/examples/cxx/tree/library/driver.cxx
+++ b/xsd/examples/cxx/tree/library/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/library/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/library/library.xml b/xsd/examples/cxx/tree/library/library.xml
index e9acb75..ca4ca9c 100644
--- a/xsd/examples/cxx/tree/library/library.xml
+++ b/xsd/examples/cxx/tree/library/library.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/library/library.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/library/library.xsd b/xsd/examples/cxx/tree/library/library.xsd
index baf2221..b183efc 100644
--- a/xsd/examples/cxx/tree/library/library.xsd
+++ b/xsd/examples/cxx/tree/library/library.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/library/library.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/library/makefile b/xsd/examples/cxx/tree/library/makefile
index 6fdd942..3db03de 100644
--- a/xsd/examples/cxx/tree/library/makefile
+++ b/xsd/examples/cxx/tree/library/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/library/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,18 +28,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-inline --generate-ostream \
+$(gen): xsd_options += --generate-inline --generate-ostream \
--generate-serialization
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -69,7 +68,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/makefile b/xsd/examples/cxx/tree/makefile
index 35c6f03..172195a 100644
--- a/xsd/examples/cxx/tree/makefile
+++ b/xsd/examples/cxx/tree/makefile
@@ -1,26 +1,20 @@
# file : examples/cxx/tree/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
all_examples := binary caching embedded custom hello library messaging \
-mixed multiroot performance polymorphism streaming wildcard compression \
-dbxml xpath
-
+mixed multiroot order performance polymorphism streaming wildcard \
+compression xpath
build_examples := binary caching embedded custom hello library messaging \
-mixed multiroot performance polymorphism streaming wildcard
+mixed multiroot order performance polymorphism streaming wildcard
ifeq ($(xsd_with_zlib),y)
build_examples += compression
endif
-ifeq ($(xsd_with_dbxml),y)
-build_examples += dbxml
-endif
-
ifeq ($(xsd_with_xqilla),y)
build_examples += xpath
endif
@@ -45,15 +39,29 @@ $(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(all_examples)))
$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_examples)))
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): export dirs := $(shell find $(src_base) -type d -exec test -f {}/driver.cxx ';' -printf '%P ')
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_examples)))
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,tree-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,tree-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,tree-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,tree-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,tree-vc12.sln)
+ $(call meta-vctest,tree-vc8.sln,$(src_root)/dist/examples/test.bat,test.bat)
# Clean.
#
$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(build_examples)))
$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+$(call include,$(bld_root)/meta/vctest.make)
ifneq ($(filter $(MAKECMDGOALS),dist dist-win install),)
$(foreach e,$(all_examples),$(call import,$(src_base)/$e/makefile))
diff --git a/xsd/examples/cxx/tree/messaging/balance.xml b/xsd/examples/cxx/tree/messaging/balance.xml
index 57eeaed..83b9692 100644
--- a/xsd/examples/cxx/tree/messaging/balance.xml
+++ b/xsd/examples/cxx/tree/messaging/balance.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/messaging/balance.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/messaging/deposit.xml b/xsd/examples/cxx/tree/messaging/deposit.xml
index 9da3c59..c59153d 100644
--- a/xsd/examples/cxx/tree/messaging/deposit.xml
+++ b/xsd/examples/cxx/tree/messaging/deposit.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/messaging/deposit.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/messaging/dom-parse.cxx b/xsd/examples/cxx/tree/messaging/dom-parse.cxx
index e4bc6cc..61f9f4a 100644
--- a/xsd/examples/cxx/tree/messaging/dom-parse.cxx
+++ b/xsd/examples/cxx/tree/messaging/dom-parse.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/messaging/dom-parse.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "dom-parse.hxx"
@@ -30,10 +29,6 @@ parse (std::istream& is, const std::string& id, bool validate)
DOMImplementation* impl (
DOMImplementationRegistry::getDOMImplementation (ls_id));
-#if _XERCES_VERSION >= 30000
-
- // Xerces-C++ 3.0.0 and later.
- //
xml::dom::auto_ptr<DOMLSParser> parser (
impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
@@ -85,39 +80,12 @@ parse (std::istream& is, const std::string& id, bool validate)
xml::dom::bits::error_handler_proxy<char> ehp (eh);
conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- xml::dom::auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
- parser->setFeature (XMLUni::fgDOMValidation, validate);
- parser->setFeature (XMLUni::fgXercesSchema, validate);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
- tree::error_handler<char> eh;
- xml::dom::bits::error_handler_proxy<char> ehp (eh);
- parser->setErrorHandler (&ehp);
-
-#endif // _XERCES_VERSION >= 30000
-
// Prepare input stream.
//
xml::sax::std_input_source isrc (is, id);
Wrapper4InputSource wrap (&isrc, false);
-#if _XERCES_VERSION >= 30000
xml::dom::auto_ptr<DOMDocument> doc (parser->parse (&wrap));
-#else
- xml::dom::auto_ptr<DOMDocument> doc (parser->parse (wrap));
-#endif
eh.throw_if_failed<tree::parsing<char> > ();
diff --git a/xsd/examples/cxx/tree/messaging/dom-parse.hxx b/xsd/examples/cxx/tree/messaging/dom-parse.hxx
index 640b28a..6eccacd 100644
--- a/xsd/examples/cxx/tree/messaging/dom-parse.hxx
+++ b/xsd/examples/cxx/tree/messaging/dom-parse.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/messaging/dom-parse.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef DOM_PARSE
diff --git a/xsd/examples/cxx/tree/messaging/dom-serialize.cxx b/xsd/examples/cxx/tree/messaging/dom-serialize.cxx
index c0f4311..dbf3370 100644
--- a/xsd/examples/cxx/tree/messaging/dom-serialize.cxx
+++ b/xsd/examples/cxx/tree/messaging/dom-serialize.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/messaging/dom-serialize.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "dom-serialize.hxx"
@@ -38,8 +37,6 @@ serialize (std::ostream& os,
xml::dom::ostream_format_target oft (os);
-#if _XERCES_VERSION >= 30000
-
// Create a DOMSerializer.
//
xml::dom::auto_ptr<DOMLSSerializer> writer (
@@ -55,6 +52,7 @@ serialize (std::ostream& os,
//
conf->setParameter (XMLUni::fgDOMWRTDiscardDefaultContent, true);
conf->setParameter (XMLUni::fgDOMWRTFormatPrettyPrint, true);
+ conf->setParameter (XMLUni::fgDOMWRTXercesPrettyPrint, false);
xml::dom::auto_ptr<DOMLSOutput> out (impl->createLSOutput ());
out->setEncoding (xml::string (encoding).c_str ());
@@ -62,28 +60,5 @@ serialize (std::ostream& os,
writer->write (&doc, out.get ());
-#else
-
- // Create a DOMWriter.
- //
- xml::dom::auto_ptr<DOMWriter> writer (impl->createDOMWriter ());
-
- // Set error handler.
- //
- writer->setErrorHandler (&ehp);
-
- // Set encoding.
- //
- writer->setEncoding(xml::string (encoding).c_str ());
-
- // Set some generally nice features.
- //
- writer->setFeature (XMLUni::fgDOMWRTDiscardDefaultContent, true);
- writer->setFeature (XMLUni::fgDOMWRTFormatPrettyPrint, true);
-
- writer->writeNode (&oft, doc);
-
-#endif
-
eh.throw_if_failed<tree::serialization<char> > ();
}
diff --git a/xsd/examples/cxx/tree/messaging/dom-serialize.hxx b/xsd/examples/cxx/tree/messaging/dom-serialize.hxx
index 1a7e855..f80e22b 100644
--- a/xsd/examples/cxx/tree/messaging/dom-serialize.hxx
+++ b/xsd/examples/cxx/tree/messaging/dom-serialize.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/messaging/dom-serialize.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef DOM_SERIALIZE
diff --git a/xsd/examples/cxx/tree/messaging/driver.cxx b/xsd/examples/cxx/tree/messaging/driver.cxx
index 4c36aa4..095e2cd 100644
--- a/xsd/examples/cxx/tree/messaging/driver.cxx
+++ b/xsd/examples/cxx/tree/messaging/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/messaging/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/messaging/makefile b/xsd/examples/cxx/tree/messaging/makefile
index b7e0d0a..309147a 100644
--- a/xsd/examples/cxx/tree/messaging/makefile
+++ b/xsd/examples/cxx/tree/messaging/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/messaging/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,7 +28,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -37,12 +36,12 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --root-element-all \
---generate-element-type --generate-element-map --generate-serialization
+$(gen): xsd_options += --root-element-all --generate-element-type \
+--generate-element-map --generate-serialization
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -83,7 +82,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/messaging/protocol.xsd b/xsd/examples/cxx/tree/messaging/protocol.xsd
index 3461133..b371ba7 100644
--- a/xsd/examples/cxx/tree/messaging/protocol.xsd
+++ b/xsd/examples/cxx/tree/messaging/protocol.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/messaging/protocol.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/messaging/withdraw.xml b/xsd/examples/cxx/tree/messaging/withdraw.xml
index 16a7440..1f309f3 100644
--- a/xsd/examples/cxx/tree/messaging/withdraw.xml
+++ b/xsd/examples/cxx/tree/messaging/withdraw.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/messaging/withdraw.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/mixed/README b/xsd/examples/cxx/tree/mixed/README
index 9ab3309..fc23faa 100644
--- a/xsd/examples/cxx/tree/mixed/README
+++ b/xsd/examples/cxx/tree/mixed/README
@@ -1,8 +1,12 @@
This example shows how to access the underlying DOM nodes in the
C++/Tree mapping in order to handle raw, "type-less content" such
as mixed content models, anyType/anySimpleType, and any/anyAttribute.
+
+For an alternative (and recommended) approach that employs ordered
+types see the order/mixed example.
+
For an alternative approach that employes type customization see
-examples in the custom/ directory, in particular, custom/mixed and
+examples in the custom/ directory, in particular, custom/mixed and
custom/wildcard.
In this example we use mixed content model to describe text with
diff --git a/xsd/examples/cxx/tree/mixed/driver.cxx b/xsd/examples/cxx/tree/mixed/driver.cxx
index d905421..17c3b55 100644
--- a/xsd/examples/cxx/tree/mixed/driver.cxx
+++ b/xsd/examples/cxx/tree/mixed/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/mixed/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
@@ -47,10 +46,12 @@ main (int argc, char* argv[])
xml_schema::flags::keep_dom |
xml_schema::flags::dont_initialize));
- // Note that DOM association is preserved in copies but only if they
- // are "complete", i.e., made from the root of the tree.
+ // The DOM association can be recreated in a copy (the underlying
+ // DOM document is cloned) if explicitly requested with the keep_dom
+ // flag and only if this copy is "complete", i.e., made from the root
+ // of the tree.
//
- text copy (*t);
+ text copy (*t, xml_schema::flags::keep_dom);
// Print text.
//
diff --git a/xsd/examples/cxx/tree/mixed/makefile b/xsd/examples/cxx/tree/mixed/makefile
index 6316ec0..7c001f0 100644
--- a/xsd/examples/cxx/tree/mixed/makefile
+++ b/xsd/examples/cxx/tree/mixed/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/mixed/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,16 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options :=
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -69,7 +67,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/mixed/text.xml b/xsd/examples/cxx/tree/mixed/text.xml
index 69abe8f..21e32af 100644
--- a/xsd/examples/cxx/tree/mixed/text.xml
+++ b/xsd/examples/cxx/tree/mixed/text.xml
@@ -2,8 +2,7 @@
<!--
-file : examples/cxx/tree/text/text.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
+file : examples/cxx/tree/mixed/text.xml
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/mixed/text.xsd b/xsd/examples/cxx/tree/mixed/text.xsd
index 8aa8280..9777f8a 100644
--- a/xsd/examples/cxx/tree/mixed/text.xsd
+++ b/xsd/examples/cxx/tree/mixed/text.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/mixed/text.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/multiroot/balance.xml b/xsd/examples/cxx/tree/multiroot/balance.xml
index 055546a..68b434a 100644
--- a/xsd/examples/cxx/tree/multiroot/balance.xml
+++ b/xsd/examples/cxx/tree/multiroot/balance.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/multiroot/balance.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/multiroot/deposit.xml b/xsd/examples/cxx/tree/multiroot/deposit.xml
index 3207eee..4d9449a 100644
--- a/xsd/examples/cxx/tree/multiroot/deposit.xml
+++ b/xsd/examples/cxx/tree/multiroot/deposit.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/multiroot/deposit.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/multiroot/dom-parse.cxx b/xsd/examples/cxx/tree/multiroot/dom-parse.cxx
index 2b57be0..98fc82e 100644
--- a/xsd/examples/cxx/tree/multiroot/dom-parse.cxx
+++ b/xsd/examples/cxx/tree/multiroot/dom-parse.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/multiroot/dom-parse.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "dom-parse.hxx"
@@ -30,10 +29,6 @@ parse (std::istream& is, const std::string& id, bool validate)
DOMImplementation* impl (
DOMImplementationRegistry::getDOMImplementation (ls_id));
-#if _XERCES_VERSION >= 30000
-
- // Xerces-C++ 3.0.0 and later.
- //
xml::dom::auto_ptr<DOMLSParser> parser (
impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
@@ -85,39 +80,12 @@ parse (std::istream& is, const std::string& id, bool validate)
xml::dom::bits::error_handler_proxy<char> ehp (eh);
conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- xml::dom::auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
- parser->setFeature (XMLUni::fgDOMValidation, validate);
- parser->setFeature (XMLUni::fgXercesSchema, validate);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
- tree::error_handler<char> eh;
- xml::dom::bits::error_handler_proxy<char> ehp (eh);
- parser->setErrorHandler (&ehp);
-
-#endif // _XERCES_VERSION >= 30000
-
// Prepare input stream.
//
xml::sax::std_input_source isrc (is, id);
Wrapper4InputSource wrap (&isrc, false);
-#if _XERCES_VERSION >= 30000
xml::dom::auto_ptr<DOMDocument> doc (parser->parse (&wrap));
-#else
- xml::dom::auto_ptr<DOMDocument> doc (parser->parse (wrap));
-#endif
eh.throw_if_failed<tree::parsing<char> > ();
diff --git a/xsd/examples/cxx/tree/multiroot/dom-parse.hxx b/xsd/examples/cxx/tree/multiroot/dom-parse.hxx
index c3bbf71..c2ab0fb 100644
--- a/xsd/examples/cxx/tree/multiroot/dom-parse.hxx
+++ b/xsd/examples/cxx/tree/multiroot/dom-parse.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/multiroot/dom-parse.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef DOM_PARSE
diff --git a/xsd/examples/cxx/tree/multiroot/driver.cxx b/xsd/examples/cxx/tree/multiroot/driver.cxx
index cd5be34..9497ef1 100644
--- a/xsd/examples/cxx/tree/multiroot/driver.cxx
+++ b/xsd/examples/cxx/tree/multiroot/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/multiroot/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/multiroot/makefile b/xsd/examples/cxx/tree/multiroot/makefile
index ea31976..4d6c907 100644
--- a/xsd/examples/cxx/tree/multiroot/makefile
+++ b/xsd/examples/cxx/tree/multiroot/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/multiroot/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --root-element-all
+$(gen): xsd_options += --root-element-all
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -76,7 +75,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/multiroot/protocol.xsd b/xsd/examples/cxx/tree/multiroot/protocol.xsd
index 28e8478..1121824 100644
--- a/xsd/examples/cxx/tree/multiroot/protocol.xsd
+++ b/xsd/examples/cxx/tree/multiroot/protocol.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/multiroot/protocol.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/multiroot/withdraw.xml b/xsd/examples/cxx/tree/multiroot/withdraw.xml
index 4df736f..8f1dc54 100644
--- a/xsd/examples/cxx/tree/multiroot/withdraw.xml
+++ b/xsd/examples/cxx/tree/multiroot/withdraw.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/multiroot/withdraw.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/order/README b/xsd/examples/cxx/tree/order/README
new file mode 100644
index 0000000..7125a2d
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/README
@@ -0,0 +1,11 @@
+This directory contains a number of examples that show how to use ordered
+types to capture and maintain content order. The following list gives an
+overview of each example:
+
+element
+ Shows how to use ordered types to capture and maintain element order,
+ including element wildcards.
+
+mixed
+ Shows how to use ordered types to capture mixed content text and to
+ maintain order information between elements and text.
diff --git a/xsd/examples/cxx/tree/order/element/README b/xsd/examples/cxx/tree/order/element/README
new file mode 100644
index 0000000..19f2381
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/element/README
@@ -0,0 +1,35 @@
+This example shows how to use ordered types to capture and maintain
+element order, including element wildcards.
+
+The example consists of the following files:
+
+transactions.xsd
+ XML Schema which describes various bank transactions. A batch of
+ transactions can contain any number of different transactions in
+ any order but the order of transaction in the batch is significant.
+
+library.xml
+ Sample XML instance document.
+
+transactions.hxx
+transactions.cxx
+ C++ types that represent the given vocabulary as well as a set of
+ parsing and serialization functions. These are generated by XSD
+ from transactions.xsd. Note that the --ordered-type option is
+ used to indicate to the XSD compiler that the batch type is
+ ordered. We also use the --generate-wildcard option to enable
+ wildcard support. An element wildcard is used in the batch to
+ allow transaction extensions.
+
+driver.cxx
+ Driver for the example. It first calls one of the parsing functions
+ that constructs the object model from the input XML file. It then
+ iterates over transactions in the batch using the content order
+ sequence. The driver then performs various modifications of the
+ object model while showing how to maintain the content order.
+ Finally, it saves the modified transaction batch back to XML to
+ verify that the content order is preserved in the output document.
+
+To run the example on the sample XML instance document simply execute:
+
+$ ./driver transactions.xml
diff --git a/xsd/examples/cxx/tree/order/element/driver.cxx b/xsd/examples/cxx/tree/order/element/driver.cxx
new file mode 100644
index 0000000..0ea6d6f
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/element/driver.cxx
@@ -0,0 +1,147 @@
+// file : examples/cxx/tree/order/element/driver.cxx
+// copyright : not copyrighted - public domain
+
+#include <memory> // std::auto_ptr
+#include <cassert>
+#include <iostream>
+
+#include <xercesc/dom/DOM.hpp>
+#include <xercesc/util/PlatformUtils.hpp>
+
+#include "transactions.hxx"
+
+// The following string class keeps us sane when working with Xerces.
+// Include it after the generated header in order to get only char or
+// wchar_t version depending on how you compiled your schemas.
+//
+#include <xsd/cxx/xml/string.hxx>
+
+using std::cerr;
+using std::endl;
+
+int
+main (int argc, char* argv[])
+{
+ if (argc != 2)
+ {
+ cerr << "usage: " << argv[0] << " transactions.xml" << endl;
+ return 1;
+ }
+
+ using namespace xercesc;
+
+ int r (0);
+
+ // The Xerces-C++ DOM objects that will be used to store the
+ // content matched by the wildcard "out-lives" the call to the
+ // parsing function. Therefore we need to initialize the
+ // Xerces-C++ runtime ourselves.
+ //
+ XMLPlatformUtils::Initialize ();
+
+ try
+ {
+ using namespace transactions;
+
+ // Parse the batch.
+ //
+ std::auto_ptr<batch> b (
+ batch_ (argv[1], xml_schema::flags::dont_initialize));
+
+ // Print what we've got in content order.
+ //
+ for (batch::content_order_const_iterator i (b->content_order ().begin ());
+ i != b->content_order ().end ();
+ ++i)
+ {
+ switch (i->id)
+ {
+ case batch::balance_id:
+ {
+ const balance& t (b->balance ()[i->index]);
+ cerr << t.account () << " balance" << endl;
+ break;
+ }
+ case batch::withdraw_id:
+ {
+ const withdraw& t (b->withdraw ()[i->index]);
+ cerr << t.account () << " withdraw " << t.amount () << endl;
+ break;
+ }
+ case batch::deposit_id:
+ {
+ const deposit& t (b->deposit ()[i->index]);
+ cerr << t.account () << " deposit " << t.amount () << endl;
+ break;
+ }
+ case batch::any_id:
+ {
+ namespace xml = xsd::cxx::xml;
+
+ const DOMElement& e (b->any ()[i->index]);
+ cerr << xml::transcode<char> (e.getLocalName ()) << endl;
+ break;
+ }
+ default:
+ {
+ assert (false); // Unknown content id.
+ }
+ }
+ }
+
+ cerr << endl;
+
+ // Modify the transaction batch. First remove the last transaction.
+ // Note that we have to update both the content itself and content
+ // order sequences.
+ //
+ batch::content_order_sequence& co (b->content_order ());
+
+ co.pop_back ();
+ b->withdraw ().pop_back ();
+
+ // Now add a few more transactions. Again we have to add both the
+ // content and its ordering. The order information consists of the
+ // content id and, in case of a sequence, the index.
+ //
+ b->deposit ().push_back (deposit (123456789, 100000));
+ co.push_back (
+ batch::content_order_type (
+ batch::deposit_id, b->deposit ().size () - 1));
+
+ // The next transaction we add at the beginning of the batch.
+ //
+ b->balance ().push_back (balance (123456789));
+ co.insert (co.begin (),
+ batch::content_order_type (
+ batch::balance_id, b->balance ().size () - 1));
+
+ // Note also that when we merely modify the content of one
+ // of the elements in place, we don't need to update its
+ // order. For example:
+ //
+ b->deposit ()[0].amount (2000000);
+
+ // Serialize the modified transaction batch back to XML.
+ //
+ xml_schema::namespace_infomap map;
+
+ map[""].name = "http://www.codesynthesis.com/transactions";
+ map[""].schema = "transactions.xsd";
+ map["te"].name = "http://www.codesynthesis.com/transactions-extras";
+
+ batch_ (std::cout,
+ *b,
+ map,
+ "UTF-8",
+ xml_schema::flags::dont_initialize);
+ }
+ catch (const xml_schema::exception& e)
+ {
+ cerr << e << endl;
+ r = 1;
+ }
+
+ XMLPlatformUtils::Terminate ();
+ return r;
+}
diff --git a/xsd/examples/cxx/tree/order/element/makefile b/xsd/examples/cxx/tree/order/element/makefile
new file mode 100644
index 0000000..272c17f
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/element/makefile
@@ -0,0 +1,100 @@
+# file : examples/cxx/tree/order/element/makefile
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
+
+xsd := transactions.xsd
+cxx := driver.cxx
+
+obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o))
+dep := $(obj:.o=.o.d)
+
+driver := $(out_base)/driver
+install := $(out_base)/.install
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
+
+# Import.
+#
+$(call import,\
+ $(scf_root)/import/libxerces-c/stub.make,\
+ l: xerces_c.l,cpp-options: xerces_c.l.cpp-options)
+
+# Build.
+#
+$(driver): $(obj) $(xerces_c.l) -lnsl
+
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
+$(obj) $(dep): $(xerces_c.l.cpp-options)
+
+genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
+gen := $(addprefix $(out_base)/,$(genf))
+
+$(gen): xsd := $(out_root)/xsd/xsd
+$(gen): xsd_options += --generate-serialization --generate-wildcard \
+--ordered-type batch
+$(gen): $(out_root)/xsd/xsd
+
+$(call include-dep,$(dep),$(obj),$(gen))
+
+# Convenience alias for default target.
+#
+$(out_base)/: $(driver)
+
+
+# Install & Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+$(install) $(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base))
+
+$(install):
+ $(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README)
+ $(call install-data,$(src_base)/driver.cxx,$(install_doc_dir)/xsd/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/transactions.xsd,$(install_doc_dir)/xsd/$(path)/transactions.xsd)
+ $(call install-data,$(src_base)/transactions.xml,$(install_doc_dir)/xsd/$(path)/transactions.xml)
+
+$(dist-common):
+ $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/transactions.xsd,$(dist_prefix)/$(path)/transactions.xsd)
+ $(call install-data,$(src_base)/transactions.xml,$(dist_prefix)/$(path)/transactions.xml)
+
+$(dist): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+
+# Clean.
+#
+$(clean): $(driver).o.clean \
+ $(addsuffix .cxx.clean,$(obj)) \
+ $(addsuffix .cxx.clean,$(dep)) \
+ $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean))
+
+# Generated .gitignore.
+#
+ifeq ($(out_base),$(src_base))
+$(gen): | $(out_base)/.gitignore
+$(driver): | $(out_base)/.gitignore
+
+$(out_base)/.gitignore: files := driver $(genf)
+$(clean): $(out_base)/.gitignore.clean
+
+$(call include,$(bld_root)/git/gitignore.make)
+endif
+
+# How to.
+#
+$(call include,$(bld_root)/cxx/o-e.make)
+$(call include,$(bld_root)/cxx/cxx-o.make)
+$(call include,$(bld_root)/cxx/cxx-d.make)
+$(call include,$(bld_root)/install.make)
+$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+
+# Dependencies.
+#
+$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/order/element/transactions.xml b/xsd/examples/cxx/tree/order/element/transactions.xml
new file mode 100644
index 0000000..4c317c2
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/element/transactions.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+
+<!--
+
+file : examples/cxx/tree/order/element/transactions.xml
+copyright : not copyrighted - public domain
+
+-->
+
+<batch xmlns="http://www.codesynthesis.com/transactions"
+ xmlns:te="http://www.codesynthesis.com/transactions-extras"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.codesynthesis.com/transactions transactions.xsd">
+ <deposit>
+ <account>123456789</account>
+ <amount>1000000</amount>
+ </deposit>
+
+ <balance>
+ <account>123456789</account>
+ </balance>
+
+ <te:block>
+ <account>123456789</account>
+ <amount>500000</amount>
+ </te:block>
+
+ <withdraw>
+ <account>123456789</account>
+ <amount>500000</amount>
+ </withdraw>
+</batch>
diff --git a/xsd/examples/cxx/tree/order/element/transactions.xsd b/xsd/examples/cxx/tree/order/element/transactions.xsd
new file mode 100644
index 0000000..053aac4
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/element/transactions.xsd
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+
+<!--
+
+file : examples/cxx/tree/order/element/transactions.xsd
+copyright : not copyrighted - public domain
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:t="http://www.codesynthesis.com/transactions"
+ targetNamespace="http://www.codesynthesis.com/transactions"
+ elementFormDefault="qualified">
+
+ <xsd:complexType name="transaction">
+ <xsd:sequence>
+ <xsd:element name="account" type="xsd:unsignedInt"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="balance">
+ <xsd:complexContent>
+ <xsd:extension base="t:transaction"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="withdraw">
+ <xsd:complexContent>
+ <xsd:extension base="t:transaction">
+ <xsd:sequence>
+ <xsd:element name="amount" type="xsd:unsignedInt"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="deposit">
+ <xsd:complexContent>
+ <xsd:extension base="t:transaction">
+ <xsd:sequence>
+ <xsd:element name="amount" type="xsd:unsignedInt"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="batch">
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element name="balance" type="t:balance"/>
+ <xsd:element name="withdraw" type="t:withdraw"/>
+ <xsd:element name="deposit" type="t:deposit"/>
+ <xsd:any namespace="##other" processContents="lax"/>
+ </xsd:choice>
+ </xsd:complexType>
+
+ <xsd:element name="batch" type="t:batch"/>
+
+</xsd:schema>
diff --git a/xsd/examples/cxx/tree/order/makefile b/xsd/examples/cxx/tree/order/makefile
new file mode 100644
index 0000000..2424e2b
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/makefile
@@ -0,0 +1,44 @@
+# file : examples/cxx/tree/order/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
+
+all_examples := element mixed
+build_examples := element mixed
+
+default := $(out_base)/
+install := $(out_base)/.install
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
+
+# Build.
+#
+$(default): $(addprefix $(out_base)/,$(addsuffix /,$(build_examples)))
+
+# Install & Dist.
+#
+$(install) $(dist) $(dist-win): path := $(subst $(src_root)/,,$(src_base))
+
+$(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(all_examples)))
+ $(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README)
+
+$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_examples)))
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_examples)))
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+
+# Clean.
+#
+$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(build_examples)))
+
+$(call include,$(bld_root)/install.make)
+
+ifneq ($(filter $(MAKECMDGOALS),dist dist-win install),)
+$(foreach e,$(all_examples),$(call import,$(src_base)/$e/makefile))
+else
+$(foreach e,$(build_examples),$(call import,$(src_base)/$e/makefile))
+endif
diff --git a/xsd/examples/cxx/tree/order/mixed/README b/xsd/examples/cxx/tree/order/mixed/README
new file mode 100644
index 0000000..e66c1ad
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/mixed/README
@@ -0,0 +1,45 @@
+This example shows how to use ordered types to capture mixed content
+text and to maintain order information between elements and text.
+
+In this example we use mixed content model to describe text with
+embedded links in the form:
+
+ This paragraph talks about <a href="uri">time</a>.
+
+The example transforms such text into plain text with references in
+the form:
+
+ This paragraph talks about time[uri].
+
+It also saves the modified text back to XML in order to verify the
+element and text order.
+
+The example consists of the following files:
+
+text.xsd
+ XML Schema which describes "text with links" instance documents.
+
+text.xml
+ Sample XML instance document.
+
+text.hxx
+text.cxx
+ C++ types that represent the given vocabulary as well as a set of
+ parsing and serialization functions. These are generated by XSD
+ from text.xsd. Note that the --ordered-type-mixed option is used
+ to indicate to the XSD compiler that all types with mixed content
+ should be automatically treated as ordered.
+
+driver.cxx
+ Driver for the example. It first calls one of the parsing functions
+ that constructs the object model from the input XML file. It then
+ iterates over the text and elements in the content order to convert
+ the document to its plain text representation. The driver then adds
+ another paragraph of text and a link to the object model while showing
+ how to maintain the content order. Finally, it saves the modified
+ text back to XML to verify that the content order is preserved in
+ the output document.
+
+To run the example on the sample XML instance document simply execute:
+
+$ ./driver text.xml
diff --git a/xsd/examples/cxx/tree/order/mixed/driver.cxx b/xsd/examples/cxx/tree/order/mixed/driver.cxx
new file mode 100644
index 0000000..9606b67
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/mixed/driver.cxx
@@ -0,0 +1,89 @@
+// file : examples/cxx/tree/order/mixed/driver.cxx
+// copyright : not copyrighted - public domain
+
+#include <memory> // std::auto_ptr
+#include <cassert>
+#include <iostream>
+
+#include "text.hxx"
+
+using std::cerr;
+using std::endl;
+
+int
+main (int argc, char* argv[])
+{
+ if (argc != 2)
+ {
+ cerr << "usage: " << argv[0] << " text.xml" << endl;
+ return 1;
+ }
+
+ try
+ {
+ std::auto_ptr<text> t (text_ (argv[1]));
+
+ // Print what we've got in content order.
+ //
+ for (text::content_order_const_iterator i (t->content_order ().begin ());
+ i != t->content_order ().end ();
+ ++i)
+ {
+ switch (i->id)
+ {
+ case text::a_id:
+ {
+ const anchor& a (t->a ()[i->index]);
+ cerr << a << "[" << a.href () << "]";
+ break;
+ }
+ case text::text_content_id:
+ {
+ const xml_schema::string& s (t->text_content ()[i->index]);
+ cerr << s;
+ break;
+ }
+ default:
+ {
+ assert (false); // Unknown content id.
+ }
+ }
+ }
+
+ cerr << endl;
+
+ // Modify the document. Note that we have to update both the content
+ // itself and content order sequences.
+ //
+ typedef text::content_order_type order_type;
+
+ text::content_order_sequence& co (t->content_order ());
+ text::text_content_sequence& tc (t->text_content ());
+
+ tc.push_back ("The last paragraph doesn't talk about ");
+ co.push_back (order_type (text::text_content_id, tc.size () - 1));
+
+ t->a ().push_back (anchor ("anything", "http://en.wikipedia.org"));
+ co.push_back (order_type (text::a_id, t->a ().size () - 1));
+
+ tc.push_back (" in particular.\n\n");
+ co.push_back (order_type (text::text_content_id, tc.size () - 1));
+
+ // Serialize the modified document back to XML.
+ //
+ xml_schema::namespace_infomap map;
+
+ map[""].schema = "text.xsd";
+
+ text_ (std::cout,
+ *t,
+ map,
+ "UTF-8",
+ xml_schema::flags::dont_pretty_print);
+ }
+ catch (const xml_schema::exception& e)
+ {
+ cerr << e << endl;
+ return 1;
+ }
+}
diff --git a/xsd/examples/cxx/tree/dbxml/makefile b/xsd/examples/cxx/tree/order/mixed/makefile
index fe10d6d..311ce52 100644
--- a/xsd/examples/cxx/tree/dbxml/makefile
+++ b/xsd/examples/cxx/tree/order/mixed/makefile
@@ -1,11 +1,10 @@
-# file : examples/cxx/tree/dbxml/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# file : examples/cxx/tree/order/mixed/makefile
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
+include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
-xsd := library.xsd
+xsd := text.xsd
cxx := driver.cxx
obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o))
@@ -17,35 +16,27 @@ dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
clean := $(out_base)/.clean
-
# Import.
#
$(call import,\
$(scf_root)/import/libxerces-c/stub.make,\
l: xerces_c.l,cpp-options: xerces_c.l.cpp-options)
-ifeq ($(filter $(MAKECMDGOALS),dist dist-win install),)
-$(call import,\
- $(scf_root)/import/libdbxml/stub.make,\
- l: dbxml.l,cpp-options: dbxml.l.cpp-options)
-endif
-
-
# Build.
#
-$(driver): $(obj) $(xerces_c.l) $(dbxml.l)
+$(driver): $(obj) $(xerces_c.l) -lnsl
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd -DDBXML_DOM
-$(obj) $(dep): $(xerces_c.l.cpp-options) $(dbxml.l.cpp-options)
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
+$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization --generate-ostream
+$(gen): xsd_options += --generate-serialization --ordered-type-mixed
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -61,19 +52,20 @@ $(install) $(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(s
$(install):
$(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README)
$(call install-data,$(src_base)/driver.cxx,$(install_doc_dir)/xsd/$(path)/driver.cxx)
- $(call install-data,$(src_base)/library.xsd,$(install_doc_dir)/xsd/$(path)/library.xsd)
+ $(call install-data,$(src_base)/text.xsd,$(install_doc_dir)/xsd/$(path)/text.xsd)
+ $(call install-data,$(src_base)/text.xml,$(install_doc_dir)/xsd/$(path)/text.xml)
$(dist-common):
$(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
- $(call install-data,$(src_base)/library.xsd,$(dist_prefix)/$(path)/library.xsd)
+ $(call install-data,$(src_base)/text.xsd,$(dist_prefix)/$(path)/text.xsd)
+ $(call install-data,$(src_base)/text.xml,$(dist_prefix)/$(path)/text.xml)
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
-
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/order/mixed/text.xml b/xsd/examples/cxx/tree/order/mixed/text.xml
new file mode 100644
index 0000000..ac80159
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/mixed/text.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+
+<!--
+
+file : examples/cxx/tree/order/mixed/text.xml
+copyright : not copyrighted - public domain
+
+-->
+
+<text xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="text.xsd">
+
+The first paragraph of this text talks about <a href="http://en.wikipedia.org/wiki/time">time</a>.
+
+And this paragraph talks about <a href="http://en.wikipedia.org/wiki/space">space</a>.
+
+</text>
diff --git a/xsd/examples/cxx/tree/order/mixed/text.xsd b/xsd/examples/cxx/tree/order/mixed/text.xsd
new file mode 100644
index 0000000..e45abcd
--- /dev/null
+++ b/xsd/examples/cxx/tree/order/mixed/text.xsd
@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+
+<!--
+
+file : examples/cxx/tree/order/mixed/text.xsd
+copyright : not copyrighted - public domain
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <xsd:complexType name="anchor">
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="href" type="xsd:anyURI" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="text" mixed="true">
+ <xsd:sequence>
+ <xsd:element name="a" type="anchor" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="text" type="text"/>
+
+</xsd:schema>
diff --git a/xsd/examples/cxx/tree/performance/README b/xsd/examples/cxx/tree/performance/README
index 440ee62..cb79cc2 100644
--- a/xsd/examples/cxx/tree/performance/README
+++ b/xsd/examples/cxx/tree/performance/README
@@ -7,10 +7,8 @@ The example consists of the following files:
test.xsd
XML Schema which describes the test vocabulary.
-test-5k.xml
test-50k.xml
-test-500k.xml
- Test XML documents of various sizes.
+ Test XML document.
gen.cxx
Program to generate a test document of desired size.
@@ -57,4 +55,4 @@ parser (off by default). The -i option can be used to specify the
number of parsing and serialization iterations (1000 by default). For
example:
-$ ./driver -v -i 100 test-500k.xml
+$ ./driver -v -i 100 test-50k.xml
diff --git a/xsd/examples/cxx/tree/performance/driver.cxx b/xsd/examples/cxx/tree/performance/driver.cxx
index f3e388b..b626e4d 100644
--- a/xsd/examples/cxx/tree/performance/driver.cxx
+++ b/xsd/examples/cxx/tree/performance/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/performance/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <string>
diff --git a/xsd/examples/cxx/tree/performance/makefile b/xsd/examples/cxx/tree/performance/makefile
index 5ba1a6c..e6f4258 100644
--- a/xsd/examples/cxx/tree/performance/makefile
+++ b/xsd/examples/cxx/tree/performance/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/performance/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-inline --generate-serialization
+$(gen): xsd_options += --generate-inline --generate-serialization
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -58,9 +57,7 @@ $(install):
$(call install-data,$(src_base)/parsing.cxx,$(install_doc_dir)/xsd/$(path)/parsing.cxx)
$(call install-data,$(src_base)/serialization.cxx,$(install_doc_dir)/xsd/$(path)/serialization.cxx)
$(call install-data,$(src_base)/test.xsd,$(install_doc_dir)/xsd/$(path)/test.xsd)
- $(call install-data,$(src_base)/test-5k.xml,$(install_doc_dir)/xsd/$(path)/test-5k.xml)
$(call install-data,$(src_base)/test-50k.xml,$(install_doc_dir)/xsd/$(path)/test-50k.xml)
- $(call install-data,$(src_base)/test-500k.xml,$(install_doc_dir)/xsd/$(path)/test-500k.xml)
$(call install-data,$(src_base)/time.hxx,$(install_doc_dir)/xsd/$(path)/time.hxx)
$(call install-data,$(src_base)/time.cxx,$(install_doc_dir)/xsd/$(path)/time.cxx)
$(call install-data,$(src_base)/gen.cxx,$(install_doc_dir)/xsd/$(path)/gen.cxx)
@@ -70,9 +67,7 @@ $(dist-common):
$(call install-data,$(src_base)/parsing.cxx,$(dist_prefix)/$(path)/parsing.cxx)
$(call install-data,$(src_base)/serialization.cxx,$(dist_prefix)/$(path)/serialization.cxx)
$(call install-data,$(src_base)/test.xsd,$(dist_prefix)/$(path)/test.xsd)
- $(call install-data,$(src_base)/test-5k.xml,$(dist_prefix)/$(path)/test-5k.xml)
$(call install-data,$(src_base)/test-50k.xml,$(dist_prefix)/$(path)/test-50k.xml)
- $(call install-data,$(src_base)/test-500k.xml,$(dist_prefix)/$(path)/test-500k.xml)
$(call install-data,$(src_base)/time.hxx,$(dist_prefix)/$(path)/time.hxx)
$(call install-data,$(src_base)/time.cxx,$(dist_prefix)/$(path)/time.cxx)
$(call install-data,$(src_base)/gen.cxx,$(dist_prefix)/$(path)/gen.cxx)
@@ -82,7 +77,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/performance/parsing.cxx b/xsd/examples/cxx/tree/performance/parsing.cxx
index 8d662eb..bf7f667 100644
--- a/xsd/examples/cxx/tree/performance/parsing.cxx
+++ b/xsd/examples/cxx/tree/performance/parsing.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/performance/parsing.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
@@ -8,11 +7,7 @@
#include <iostream>
#include <xercesc/dom/DOM.hpp>
-#if _XERCES_VERSION >= 30000
-# include <xercesc/dom/DOMLSParser.hpp>
-#else
-# include <xercesc/dom/DOMBuilder.hpp>
-#endif
+#include <xercesc/dom/DOMLSParser.hpp>
#include <xercesc/dom/DOMImplementation.hpp>
#include <xercesc/dom/DOMImplementationRegistry.hpp>
@@ -67,8 +62,6 @@ parsing (const char* file, unsigned long iter, bool validate)
xsd::cxx::tree::error_handler<char> eh;
xsd::cxx::xml::dom::bits::error_handler_proxy<char> ehp (eh);
-#if _XERCES_VERSION >= 30000
-
xml_schema::dom::auto_ptr<DOMLSParser> parser (
impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
@@ -122,48 +115,6 @@ parsing (const char* file, unsigned long iter, bool validate)
conf->setParameter (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- xml_schema::dom::auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder(DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
-
- parser->setErrorHandler (&ehp);
-
- if (validate)
- {
- parser->setFeature (XMLUni::fgDOMValidation, true);
- parser->setFeature (XMLUni::fgXercesSchema, true);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
-
- if (!parser->loadGrammar ("test.xsd", Grammar::SchemaGrammarType, true))
- {
- eh.handle ("test.xsd", 0, 0,
- xsd::cxx::tree::error_handler<char>::severity::fatal,
- "unable to load schema");
- }
-
- eh.throw_if_failed<xml_schema::parsing> ();
- parser->setFeature (XMLUni::fgXercesUseCachedGrammarInParse, true);
- }
- else
- {
- parser->setFeature (XMLUni::fgDOMValidation, false);
- parser->setFeature (XMLUni::fgXercesSchema, false);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- }
-
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
-#endif
-
// Create memory buffer input source.
//
MemBufInputSource is (
@@ -179,11 +130,7 @@ parsing (const char* file, unsigned long iter, bool validate)
{
// First parse XML to DOM reusing the parser we created above.
//
-#if _XERCES_VERSION >= 30000
xml_schema::dom::auto_ptr<DOMDocument> doc (parser->parse (&wis));
-#else
- xml_schema::dom::auto_ptr<DOMDocument> doc (parser->parse (wis));
-#endif
eh.throw_if_failed<xml_schema::parsing> ();
// Then parse DOM to the object model.
diff --git a/xsd/examples/cxx/tree/performance/serialization.cxx b/xsd/examples/cxx/tree/performance/serialization.cxx
index 12c43ae..08e5740 100644
--- a/xsd/examples/cxx/tree/performance/serialization.cxx
+++ b/xsd/examples/cxx/tree/performance/serialization.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/performance/serialization.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
@@ -8,12 +7,8 @@
#include <iostream>
#include <xercesc/dom/DOM.hpp>
-#if _XERCES_VERSION >= 30000
-# include <xercesc/dom/DOMLSOutput.hpp>
-# include <xercesc/dom/DOMLSSerializer.hpp>
-#else
-# include <xercesc/dom/DOMWriter.hpp>
-#endif
+#include <xercesc/dom/DOMLSOutput.hpp>
+#include <xercesc/dom/DOMLSSerializer.hpp>
#include <xercesc/dom/DOMImplementation.hpp>
#include <xercesc/dom/DOMImplementationRegistry.hpp>
@@ -75,7 +70,6 @@ serialization (const char* file, unsigned long iter)
xsd::cxx::tree::error_handler<char> eh;
xsd::cxx::xml::dom::bits::error_handler_proxy<char> ehp (eh);
-#if _XERCES_VERSION >= 30000
xml_schema::dom::auto_ptr<DOMLSSerializer> writer (
impl->createLSSerializer ());
@@ -87,14 +81,6 @@ serialization (const char* file, unsigned long iter)
xml_schema::dom::auto_ptr<DOMLSOutput> out (impl->createLSOutput ());
out->setByteStream (&ft);
-#else
- // Same as above but for Xerces-C++ 2 series.
- //
- xml_schema::dom::auto_ptr<DOMWriter> writer (impl->createDOMWriter ());
-
- writer->setErrorHandler (&ehp);
- writer->setFeature (XMLUni::fgDOMXMLDeclaration, false);
-#endif
// Serialization loop.
//
@@ -110,12 +96,7 @@ serialization (const char* file, unsigned long iter)
// Then serialize DOM to XML reusing the serializer we created above.
//
-#if _XERCES_VERSION >= 30000
writer->write (doc.get (), out.get ());
-#else
- writer->writeNode (&ft, *doc);
-#endif
-
eh.throw_if_failed<xml_schema::serialization> ();
}
diff --git a/xsd/examples/cxx/tree/performance/test-500k.xml b/xsd/examples/cxx/tree/performance/test-500k.xml
deleted file mode 100644
index e895584..0000000
--- a/xsd/examples/cxx/tree/performance/test-500k.xml
+++ /dev/null
@@ -1 +0,0 @@
-<t:root xmlns:t='test' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='test test.xsd'><record orange="0" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="4" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="5"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="6" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="7"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="8" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="9"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="10" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="11"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="12" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="13"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="14" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="15"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="16" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="17"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="18" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="19"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="20" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="21"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="22" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="23"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="24" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="25"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="26" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="27"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="28" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="29"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="30" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="31"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="32" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="33"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="34" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="35"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="36" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="37"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="38" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="39"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="40" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="41"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="42" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="43"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="44" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="45"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="46" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="47"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="48" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="49"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="50" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="51"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="52" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="53"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="54" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="55"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="56" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="57"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="58" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="59"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="60" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="61"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="62" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="63"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="64" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="65"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="66" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="67"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="68" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="69"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="70" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="71"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="72" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="73"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="74" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="75"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="76" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="77"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="78" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="79"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="80" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="81"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="82" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="83"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="84" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="85"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="86" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="87"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="88" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="89"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="90" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="91"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="92" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="93"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="94" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="95"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="96" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="97"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="98" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="99"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="150" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="151"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="152" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="153"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="154" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="155"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="156" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="157"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="158" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="159"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="160" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="161"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="162" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="163"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="164" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="165"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="166" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="167"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="168" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="169"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="170" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="171"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="172" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="173"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="174" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="175"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="176" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="177"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="178" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="179"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="180" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="181"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="182" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="183"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="184" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="185"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="186" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="187"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="188" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="189"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="190" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="191"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="192" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="193"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="194" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="195"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="196" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="197"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="198" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="199"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="200" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="201"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="202" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="203"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="204" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="205"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="206" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="207"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="208" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="209"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="210" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="211"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="212" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="213"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="214" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="215"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="216" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="217"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="218" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="219"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="220" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="221"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="222" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="223"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="224" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="225"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="226" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="227"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="228" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="229"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="230" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="231"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="232" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="233"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="234" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="235"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="236" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="237"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="238" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="239"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="240" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="241"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="242" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="243"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="244" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="245"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="246" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="247"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="248" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="249"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="250" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="251"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="252" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="253"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="254" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="255"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="256" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="257"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="258" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="259"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="260" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="261"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="262" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="263"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="264" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="265"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="266" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="267"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="268" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="269"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="270" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="271"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="272" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="273"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="274" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="275"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="276" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="277"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="278" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="279"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="280" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="281"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="282" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="283"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="284" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="285"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="286" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="287"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="288" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="289"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="290" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="291"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="292" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="293"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="294" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="295"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="296" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="297"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="298" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="299"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="300" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="301"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="302" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="303"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="304" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="305"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="306" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="307"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="308" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="309"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="310" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="311"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="312" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="313"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="314" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="315"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="316" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="317"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="318" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="319"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="320" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="321"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="322" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="323"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="324" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="325"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="326" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="327"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="328" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="329"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="330" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="331"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="332" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="333"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="334" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="335"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="336" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="337"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="338" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="339"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="340" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="341"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="342" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="343"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="344" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="345"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="346" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="347"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="348" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="349"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="350" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="351"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="352" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="353"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="354" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="355"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="356" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="357"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="358" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="359"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="360" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="361"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="362" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="363"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="364" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="365"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="366" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="367"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="368" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="369"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="370" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="371"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="372" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="373"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="374" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="375"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="376" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="377"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="378" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="379"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="380" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="381"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="382" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="383"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="384" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="385"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="386" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="387"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="388" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="389"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="390" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="391"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="392" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="393"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="394" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="395"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="396" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="397"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="398" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="399"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="400" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="401"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="402" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="403"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="404" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="405"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="406" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="407"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="408" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="409"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="410" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="411"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="412" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="413"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="414" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="415"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="416" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="417"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="418" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="419"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="420" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="421"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="422" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="423"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="424" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="425"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="426" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="427"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="428" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="429"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="430" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="431"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="432" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="433"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="434" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="435"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="436" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="437"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="438" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="439"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="440" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="441"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="442" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="443"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="444" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="445"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="446" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="447"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="448" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="449"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="450" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="451"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="452" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="453"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="454" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="455"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="456" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="457"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="458" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="459"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="460" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="461"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="462" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="463"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="464" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="465"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="466" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="467"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="468" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="469"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="470" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="471"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="472" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="473"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="474" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="475"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="476" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="477"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="478" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="479"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="480" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="481"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="482" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="483"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="484" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="485"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="486" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="487"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="488" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="489"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="490" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="491"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="492" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="493"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="494" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="495"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="496" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="497"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="498" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="499"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="500" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="501"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="502" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="503"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="504" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="505"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="506" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="507"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="508" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="509"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="510" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="511"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="512" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="513"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="514" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="515"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="516" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="517"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="518" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="519"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="520" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="521"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="522" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="523"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="524" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="525"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="526" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="527"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="528" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="529"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="530" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="531"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="532" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="533"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="534" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="535"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="536" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="537"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="538" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="539"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="540" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="541"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="542" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="543"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="544" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="545"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="546" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="547"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="548" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="549"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="550" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="551"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="552" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="553"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="554" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="555"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="556" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="557"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="558" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="559"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="560" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="561"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="562" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="563"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="564" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="565"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="566" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="567"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="568" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="569"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="570" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="571"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="572" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="573"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="574" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="575"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="576" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="577"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="578" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="579"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="580" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="581"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="582" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="583"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="584" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="585"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="586" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="587"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="588" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="589"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="590" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="591"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="592" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="593"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="594" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="595"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="596" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="597"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="598" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="599"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="600" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="601"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="602" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="603"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="604" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="605"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="606" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="607"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="608" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="609"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="610" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="611"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="612" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="613"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="614" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="615"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="616" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="617"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="618" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="619"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="620" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="621"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="622" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="623"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="624" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="625"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="626" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="627"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="628" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="629"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="630" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="631"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="632" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="633"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="634" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="635"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="636" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="637"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="638" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="639"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="640" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="641"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="642" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="643"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="644" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="645"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="646" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="647"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="648" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="649"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="650" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="651"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="652" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="653"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="654" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="655"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="656" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="657"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="658" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="659"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="660" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="661"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="662" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="663"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="664" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="665"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="666" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="667"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="668" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="669"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="670" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="671"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="672" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="673"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="674" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="675"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="676" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="677"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="678" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="679"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="680" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="681"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="682" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="683"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="684" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="685"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="686" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="687"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="688" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="689"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="690" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="691"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="692" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="693"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="694" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="695"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="696" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="697"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="698" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="699"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="700" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="701"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="702" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="703"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="704" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="705"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="706" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="707"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="708" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="709"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="710" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="711"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="712" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="713"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="714" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="715"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="716" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="717"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="718" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="719"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="720" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="721"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="722" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="723"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="724" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="725"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="726" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="727"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="728" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="729"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="730" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="731"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="732" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="733"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="734" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="735"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="736" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="737"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="738" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="739"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="740" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="741"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="742" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="743"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="744" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="745"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="746" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="747"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="748" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="749"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="750" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="751"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="752" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="753"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="754" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="755"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="756" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="757"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="758" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="759"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="760" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="761"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="762" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="763"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="764" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="765"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="766" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="767"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="768" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="769"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="770" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="771"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="772" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="773"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="774" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="775"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="776" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="777"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="778" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="779"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="780" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="781"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="782" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="783"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="784" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="785"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="786" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="787"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="788" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="789"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="790" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="791"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="792" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="793"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="794" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="795"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="796" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="797"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="798" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="799"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="800" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="801"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="802" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="803"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="804" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="805"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="806" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="807"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="808" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="809"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="810" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="811"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="812" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="813"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="814" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="815"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="816" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="817"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="818" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="819"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="820" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="821"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="822" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="823"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="824" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="825"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="826" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="827"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="828" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="829"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="830" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="831"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="832" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="833"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="834" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="835"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="836" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="837"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="838" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="839"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="840" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="841"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="842" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="843"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="844" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="845"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="846" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="847"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="848" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="849"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="850" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="851"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="852" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="853"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="854" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="855"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="856" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="857"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="858" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="859"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="860" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="861"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="862" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="863"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="864" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="865"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="866" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="867"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="868" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="869"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="870" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="871"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="872" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="873"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="874" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="875"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="876" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="877"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="878" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="879"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="880" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="881"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="882" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="883"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="884" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="885"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="886" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="887"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="888" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="889"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="890" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="891"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="892" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="893"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="894" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="895"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="896" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="897"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="898" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="899"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="900" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="901"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="902" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="903"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="904" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="905"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="906" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="907"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="908" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="909"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="910" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="911"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="912" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="913"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="914" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="915"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="916" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="917"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="918" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="919"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="920" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="921"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="922" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="923"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="924" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="925"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="926" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="927"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="928" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="929"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="930" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="931"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="932" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="933"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="934" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="935"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="936" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="937"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="938" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="939"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="940" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="941"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="942" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="943"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="944" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="945"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="946" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="947"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="948" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="949"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="950" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="951"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="952" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="953"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="954" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="955"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="956" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="957"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="958" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="959"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="960" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="961"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="962" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="963"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="964" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="965"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="966" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="967"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="968" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="969"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="970" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="971"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="972" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="973"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="974" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="975"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="976" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="977"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="978" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="979"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="980" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="981"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="982" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="983"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="984" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="985"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="986" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="987"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="988" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="989"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="990" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="991"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="992" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="993"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="994" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="995"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="996" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="997"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="998" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="999"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1000" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1001"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1002" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1003"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1004" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1005"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1006" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1007"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1008" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1009"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1010" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1011"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1012" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1013"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1014" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1015"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1016" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1017"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1018" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1019"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1020" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1021"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1022" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1023"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1024" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1025"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1026" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1027"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1028" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1029"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1030" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1031"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1032" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1033"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1034" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1035"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1036" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1037"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1038" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1039"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1040" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1041"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1042" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1043"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1044" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1045"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1046" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1047"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1048" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1049"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1050" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1051"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1052" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1053"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1054" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1055"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1056" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1057"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1058" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1059"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1060" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1061"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1062" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1063"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1064" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1065"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1066" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1067"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1068" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1069"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1070" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1071"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1072" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1073"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1074" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1075"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1076" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1077"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1078" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1079"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1080" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1081"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1082" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1083"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1084" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1085"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1086" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1087"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1088" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1089"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1090" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1091"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1092" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1093"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1094" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1095"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1096" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1097"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1098" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1099"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1150" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1151"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1152" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1153"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1154" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1155"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1156" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1157"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1158" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1159"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1160" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1161"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1162" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1163"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1164" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1165"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1166" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1167"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1168" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1169"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1170" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1171"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1172" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1173"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1174" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1175"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1176" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1177"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1178" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1179"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1180" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1181"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1182" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1183"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1184" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1185"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1186" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1187"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1188" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1189"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1190" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1191"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1192" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1193"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1194" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1195"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1196" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1197"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1198" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1199"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1200" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1201"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1202" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1203"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1204" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1205"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1206" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1207"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1208" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1209"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1210" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1211"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1212" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1213"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1214" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1215"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1216" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1217"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1218" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1219"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1220" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1221"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1222" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1223"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1224" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1225"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1226" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1227"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1228" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1229"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1230" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1231"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1232" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1233"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1234" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1235"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1236" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1237"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1238" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1239"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1240" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1241"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1242" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1243"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1244" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1245"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1246" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1247"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1248" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1249"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1250" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1251"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1252" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1253"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1254" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1255"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1256" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1257"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1258" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1259"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1260" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1261"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1262" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1263"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1264" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1265"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1266" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1267"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1268" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1269"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1270" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1271"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1272" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1273"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1274" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1275"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1276" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1277"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1278" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1279"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1280" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1281"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1282" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1283"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1284" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1285"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1286" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1287"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1288" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1289"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1290" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1291"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1292" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1293"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1294" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1295"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1296" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1297"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1298" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1299"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1300" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1301"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1302" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1303"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1304" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1305"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1306" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1307"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1308" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1309"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1310" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1311"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1312" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1313"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1314" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1315"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1316" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1317"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1318" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1319"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1320" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1321"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1322" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1323"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1324" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1325"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1326" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1327"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1328" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1329"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1330" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1331"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1332" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1333"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1334" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1335"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1336" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1337"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1338" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1339"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1340" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1341"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1342" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1343"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1344" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1345"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1346" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1347"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1348" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1349"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1350" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1351"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1352" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1353"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1354" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1355"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1356" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1357"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1358" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1359"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1360" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1361"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1362" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1363"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1364" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1365"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1366" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1367"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1368" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1369"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1370" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1371"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1372" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1373"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1374" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1375"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1376" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1377"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1378" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1379"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1380" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1381"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1382" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1383"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1384" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1385"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1386" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1387"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1388" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1389"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1390" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1391"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1392" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1393"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1394" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1395"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1396" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1397"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1398" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1399"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1400" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1401"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1402" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1403"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1404" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1405"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1406" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1407"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1408" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1409"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1410" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1411"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1412" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1413"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1414" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1415"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1416" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1417"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1418" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1419"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1420" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1421"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1422" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1423"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1424" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1425"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1426" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1427"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1428" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1429"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1430" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1431"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1432" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1433"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1434" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1435"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1436" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1437"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1438" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1439"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1440" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1441"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1442" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1443"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1444" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1445"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1446" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1447"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1448" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1449"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1450" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1451"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1452" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1453"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1454" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1455"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1456" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1457"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1458" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1459"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1460" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1461"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1462" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1463"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1464" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1465"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1466" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1467"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1468" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1469"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1470" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1471"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1472" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1473"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1474" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1475"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1476" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1477"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1478" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1479"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1480" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1481"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1482" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1483"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1484" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1485"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1486" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1487"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1488" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1489"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1490" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1491"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1492" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1493"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1494" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1495"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1496" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1497"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1498" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1499"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1500" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1501"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1502" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1503"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1504" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1505"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1506" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1507"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1508" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1509"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1510" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1511"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1512" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1513"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1514" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1515"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1516" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1517"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1518" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1519"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1520" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1521"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1522" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1523"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1524" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1525"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1526" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1527"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1528" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1529"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1530" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1531"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1532" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1533"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1534" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1535"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1536" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1537"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1538" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1539"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1540" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1541"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1542" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1543"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1544" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1545"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1546" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1547"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1548" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1549"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1550" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1551"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1552" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1553"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1554" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1555"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1556" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1557"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1558" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1559"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1560" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1561"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1562" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1563"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1564" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1565"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1566" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1567"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1568" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1569"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1570" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1571"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1572" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1573"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1574" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1575"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1576" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1577"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1578" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1579"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1580" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1581"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1582" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1583"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1584" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1585"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1586" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1587"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1588" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1589"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1590" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1591"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1592" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1593"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1594" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1595"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1596" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1597"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1598" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1599"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1600" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1601"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1602" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1603"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1604" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1605"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1606" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1607"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1608" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1609"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1610" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1611"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1612" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1613"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1614" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1615"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1616" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1617"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1618" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1619"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1620" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1621"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1622" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1623"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1624" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1625"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1626" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1627"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1628" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1629"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1630" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1631"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1632" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1633"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1634" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1635"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1636" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1637"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1638" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1639"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1640" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1641"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1642" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1643"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1644" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1645"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1646" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1647"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1648" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1649"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1650" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1651"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1652" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1653"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1654" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1655"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1656" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1657"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1658" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1659"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1660" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1661"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1662" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1663"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1664" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1665"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1666" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1667"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1668" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1669"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1670" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1671"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1672" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1673"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1674" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1675"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1676" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1677"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1678" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1679"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1680" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1681"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1682" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1683"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1684" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1685"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1686" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1687"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1688" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1689"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1690" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1691"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1692" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1693"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1694" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1695"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1696" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1697"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1698" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1699"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1700" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1701"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1702" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1703"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1704" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1705"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1706" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1707"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1708" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1709"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1710" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1711"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1712" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1713"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1714" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1715"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1716" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1717"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1718" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1719"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1720" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1721"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1722" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1723"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1724" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1725"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1726" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1727"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1728" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1729"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1730" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1731"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1732" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1733"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1734" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1735"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1736" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1737"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1738" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1739"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1740" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1741"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1742" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1743"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1744" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1745"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1746" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1747"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1748" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1749"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1750" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1751"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1752" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1753"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1754" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1755"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1756" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1757"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1758" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1759"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1760" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1761"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1762" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1763"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1764" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1765"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1766" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1767"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1768" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1769"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1770" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1771"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1772" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1773"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1774" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1775"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1776" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1777"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1778" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1779"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1780" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1781"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1782" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1783"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1784" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1785"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1786" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1787"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1788" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1789"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1790" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1791"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1792" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1793"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1794" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1795"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1796" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1797"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1798" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1799"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1800" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1801"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1802" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1803"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1804" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1805"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1806" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1807"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1808" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1809"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1810" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1811"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1812" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1813"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1814" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1815"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1816" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1817"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1818" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1819"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1820" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1821"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1822" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1823"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1824" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1825"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1826" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1827"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1828" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1829"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1830" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1831"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1832" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1833"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1834" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1835"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1836" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1837"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1838" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1839"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1840" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1841"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1842" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1843"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1844" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1845"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1846" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1847"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1848" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1849"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1850" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1851"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1852" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1853"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1854" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1855"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1856" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1857"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1858" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1859"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1860" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1861"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1862" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1863"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1864" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1865"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1866" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1867"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1868" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1869"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1870" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1871"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1872" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1873"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1874" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1875"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1876" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1877"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1878" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1879"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1880" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1881"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1882" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1883"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1884" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1885"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1886" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1887"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1888" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1889"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1890" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1891"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1892" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1893"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1894" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1895"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1896" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1897"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1898" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1899"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1900" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1901"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1902" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1903"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1904" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1905"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1906" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1907"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1908" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1909"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1910" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1911"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1912" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1913"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1914" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1915"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1916" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1917"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1918" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1919"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1920" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1921"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1922" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1923"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1924" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1925"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1926" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1927"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1928" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1929"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1930" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1931"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1932" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1933"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1934" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1935"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1936" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1937"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1938" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1939"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1940" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1941"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1942" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1943"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1944" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1945"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1946" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1947"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1948" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1949"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1950" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1951"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1952" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1953"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1954" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1955"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1956" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1957"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1958" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1959"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1960" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1961"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1962" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1963"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1964" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1965"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1966" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1967"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1968" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1969"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1970" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1971"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1972" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1973"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1974" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1975"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1976" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1977"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1978" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1979"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="1980" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1981"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="1982" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="1983"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="1984" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="1985"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="1986" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="1987"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="1988" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="1989"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="1990" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="1991"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="1992" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="1993"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="1994" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="1995"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="1996" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="1997"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="1998" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="1999"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2000" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2001"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2002" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2003"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2004" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2005"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2006" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2007"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2008" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2009"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2010" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2011"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2012" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2013"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2014" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2015"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2016" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2017"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2018" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2019"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2020" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2021"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2022" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2023"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2024" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2025"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2026" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2027"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2028" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2029"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2030" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2031"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2032" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2033"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2034" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2035"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2036" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2037"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2038" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2039"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2040" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2041"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2042" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2043"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2044" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2045"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2046" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2047"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2048" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2049"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2050" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2051"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2052" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2053"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2054" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2055"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2056" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2057"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2058" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2059"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2060" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2061"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2062" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2063"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2064" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2065"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2066" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2067"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2068" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2069"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2070" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2071"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2072" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2073"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2074" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2075"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2076" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2077"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2078" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2079"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2080" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2081"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2082" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2083"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2084" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2085"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2086" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2087"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2088" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2089"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2090" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2091"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2092" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2093"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2094" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2095"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2096" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2097"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2098" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2099"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2150" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2151"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2152" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2153"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2154" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2155"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2156" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2157"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2158" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2159"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2160" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2161"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2162" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2163"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2164" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2165"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2166" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2167"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2168" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2169"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2170" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2171"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2172" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2173"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2174" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2175"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2176" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2177"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2178" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2179"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2180" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2181"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2182" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2183"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2184" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2185"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2186" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2187"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2188" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2189"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2190" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2191"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2192" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2193"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2194" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2195"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2196" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2197"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2198" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2199"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2200" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2201"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2202" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2203"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2204" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2205"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2206" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2207"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2208" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2209"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2210" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2211"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2212" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2213"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2214" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2215"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2216" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2217"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2218" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2219"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2220" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2221"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2222" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2223"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2224" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2225"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2226" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2227"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2228" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2229"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2230" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2231"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2232" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2233"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2234" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2235"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2236" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2237"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2238" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2239"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2240" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2241"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2242" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2243"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2244" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2245"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2246" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2247"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2248" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2249"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2250" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2251"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2252" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2253"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2254" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2255"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2256" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2257"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2258" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2259"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2260" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2261"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2262" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2263"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2264" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2265"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2266" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2267"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2268" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2269"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2270" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2271"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2272" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2273"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2274" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2275"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2276" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2277"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2278" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2279"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2280" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2281"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2282" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2283"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2284" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2285"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2286" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2287"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2288" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2289"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2290" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2291"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2292" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2293"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2294" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2295"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2296" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2297"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2298" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2299"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2300" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2301"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2302" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2303"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2304" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2305"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2306" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2307"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2308" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2309"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2310" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2311"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2312" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2313"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2314" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2315"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2316" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2317"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2318" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2319"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2320" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2321"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2322" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2323"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2324" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2325"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2326" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2327"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2328" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2329"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2330" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2331"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2332" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2333"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2334" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2335"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2336" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2337"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2338" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2339"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2340" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2341"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2342" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2343"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2344" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2345"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2346" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2347"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2348" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2349"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2350" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2351"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2352" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2353"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2354" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2355"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2356" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2357"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2358" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2359"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2360" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2361"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2362" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2363"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2364" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2365"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2366" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2367"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2368" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2369"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2370" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2371"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2372" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2373"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2374" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2375"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2376" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2377"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2378" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2379"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2380" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2381"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2382" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2383"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2384" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2385"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2386" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2387"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2388" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2389"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2390" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2391"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2392" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2393"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2394" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2395"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2396" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2397"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2398" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2399"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2400" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2401"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2402" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2403"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2404" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2405"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2406" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2407"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2408" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2409"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2410" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2411"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2412" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2413"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2414" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2415"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2416" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2417"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2418" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2419"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2420" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2421"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2422" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2423"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2424" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2425"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2426" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2427"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2428" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2429"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2430" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2431"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2432" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2433"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2434" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2435"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2436" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2437"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2438" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2439"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2440" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2441"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2442" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2443"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2444" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2445"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2446" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2447"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2448" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2449"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2450" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2451"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2452" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2453"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2454" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2455"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2456" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2457"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2458" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2459"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2460" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2461"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2462" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2463"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2464" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2465"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2466" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2467"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2468" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2469"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2470" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2471"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2472" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2473"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2474" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2475"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2476" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2477"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2478" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2479"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2480" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2481"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2482" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2483"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2484" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2485"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2486" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2487"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2488" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2489"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2490" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2491"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2492" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2493"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2494" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2495"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2496" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2497"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2498" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2499"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2500" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2501"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2502" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2503"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2504" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2505"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2506" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2507"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2508" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2509"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2510" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2511"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2512" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2513"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2514" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2515"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2516" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2517"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2518" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2519"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2520" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2521"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2522" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2523"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2524" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2525"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2526" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2527"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2528" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2529"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2530" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2531"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2532" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2533"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2534" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2535"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2536" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2537"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2538" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2539"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2540" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2541"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2542" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2543"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2544" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2545"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2546" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2547"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2548" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2549"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2550" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2551"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2552" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2553"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2554" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2555"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2556" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2557"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2558" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2559"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2560" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2561"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2562" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2563"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2564" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2565"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2566" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2567"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2568" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2569"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2570" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2571"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2572" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2573"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2574" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2575"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2576" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2577"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2578" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2579"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2580" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2581"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2582" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2583"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2584" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2585"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2586" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2587"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2588" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2589"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2590" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2591"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2592" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2593"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2594" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2595"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2596" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2597"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2598" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2599"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2600" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2601"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2602" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2603"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2604" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2605"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2606" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2607"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2608" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2609"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2610" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2611"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2612" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2613"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2614" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2615"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2616" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2617"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2618" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2619"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2620" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2621"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2622" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2623"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2624" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2625"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2626" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2627"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2628" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2629"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2630" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2631"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2632" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2633"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2634" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2635"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2636" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2637"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2638" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2639"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2640" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2641"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2642" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2643"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2644" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2645"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2646" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2647"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2648" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2649"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2650" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2651"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2652" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2653"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2654" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2655"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2656" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2657"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2658" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2659"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2660" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2661"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2662" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2663"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2664" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2665"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2666" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2667"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2668" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2669"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2670" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2671"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2672" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2673"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2674" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2675"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2676" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2677"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2678" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2679"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2680" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2681"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2682" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2683"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2684" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2685"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2686" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2687"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2688" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2689"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2690" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2691"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2692" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2693"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2694" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2695"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2696" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2697"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2698" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2699"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2700" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2701"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2702" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2703"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2704" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2705"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2706" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2707"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2708" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2709"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2710" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2711"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2712" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2713"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2714" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2715"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2716" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2717"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2718" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2719"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2720" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2721"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2722" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2723"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2724" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2725"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2726" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2727"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2728" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2729"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2730" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2731"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2732" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2733"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2734" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2735"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2736" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2737"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2738" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2739"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2740" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2741"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2742" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2743"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2744" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2745"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2746" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2747"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2748" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2749"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2750" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2751"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2752" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2753"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2754" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2755"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2756" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2757"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2758" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2759"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2760" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2761"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2762" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2763"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2764" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2765"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2766" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2767"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2768" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2769"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2770" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2771"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2772" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2773"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2774" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2775"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2776" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2777"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2778" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2779"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2780" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2781"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2782" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2783"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2784" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2785"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2786" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2787"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2788" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2789"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2790" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2791"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2792" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2793"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2794" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2795"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2796" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2797"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2798" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2799"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2800" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2801"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2802" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2803"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2804" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2805"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2806" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2807"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2808" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2809"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2810" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2811"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2812" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2813"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2814" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2815"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2816" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2817"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2818" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2819"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2820" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2821"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2822" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2823"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2824" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2825"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2826" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2827"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2828" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2829"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2830" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2831"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2832" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2833"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2834" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2835"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2836" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2837"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2838" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2839"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2840" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2841"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2842" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2843"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2844" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2845"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2846" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2847"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2848" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2849"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2850" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2851"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2852" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2853"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2854" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2855"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2856" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2857"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2858" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2859"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2860" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2861"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2862" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2863"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2864" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2865"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2866" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2867"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2868" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2869"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2870" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2871"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2872" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2873"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2874" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2875"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2876" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2877"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2878" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2879"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2880" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2881"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2882" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2883"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2884" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2885"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2886" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2887"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2888" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2889"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2890" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2891"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2892" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2893"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2894" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2895"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2896" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2897"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2898" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2899"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2900" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2901"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2902" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2903"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2904" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2905"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2906" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2907"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2908" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2909"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2910" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2911"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2912" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2913"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2914" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2915"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2916" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2917"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2918" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2919"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2920" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2921"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2922" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2923"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2924" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2925"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2926" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2927"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2928" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2929"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2930" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2931"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2932" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2933"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2934" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2935"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2936" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2937"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2938" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2939"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2940" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2941"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2942" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2943"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2944" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2945"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2946" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2947"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2948" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2949"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2950" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2951"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2952" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2953"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2954" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2955"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2956" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2957"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2958" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2959"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2960" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2961"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2962" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2963"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2964" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2965"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2966" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2967"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2968" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2969"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2970" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2971"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2972" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2973"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2974" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2975"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2976" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2977"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2978" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2979"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="2980" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="2981"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2982" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="2983"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="2984" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="2985"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="2986" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="2987"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="2988" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="2989"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="2990" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="2991"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="2992" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="2993"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="2994" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="2995"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="2996" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="2997"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="2998" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="2999"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3000" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3001"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3002" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3003"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3004" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3005"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3006" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3007"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3008" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3009"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3010" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3011"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3012" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3013"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3014" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3015"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3016" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3017"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3018" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3019"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3020" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3021"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3022" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3023"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3024" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3025"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3026" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3027"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3028" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3029"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3030" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3031"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3032" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3033"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3034" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3035"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3036" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3037"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3038" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3039"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3040" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3041"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3042" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3043"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3044" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3045"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3046" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3047"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3048" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3049"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3050" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3051"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3052" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3053"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3054" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3055"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3056" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3057"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3058" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3059"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3060" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3061"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3062" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3063"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3064" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3065"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3066" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3067"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3068" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3069"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3070" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3071"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3072" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3073"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3074" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3075"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3076" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3077"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3078" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3079"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3080" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3081"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3082" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3083"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3084" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3085"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3086" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3087"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3088" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3089"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3090" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3091"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3092" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3093"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3094" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3095"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3096" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3097"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3098" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3099"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3100" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3101"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3102" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3103"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3104" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3105"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3106" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3107"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3108" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3109"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3110" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3111"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3112" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3113"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3114" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3115"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3116" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3117"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3118" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3119"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3120" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3121"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3122" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3123"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3124" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3125"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3126" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3127"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3128" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3129"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="3130" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="3131"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="3132" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="3133"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="3134" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="3135"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="3136" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="3137"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="3138" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="3139"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="3140" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="3141"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="3142" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3143"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="3144" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="3145"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="3146" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="3147"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="3148" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="3149"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record></t:root> \ No newline at end of file
diff --git a/xsd/examples/cxx/tree/performance/test-5k.xml b/xsd/examples/cxx/tree/performance/test-5k.xml
deleted file mode 100644
index 168cb09..0000000
--- a/xsd/examples/cxx/tree/performance/test-5k.xml
+++ /dev/null
@@ -1 +0,0 @@
-<t:root xmlns:t='test' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='test test.xsd'><record orange="0" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="1"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="2" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="3"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="4" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="5"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="6" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="7"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="8" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="9"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="10" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="11"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record><record orange="12" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>horror</enum></record><record orange="13"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>history</enum></record><record orange="14" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>philosophy</enum></record><record orange="15"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>romance</enum></record><record orange="16" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>fiction</enum></record><record orange="17"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>horror</enum></record><record orange="18" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>history</enum></record><record orange="19"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>philosophy</enum></record><record orange="20" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>romance</enum></record><record orange="21"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>fiction</enum></record><record orange="22" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>horror</enum></record><record orange="23"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>history</enum></record><record orange="24" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>philosophy</enum></record><record orange="25"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>romance</enum></record><record orange="26" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>fiction</enum></record><record orange="27"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>horror</enum></record><record orange="28" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice1>1 choice</choice1><enum>history</enum></record><record orange="29"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice2>2 choice</choice2><enum>philosophy</enum></record><record orange="30" apple="true"><int>42</int><double>42345.4232</double><name>name123_45</name><choice3>3 choice</choice3><enum>romance</enum></record><record orange="31"><int>42</int><double>42345.4232</double><name>name123_45</name><string>one two three</string><choice4>4 choice</choice4><enum>fiction</enum></record></t:root> \ No newline at end of file
diff --git a/xsd/examples/cxx/tree/performance/test.xsd b/xsd/examples/cxx/tree/performance/test.xsd
index cf1f046..d9b5778 100644
--- a/xsd/examples/cxx/tree/performance/test.xsd
+++ b/xsd/examples/cxx/tree/performance/test.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/performance/test.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/performance/time.cxx b/xsd/examples/cxx/tree/performance/time.cxx
index c2de6dc..6bec91b 100644
--- a/xsd/examples/cxx/tree/performance/time.cxx
+++ b/xsd/examples/cxx/tree/performance/time.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/performance/time.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "time.hxx"
@@ -24,7 +23,7 @@ namespace os
FILETIME ft;
GetSystemTimeAsFileTime (&ft);
unsigned long long v (
- (unsigned long long (ft.dwHighDateTime) << 32) + ft.dwLowDateTime);
+ ((unsigned long long) (ft.dwHighDateTime) << 32) + ft.dwLowDateTime);
sec_ = static_cast<unsigned long> (v / 10000000ULL);
nsec_ = static_cast<unsigned long> ((v % 10000000ULL) * 100);
diff --git a/xsd/examples/cxx/tree/performance/time.hxx b/xsd/examples/cxx/tree/performance/time.hxx
index f83e628..ea71e83 100644
--- a/xsd/examples/cxx/tree/performance/time.hxx
+++ b/xsd/examples/cxx/tree/performance/time.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/performance/time.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef TIME_HXX
diff --git a/xsd/examples/cxx/tree/polymorphism/driver.cxx b/xsd/examples/cxx/tree/polymorphism/driver.cxx
index 582e2dd..3f1598f 100644
--- a/xsd/examples/cxx/tree/polymorphism/driver.cxx
+++ b/xsd/examples/cxx/tree/polymorphism/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/polymorphism/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/polymorphism/makefile b/xsd/examples/cxx/tree/polymorphism/makefile
index cde1904..2ee16e7 100644
--- a/xsd/examples/cxx/tree/polymorphism/makefile
+++ b/xsd/examples/cxx/tree/polymorphism/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/polymorphism/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,18 +28,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-polymorphic --generate-serialization \
+$(gen): xsd_options += --generate-polymorphic --generate-serialization \
--root-element-last
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -70,7 +69,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/polymorphism/supermen.xml b/xsd/examples/cxx/tree/polymorphism/supermen.xml
index 5053142..1b5b1df 100644
--- a/xsd/examples/cxx/tree/polymorphism/supermen.xml
+++ b/xsd/examples/cxx/tree/polymorphism/supermen.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/polymorphism/supermen.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/polymorphism/supermen.xsd b/xsd/examples/cxx/tree/polymorphism/supermen.xsd
index ffdd21c..0d37e3d 100644
--- a/xsd/examples/cxx/tree/polymorphism/supermen.xsd
+++ b/xsd/examples/cxx/tree/polymorphism/supermen.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/polymorphism/supermen.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/streaming/README b/xsd/examples/cxx/tree/streaming/README
index ac7e7f0..5a467e0 100644
--- a/xsd/examples/cxx/tree/streaming/README
+++ b/xsd/examples/cxx/tree/streaming/README
@@ -1,5 +1,5 @@
-This example shows how to perform stream-oriented, partially in-memory
-XML processing using the C++/Tree mapping. With the partially in-memory
+This example shows how to perform stream-oriented, partially in-memory
+XML processing using the C++/Tree mapping. With the partially in-memory
parsing and serialization only a part of the object model is in memory at
any given time. With this approach we can process parts of the document
as they become available as well as handle documents that are too large
@@ -17,7 +17,7 @@ position.xml
position.hxx
position.cxx
- C++ types that represent the position vocabulary as well as parsing
+ C++ types that represent the position vocabulary as well as parsing
and serialization functions. These are generated by XSD from
position.xsd.
@@ -29,15 +29,20 @@ parser.cxx
serializer.hxx
serializer.cxx
- Stream-oriented DOM serializer implementation that allows us to
+ Stream-oriented DOM serializer implementation that allows us to
serialize an XML Document as a series of object model fragments.
+grammar-input-stream.hxx
+grammar-input-stream.cxx
+ Input stream implementation with the special-purpose schema grammar
+ decompression algorithm. It is used internally by the streaming parser.
+
driver.cxx
- Driver for the example. It first parses the input file into a series
- of DOM fragments which are then parsed into the object model fragments.
- The driver prints the information from the document as it becomes
- available. The driver then creates a new XML document (out.xml) by
- creating and serializing a series of object model fragments.
+ Driver for the example. It parses the input file into a series of DOM
+ fragments which are then parsed into the object model fragments. The
+ driver prints the information from the document as it becomes available.
+ It also serializes the object model fragments into a new XML document
+ (out.xml).
To run the example simply execute:
diff --git a/xsd/examples/cxx/tree/streaming/driver.cxx b/xsd/examples/cxx/tree/streaming/driver.cxx
index 6c6fd51..eb7026a 100644
--- a/xsd/examples/cxx/tree/streaming/driver.cxx
+++ b/xsd/examples/cxx/tree/streaming/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/streaming/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <iostream>
@@ -16,9 +15,6 @@
using namespace std;
using namespace xercesc;
-static void
-measure_position (unsigned int n, float& lat, float& lon);
-
int
main (int argc, char* argv[])
{
@@ -40,96 +36,92 @@ main (int argc, char* argv[])
using namespace op;
namespace xml = xsd::cxx::xml;
- // Parse.
+ // Parse and serialize at the same time, in the streaming mode.
//
ifstream ifs;
ifs.exceptions (ifstream::badbit | ifstream::failbit);
ifs.open (argv[1]);
- parser p;
-
- // The first document we get is the "carcase" of the complete document.
- // That is, the root element with all the attributes but without any
- // content. We may need it to get to the attributes in the root element.
- //
- // There are two ways this can be done. The easiest approach is to
- // instantiate the root element's type (object in our case). This
- // will only work if all the content in the root element is optional.
- // Alternatively, we can manually look up attributes that we are
- // interested in and instantiate the corresponding type. The following
- // fragment shows how to use the second approach.
- //
- xml_schema::dom::auto_ptr<DOMDocument> doc (p.start (ifs, argv[1], true));
-
- // Find the id attribute.
- //
- DOMAttr* id_attr (
- doc->getDocumentElement ()->getAttributeNode (
- xml::string ("id").c_str ()));
-
- // Use the type and traits aliases from the object model.
- //
- object::id_type id (object::id_traits::create (*id_attr, 0, 0));
- cerr << "id: " << id << endl;
-
- // The next chunk we get is the header element.
- //
- doc = p.next ();
- header hdr (*doc->getDocumentElement ());
- cerr << "name: " << hdr.name () << endl
- << "type: " << hdr.type () << endl;
-
- // The rest is position elements.
- //
- for (doc = p.next (); doc.get () != 0; doc = p.next ())
- {
- position p (*doc->getDocumentElement ());
- cerr << "lat: " << p.lat () << " lon: " << p.lon () << endl;
- }
-
- // Serialize.
- //
-
ofstream ofs;
ofs.exceptions (ios_base::badbit | ios_base::failbit);
ofs.open ("out.xml");
- serializer s;
+ xml_schema::namespace_infomap ns_map;
+ ns_map["op"].name = "http://www.codesynthesis.com/op";
+ ns_map["op"].schema = "position.xsd";
- // With this approach we manually write the XML declaration, opening
- // and closing root element tags, as well as any attributes in the
- // root element.
- //
- ofs << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" << endl
- << "<op:object xmlns:op=\"http://www.codesynthesis.com/op\"" << endl
- << " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"" << endl
- << " xsi:schemaLocation=\"http://www.codesynthesis.com/op " <<
- "position.xsd\"" << endl
- << " id=\"" << 123 << "\">" << endl;
+ parser p;
+ serializer s;
+ p.start (ifs, argv[1], true);
s.start (ofs);
- // Serialize the header.
+ typedef xml_schema::dom::auto_ptr<DOMDocument> document_ptr;
+
+ // Peek at the root element. This way we only get the "carcase"
+ // of the document, that is, the root element with its name, all
+ // the attributes, and namespace declarations but without any of
+ // the nested elements.
//
- header h ("Lion's Head", "rock");
- s.next ("header", h);
+ document_ptr docr (p.peek ());
+ bool parsed (false);
- // Serialize position elements, one at a time.
+ // Parse first-level elements.
//
- for (unsigned short i (0); i < 8; i++)
+ for (document_ptr doc1 (p.peek ()); doc1.get () != 0; doc1 = p.peek ())
{
- float lat, lon;
- measure_position (i, lat, lon);
- position p (lat, lon);
- s.next ("position", p);
+ // Check whether it is an element that we should stream (position) or
+ // just add to the root (header).
+ //
+ string n1 (xml::transcode<char> (
+ doc1->getDocumentElement ()->getLocalName ()));
+
+ // If we see the first streaming element, then parse the root carcase.
+ //
+ if (!parsed && n1 == "position")
+ {
+ object o (*docr->getDocumentElement ());
+
+ cerr << "id: " << o.id () << endl
+ << "name: " << o.header ().name () << endl
+ << "type: " << o.header ().type () << endl;
+
+ // Start serializing the document by writing out the root carcase.
+ // Note that we leave it open so that we can serialize more elements.
+ //
+ s.next_open (ns_map["op"].name, "op:object", ns_map, o);
+ parsed = true;
+ }
+
+ // Handle elements that need streaming.
+ //
+ if (n1 == "position")
+ {
+ // Position has no nested elements that we need to stream so we
+ // finish parsing it in one go.
+ //
+ doc1 = p.next (doc1);
+ position pos (*doc1->getDocumentElement ());
+
+ cerr << "lat: " << pos.lat () << " lon: " << pos.lon () << endl;
+
+ // Serialize it (append) to the root element.
+ //
+ s.next ("position", pos);
+ }
+ else
+ {
+ // Element that doesn't require streaming (header in our case). Add
+ // to the root element and finish parsing.
+ //
+ docr = p.next (doc1, docr);
+ }
}
- // Close the root element.
+ // Close the root element in serializer.
//
- ofs << endl
- << "</op:object>" << endl;
-
+ s.next_close ("op:object");
}
catch (const xml_schema::exception& e)
{
@@ -145,32 +137,3 @@ main (int argc, char* argv[])
xercesc::XMLPlatformUtils::Terminate ();
return r;
}
-
-// Position measurement instrument interface.
-//
-struct measurements
-{
- float lat;
- float lon;
-};
-
-measurements test_measurements [8] =
-{
- {-33.8569F, 18.5083F},
- {-33.8568F, 18.5083F},
- {-33.8568F, 18.5082F},
- {-33.8570F, 18.5083F},
- {-33.8569F, 18.5084F},
- {-33.8570F, 18.5084F},
- {-33.8570F, 18.5082F},
- {-33.8569F, 18.5082F}
-};
-
-static void
-measure_position (unsigned int n, float& lat, float& lon)
-{
- // Call the instrument to measure the position.
- //
- lat = test_measurements[n].lat;
- lon = test_measurements[n].lon;
-}
diff --git a/xsd/examples/cxx/tree/streaming/grammar-input-stream.cxx b/xsd/examples/cxx/tree/streaming/grammar-input-stream.cxx
new file mode 100644
index 0000000..ffdb5b4
--- /dev/null
+++ b/xsd/examples/cxx/tree/streaming/grammar-input-stream.cxx
@@ -0,0 +1,96 @@
+// file : examples/cxx/tree/streaming/grammar-input-stream.cxx
+// author : Boris Kolpackov <boris@codesynthesis.com>
+// copyright : not copyrighted - public domain
+
+#include <cassert>
+#include "grammar-input-stream.hxx"
+
+grammar_input_stream::
+grammar_input_stream (const XMLByte* data, std::size_t size)
+ : data_ (data),
+ size_ (size),
+ pos_ (0),
+ vpos_ (0),
+ cseq_ (0),
+ add_zero_ (false)
+{
+}
+
+XMLFilePos grammar_input_stream::
+curPos () const
+{
+ return static_cast<XMLFilePos> (vpos_);
+}
+
+XMLSize_t grammar_input_stream::
+readBytes (XMLByte* const buf, const XMLSize_t size)
+{
+ std::size_t i (0);
+
+ // Add a zero from the alternating sequence if it didn't
+ // fit on the previous read.
+ //
+ if (add_zero_)
+ {
+ buf[i++] = 0;
+ add_zero_ = false;
+ }
+
+ // If have an unfinished sequential sequence, output it now.
+ //
+ if (cseq_ != 0 && !alt_)
+ {
+ for (; cseq_ != 0 && i < size; --cseq_)
+ buf[i++] = 0;
+ }
+
+ for (; i < size && pos_ < size_;)
+ {
+ XMLByte b = buf[i++] = data_[pos_++];
+
+ // See if we are in a compression sequence.
+ //
+ if (cseq_ != 0)
+ {
+ if (i < size)
+ buf[i++] = 0;
+ else
+ add_zero_ = true; // Add it on the next read.
+
+ cseq_--;
+ continue;
+ }
+
+ // If we are not in a compression sequence and this byte is
+ // not zero then we are done.
+ //
+ if (b != 0)
+ continue;
+
+ // We have a zero.
+ //
+ assert (pos_ < size_); // There has to be another byte.
+ unsigned char v (static_cast<unsigned char> (data_[pos_++]));
+ alt_ = (v & 128) != 0;
+ cseq_ = v & 127;
+
+ // If it is a sequential sequence, output as many zeros as
+ // we can.
+ //
+ if (!alt_)
+ {
+ for (; cseq_ != 0 && i < size; --cseq_)
+ buf[i++] = 0;
+ }
+ }
+
+ vpos_ += i;
+
+ return static_cast<XMLSize_t> (i);
+}
+
+const XMLCh* grammar_input_stream::
+getContentType () const
+{
+ return 0;
+}
diff --git a/xsd/examples/cxx/tree/streaming/grammar-input-stream.hxx b/xsd/examples/cxx/tree/streaming/grammar-input-stream.hxx
new file mode 100644
index 0000000..36ef74c
--- /dev/null
+++ b/xsd/examples/cxx/tree/streaming/grammar-input-stream.hxx
@@ -0,0 +1,41 @@
+// file : examples/cxx/tree/streaming/grammar-input-stream.hxx
+// author : Boris Kolpackov <boris@codesynthesis.com>
+// copyright : not copyrighted - public domain
+
+#ifndef GRAMMAR_INPUT_STREAM_HXX
+#define GRAMMAR_INPUT_STREAM_HXX
+
+#include <cstddef>
+#include <xercesc/util/BinInputStream.hpp>
+
+// Memory buffer input stream with the special-purpose schema
+// grammar decompression.
+//
+class grammar_input_stream: public xercesc::BinInputStream
+{
+public :
+ grammar_input_stream (const XMLByte* data, std::size_t size);
+
+ virtual XMLFilePos
+ curPos () const;
+
+ virtual XMLSize_t
+ readBytes (XMLByte* const buf, const XMLSize_t size);
+
+ virtual const XMLCh*
+ getContentType () const;
+
+private :
+ const XMLByte* data_;
+ std::size_t size_;
+ std::size_t pos_;
+ std::size_t vpos_;
+
+ // Compression data.
+ //
+ size_t cseq_; // Number of bytes left in a compression sequence.
+ bool alt_; // Alternating or sequential sequence.
+ bool add_zero_; // Add a zero on the next read.
+};
+
+#endif // GRAMMAR_INPUT_STREAM_HXX
diff --git a/xsd/examples/cxx/tree/streaming/makefile b/xsd/examples/cxx/tree/streaming/makefile
index 750ad20..f6db5c0 100644
--- a/xsd/examples/cxx/tree/streaming/makefile
+++ b/xsd/examples/cxx/tree/streaming/makefile
@@ -1,12 +1,11 @@
# file : examples/cxx/tree/streaming/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
xsd := position.xsd
-cxx := driver.cxx parser.cxx serializer.cxx
+cxx := driver.cxx parser.cxx serializer.cxx grammar-input-stream.cxx
obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o))
dep := $(obj:.o=.o.d)
@@ -29,17 +28,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization
+$(gen): xsd_options += --generate-serialization
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -59,6 +58,8 @@ $(install):
$(call install-data,$(src_base)/parser.hxx,$(install_doc_dir)/xsd/$(path)/parser.hxx)
$(call install-data,$(src_base)/serializer.cxx,$(install_doc_dir)/xsd/$(path)/serializer.cxx)
$(call install-data,$(src_base)/serializer.hxx,$(install_doc_dir)/xsd/$(path)/serializer.hxx)
+ $(call install-data,$(src_base)/grammar-input-stream.cxx,$(install_doc_dir)/xsd/$(path)/grammar-input-stream.cxx)
+ $(call install-data,$(src_base)/grammar-input-stream.hxx,$(install_doc_dir)/xsd/$(path)/grammar-input-stream.hxx)
$(call install-data,$(src_base)/position.xsd,$(install_doc_dir)/xsd/$(path)/position.xsd)
$(call install-data,$(src_base)/position.xml,$(install_doc_dir)/xsd/$(path)/position.xml)
@@ -68,6 +69,8 @@ $(dist-common):
$(call install-data,$(src_base)/parser.hxx,$(dist_prefix)/$(path)/parser.hxx)
$(call install-data,$(src_base)/serializer.cxx,$(dist_prefix)/$(path)/serializer.cxx)
$(call install-data,$(src_base)/serializer.hxx,$(dist_prefix)/$(path)/serializer.hxx)
+ $(call install-data,$(src_base)/grammar-input-stream.cxx,$(dist_prefix)/$(path)/grammar-input-stream.cxx)
+ $(call install-data,$(src_base)/grammar-input-stream.hxx,$(dist_prefix)/$(path)/grammar-input-stream.hxx)
$(call install-data,$(src_base)/position.xsd,$(dist_prefix)/$(path)/position.xsd)
$(call install-data,$(src_base)/position.xml,$(dist_prefix)/$(path)/position.xml)
@@ -76,7 +79,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
diff --git a/xsd/examples/cxx/tree/streaming/parser.cxx b/xsd/examples/cxx/tree/streaming/parser.cxx
index b0d9df7..41ad7af 100644
--- a/xsd/examples/cxx/tree/streaming/parser.cxx
+++ b/xsd/examples/cxx/tree/streaming/parser.cxx
@@ -1,6 +1,4 @@
-// file : examples/cxx/tree/streaming/parser.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : not copyrighted - public domain
+#include <cassert>
#include <xercesc/util/XMLUni.hpp>
#include <xercesc/util/XMLString.hpp>
@@ -11,10 +9,10 @@
#include <xercesc/sax2/XMLReaderFactory.hpp>
#include <xercesc/dom/DOM.hpp>
+#include <xercesc/dom/impl/DOMTextImpl.hpp>
-#if _XERCES_VERSION >= 30000
-# include <xercesc/dom/impl/DOMTextImpl.hpp>
-#endif
+#include <xercesc/validators/common/Grammar.hpp> // xercesc::Grammar
+#include <xercesc/framework/XMLGrammarPoolImpl.hpp>
#include <xsd/cxx/auto-array.hxx>
@@ -25,6 +23,7 @@
#include <xsd/cxx/tree/error-handler.hxx>
#include "parser.hxx"
+#include "grammar-input-stream.hxx"
using namespace std;
using namespace xercesc;
@@ -32,16 +31,22 @@ using namespace xercesc;
namespace xml = xsd::cxx::xml;
namespace tree = xsd::cxx::tree;
+typedef parser::document_ptr document_ptr;
+
class parser_impl: public DefaultHandler
{
public:
- parser_impl ();
+ parser_impl (const XMLByte* grammar, size_t grammar_size);
- xml::dom::auto_ptr<DOMDocument>
+ void
start (istream& is, const string& id, bool validate);
- xml::dom::auto_ptr<DOMDocument>
- next ();
+ document_ptr
+ peek ();
+
+ document_ptr
+ next (document_ptr doc = document_ptr (),
+ document_ptr outer_doc = document_ptr ());
// SAX event handlers.
//
@@ -59,17 +64,13 @@ private:
virtual void
characters (const XMLCh* const s,
-#if _XERCES_VERSION >= 30000
- const XMLSize_t length
-#else
- const unsigned int length
-#endif
- );
+ const XMLSize_t length);
private:
// SAX parser.
//
bool clean_;
+ auto_ptr<XMLGrammarPool> grammar_pool_;
auto_ptr<SAX2XMLReader> parser_;
XMLPScanToken token_;
tree::error_handler<char> error_handler_;
@@ -77,23 +78,40 @@ private:
auto_ptr<xml::sax::std_input_source> isrc_;
size_t depth_;
+ size_t whitespace_depth_; // Depth at which to ignore whitespaces.
+
+ bool peek_;
+ size_t next_depth_; // Depth at which next() should work.
// DOM document being built.
//
DOMImplementation& dom_impl_;
- xml::dom::auto_ptr<DOMDocument> doc_;
+ document_ptr doc_;
DOMElement* cur_;
};
const XMLCh ls[] = {chLatin_L, chLatin_S, chNull};
parser_impl::
-parser_impl ()
+parser_impl (const XMLByte* grammar, size_t grammar_size)
: clean_ (true),
- parser_ (XMLReaderFactory::createXMLReader ()),
error_proxy_ (error_handler_),
dom_impl_ (*DOMImplementationRegistry::getDOMImplementation (ls))
{
+ MemoryManager* mm (XMLPlatformUtils::fgMemoryManager);
+
+ if (grammar != 0)
+ {
+ assert (grammar_size != 0);
+ grammar_pool_.reset (new XMLGrammarPoolImpl (mm));
+
+ grammar_input_stream is (grammar, grammar_size);
+ grammar_pool_->deserializeGrammars(&is);
+ grammar_pool_->lockPool ();
+ }
+
+ parser_.reset (XMLReaderFactory::createXMLReader (mm, grammar_pool_.get ()));
+
parser_->setFeature (XMLUni::fgSAX2CoreNameSpaces, true);
parser_->setFeature (XMLUni::fgSAX2CoreNameSpacePrefixes, true);
parser_->setFeature (XMLUni::fgXercesValidationErrorAsFatal, true);
@@ -101,7 +119,7 @@ parser_impl ()
// Xerces-C++ 3.1.0 is the first version with working multi import
// support. It also allows us to disable buffering in the parser
- // so that the date is parsed and returned as soon as it is
+ // so that the data is parsed and returned as soon as it is
// available.
//
#if _XERCES_VERSION >= 30100
@@ -115,12 +133,13 @@ parser_impl ()
parser_->setContentHandler (this);
}
-xml::dom::auto_ptr<DOMDocument> parser_impl::
+void parser_impl::
start (istream& is, const string& id, bool val)
{
// Reset our state.
//
depth_ = 0;
+ peek_ = false;
doc_.reset ();
error_handler_.reset ();
@@ -134,59 +153,116 @@ start (istream& is, const string& id, bool val)
parser_->setFeature (XMLUni::fgSAX2CoreValidation, val);
parser_->setFeature (XMLUni::fgXercesSchema, val);
- // Start parsing. The first document that we return is a "carcase"
- // of the complete document. That is, the root element with all the
- // attributes but without any content.
- //
- bool r (parser_->parseFirst (*isrc_, token_));
+ if (val && grammar_pool_.get () != 0)
+ {
+ // Use the loaded grammar during parsing.
+ //
+ parser_->setFeature (XMLUni::fgXercesUseCachedGrammarInParse, true);
+
+ // Disable loading schemas via other means (e.g., schemaLocation).
+ //
+ parser_->setFeature (XMLUni::fgXercesLoadSchema, false);
+ }
+
+ parser_->parseFirst (*isrc_, token_);
error_handler_.throw_if_failed<tree::parsing<char> > ();
+}
+
+document_ptr parser_impl::
+peek ()
+{
+ bool r (true);
+
+ size_t d (depth_);
+ whitespace_depth_ = d;
+
+ peek_ = true;
- while (r && depth_ == 0)
+ // Parse (skip whitespace content) until the depth increases or we get
+ // a document. The latter test covers <element/> cases where both start
+ // and end events will trigger and therefore leave the depth unchanged.
+ //
+ while (r && depth_ == d && doc_.get () == 0)
{
r = parser_->parseNext (token_);
error_handler_.throw_if_failed<tree::parsing<char> > ();
}
if (!r)
- return xml::dom::auto_ptr<DOMDocument> (0);
+ return document_ptr (0);
return doc_;
}
-xml::dom::auto_ptr<DOMDocument> parser_impl::
-next ()
+document_ptr parser_impl::
+next (document_ptr doc, document_ptr outer_doc)
{
- // We should be at depth 1. If not, then we are done parsing.
+ assert (peek_ == (doc.get () != 0));
+
+ // Install doc/outer_doc as the document we are parsing.
//
- if (depth_ != 1)
- return xml::dom::auto_ptr<DOMDocument> (0);
+ if (doc.get () != 0)
+ {
+ if (outer_doc.get () != 0)
+ {
+ // Copy doc to outer_doc.
+ //
+ doc_ = outer_doc;
+ cur_ = static_cast<DOMElement*> (
+ doc_->importNode (doc->getDocumentElement (), true));
+ doc_->getDocumentElement ()->appendChild (cur_);
+ }
+ else
+ {
+ doc_ = doc;
+ cur_ = doc_->getDocumentElement ();
+ }
+
+ // This handles the <element/> case where we get both start and
+ // end events in peek(). In this case the element is fully parsed
+ // and next() has nothing to do.
+ //
+ if (depth_ != next_depth_)
+ {
+ peek_ = false;
+ return doc_;
+ }
+ }
bool r (true);
+ // If we peeked, then we have already seen the start tag and our
+ // return depth is one above the current depth.
+ //
+ size_t d (peek_ ? depth_ - 1 : depth_);
+ whitespace_depth_ = d;
+
+ peek_ = false;
+
// Keep calling parseNext() until we either move to a greater depth or
// get a document. This way we skip the text (presumably whitespaces)
- // that may be preceding the next chunk.
+ // that may be preceding this chunk.
//
- while (r && depth_ == 1 && doc_.get () == 0)
+ while (r && depth_ == d && doc_.get () == 0)
{
parser_->parseNext (token_);
error_handler_.throw_if_failed<tree::parsing<char> > ();
}
if (!r)
- return xml::dom::auto_ptr<DOMDocument> (0);
+ return document_ptr (0);
- // If we are not at depth 1, keep calling parseNext() until we get
- // there.
+ // If we are not at our start depth, keep calling parseNext() until we
+ // get there again.
//
- while (r && depth_ != 1)
+ while (r && depth_ != d)
{
r = parser_->parseNext (token_);
error_handler_.throw_if_failed<tree::parsing<char> > ();
}
if (!r)
- return xml::dom::auto_ptr<DOMDocument> (0);
+ return document_ptr (0);
return doc_;
}
@@ -214,18 +290,25 @@ startElement (const XMLCh* const uri,
// Set attributes.
//
-#if _XERCES_VERSION >= 30000
for (XMLSize_t i (0), end (attr.getLength()); i < end; ++i)
-#else
- for (unsigned int i (0), end (attr.getLength()); i < end; ++i)
-#endif
{
- cur_->setAttributeNS (attr.getURI (i),
- attr.getQName (i),
- attr.getValue (i));
+ const XMLCh* qn (attr.getQName (i));
+ const XMLCh* ns (attr.getURI (i));
+
+ // When SAX2 reports the xmlns attribute, it does not include
+ // the proper attribute namespace. So we have to detect and
+ // handle this case.
+ //
+ if (XMLString::equals (qn, XMLUni::fgXMLNSString))
+ ns = XMLUni::fgXMLNSURIName;
+
+ cur_->setAttributeNS (ns, qn, attr.getValue (i));
}
depth_++;
+
+ if (peek_)
+ next_depth_ = depth_;
}
void parser_impl::
@@ -239,38 +322,21 @@ endElement (const XMLCh* const /*uri*/,
cur_ = static_cast<DOMElement*> (cur_->getParentNode ());
}
-#if _XERCES_VERSION >= 30000
void parser_impl::
characters (const XMLCh* const s, const XMLSize_t length)
{
const XMLCh empty[] = {chNull};
- // Ignore text content (presumably whitespaces) in the root element.
+ // Ignore text content (presumably whitespaces) while looking for
+ // the next element.
//
- if (depth_ > 1)
+ if (depth_ > whitespace_depth_)
{
DOMText* t = doc_->createTextNode (empty);
static_cast<DOMTextImpl*> (t)->appendData (s, length);
cur_->appendChild (t);
}
}
-#else
-void parser_impl::
-characters (const XMLCh* const s, const unsigned int length)
-{
- // Ignore text content (presumably whitespaces) in the root element.
- //
- if (depth_ > 1)
- {
- // For Xerces-C++ 2-series we have to make copy.
- //
- xsd::cxx::auto_array<XMLCh> tmp (new XMLCh[length + 1]);
- XMLString::copyNString (tmp.get (), s, length);
- cur_->appendChild (doc_->createTextNode (tmp.get ()));
- }
-}
-#endif
-
//
// parser
@@ -282,19 +348,25 @@ parser::
}
parser::
-parser ()
- : impl_ (new parser_impl)
+parser (const XMLByte* grammar, size_t grammar_size)
+ : impl_ (new parser_impl (grammar, grammar_size))
{
}
-xml::dom::auto_ptr<DOMDocument> parser::
+void parser::
start (istream& is, const string& id, bool val)
{
return impl_->start (is, id, val);
}
-xml::dom::auto_ptr<DOMDocument> parser::
-next ()
+document_ptr parser::
+peek ()
+{
+ return impl_->peek ();
+}
+
+document_ptr parser::
+next (document_ptr doc, document_ptr outer_doc)
{
- return impl_->next ();
+ return impl_->next (doc, outer_doc);
}
diff --git a/xsd/examples/cxx/tree/streaming/parser.hxx b/xsd/examples/cxx/tree/streaming/parser.hxx
index 000d022..cb34f92 100644
--- a/xsd/examples/cxx/tree/streaming/parser.hxx
+++ b/xsd/examples/cxx/tree/streaming/parser.hxx
@@ -1,13 +1,10 @@
-// file : examples/cxx/tree/streaming/parser.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : not copyrighted - public domain
-
#ifndef PARSER_HXX
#define PARSER_HXX
#include <string>
#include <iosfwd>
-#include <memory> // std::auto_ptr
+#include <cstddef> // std::size_t
+#include <memory> // std::auto_ptr
#include <xercesc/dom/DOMDocument.hpp>
@@ -18,20 +15,44 @@ class parser_impl;
class parser
{
public:
+ // We can specify embedded XML Schema grammar to be used by the parser
+ // that was created by the xsdbin utility from the 'embedded' example.
+ //
+ parser (const XMLByte* grammar = 0, std::size_t grammar_size = 0);
~parser ();
- parser ();
- // The start function returns a "carcase" of the complete document. That
- // is, the root element with all the attributes but without any content.
+ // The start function prepares everything for parsing a new document.
//
- xsd::cxx::xml::dom::auto_ptr<xercesc::DOMDocument>
+ void
start (std::istream& is, const std::string& id, bool validate);
- // The next function returns next first-level element with all its
- // attributes and content or 0 if no more available.
+ typedef xsd::cxx::xml::dom::auto_ptr<xercesc::DOMDocument> document_ptr;
+
+ // The peek function parses just the next element (ignoring any
+ // preceding content assuming it is whitespace) without parsing
+ // any of its nested content (but it includes the element's
+ // attributes). It returns NULL if there are no more elements
+ // at this level (there could still be on outer levels in case
+ // of nested streaming).
+ //
+ document_ptr
+ peek ();
+
+ // The next function parses (or finishes parsing after peek) the
+ // next element including its nested content. It returns NULL if
+ // there are no more elements at this level (there could still
+ // be on outer levels in case of nested streaming).
+ //
+ // If doc is not NULL, then it should be the document returned
+ // by peek(). That is, a document with only the root element.
+ // In this case next() finishes parsing this element.
+ //
+ // If outer_doc is not NULL, then next() will first add doc to
+ // outer_doc as a child of the document root.
//
- xsd::cxx::xml::dom::auto_ptr<xercesc::DOMDocument>
- next ();
+ document_ptr
+ next (document_ptr doc = document_ptr (),
+ document_ptr outer_doc = document_ptr ());
private:
parser (const parser&);
diff --git a/xsd/examples/cxx/tree/streaming/position.xml b/xsd/examples/cxx/tree/streaming/position.xml
index e40b0c8..a3428bf 100644
--- a/xsd/examples/cxx/tree/streaming/position.xml
+++ b/xsd/examples/cxx/tree/streaming/position.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/streaming/position.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/streaming/position.xsd b/xsd/examples/cxx/tree/streaming/position.xsd
index 13f6e9a..18dda94 100644
--- a/xsd/examples/cxx/tree/streaming/position.xsd
+++ b/xsd/examples/cxx/tree/streaming/position.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/streaming/position.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/streaming/serializer.cxx b/xsd/examples/cxx/tree/streaming/serializer.cxx
index 58bc5cb..0ce8156 100644
--- a/xsd/examples/cxx/tree/streaming/serializer.cxx
+++ b/xsd/examples/cxx/tree/streaming/serializer.cxx
@@ -1,10 +1,11 @@
-// file : examples/cxx/tree/streaming/serializer.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : not copyrighted - public domain
+#include <vector>
+#include <cassert>
+#include <cstddef>
#include <xercesc/util/XMLUni.hpp>
#include <xercesc/dom/DOM.hpp>
+#include <xercesc/dom/impl/DOMLSSerializerImpl.hpp>
#include <xsd/cxx/xml/string.hxx>
#include <xsd/cxx/xml/dom/bits/error-handler-proxy.hxx>
@@ -21,32 +22,355 @@ using namespace xercesc;
namespace xml = xsd::cxx::xml;
namespace tree = xsd::cxx::tree;
+static const XMLCh gEOLSeq[] =
+{
+ chLF, chNull
+};
+
+static const XMLCh gUTF8[] =
+{
+ chLatin_U, chLatin_T, chLatin_F, chDash, chDigit_8, chNull
+};
+
+static const XMLCh gEndElement[] =
+{
+ chOpenAngle, chForwardSlash, chNull
+};
+
+static const int DISCARD_DEFAULT_CONTENT_ID = 0x1;
+static const int ENTITIES_ID = 0x2;
+static const int FORMAT_PRETTY_PRINT_1ST_LEVEL_ID = 0xA;
+
+class StreamingDOMSerializer: public DOMLSSerializerImpl
+{
+public:
+ StreamingDOMSerializer (MemoryManager* manager)
+ : DOMLSSerializerImpl (manager)
+ {
+ }
+
+ bool
+ startOpen (const DOMElement* e, DOMLSOutput* const destination)
+ {
+ const DOMDocument* docu (e->getOwnerDocument ());
+ assert (docu != 0);
+
+ // Code adapted from DOMLSSerializerImpl::write().
+ //
+ target_ = destination->getByteStream();
+
+ fEncodingUsed = gUTF8;
+
+ const XMLCh* lsEncoding=destination->getEncoding();
+ if (lsEncoding && *lsEncoding)
+ {
+ fEncodingUsed = lsEncoding;
+ }
+ else if (docu)
+ {
+ const XMLCh* tmpEncoding = docu->getInputEncoding();
+
+ if ( tmpEncoding && *tmpEncoding)
+ {
+ fEncodingUsed = tmpEncoding;
+ }
+ else
+ {
+ tmpEncoding = docu->getXmlEncoding();
+
+ if ( tmpEncoding && *tmpEncoding)
+ {
+ fEncodingUsed = tmpEncoding;
+ }
+ }
+ }
+
+ fNewLineUsed = (fNewLine && *fNewLine)? fNewLine : gEOLSeq;
+
+ fDocumentVersion = (docu->getXmlVersion() && *(docu->getXmlVersion()))
+ ? docu->getXmlVersion()
+ : XMLUni::fgVersion1_0;
+
+ fErrorCount = 0;
+
+ fLineFeedInTextNodePrinted = false;
+ fLastWhiteSpaceInTextNode = 0;
+
+ level_ = 0;
+ namespace_map_.clear ();
+
+ fFormatter = new (fMemoryManager) XMLFormatter( fEncodingUsed
+ ,fDocumentVersion
+ ,target_
+ ,XMLFormatter::NoEscapes
+ ,XMLFormatter::UnRep_CharRef
+ ,fMemoryManager);
+ formatter_.reset (fFormatter);
+
+ // Write out the XML declaration, etc. Here we assume that the document
+ // has no children (i.e., no root element).
+ //
+ processNode (docu, 0);
+ fLineFeedInTextNodePrinted = true;
+
+ return writeOpen (e);
+ }
+
+ bool
+ writeOpen (const DOMElement* e)
+ {
+ // Code adapted from the first part of ELEMENT_NODE case in
+ // DOMLSSerializerImpl::processNode().
+ //
+
+ if (!fLineFeedInTextNodePrinted)
+ {
+ if(level_ == 1 && getFeature(FORMAT_PRETTY_PRINT_1ST_LEVEL_ID))
+ printNewLine();
+
+ printNewLine();
+ }
+ else
+ {
+ fLineFeedInTextNodePrinted = false;
+ }
+
+ printIndent(level_);
+
+ RefHashTableOf<XMLCh>* namespaceMap = NULL;
+
+ *fFormatter << XMLFormatter::NoEscapes << chOpenAngle <<
+ e->getNodeName ();
+
+ setURCharRef();
+ DOMNamedNodeMap *attributes = e->getAttributes();
+ XMLSize_t attrCount = attributes->getLength();
+
+ const XMLCh* prefix = e->getPrefix();
+ const XMLCh* uri = e->getNamespaceURI();
+ if((uri && uri[0]) ||
+ ((prefix==0 || prefix[0]==0) && isDefaultNamespacePrefixDeclared()))
+ {
+ if(prefix==0 || prefix[0]==0)
+ prefix=XMLUni::fgZeroLenString;
+ if(!isNamespaceBindingActive(prefix, uri))
+ {
+ if(namespaceMap==NULL)
+ {
+ namespaceMap=new (fMemoryManager) RefHashTableOf<XMLCh>(12, false, fMemoryManager);
+ fNamespaceStack->addElement(namespaceMap);
+ }
+ namespaceMap->put((void*)prefix,(XMLCh*)uri);
+ *fFormatter << XMLFormatter::NoEscapes
+ << chSpace << XMLUni::fgXMLNSString;
+
+ if(!XMLString::equals(prefix,XMLUni::fgZeroLenString))
+ *fFormatter << chColon << prefix;
+
+ *fFormatter << chEqual << chDoubleQuote
+ << XMLFormatter::AttrEscapes
+ << uri
+ << XMLFormatter::NoEscapes
+ << chDoubleQuote;
+ }
+ }
+
+ bool discard = getFeature(DISCARD_DEFAULT_CONTENT_ID);
+ for (XMLSize_t i = 0; i < attrCount; i++)
+ {
+ DOMAttr* attribute = (DOMAttr*)attributes->item(i);
+
+ if (discard && !((DOMAttr*)attribute )->getSpecified())
+ continue;
+
+ // if this attribute is a namespace declaration, add it to the namespace map for the current level
+ const XMLCh* ns = attribute->getNamespaceURI();
+ if (ns != 0 )
+ {
+ if(XMLString::equals(ns, XMLUni::fgXMLNSURIName))
+ {
+ if(namespaceMap==NULL)
+ {
+ namespaceMap=new (fMemoryManager) RefHashTableOf<XMLCh>(12, false, fMemoryManager);
+ fNamespaceStack->addElement(namespaceMap);
+ }
+ const XMLCh* nsPrefix = attribute->getLocalName();
+ if(XMLString::equals(attribute->getNodeName(),XMLUni::fgXMLNSString))
+ nsPrefix = XMLUni::fgZeroLenString;
+ if(namespaceMap->containsKey((void*)nsPrefix))
+ continue;
+ namespaceMap->put((void*)attribute->getLocalName(),(XMLCh*)attribute->getNodeValue());
+ }
+ else if(!XMLString::equals(ns, XMLUni::fgXMLURIName))
+ {
+ // check if the namespace for the current node is already defined
+ const XMLCh* prefix = attribute->getPrefix();
+ if(prefix && prefix[0])
+ {
+ const XMLCh* uri = attribute->getNamespaceURI();
+ if(!isNamespaceBindingActive(prefix, uri))
+ {
+ if(namespaceMap==NULL)
+ {
+ namespaceMap=new (fMemoryManager) RefHashTableOf<XMLCh>(12, false, fMemoryManager);
+ fNamespaceStack->addElement(namespaceMap);
+ }
+ namespaceMap->put((void*)prefix,(XMLCh*)uri);
+ *fFormatter << XMLFormatter::NoEscapes
+ << chSpace << XMLUni::fgXMLNSString << chColon << prefix
+ << chEqual << chDoubleQuote
+ << XMLFormatter::AttrEscapes
+ << uri
+ << XMLFormatter::NoEscapes
+ << chDoubleQuote;
+ }
+ }
+ }
+ }
+
+ if (XMLString::equals(ns, XMLUni::fgXMLNSURIName) || checkFilter(attribute) == DOMNodeFilter::FILTER_ACCEPT)
+ {
+ *fFormatter << XMLFormatter::NoEscapes
+ << chSpace << attribute->getNodeName()
+ << chEqual << chDoubleQuote
+ << XMLFormatter::AttrEscapes;
+
+ if (getFeature(ENTITIES_ID))
+ {
+ DOMNode* child = attribute->getFirstChild();
+ while( child != 0)
+ {
+ if(child->getNodeType()==DOMNode::TEXT_NODE)
+ *fFormatter << child->getNodeValue();
+ else if(child->getNodeType()==DOMNode::ENTITY_REFERENCE_NODE)
+ *fFormatter << XMLFormatter::NoEscapes
+ << chAmpersand << child->getNodeName() << chSemiColon
+ << XMLFormatter::AttrEscapes;
+ child = child->getNextSibling();
+ }
+ }
+ else
+ *fFormatter << attribute->getNodeValue();
+
+ *fFormatter << XMLFormatter::NoEscapes << chDoubleQuote;
+ }
+ }
+
+ *fFormatter << XMLFormatter::NoEscapes << chCloseAngle;
+
+ // Keep track of whether we have added a namespace map for this
+ // element. Used to pop it in writeClose().
+ //
+ namespace_map_.push_back (namespaceMap != 0);
+
+ level_++;
+
+ DOMNode* child = e->getFirstChild();
+ while (child != 0)
+ {
+ processNode (child, level_);
+ child = child->getNextSibling();
+ }
+
+ return fErrorCount == 0;
+ }
+
+ bool
+ writeClose (const XMLCh* name)
+ {
+ // Code adapted from the second part of ELEMENT_NODE case in
+ // DOMLSSerializerImpl::processNode().
+ //
+ level_--;
+
+ // Assume we are not on the same line (nodeLine != fCurrentLine).
+ //
+ {
+ if (!fLineFeedInTextNodePrinted)
+ {
+ printNewLine();
+ }
+ else
+ {
+ fLineFeedInTextNodePrinted = false;
+ }
+
+ if(level_ == 0 && getFeature(FORMAT_PRETTY_PRINT_1ST_LEVEL_ID))
+ printNewLine();
+
+ printIndent(level_);
+ }
+
+ *fFormatter << XMLFormatter::NoEscapes << gEndElement <<
+ name << chCloseAngle;
+
+ if (namespace_map_.back ())
+ fNamespaceStack->removeLastElement();
+
+ namespace_map_.pop_back ();
+
+ if (level_ == 0)
+ {
+ printNewLine();
+ target_->flush ();
+ }
+
+ return fErrorCount == 0;
+ }
+
+ bool
+ write (const DOMElement* e)
+ {
+ processNode (e, level_);
+ return fErrorCount == 0;
+ }
+
+ using DOMLSSerializerImpl::write; // Whole document.
+
+private:
+ XMLFormatTarget* target_;
+ std::auto_ptr<XMLFormatter> formatter_;
+ int level_;
+
+ std::vector<bool> namespace_map_;
+};
+
class serializer_impl
{
public:
+ typedef serializer::namespace_infomap namespace_infomap;
+
serializer_impl ();
void
start (ostream& os, const string& encoding);
DOMElement*
- create (const string& name);
+ create (const string& name, const namespace_infomap&);
DOMElement*
- create (const string& ns, const string& qname);
+ create (const string& ns, const string& qname, const namespace_infomap&);
+
+ void
+ serialize (xml::dom::auto_ptr<DOMElement>);
void
- serialize (DOMElement& e);
+ serialize_open (xml::dom::auto_ptr<DOMElement>);
+
+ void
+ serialize_close (const string&);
+
+private:
+ void
+ clear_document ();
private:
+ bool start_;
+
// Serializer.
//
-#if _XERCES_VERSION >= 30000
xml::dom::auto_ptr<DOMLSOutput> out_;
- xml::dom::auto_ptr<DOMLSSerializer> serializer_;
-#else
- xml::dom::auto_ptr<DOMWriter> serializer_;
-#endif
+ xml::dom::auto_ptr<StreamingDOMSerializer> serializer_;
auto_ptr<xml::dom::ostream_format_target> oft_;
@@ -57,6 +381,10 @@ private:
//
DOMImplementation& dom_impl_;
xml::dom::auto_ptr<DOMDocument> doc_;
+ vector<DOMElement*> element_stack_;
+
+ size_t element_count_; // Number of elements serialized using current doc.
+ static const size_t element_count_limit_ = 500;
};
const XMLCh ls[] = {chLatin_L, chLatin_S, chNull};
@@ -64,65 +392,167 @@ const XMLCh ls[] = {chLatin_L, chLatin_S, chNull};
serializer_impl::
serializer_impl ()
: error_proxy_ (error_handler_),
- dom_impl_ (*DOMImplementationRegistry::getDOMImplementation (ls)),
- doc_ (dom_impl_.createDocument ())
+ dom_impl_ (*DOMImplementationRegistry::getDOMImplementation (ls))
{
-#if _XERCES_VERSION >= 30000
- serializer_.reset (dom_impl_.createLSSerializer ());
- DOMConfiguration* conf (serializer_->getDomConfig ());
+ serializer_.reset (
+ new (XMLPlatformUtils::fgMemoryManager)
+ StreamingDOMSerializer (XMLPlatformUtils::fgMemoryManager));
+ DOMConfiguration* conf (serializer_->getDomConfig ());
conf->setParameter (XMLUni::fgDOMErrorHandler, &error_proxy_);
+ conf->setParameter (XMLUni::fgDOMXMLDeclaration, true);
conf->setParameter (XMLUni::fgDOMWRTDiscardDefaultContent, true);
conf->setParameter (XMLUni::fgDOMWRTFormatPrettyPrint, true);
- conf->setParameter (XMLUni::fgDOMXMLDeclaration, false);
-#else
- serializer_.reset (dom_impl_.createDOMWriter ());
-
- serializer_->setErrorHandler (&error_proxy_);
- serializer_->setFeature (XMLUni::fgDOMWRTDiscardDefaultContent, true);
- serializer_->setFeature (XMLUni::fgDOMWRTFormatPrettyPrint, true);
- serializer_->setFeature (XMLUni::fgDOMXMLDeclaration, false);
-#endif
+ conf->setParameter (XMLUni::fgDOMWRTXercesPrettyPrint, false);
}
void serializer_impl::
start (ostream& os, const string& encoding)
{
+ element_stack_.clear ();
+ doc_.reset (dom_impl_.createDocument ());
+ element_count_ = 0;
+
error_handler_.reset ();
oft_.reset (new xml::dom::ostream_format_target (os));
-#if _XERCES_VERSION >= 30000
out_.reset (dom_impl_.createLSOutput ());
out_->setEncoding (xml::string (encoding).c_str ());
out_->setByteStream (oft_.get ());
-#else
- serializer_->setEncoding (xml::string (encoding).c_str ());
-#endif
+
+ start_ = true;
}
DOMElement* serializer_impl::
-create (const string& name)
+create (const string& name, const namespace_infomap& map)
{
- return doc_->createElement (xml::string (name).c_str ());
+ DOMElement* r (doc_->createElement (xml::string (name).c_str ()));
+
+ if (!map.empty ())
+ xml::dom::add_namespaces<char> (*r, map);
+
+ // Add the element as the child of the stack "tip" so that it
+ // "sees" all the namespace declarations active from this point.
+ //
+ if (!element_stack_.empty ())
+ element_stack_.back ()->appendChild (r);
+
+ return r;
}
DOMElement* serializer_impl::
-create (const string& ns, const string& qname)
+create (const string& ns, const string& qname, const namespace_infomap& map)
{
- return doc_->createElementNS (
- xml::string (ns).c_str (), xml::string (qname).c_str ());
+ DOMElement* r (
+ doc_->createElementNS (
+ xml::string (ns).c_str (), xml::string (qname).c_str ()));
+
+ if (!map.empty ())
+ xml::dom::add_namespaces<char> (*r, map);
+
+ // Add the element as the child of the stack "tip" so that it
+ // "sees" all the namespace declarations active from this point.
+ //
+ if (!element_stack_.empty ())
+ element_stack_.back ()->appendChild (r);
+
+ return r;
}
void serializer_impl::
-serialize (DOMElement& e)
+serialize (xml::dom::auto_ptr<DOMElement> p)
{
-#if _XERCES_VERSION >= 30000
- serializer_->write (&e, out_.get ());
-#else
- serializer_->writeNode (oft_.get (), e);
-#endif
+ DOMElement* e (p.get ());
+
+ if (start_)
+ {
+ serializer_->write (e, out_.get ());
+ start_ = false;
+ }
+ else
+ serializer_->write (e);
+
+ error_handler_.throw_if_failed<tree::serialization<char> > ();
+
+ // Remove this element from its parent before we release.
+ //
+ if (!element_stack_.empty ())
+ element_stack_.back ()->removeChild (e);
+
+ p.reset (); // Release it before we may clear the document below.
+ if (element_count_++ > element_count_limit_)
+ clear_document ();
+}
+
+void serializer_impl::
+serialize_open (xml::dom::auto_ptr<DOMElement> p)
+{
+ DOMElement* e (p.get ());
+
+ if (start_)
+ {
+ serializer_->startOpen (e, out_.get ());
+ start_ = false;
+ }
+ else
+ serializer_->writeOpen (e);
+
+ error_handler_.throw_if_failed<tree::serialization<char> > ();
+
+ // Add this element to the element stack. serialize_close() is
+ // responsible for its removal and releasing.
+ //
+ element_stack_.push_back (e);
+ p.release ();
+}
+
+void serializer_impl::
+serialize_close (const string& name)
+{
+ serializer_->writeClose (xml::string (name).c_str ());
error_handler_.throw_if_failed<tree::serialization<char> > ();
+
+ // Release the element.
+ //
+ DOMElement* e (element_stack_.back ());
+ element_stack_.pop_back ();
+
+ if (!element_stack_.empty ())
+ element_stack_.back ()->removeChild (e);
+
+ e->release ();
+
+ if (element_count_++ > element_count_limit_)
+ clear_document ();
+}
+
+void serializer_impl::
+clear_document ()
+{
+ // Re-create the document in order to force deallocation of its
+ // internal heap. While Xerces-C++ DOM tries to re-use memory,
+ // it still accumulates no longer used memory blocks.
+ //
+ xml::dom::auto_ptr<DOMDocument> doc (dom_impl_.createDocument ());
+
+ if (!element_stack_.empty ())
+ {
+ DOMElement* e (
+ static_cast<DOMElement*> (
+ doc->importNode (element_stack_.front (), true)));
+
+ for (vector<DOMElement*>::iterator i (element_stack_.begin ());
+ i != element_stack_.end ();
+ ++i)
+ {
+ *i = e;
+ e = static_cast<DOMElement*> (e->getFirstChild ());
+ }
+ }
+
+ doc_ = doc;
+ element_count_ = 0;
}
//
@@ -147,19 +577,31 @@ start (ostream& os, const string& encoding)
}
DOMElement* serializer::
-create (const string& name)
+create (const string& name, const namespace_infomap& map)
{
- return impl_->create (name);
+ return impl_->create (name, map);
}
DOMElement* serializer::
-create (const string& ns, const string& qname)
+create (const string& ns, const string& qname, const namespace_infomap& map)
{
- return impl_->create (ns, qname);
+ return impl_->create (ns, qname, map);
}
void serializer::
-serialize (DOMElement& e)
+serialize (xml::dom::auto_ptr<DOMElement> e)
{
impl_->serialize (e);
}
+
+void serializer::
+serialize_open (xml::dom::auto_ptr<DOMElement> e)
+{
+ impl_->serialize_open (e);
+}
+
+void serializer::
+serialize_close (const string& name)
+{
+ impl_->serialize_close (name);
+}
diff --git a/xsd/examples/cxx/tree/streaming/serializer.hxx b/xsd/examples/cxx/tree/streaming/serializer.hxx
index 6ff0114..43fab69 100644
--- a/xsd/examples/cxx/tree/streaming/serializer.hxx
+++ b/xsd/examples/cxx/tree/streaming/serializer.hxx
@@ -12,12 +12,15 @@
#include <xercesc/dom/DOMElement.hpp>
#include <xsd/cxx/xml/dom/auto-ptr.hxx>
+#include <xsd/cxx/xml/dom/serialization-header.hxx> // namespace_infomap
class serializer_impl;
class serializer
{
public:
+ typedef xsd::cxx::xml::dom::namespace_infomap<char> namespace_infomap;
+
~serializer ();
serializer ();
@@ -34,12 +37,55 @@ public:
next (const std::string& name, const T& x);
// Serialize next object model fragment into an element with the specified
+ // name and namespace declarations.
+ //
+ template <typename T>
+ void
+ next (const std::string& name, const namespace_infomap&, const T& x);
+
+ // Serialize next object model fragment into an element with the specified
// namespace and qualified name.
//
template <typename T>
void
next (const std::string& ns, const std::string& name, const T& x);
+ // Serialize next object model fragment into an element with the specified
+ // namespace and qualified name as well as namespace declarations.
+ //
+ template <typename T>
+ void
+ next (const std::string& ns,
+ const std::string& name,
+ const namespace_infomap&,
+ const T& x);
+
+ // The next_open/close functions are like next() but split into two steps.
+ // next_open() serializes the object model fragment into an element leaving
+ // it open while next_close() closes the element.
+ //
+ template <typename T>
+ void
+ next_open (const std::string& name, const T& x);
+
+ template <typename T>
+ void
+ next_open (const std::string& name, const namespace_infomap&, const T& x);
+
+ template <typename T>
+ void
+ next_open (const std::string& ns, const std::string& name, const T& x);
+
+ template <typename T>
+ void
+ next_open (const std::string& ns,
+ const std::string& name,
+ const namespace_infomap&,
+ const T& x);
+
+ void
+ next_close (const std::string& name);
+
private:
serializer (const serializer&);
@@ -48,13 +94,21 @@ private:
private:
xercesc::DOMElement*
- create (const std::string& name);
+ create (const std::string& name, const namespace_infomap&);
xercesc::DOMElement*
- create (const std::string& ns, const std::string& name);
+ create (const std::string& ns,
+ const std::string& name,
+ const namespace_infomap&);
+
+ void
+ serialize (xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement>);
void
- serialize (xercesc::DOMElement&);
+ serialize_open (xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement>);
+
+ void
+ serialize_close (const std::string& name);
private:
std::auto_ptr<serializer_impl> impl_;
@@ -64,18 +118,88 @@ template <typename T>
inline void serializer::
next (const std::string& name, const T& x)
{
- xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (create (name));
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (
+ create (name, namespace_infomap ()));
+ *e << x;
+ serialize (e);
+}
+
+template <typename T>
+inline void serializer::
+next (const std::string& name, const namespace_infomap& map, const T& x)
+{
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (create (name, map));
*e << x;
- serialize (*e);
+ serialize (e);
}
template <typename T>
inline void serializer::
next (const std::string& ns, const std::string& name, const T& x)
{
- xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (create (ns, name));
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (
+ create (ns, name, namespace_infomap ()));
*e << x;
- serialize (*e);
+ serialize (e);
+}
+
+template <typename T>
+inline void serializer::
+next (const std::string& ns,
+ const std::string& name,
+ const namespace_infomap& map,
+ const T& x)
+{
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (create (ns, name, map));
+ *e << x;
+ serialize (e);
+}
+
+template <typename T>
+inline void serializer::
+next_open (const std::string& name, const T& x)
+{
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (
+ create (name, namespace_infomap ()));
+ *e << x;
+ serialize_open (e);
+}
+
+template <typename T>
+inline void serializer::
+next_open (const std::string& name, const namespace_infomap& map, const T& x)
+{
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (create (name, map));
+ *e << x;
+ serialize_open (e);
+}
+
+template <typename T>
+inline void serializer::
+next_open (const std::string& ns, const std::string& name, const T& x)
+{
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (
+ create (ns, name, namespace_infomap ()));
+ *e << x;
+ serialize_open (e);
+}
+
+template <typename T>
+inline void serializer::
+next_open (const std::string& ns,
+ const std::string& name,
+ const namespace_infomap& map,
+ const T& x)
+{
+ xsd::cxx::xml::dom::auto_ptr<xercesc::DOMElement> e (create (ns, name, map));
+ *e << x;
+ serialize_open (e);
+}
+
+inline void serializer::
+next_close (const std::string& name)
+{
+ serialize_close (name);
}
#endif // SERIALIZER_HXX
diff --git a/xsd/examples/cxx/tree/wildcard/driver.cxx b/xsd/examples/cxx/tree/wildcard/driver.cxx
index 5fc6abf..64acfce 100644
--- a/xsd/examples/cxx/tree/wildcard/driver.cxx
+++ b/xsd/examples/cxx/tree/wildcard/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/wildcard/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <string>
diff --git a/xsd/examples/cxx/tree/wildcard/email.xml b/xsd/examples/cxx/tree/wildcard/email.xml
index 517c3c6..9272d5c 100644
--- a/xsd/examples/cxx/tree/wildcard/email.xml
+++ b/xsd/examples/cxx/tree/wildcard/email.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/wildcard/email.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/wildcard/email.xsd b/xsd/examples/cxx/tree/wildcard/email.xsd
index c14eebe..239cb9d 100644
--- a/xsd/examples/cxx/tree/wildcard/email.xsd
+++ b/xsd/examples/cxx/tree/wildcard/email.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/wildcard/email.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/wildcard/makefile b/xsd/examples/cxx/tree/wildcard/makefile
index 36a645b..8c6fe52 100644
--- a/xsd/examples/cxx/tree/wildcard/makefile
+++ b/xsd/examples/cxx/tree/wildcard/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/wildcard/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -29,18 +28,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-inline --generate-wildcard \
+$(gen): xsd_options += --generate-inline --generate-wildcard \
--generate-serialization --root-element message
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -69,7 +68,7 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
# Clean.
#
diff --git a/xsd/examples/cxx/tree/xpath/README b/xsd/examples/cxx/tree/xpath/README
index 48d40d6..1187743 100644
--- a/xsd/examples/cxx/tree/xpath/README
+++ b/xsd/examples/cxx/tree/xpath/README
@@ -30,17 +30,13 @@ dom-parse.cxx
XML document to a DOM document.
driver.cxx
- Driver for Xerces-C++ 3.x.y/XQilla 2.2.x. It first calls the above
- parse() function to parse the input file to a DOM document using
- XQilla-provided DOM Implementation with support for XPath 2. It
- then parses the DOM document to the object model. Finally, it
- prepares and executes an XPath query on the underlying DOM
- document and then handles the result by getting back from the
- returned DOM nodes to object model nodes.
-
-driver-2.cxx
- Driver for Xerces-C++ 2.x.y/XQilla 2.1.x. It performs the same set
- of actions as driver.cxx above.
+ Driver for the example. It first calls the above parse() function to
+ parse the input file to a DOM document using XQilla-provided DOM
+ Implementation with support for XPath 2. It then parses the DOM
+ document to the object model. Finally, it prepares and executes
+ an XPath query on the underlying DOM document and then handles
+ the result by getting back from the returned DOM nodes to object
+ model nodes.
To run the example on the sample XML document simply execute:
diff --git a/xsd/examples/cxx/tree/xpath/dom-parse.cxx b/xsd/examples/cxx/tree/xpath/dom-parse.cxx
index 82e87b6..0282780 100644
--- a/xsd/examples/cxx/tree/xpath/dom-parse.cxx
+++ b/xsd/examples/cxx/tree/xpath/dom-parse.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/xpath/dom-parse.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include "dom-parse.hxx"
@@ -25,10 +24,6 @@ parse (std::istream& is,
bool validate,
DOMImplementation* impl)
{
-#if _XERCES_VERSION >= 30000
-
- // Xerces-C++ 3.0.0 and later.
- //
xml::dom::auto_ptr<DOMLSParser> parser (
impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
@@ -80,39 +75,12 @@ parse (std::istream& is,
xml::dom::bits::error_handler_proxy<char> ehp (eh);
conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- xml::dom::auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
- parser->setFeature (XMLUni::fgDOMValidation, validate);
- parser->setFeature (XMLUni::fgXercesSchema, validate);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
- tree::error_handler<char> eh;
- xml::dom::bits::error_handler_proxy<char> ehp (eh);
- parser->setErrorHandler (&ehp);
-
-#endif // _XERCES_VERSION >= 30000
-
// Prepare input stream.
//
xml::sax::std_input_source isrc (is, id);
Wrapper4InputSource wrap (&isrc, false);
-#if _XERCES_VERSION >= 30000
xml::dom::auto_ptr<DOMDocument> doc (parser->parse (&wrap));
-#else
- xml::dom::auto_ptr<DOMDocument> doc (parser->parse (wrap));
-#endif
eh.throw_if_failed<tree::parsing<char> > ();
diff --git a/xsd/examples/cxx/tree/xpath/dom-parse.hxx b/xsd/examples/cxx/tree/xpath/dom-parse.hxx
index cfa1555..9fa0eb9 100644
--- a/xsd/examples/cxx/tree/xpath/dom-parse.hxx
+++ b/xsd/examples/cxx/tree/xpath/dom-parse.hxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/xpath/dom-parse.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#ifndef DOM_PARSE
diff --git a/xsd/examples/cxx/tree/xpath/driver-2.cxx b/xsd/examples/cxx/tree/xpath/driver-2.cxx
deleted file mode 100644
index ccbdd7c..0000000
--- a/xsd/examples/cxx/tree/xpath/driver-2.cxx
+++ /dev/null
@@ -1,139 +0,0 @@
-// file : examples/cxx/tree/xpath/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : not copyrighted - public domain
-
-#include <memory> // std::auto_ptr
-#include <string>
-#include <fstream>
-#include <iostream>
-
-#include <xercesc/dom/DOM.hpp>
-
-#include <xqilla/xqilla-dom3.hpp>
-
-#include <xsd/cxx/xml/string.hxx> // xml::string, xml::transcode
-
-#include "dom-parse.hxx"
-
-#include "people.hxx"
-
-using namespace std;
-using namespace xercesc;
-namespace xml = xsd::cxx::xml;
-
-int
-main (int argc, char* argv[])
-{
- if (argc != 2)
- {
- cerr << "usage: " << argv[0] << " people.xml" << endl;
- return 1;
- }
-
- int r (0);
-
- // Initialise Xerces-C++ and XQilla.
- //
- XQillaPlatformUtils::initialize();
-
- // Get the XQilla DOMImplementation object with support for XPath.
- //
- DOMImplementation* impl (
- DOMImplementationRegistry::getDOMImplementation(
- xml::string ("XPath2 3.0").c_str ()));
-
- try
- {
- using namespace people;
-
- ifstream ifs;
- ifs.exceptions (ifstream::badbit | ifstream::failbit);
- ifs.open (argv[1]);
-
- // Parse the XML file to DOM using the XQilla DOMImplementation.
- //
- xml_schema::dom::auto_ptr<xercesc::DOMDocument> dom (
- parse (ifs, argv[1], true, impl));
-
- // Parse the DOM document to the object model. We also request that
- // the DOM document to be associated with the object model.
- //
- std::auto_ptr<directory> d (
- directory_ (dom,
- xml_schema::flags::keep_dom | xml_schema::flags::own_dom));
-
- // Obtain the root element and document corresponding to the
- // directory object.
- //
- DOMElement* root (static_cast<DOMElement*> (d->_node ()));
- DOMDocument* doc (root->getOwnerDocument ());
-
- // Obtain namespace resolver.
- //
- xml_schema::dom::auto_ptr<XQillaNSResolver> resolver (
- (XQillaNSResolver*)doc->createNSResolver (root));
-
- // Set the namespace prefix for the people namespace that we can
- // use reliably in XPath expressions regardless of what is used
- // in XML documents.
- //
- resolver->addNamespaceBinding (
- xml::string ("p").c_str (),
- xml::string ("http://www.codesynthesis.com/people").c_str ());
-
- // Create XPath expression.
- //
- xml_schema::dom::auto_ptr<const XQillaExpression> expr (
- static_cast<const XQillaExpression*> (
- doc->createExpression (
- xml::string ("p:directory/person[age > 30]").c_str (),
- resolver.get ())));
-
- // Execute the query.
- //
- xml_schema::dom::auto_ptr<XPath2Result> r (
- static_cast<XPath2Result*> (
- expr->evaluate (doc, XPath2Result::ITERATOR_RESULT, 0)));
-
- // Iterate over the result.
- //
- cout << "Records matching the query:" << endl;
-
- while (r->iterateNext ())
- {
- const DOMNode* n (r->asNode ());
-
- // Obtain the object model node corresponding to this DOM node.
- //
- person* p (
- static_cast<person*> (
- n->getUserData (xml_schema::dom::tree_node_key)));
-
- // Print the data using the object model.
- //
- cout << endl
- << "First : " << p->first_name () << endl
- << "Last : " << p->last_name () << endl
- << "Gender : " << p->gender () << endl
- << "Age : " << p->age () << endl;
- }
- }
- catch(const DOMException& e)
- {
- cerr << xml::transcode<char> (e.getMessage ()) << std::endl;
- r = 1;
- }
- catch (const xml_schema::exception& e)
- {
- cerr << e << endl;
- r = 1;
- }
- catch (const std::ios_base::failure&)
- {
- cerr << argv[1] << ": unable to open or read failure" << endl;
- r = 1;
- }
-
- XQillaPlatformUtils::terminate();
- return r;
-}
diff --git a/xsd/examples/cxx/tree/xpath/driver.cxx b/xsd/examples/cxx/tree/xpath/driver.cxx
index f49e186..f9bd040 100644
--- a/xsd/examples/cxx/tree/xpath/driver.cxx
+++ b/xsd/examples/cxx/tree/xpath/driver.cxx
@@ -1,5 +1,4 @@
// file : examples/cxx/tree/xpath/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain
#include <memory> // std::auto_ptr
diff --git a/xsd/examples/cxx/tree/xpath/makefile b/xsd/examples/cxx/tree/xpath/makefile
index 73457f3..693c6b2 100644
--- a/xsd/examples/cxx/tree/xpath/makefile
+++ b/xsd/examples/cxx/tree/xpath/makefile
@@ -1,6 +1,5 @@
# file : examples/cxx/tree/xpath/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -35,17 +34,16 @@ endif
#
$(driver): $(obj) $(xqilla.l) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xqilla.l.cpp-options) $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options :=
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -60,7 +58,6 @@ $(install) $(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(s
$(install):
$(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README)
$(call install-data,$(src_base)/driver.cxx,$(install_doc_dir)/xsd/$(path)/driver.cxx)
- $(call install-data,$(src_base)/driver-2.cxx,$(install_doc_dir)/xsd/$(path)/driver-2.cxx)
$(call install-data,$(src_base)/people.xsd,$(install_doc_dir)/xsd/$(path)/people.xsd)
$(call install-data,$(src_base)/people.xml,$(install_doc_dir)/xsd/$(path)/people.xml)
$(call install-data,$(src_base)/dom-parse.hxx,$(install_doc_dir)/xsd/$(path)/dom-parse.hxx)
@@ -68,7 +65,6 @@ $(install):
$(dist-common):
$(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
- $(call install-data,$(src_base)/driver-2.cxx,$(dist_prefix)/$(path)/driver-2.cxx)
$(call install-data,$(src_base)/people.xsd,$(dist_prefix)/$(path)/people.xsd)
$(call install-data,$(src_base)/people.xml,$(dist_prefix)/$(path)/people.xml)
$(call install-data,$(src_base)/dom-parse.hxx,$(dist_prefix)/$(path)/dom-parse.hxx)
@@ -77,9 +73,16 @@ $(dist-common):
$(dist): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+$(dist-win): |$(out_root)/.dist-pre
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+ $(call message,,todos $(dist_prefix)/$(path)/README.txt)
+ $(call meta-vc8sln,$(src_root)/dist/template-vc8.sln,xpath-vc8.sln)
+ $(call meta-vc9sln,$(src_root)/dist/template-vc9.sln,xpath-vc9.sln)
+ $(call meta-vc10sln,$(src_root)/dist/template-vc10.sln,xpath-vc10.sln)
+ $(call meta-vc11sln,$(src_root)/dist/template-vc11.sln,xpath-vc11.sln)
+ $(call meta-vc12sln,$(src_root)/dist/template-vc12.sln,xpath-vc12.sln)
+
# Clean.
#
@@ -105,9 +108,16 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/install.make)
+$(call include,$(bld_root)/meta/vc8sln.make)
+$(call include,$(bld_root)/meta/vc9sln.make)
+$(call include,$(bld_root)/meta/vc10sln.make)
+$(call include,$(bld_root)/meta/vc11sln.make)
+$(call include,$(bld_root)/meta/vc12sln.make)
+
+
# Dependencies.
#
$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/examples/cxx/tree/xpath/people.xml b/xsd/examples/cxx/tree/xpath/people.xml
index 24af876..9ad9ab6 100644
--- a/xsd/examples/cxx/tree/xpath/people.xml
+++ b/xsd/examples/cxx/tree/xpath/people.xml
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/xpath/people.xml
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/cxx/tree/xpath/people.xsd b/xsd/examples/cxx/tree/xpath/people.xsd
index 12c8aef..5be94de 100644
--- a/xsd/examples/cxx/tree/xpath/people.xsd
+++ b/xsd/examples/cxx/tree/xpath/people.xsd
@@ -3,7 +3,6 @@
<!--
file : examples/cxx/tree/xpath/people.xsd
-author : Boris Kolpackov <boris@codesynthesis.com>
copyright : not copyrighted - public domain
-->
diff --git a/xsd/examples/makefile b/xsd/examples/makefile
index b6879e6..42c2bb7 100644
--- a/xsd/examples/makefile
+++ b/xsd/examples/makefile
@@ -1,6 +1,5 @@
# file : examples/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make
diff --git a/xsd/libxsd/INSTALL b/xsd/libxsd/INSTALL
index 537f00a..c9b4625 100644
--- a/xsd/libxsd/INSTALL
+++ b/xsd/libxsd/INSTALL
@@ -2,7 +2,7 @@ Prerequisites
run-time:
- - libxerces-c >= 2.5.0 http://xerces.apache.org/xerces-c/
+ - libxerces-c >= 3.0.0 http://xerces.apache.org/xerces-c/
Building libxsd
diff --git a/xsd/libxsd/makefile b/xsd/libxsd/makefile
index b7fbb77..1deb770 100644
--- a/xsd/libxsd/makefile
+++ b/xsd/libxsd/makefile
@@ -1,6 +1,5 @@
# file : libxsd/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make
@@ -34,12 +33,12 @@ $(dist): $(dist-common)
$(dist-win): $(dist-common)
$(call install-data,$(src_base)/GPLv2,$(dist_prefix)/libxsd/GPLv2.txt)
- $(call message,,unix2dos $(dist_prefix)/libxsd/GPLv2.txt)
+ $(call message,,todos $(dist_prefix)/libxsd/GPLv2.txt)
$(call install-data,$(src_base)/FLOSSE,$(dist_prefix)/libxsd/FLOSSE.txt)
- $(call message,,unix2dos $(dist_prefix)/libxsd/FLOSSE.txt)
+ $(call message,,todos $(dist_prefix)/libxsd/FLOSSE.txt)
$(call install-data,$(src_base)/LICENSE,$(dist_prefix)/libxsd/LICENSE.txt)
- $(call message,,unix2dos $(dist_prefix)/libxsd/LICENSE.txt)
+ $(call message,,todos $(dist_prefix)/libxsd/LICENSE.txt)
$(call install-data,$(src_base)/README,$(dist_prefix)/libxsd/README.txt)
- $(call message,,unix2dos $(dist_prefix)/libxsd/README.txt)
+ $(call message,,todos $(dist_prefix)/libxsd/README.txt)
$(call include,$(bld_root)/install.make)
diff --git a/xsd/libxsd/xsd/cxx/auto-array.hxx b/xsd/libxsd/xsd/cxx/auto-array.hxx
index 2b4e100..584785e 100644
--- a/xsd/libxsd/xsd/cxx/auto-array.hxx
+++ b/xsd/libxsd/xsd/cxx/auto-array.hxx
@@ -1,11 +1,16 @@
// file : xsd/cxx/auto-array.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_AUTO_ARRAY_HXX
#define XSD_CXX_AUTO_ARRAY_HXX
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
+#ifdef XSD_CXX11
+# error use std::unique_ptr instead of non-standard auto_array
+#endif
+
#include <cstddef> // std::size_t
namespace xsd
@@ -13,20 +18,20 @@ namespace xsd
namespace cxx
{
template <typename T>
- struct std_deallocator
+ struct std_array_deleter
{
void
- deallocate (T* p)
+ operator() (T* p) const
{
delete[] p;
}
};
// Simple automatic array. The second template parameter is
- // an optional deallocator type. If not specified, delete[]
+ // an optional deleter type. If not specified, delete[]
// is used.
//
- template <typename T, typename D = std_deallocator<T> >
+ template <typename T, typename D = std_array_deleter<T> >
struct auto_array
{
auto_array (T a[])
@@ -34,7 +39,7 @@ namespace xsd
{
}
- auto_array (T a[], D& d)
+ auto_array (T a[], const D& d)
: a_ (a), d_ (&d)
{
}
@@ -42,7 +47,7 @@ namespace xsd
~auto_array ()
{
if (d_ != 0)
- d_->deallocate (a_);
+ (*d_) (a_);
else
delete[] a_;
}
@@ -73,7 +78,7 @@ namespace xsd
if (a_ != a)
{
if (d_ != 0)
- d_->deallocate (a_);
+ (*d_) (a_);
else
delete[] a_;
@@ -100,7 +105,7 @@ namespace xsd
private:
T* a_;
- D* d_;
+ const D* d_;
};
template <typename T, typename D>
diff --git a/xsd/libxsd/xsd/cxx/compilers/vc-7/post.hxx b/xsd/libxsd/xsd/cxx/compilers/vc-7/post.hxx
deleted file mode 100644
index 5357cd4..0000000
--- a/xsd/libxsd/xsd/cxx/compilers/vc-7/post.hxx
+++ /dev/null
@@ -1,6 +0,0 @@
-// file : xsd/cxx/compilers/vc-7/post.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-#pragma warning (pop)
diff --git a/xsd/libxsd/xsd/cxx/compilers/vc-7/pre.hxx b/xsd/libxsd/xsd/cxx/compilers/vc-7/pre.hxx
deleted file mode 100644
index 6b9b5fb..0000000
--- a/xsd/libxsd/xsd/cxx/compilers/vc-7/pre.hxx
+++ /dev/null
@@ -1,36 +0,0 @@
-// file : xsd/cxx/compilers/vc-7/pre.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-
-#if (_MSC_VER < 1310)
-# error Microsoft Visual C++ 7.0 (.NET 2002) is not supported.
-#endif
-
-
-// These warnings had to be disabled "for good".
-//
-#pragma warning (disable:4250) // inherits via dominance
-#pragma warning (disable:4505) // unreferenced local function has been removed
-#pragma warning (disable:4661) // no definition for explicit instantiation
-
-
-// Push warning state.
-//
-#pragma warning (push, 3)
-
-
-// Disabled warnings.
-//
-#pragma warning (disable:4355) // passing 'this' to a member
-#pragma warning (disable:4584) // is already a base-class
-#pragma warning (disable:4800) // forcing value to bool
-#pragma warning (disable:4275) // non dll-interface base
-#pragma warning (disable:4251) // base needs to have dll-interface
-#pragma warning (disable:4224) // nonstandard extension (/Za option)
-
-
-// Elevated warnings.
-//
-#pragma warning (2:4239) // standard doesn't allow this conversion
diff --git a/xsd/libxsd/xsd/cxx/compilers/vc-8/post.hxx b/xsd/libxsd/xsd/cxx/compilers/vc-8/post.hxx
index c7d3b3f..a8d25a6 100644
--- a/xsd/libxsd/xsd/cxx/compilers/vc-8/post.hxx
+++ b/xsd/libxsd/xsd/cxx/compilers/vc-8/post.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/compilers/vc-8/post.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#pragma warning (pop)
diff --git a/xsd/libxsd/xsd/cxx/compilers/vc-8/pre.hxx b/xsd/libxsd/xsd/cxx/compilers/vc-8/pre.hxx
index 02161a4..82ca41d 100644
--- a/xsd/libxsd/xsd/cxx/compilers/vc-8/pre.hxx
+++ b/xsd/libxsd/xsd/cxx/compilers/vc-8/pre.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/compilers/vc-8/pre.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// These warnings had to be disabled "for good".
diff --git a/xsd/libxsd/xsd/cxx/config.hxx b/xsd/libxsd/xsd/cxx/config.hxx
index badfe03..076b107 100644
--- a/xsd/libxsd/xsd/cxx/config.hxx
+++ b/xsd/libxsd/xsd/cxx/config.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/config.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_CONFIG_HXX
@@ -8,7 +7,40 @@
#include <xsd/cxx/version.hxx>
-// Macro to suppress unused variable warning.
+// Available C++11 features.
+//
+#ifdef XSD_CXX11
+#ifdef _MSC_VER
+# if _MSC_VER >= 1600
+# define XSD_CXX11_NULLPTR
+# if _MSC_VER >= 1800
+# define XSD_CXX11_TEMPLATE_ALIAS
+# endif
+# endif
+#else
+# if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L
+# ifdef __GNUC__
+# if (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4
+# define XSD_CXX11_NULLPTR
+# endif
+# if (__GNUC__ == 4 && __GNUC_MINOR__ >= 7) || __GNUC__ > 4
+# define XSD_CXX11_TEMPLATE_ALIAS
+# endif
+# else
+# define XSD_CXX11_NULLPTR
+# define XSD_CXX11_TEMPLATE_ALIAS
+# endif
+# endif
+#endif
+#endif // XSD_CXX11
+
+#ifdef XSD_CXX11
+# define XSD_AUTO_PTR std::unique_ptr
+#else
+# define XSD_AUTO_PTR std::auto_ptr
+#endif
+
+// Macro to suppress the unused variable warning.
//
#define XSD_UNUSED(x) (void)x
diff --git a/xsd/libxsd/xsd/cxx/exceptions.hxx b/xsd/libxsd/xsd/cxx/exceptions.hxx
index d5f01c1..45f5dc6 100644
--- a/xsd/libxsd/xsd/cxx/exceptions.hxx
+++ b/xsd/libxsd/xsd/cxx/exceptions.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/exceptions.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_EXCEPTIONS_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/document.hxx b/xsd/libxsd/xsd/cxx/parser/document.hxx
index 992b800..731808b 100644
--- a/xsd/libxsd/xsd/cxx/parser/document.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/document.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/document.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_DOCUMENT_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/document.txx b/xsd/libxsd/xsd/cxx/parser/document.txx
index cad49ce..3c25574 100644
--- a/xsd/libxsd/xsd/cxx/parser/document.txx
+++ b/xsd/libxsd/xsd/cxx/parser/document.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/document.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cassert>
diff --git a/xsd/libxsd/xsd/cxx/parser/elements.hxx b/xsd/libxsd/xsd/cxx/parser/elements.hxx
index 5f0bead..2f814d1 100644
--- a/xsd/libxsd/xsd/cxx/parser/elements.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/elements.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_ELEMENTS_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/elements.txx b/xsd/libxsd/xsd/cxx/parser/elements.txx
index 5706107..3aaf017 100644
--- a/xsd/libxsd/xsd/cxx/parser/elements.txx
+++ b/xsd/libxsd/xsd/cxx/parser/elements.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/elements.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/error-handler.hxx b/xsd/libxsd/xsd/cxx/parser/error-handler.hxx
index b83c0a8..1352bec 100644
--- a/xsd/libxsd/xsd/cxx/parser/error-handler.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/error-handler.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/error-handler.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_ERROR_HANDLER_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/error-handler.txx b/xsd/libxsd/xsd/cxx/parser/error-handler.txx
index 23751d2..db247a7 100644
--- a/xsd/libxsd/xsd/cxx/parser/error-handler.txx
+++ b/xsd/libxsd/xsd/cxx/parser/error-handler.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/error-handler.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/exceptions.hxx b/xsd/libxsd/xsd/cxx/parser/exceptions.hxx
index c0e90dd..04cf30f 100644
--- a/xsd/libxsd/xsd/cxx/parser/exceptions.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/exceptions.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/exceptions.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_EXCEPTIONS_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/exceptions.ixx b/xsd/libxsd/xsd/cxx/parser/exceptions.ixx
index d4e13f3..f7489f3 100644
--- a/xsd/libxsd/xsd/cxx/parser/exceptions.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/exceptions.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/exceptions.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#if defined(XSD_CXX_PARSER_USE_CHAR) || !defined(XSD_CXX_PARSER_USE_WCHAR)
diff --git a/xsd/libxsd/xsd/cxx/parser/exceptions.txx b/xsd/libxsd/xsd/cxx/parser/exceptions.txx
index 5423cdd..d0e52b6 100644
--- a/xsd/libxsd/xsd/cxx/parser/exceptions.txx
+++ b/xsd/libxsd/xsd/cxx/parser/exceptions.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/exceptions.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/expat/elements.hxx b/xsd/libxsd/xsd/cxx/parser/expat/elements.hxx
index c9f3de0..86e7a73 100644
--- a/xsd/libxsd/xsd/cxx/parser/expat/elements.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/expat/elements.hxx
@@ -1,16 +1,21 @@
// file : xsd/cxx/parser/expat/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_EXPAT_ELEMENTS_HXX
#define XSD_CXX_PARSER_EXPAT_ELEMENTS_HXX
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
#include <string>
#include <iosfwd>
#include <cstddef> // std::size_t
#include <vector>
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+#endif
+
#include <expat.h>
// We only support UTF-8 expat for now.
@@ -35,6 +40,19 @@ namespace xsd
{
namespace expat
{
+#ifdef XSD_CXX11
+ struct parser_deleter
+ {
+ void
+ operator() (XML_Parser p) const
+ {
+ if (p != 0)
+ XML_ParserFree (p);
+ }
+ };
+
+ typedef std::unique_ptr<XML_ParserStruct> parser_auto_ptr;
+#else
// Simple auto pointer for Expat's XML_Parser object.
//
struct parser_auto_ptr
@@ -61,8 +79,8 @@ namespace xsd
return *this;
}
- public:
- operator XML_Parser ()
+ XML_Parser
+ get () const
{
return parser_;
}
@@ -76,12 +94,12 @@ namespace xsd
private:
XML_Parser parser_;
};
-
+#endif // XSD_CXX11
//
//
template <typename C>
- struct document: cxx::parser::document<C> // VC 7.1 likes it qualified
+ struct document: cxx::parser::document<C> // VC likes it qualified
{
public:
document (parser_base<C>&,
diff --git a/xsd/libxsd/xsd/cxx/parser/expat/elements.txx b/xsd/libxsd/xsd/cxx/parser/expat/elements.txx
index 08ecf21..d3fc0d9 100644
--- a/xsd/libxsd/xsd/cxx/parser/expat/elements.txx
+++ b/xsd/libxsd/xsd/cxx/parser/expat/elements.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/expat/elements.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <new> // std::bad_alloc
@@ -334,18 +333,18 @@ namespace xsd
{
// First call.
//
- if (auto_xml_parser_ == 0)
+ if (auto_xml_parser_.get () == 0)
{
auto_xml_parser_ = XML_ParserCreateNS (0, XML_Char (' '));
- if (auto_xml_parser_ == 0)
+ if (auto_xml_parser_.get () == 0)
throw std::bad_alloc ();
if (system_id || public_id)
- parse_begin (auto_xml_parser_,
+ parse_begin (auto_xml_parser_.get (),
system_id ? *system_id : *public_id, eh);
else
- parse_begin (auto_xml_parser_, eh);
+ parse_begin (auto_xml_parser_.get (), eh);
}
bool r (XML_Parse (xml_parser_,
diff --git a/xsd/libxsd/xsd/cxx/parser/map.hxx b/xsd/libxsd/xsd/cxx/parser/map.hxx
index 663b178..d097f16 100644
--- a/xsd/libxsd/xsd/cxx/parser/map.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_MAP_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/map.ixx b/xsd/libxsd/xsd/cxx/parser/map.ixx
index 0b70680..96fc937 100644
--- a/xsd/libxsd/xsd/cxx/parser/map.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/map.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/map.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/map.txx b/xsd/libxsd/xsd/cxx/parser/map.txx
index aa7099d..3f85760 100644
--- a/xsd/libxsd/xsd/cxx/parser/map.txx
+++ b/xsd/libxsd/xsd/cxx/parser/map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/parser.hxx b/xsd/libxsd/xsd/cxx/parser/non-validating/parser.hxx
index 9eda6f4..4ecc4f1 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/parser.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/parser.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/non-validating/parser.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_NON_VALIDATING_PARSER_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/parser.txx b/xsd/libxsd/xsd/cxx/parser/non-validating/parser.txx
index c95b92e..79b6568 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/parser.txx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/parser.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/non-validating/parser.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cassert>
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.hxx b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.hxx
index 397386d..fc1f838 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/non-validating/xml-schema-pimpl.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_NON_VALIDATING_XML_SCHEMA_PIMPL_HXX
@@ -8,6 +7,8 @@
#include <string>
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/parser/non-validating/xml-schema-pskel.hxx>
namespace xsd
@@ -564,7 +565,7 @@ namespace xsd
virtual void
_characters (const ro_string<C>&);
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_base64_binary ();
protected:
@@ -582,7 +583,7 @@ namespace xsd
virtual void
_characters (const ro_string<C>&);
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_hex_binary ();
protected:
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.ixx b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.ixx
index db9a5d1..3555693 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/non-validating/xml-schema-pimpl.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#if defined(XSD_CXX_PARSER_USE_CHAR) || !defined(XSD_CXX_PARSER_USE_WCHAR)
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.txx b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.txx
index c430f49..28280f5 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.txx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pimpl.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/non-validating/xml-schema-pimpl.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <limits>
@@ -1157,7 +1156,7 @@ namespace xsd
}
template <typename C>
- std::auto_ptr<buffer> base64_binary_pimpl<C>::
+ XSD_AUTO_PTR<buffer> base64_binary_pimpl<C>::
post_base64_binary ()
{
typedef typename std::basic_string<C>::size_type size_type;
@@ -1199,7 +1198,7 @@ namespace xsd
size_type quad_count (size / 4);
size_type capacity (quad_count * 3 + 1);
- std::auto_ptr<buffer> buf (new buffer (capacity, capacity));
+ XSD_AUTO_PTR<buffer> buf (new buffer (capacity, capacity));
char* dst (buf->data ());
size_type si (0), di (0); // Source and destination indexes.
@@ -1309,7 +1308,7 @@ namespace xsd
}
template <typename C>
- std::auto_ptr<buffer> hex_binary_pimpl<C>::
+ XSD_AUTO_PTR<buffer> hex_binary_pimpl<C>::
post_hex_binary ()
{
typedef typename ro_string<C>::size_type size_type;
@@ -1318,7 +1317,7 @@ namespace xsd
size_type size (trim_right (tmp));
buffer::size_t n (size / 2);
- std::auto_ptr<buffer> buf (new buffer (n));
+ XSD_AUTO_PTR<buffer> buf (new buffer (n));
const C* src (tmp.data ());
char* dst (buf->data ());
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.hxx b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.hxx
index 8e4972a..334be01 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.hxx
@@ -1,13 +1,14 @@
// file : xsd/cxx/parser/non-validating/xml-schema-pskel.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_NON_VALIDATING_XML_SCHEMA_PSKEL_HXX
#define XSD_CXX_PARSER_NON_VALIDATING_XML_SCHEMA_PSKEL_HXX
#include <string>
-#include <memory> // auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
+
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
#include <xsd/cxx/parser/xml-schema.hxx>
#include <xsd/cxx/parser/non-validating/parser.hxx>
@@ -494,7 +495,7 @@ namespace xsd
template <typename C>
struct base64_binary_pskel: simple_content<C>
{
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_base64_binary () = 0;
static const C*
@@ -507,7 +508,7 @@ namespace xsd
template <typename C>
struct hex_binary_pskel: simple_content<C>
{
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_hex_binary () = 0;
static const C*
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.ixx b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.ixx
index 13b1fab..44cc6e4 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/non-validating/xml-schema-pskel.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#if defined(XSD_CXX_PARSER_USE_CHAR) || !defined(XSD_CXX_PARSER_USE_WCHAR)
diff --git a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.txx b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.txx
index b6352df..e2fd1b3 100644
--- a/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.txx
+++ b/xsd/libxsd/xsd/cxx/parser/non-validating/xml-schema-pskel.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/non-validating/xml-schema-pskel.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/schema-exceptions.hxx b/xsd/libxsd/xsd/cxx/parser/schema-exceptions.hxx
index 9af39d7..8fd2def 100644
--- a/xsd/libxsd/xsd/cxx/parser/schema-exceptions.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/schema-exceptions.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/schema-exceptions.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_SCHEMA_EXCEPTIONS_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/schema-exceptions.ixx b/xsd/libxsd/xsd/cxx/parser/schema-exceptions.ixx
index cfd2d18..71be381 100644
--- a/xsd/libxsd/xsd/cxx/parser/schema-exceptions.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/schema-exceptions.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/schema-exceptions.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#if defined(XSD_CXX_PARSER_USE_CHAR) || !defined(XSD_CXX_PARSER_USE_WCHAR)
diff --git a/xsd/libxsd/xsd/cxx/parser/schema-exceptions.txx b/xsd/libxsd/xsd/cxx/parser/schema-exceptions.txx
index 7ac45ae..77c569a 100644
--- a/xsd/libxsd/xsd/cxx/parser/schema-exceptions.txx
+++ b/xsd/libxsd/xsd/cxx/parser/schema-exceptions.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/schema-exceptions.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/substitution-map.hxx b/xsd/libxsd/xsd/cxx/parser/substitution-map.hxx
index 416d1ec..d191e28 100644
--- a/xsd/libxsd/xsd/cxx/parser/substitution-map.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/substitution-map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/substitution-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_SUBSTITUTION_MAP_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/substitution-map.txx b/xsd/libxsd/xsd/cxx/parser/substitution-map.txx
index dad0ec6..45216cd 100644
--- a/xsd/libxsd/xsd/cxx/parser/substitution-map.txx
+++ b/xsd/libxsd/xsd/cxx/parser/substitution-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/substitution-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/exceptions.hxx b/xsd/libxsd/xsd/cxx/parser/validating/exceptions.hxx
index c0efda8..07086e3 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/exceptions.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/exceptions.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/exceptions.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_VALIDATING_EXCEPTIONS_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/exceptions.ixx b/xsd/libxsd/xsd/cxx/parser/validating/exceptions.ixx
index 74bb909..72bfe8d 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/exceptions.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/exceptions.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/exceptions.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#if defined(XSD_CXX_PARSER_USE_CHAR) || !defined(XSD_CXX_PARSER_USE_WCHAR)
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/exceptions.txx b/xsd/libxsd/xsd/cxx/parser/validating/exceptions.txx
index 6205215..c2b8928 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/exceptions.txx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/exceptions.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/exceptions.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.hxx b/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.hxx
index d9307b4..b8ae938 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/inheritance-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_VALIDATING_INHERITANCE_MAP_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.txx b/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.txx
index 1a63e65..ba4803e 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.txx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/inheritance-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/inheritance-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/parser.hxx b/xsd/libxsd/xsd/cxx/parser/validating/parser.hxx
index da297d9..c305fe1 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/parser.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/parser.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/parser.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_VALIDATING_PARSER_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/parser.txx b/xsd/libxsd/xsd/cxx/parser/validating/parser.txx
index d447725..9a5800a 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/parser.txx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/parser.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/parser.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cassert>
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.hxx b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.hxx
index 619a8c7..ae64d2b 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/xml-schema-pimpl.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_VALIDATING_XML_SCHEMA_PIMPL_HXX
@@ -8,6 +7,8 @@
#include <string>
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/parser/validating/xml-schema-pskel.hxx>
namespace xsd
@@ -664,12 +665,12 @@ namespace xsd
virtual void
_post ();
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_base64_binary ();
protected:
std::basic_string<C> str_;
- std::auto_ptr<buffer> buf_;
+ XSD_AUTO_PTR<buffer> buf_;
};
// hexBinary
@@ -686,12 +687,12 @@ namespace xsd
virtual void
_post ();
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_hex_binary ();
protected:
std::basic_string<C> str_;
- std::auto_ptr<buffer> buf_;
+ XSD_AUTO_PTR<buffer> buf_;
};
// gday
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.ixx b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.ixx
index c6f8127..94a9b8e 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/xml-schema-pimpl.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#if defined(XSD_CXX_PARSER_USE_CHAR) || !defined(XSD_CXX_PARSER_USE_WCHAR)
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.txx b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.txx
index 55121c2..ad587c5 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.txx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pimpl.txx
@@ -1,11 +1,14 @@
// file : xsd/cxx/parser/validating/xml-schema-pimpl.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <limits>
#include <locale>
+#ifdef XSD_CXX11
+# include <utility> // std::move
+#endif
+
#include <xsd/cxx/zc-istream.hxx>
#include <xsd/cxx/parser/validating/exceptions.hxx>
@@ -1634,10 +1637,14 @@ namespace xsd
}
template <typename C>
- std::auto_ptr<buffer> base64_binary_pimpl<C>::
+ XSD_AUTO_PTR<buffer> base64_binary_pimpl<C>::
post_base64_binary ()
{
+#ifdef XSD_CXX11
+ return std::move (buf_);
+#else
return buf_;
+#endif
}
// hex_binary
@@ -1721,10 +1728,14 @@ namespace xsd
}
template <typename C>
- std::auto_ptr<buffer> hex_binary_pimpl<C>::
+ XSD_AUTO_PTR<buffer> hex_binary_pimpl<C>::
post_hex_binary ()
{
+#ifdef XSD_CXX11
+ return std::move (buf_);
+#else
return buf_;
+#endif
}
// time_zone
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.hxx b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.hxx
index 67c8057..ffc7de3 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.hxx
@@ -1,13 +1,14 @@
// file : xsd/cxx/parser/validating/xml-schema-pskel.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_VALIDATING_XML_SCHEMA_PSKEL_HXX
#define XSD_CXX_PARSER_VALIDATING_XML_SCHEMA_PSKEL_HXX
#include <string>
-#include <memory> // auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
+
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
#include <xsd/cxx/parser/xml-schema.hxx>
#include <xsd/cxx/parser/validating/parser.hxx>
@@ -494,7 +495,7 @@ namespace xsd
template <typename C>
struct base64_binary_pskel: simple_content<C>
{
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_base64_binary () = 0;
static const C*
@@ -507,7 +508,7 @@ namespace xsd
template <typename C>
struct hex_binary_pskel: simple_content<C>
{
- virtual std::auto_ptr<buffer>
+ virtual XSD_AUTO_PTR<buffer>
post_hex_binary () = 0;
static const C*
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.ixx b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.ixx
index 6958bea..b6da227 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/xml-schema-pskel.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#if defined(XSD_CXX_PARSER_USE_CHAR) || !defined(XSD_CXX_PARSER_USE_WCHAR)
diff --git a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.txx b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.txx
index 4ae50e3..49d53c5 100644
--- a/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.txx
+++ b/xsd/libxsd/xsd/cxx/parser/validating/xml-schema-pskel.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/validating/xml-schema-pskel.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/parser/xerces/elements.hxx b/xsd/libxsd/xsd/cxx/parser/xerces/elements.hxx
index e0439f3..da493f9 100644
--- a/xsd/libxsd/xsd/cxx/parser/xerces/elements.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/xerces/elements.hxx
@@ -1,12 +1,11 @@
// file : xsd/cxx/parser/xerces/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_XERCES_ELEMENTS_HXX
#define XSD_CXX_PARSER_XERCES_ELEMENTS_HXX
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <string>
#include <iosfwd>
#include <vector>
@@ -16,6 +15,10 @@
#include <xercesc/sax2/SAX2XMLReader.hpp>
#include <xercesc/sax2/DefaultHandler.hpp>
+#include <xercesc/util/XercesVersion.hpp>
+
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/xml/elements.hxx>
#include <xsd/cxx/xml/error-handler.hxx>
@@ -23,6 +26,10 @@
#include <xsd/cxx/parser/elements.hxx>
#include <xsd/cxx/parser/document.hxx>
+#if _XERCES_VERSION < 30000
+# error Xerces-C++ 2-series is not supported
+#endif
+
namespace xsd
{
namespace cxx
@@ -79,7 +86,7 @@ namespace xsd
//
//
template <typename C>
- struct document: cxx::parser::document<C> // VC 7.1 likes it qualified
+ struct document: cxx::parser::document<C> // VC likes it qualified
{
public:
document (parser_base<C>& root,
@@ -371,7 +378,7 @@ namespace xsd
const properties<C>&);
private:
- std::auto_ptr<xercesc::SAX2XMLReader>
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader>
create_sax_ (flags, const properties<C>&);
private:
@@ -386,8 +393,8 @@ namespace xsd
event_router (cxx::parser::document<C>&, bool polymorphic);
// I know, some of those consts are stupid. But that's what
- // Xerces folks put into their interfaces and VC 7.1 thinks
- // there are different signatures if one strips this fluff off.
+ // Xerces folks put into their interfaces and VC thinks there
+ // are different signatures if one strips this fluff off.
//
virtual void
setDocumentLocator (const xercesc::Locator* const);
@@ -403,13 +410,8 @@ namespace xsd
const XMLCh* const lname,
const XMLCh* const qname);
-#if _XERCES_VERSION >= 30000
virtual void
characters (const XMLCh* const s, const XMLSize_t length);
-#else
- virtual void
- characters (const XMLCh* const s, const unsigned int length);
-#endif
virtual void
startPrefixMapping (const XMLCh* const prefix,
diff --git a/xsd/libxsd/xsd/cxx/parser/xerces/elements.txx b/xsd/libxsd/xsd/cxx/parser/xerces/elements.txx
index 2c1e2a1..f41b074 100644
--- a/xsd/libxsd/xsd/cxx/parser/xerces/elements.txx
+++ b/xsd/libxsd/xsd/cxx/parser/xerces/elements.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/xerces/elements.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <istream>
@@ -12,6 +11,7 @@
#include <xercesc/sax2/XMLReaderFactory.hpp>
#include <xercesc/validators/schema/SchemaSymbols.hpp>
#include <xercesc/util/XMLUni.hpp>
+#include <xercesc/util/XMLString.hpp>
#include <xsd/cxx/xml/string.hxx>
#include <xsd/cxx/xml/sax/std-input-source.hxx>
@@ -94,7 +94,7 @@ namespace xsd
error_handler<C> eh;
xml::sax::bits::error_handler_proxy<C> eh_proxy (eh);
- std::auto_ptr<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
parse (uri, eh_proxy, *sax, f, p);
@@ -123,7 +123,7 @@ namespace xsd
xml::auto_initializer init ((f & flags::dont_initialize) == 0);
xml::sax::bits::error_handler_proxy<C> eh_proxy (eh);
- std::auto_ptr<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
parse (uri, eh_proxy, *sax, f, p);
@@ -152,7 +152,7 @@ namespace xsd
const properties<C>& p)
{
xml::sax::bits::error_handler_proxy<C> eh_proxy (eh);
- std::auto_ptr<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
parse (uri, eh_proxy, *sax, f, p);
@@ -389,7 +389,7 @@ namespace xsd
{
error_handler<C> eh;
xml::sax::bits::error_handler_proxy<C> eh_proxy (eh);
- std::auto_ptr<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
parse (is, eh_proxy, *sax, f, p);
@@ -404,7 +404,7 @@ namespace xsd
const properties<C>& p)
{
xml::sax::bits::error_handler_proxy<C> eh_proxy (eh);
- std::auto_ptr<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
parse (is, eh_proxy, *sax, f, p);
@@ -420,7 +420,7 @@ namespace xsd
const properties<C>& p)
{
xml::sax::bits::error_handler_proxy<C> eh_proxy (eh);
- std::auto_ptr<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader> sax (create_sax_ (f, p));
parse (is, eh_proxy, *sax, f, p);
@@ -527,14 +527,8 @@ namespace xsd
xml::string (e.message ()).c_str (),
id.c_str (),
id.c_str (),
-#if _XERCES_VERSION >= 30000
static_cast<XMLFileLoc> (e.line ()),
- static_cast<XMLFileLoc> (e.column ())
-#else
- static_cast<XMLSSize_t> (e.line ()),
- static_cast<XMLSSize_t> (e.column ())
-#endif
- );
+ static_cast<XMLFileLoc> (e.column ()));
eh.fatalError (se);
}
@@ -565,14 +559,8 @@ namespace xsd
xml::string (e.message ()).c_str (),
id.c_str (),
id.c_str (),
-#if _XERCES_VERSION >= 30000
static_cast<XMLFileLoc> (e.line ()),
- static_cast<XMLFileLoc> (e.column ())
-#else
- static_cast<XMLSSize_t> (e.line ()),
- static_cast<XMLSSize_t> (e.column ())
-#endif
- );
+ static_cast<XMLFileLoc> (e.column ()));
eh.fatalError (se);
}
@@ -580,16 +568,12 @@ namespace xsd
template <typename C>
- std::auto_ptr<xercesc::SAX2XMLReader> document<C>::
+ XSD_AUTO_PTR<xercesc::SAX2XMLReader> document<C>::
create_sax_ (flags f, const properties<C>& p)
{
- // HP aCC cannot handle using namespace xercesc;
- //
- using xercesc::SAX2XMLReader;
- using xercesc::XMLReaderFactory;
- using xercesc::XMLUni;
+ using namespace xercesc;
- std::auto_ptr<SAX2XMLReader> sax (
+ XSD_AUTO_PTR<SAX2XMLReader> sax (
XMLReaderFactory::createXMLReader ());
sax->setFeature (XMLUni::fgSAX2CoreNameSpaces, true);
@@ -670,6 +654,9 @@ namespace xsd
const XMLCh* const /*qname*/,
const xercesc::Attributes& attributes)
{
+ using xercesc::XMLUni;
+ using xercesc::XMLString;
+
typedef std::basic_string<C> string;
{
@@ -792,13 +779,19 @@ namespace xsd
}
}
-#if _XERCES_VERSION >= 30000
for (XMLSize_t i (0), end (attributes.getLength()); i < end; ++i)
-#else
- for (unsigned int i (0), end (attributes.getLength()); i < end; ++i)
-#endif
{
- string ns (xml::transcode<C> (attributes.getURI (i)));
+ const XMLCh* xns (attributes.getURI (i));
+
+ // When SAX2 reports the xmlns attribute, it does not include
+ // the proper attribute namespace. So we have to detect and
+ // rectify this case.
+ //
+ if (XMLString::equals (attributes.getQName (i),
+ XMLUni::fgXMLNSString))
+ xns = XMLUni::fgXMLNSURIName;
+
+ string ns (xml::transcode<C> (xns));
string name (xml::transcode<C> (attributes.getLocalName (i)));
string value (xml::transcode<C> (attributes.getValue (i)));
@@ -868,11 +861,7 @@ namespace xsd
template <typename C>
void event_router<C>::
-#if _XERCES_VERSION >= 30000
characters (const XMLCh* const s, const XMLSize_t n)
-#else
- characters (const XMLCh* const s, const unsigned int n)
-#endif
{
typedef std::basic_string<C> string;
@@ -949,16 +938,8 @@ namespace xsd
if (id != 0)
e.id (xml::transcode<C> (id));
-#if _XERCES_VERSION >= 30000
e.line (static_cast<unsigned long> (loc_->getLineNumber ()));
e.column (static_cast<unsigned long> (loc_->getColumnNumber ()));
-#else
- XMLSSize_t l (loc_->getLineNumber ());
- XMLSSize_t c (loc_->getColumnNumber ());
-
- e.line (l == -1 ? 0 : static_cast<unsigned long> (l));
- e.column (c == -1 ? 0: static_cast<unsigned long> (c));
-#endif
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/parser/xml-schema.hxx b/xsd/libxsd/xsd/cxx/parser/xml-schema.hxx
index 5d1f1c6..cc3dd5f 100644
--- a/xsd/libxsd/xsd/cxx/parser/xml-schema.hxx
+++ b/xsd/libxsd/xsd/cxx/parser/xml-schema.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/xml-schema.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_PARSER_XML_SCHEMA_HXX
diff --git a/xsd/libxsd/xsd/cxx/parser/xml-schema.ixx b/xsd/libxsd/xsd/cxx/parser/xml-schema.ixx
index 891bc6f..06ead34 100644
--- a/xsd/libxsd/xsd/cxx/parser/xml-schema.ixx
+++ b/xsd/libxsd/xsd/cxx/parser/xml-schema.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/xml-schema.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <new> // operator new/delete
diff --git a/xsd/libxsd/xsd/cxx/parser/xml-schema.txx b/xsd/libxsd/xsd/cxx/parser/xml-schema.txx
index 5f41a18..90e558d 100644
--- a/xsd/libxsd/xsd/cxx/parser/xml-schema.txx
+++ b/xsd/libxsd/xsd/cxx/parser/xml-schema.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/xml-schema.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/post.hxx b/xsd/libxsd/xsd/cxx/post.hxx
index b119bb4..7a9c63e 100644
--- a/xsd/libxsd/xsd/cxx/post.hxx
+++ b/xsd/libxsd/xsd/cxx/post.hxx
@@ -1,13 +1,9 @@
// file : xsd/cxx/post.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
#ifdef _MSC_VER
# if (_MSC_VER >= 1400)
# include <xsd/cxx/compilers/vc-8/post.hxx>
-# elif (_MSC_VER >= 1300)
-# include <xsd/cxx/compilers/vc-7/post.hxx>
# endif
#endif
diff --git a/xsd/libxsd/xsd/cxx/pre.hxx b/xsd/libxsd/xsd/cxx/pre.hxx
index 845a854..f0633c9 100644
--- a/xsd/libxsd/xsd/cxx/pre.hxx
+++ b/xsd/libxsd/xsd/cxx/pre.hxx
@@ -1,15 +1,11 @@
// file : xsd/cxx/pre.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
#ifdef _MSC_VER
# if (_MSC_VER >= 1400)
# include <xsd/cxx/compilers/vc-8/pre.hxx>
-# elif (_MSC_VER >= 1300)
-# include <xsd/cxx/compilers/vc-7/pre.hxx>
# else
-# error Microsoft Visual C++ 6 is not supported.
+# error Microsoft Visual C++ 7.1 and earlier are not supported
# endif
#endif
diff --git a/xsd/libxsd/xsd/cxx/ro-string.hxx b/xsd/libxsd/xsd/cxx/ro-string.hxx
index fd80cac..2140e44 100644
--- a/xsd/libxsd/xsd/cxx/ro-string.hxx
+++ b/xsd/libxsd/xsd/cxx/ro-string.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/ro-string.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_RO_STRING_HXX
diff --git a/xsd/libxsd/xsd/cxx/ro-string.txx b/xsd/libxsd/xsd/cxx/ro-string.txx
index 58efef0..56d5bbd 100644
--- a/xsd/libxsd/xsd/cxx/ro-string.txx
+++ b/xsd/libxsd/xsd/cxx/ro-string.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/ro-string.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-common.hxx b/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-common.hxx
index 7c3fc96..7a9fbff 100644
--- a/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-common.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-common.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/ace-cdr-stream-common.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_ACE_CDR_STREAM_COMMON_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-extraction.hxx b/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-extraction.hxx
index 53e1f6c..b843ffa 100644
--- a/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-extraction.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-extraction.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/ace-cdr-stream-extraction.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_ACE_CDR_STREAM_EXTRACTION_HXX
@@ -12,7 +11,13 @@
#include <ace/ACE.h> // ACE::strdelete
#include <ace/CDR_Stream.h>
-#include <xsd/cxx/auto-array.hxx>
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+#else
+# include <xsd/cxx/auto-array.hxx>
+#endif
#include <xsd/cxx/tree/buffer.hxx>
#include <xsd/cxx/tree/istream.hxx>
@@ -258,11 +263,11 @@ namespace xsd
namespace bits
{
- template<typename C>
- struct ace_str_deallocator
+ template <typename C>
+ struct ace_str_deleter
{
void
- deallocate (C* s)
+ operator() (C* s) const
{
ACE::strdelete (s);
}
@@ -272,18 +277,22 @@ namespace xsd
inline istream<ACE_InputCDR>&
operator>> (istream<ACE_InputCDR>& s, std::basic_string<char>& x)
{
- typedef bits::ace_str_deallocator<char> deallocator;
+ typedef bits::ace_str_deleter<char> deleter;
- deallocator d;
+ deleter d;
char* r;
if (!s.impl ().read_string (r))
throw ace_cdr_stream_extraction ();
- auto_array<char, deallocator> ar (r, d);
+#ifdef XSD_CXX11
+ std::unique_ptr<char[], deleter&> ar (
+#else
+ auto_array<char, deleter> ar (
+#endif
+ r, d);
x = r;
-
return s;
}
@@ -291,18 +300,22 @@ namespace xsd
inline istream<ACE_InputCDR>&
operator>> (istream<ACE_InputCDR>& s, std::basic_string<wchar_t>& x)
{
- typedef bits::ace_str_deallocator<wchar_t> deallocator;
+ typedef bits::ace_str_deleter<wchar_t> deleter;
- deallocator d;
+ deleter d;
wchar_t* r;
if (!s.impl ().read_wstring (r))
throw ace_cdr_stream_extraction ();
- auto_array<wchar_t, deallocator> ar (r, d);
+#ifdef XSD_CXX11
+ std::unique_ptr<wchar_t[], deleter&> ar (
+#else
+ auto_array<wchar_t, deleter> ar (
+#endif
+ r, d);
x = r;
-
return s;
}
#endif
diff --git a/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-insertion.hxx b/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-insertion.hxx
index 0f723d0..3fa92ad 100644
--- a/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-insertion.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/ace-cdr-stream-insertion.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/ace-cdr-stream-insertion.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_ACE_CDR_STREAM_INSERTION_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/bits/literals.hxx b/xsd/libxsd/xsd/cxx/tree/bits/literals.hxx
index 49ac0ca..a690e76 100644
--- a/xsd/libxsd/xsd/cxx/tree/bits/literals.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/bits/literals.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/bits/literals.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_BITS_LITERALS_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/bits/literals.ixx b/xsd/libxsd/xsd/cxx/tree/bits/literals.ixx
index 260a9e7..9a27d99 100644
--- a/xsd/libxsd/xsd/cxx/tree/bits/literals.ixx
+++ b/xsd/libxsd/xsd/cxx/tree/bits/literals.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/bits/literals.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_BITS_LITERALS_IXX
diff --git a/xsd/libxsd/xsd/cxx/tree/buffer.hxx b/xsd/libxsd/xsd/cxx/tree/buffer.hxx
index 24da287..9ce568c 100644
--- a/xsd/libxsd/xsd/cxx/tree/buffer.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/buffer.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/buffer.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
/**
diff --git a/xsd/libxsd/xsd/cxx/tree/buffer.txx b/xsd/libxsd/xsd/cxx/tree/buffer.txx
index f88f140..c358e98 100644
--- a/xsd/libxsd/xsd/cxx/tree/buffer.txx
+++ b/xsd/libxsd/xsd/cxx/tree/buffer.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/buffer.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/comparison-map.hxx b/xsd/libxsd/xsd/cxx/tree/comparison-map.hxx
index b7794f4..a316b21 100644
--- a/xsd/libxsd/xsd/cxx/tree/comparison-map.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/comparison-map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/comparison-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_COMPARISON_MAP_HXX
@@ -27,7 +26,7 @@ namespace xsd
comparison_map ();
void
- register_type (const type_id&, comparator, bool override = true);
+ register_type (const type_id&, comparator, bool replace = true);
void
unregister_type (const type_id&);
diff --git a/xsd/libxsd/xsd/cxx/tree/comparison-map.txx b/xsd/libxsd/xsd/cxx/tree/comparison-map.txx
index e638ed4..af23d64 100644
--- a/xsd/libxsd/xsd/cxx/tree/comparison-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/comparison-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/comparison-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/tree/types.hxx>
@@ -20,18 +19,17 @@ namespace xsd
// anyType and anySimpleType.
//
- //register_type (
- // typeid (type),
- // &comparator_impl<type>,
- // false);
-
- typedef simple_type<type> simple_type;
+ register_type (
+ typeid (type),
+ &comparator_impl<type>,
+ false);
- //register_type (
- // typeid (simple_type),
- // &comparator_impl<simple_type>,
- // false);
+ typedef simple_type<C, type> simple_type;
+ register_type (
+ typeid (simple_type),
+ &comparator_impl<simple_type>,
+ false);
// Strings
//
@@ -212,9 +210,9 @@ namespace xsd
template <typename C>
void comparison_map<C>::
- register_type (const type_id& tid, comparator c, bool override)
+ register_type (const type_id& tid, comparator c, bool replace)
{
- if (override || type_map_.find (&tid) == type_map_.end ())
+ if (replace || type_map_.find (&tid) == type_map_.end ())
type_map_[&tid] = c;
}
diff --git a/xsd/libxsd/xsd/cxx/tree/containers-wildcard.hxx b/xsd/libxsd/xsd/cxx/tree/containers-wildcard.hxx
index 5313507..549df73 100644
--- a/xsd/libxsd/xsd/cxx/tree/containers-wildcard.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/containers-wildcard.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/containers-wildcard.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_CONTAINERS_WILDCARD_HXX
@@ -16,7 +15,7 @@
#include <xsd/cxx/xml/string.hxx>
-#include <xsd/cxx/tree/containers.hxx> // iterator_adapter
+#include <xsd/cxx/tree/iterator-adapter.hxx>
namespace xsd
{
@@ -936,7 +935,7 @@ namespace xsd
return r < 0
? true
- : (r > 0 ? false : XMLString::compareString (an, bn));
+ : (r > 0 ? false : XMLString::compareString (an, bn) < 0);
}
};
diff --git a/xsd/libxsd/xsd/cxx/tree/containers.hxx b/xsd/libxsd/xsd/cxx/tree/containers.hxx
index ba76eae..cafd79d 100644
--- a/xsd/libxsd/xsd/cxx/tree/containers.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/containers.hxx
@@ -1,20 +1,19 @@
// file : xsd/cxx/tree/containers.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_CONTAINERS_HXX
#define XSD_CXX_TREE_CONTAINERS_HXX
-#include <cstddef> // std::ptrdiff_t
-#include <string>
#include <vector>
-#include <memory> // std::auto_ptr
-#include <iterator> // std::iterator_traits
+#include <memory> // std::auto_ptr/unique_ptr
#include <algorithm> // std::equal, std::lexicographical_compare
#include <iosfwd>
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/tree/elements.hxx>
+#include <xsd/cxx/tree/iterator-adapter.hxx>
namespace xsd
{
@@ -132,11 +131,11 @@ namespace xsd
public:
~one ();
- one (flags, container*);
+ one (container*);
- one (const T&, flags, container*);
+ one (const T&, container*);
- one (std::auto_ptr<T>, flags, container*);
+ one (XSD_AUTO_PTR<T>, container*);
one (const one&, flags, container*);
@@ -157,10 +156,13 @@ namespace xsd
}
void
- set (const T&);
+ set (const T& x)
+ {
+ set (x, 0);
+ }
void
- set (std::auto_ptr<T>);
+ set (XSD_AUTO_PTR<T>);
bool
present () const
@@ -168,18 +170,21 @@ namespace xsd
return x_ != 0;
}
- std::auto_ptr<T>
+ XSD_AUTO_PTR<T>
detach ()
{
T* x (x_);
x->_container (0);
x_ = 0;
- return std::auto_ptr<T> (x);
+ return XSD_AUTO_PTR<T> (x);
}
protected:
+ void
+ set (const T&, flags);
+
+ protected:
T* x_;
- flags flags_;
container* container_;
};
@@ -188,12 +193,12 @@ namespace xsd
class one<T, true>
{
public:
- one (flags, container*)
+ one (container*)
: present_ (false)
{
}
- one (const T& x, flags, container*)
+ one (const T& x, container*)
: x_ (x), present_ (true)
{
}
@@ -246,9 +251,6 @@ namespace xsd
bool present_;
};
-
- // Note that I cannot get rid of fund because of HP aCC3.
- //
template <typename T, bool fund = fundamental_p<T>::r>
class optional;
@@ -259,13 +261,13 @@ namespace xsd
~optional ();
explicit
- optional (flags = 0, container* = 0);
+ optional (container* = 0);
explicit
- optional (const T&, flags = 0, container* = 0);
+ optional (const T&, container* = 0);
explicit
- optional (std::auto_ptr<T>, flags = 0, container* = 0);
+ optional (XSD_AUTO_PTR<T>, container* = 0);
optional (const optional&, flags = 0, container* = 0);
@@ -332,30 +334,35 @@ namespace xsd
}
void
- set (const T&);
+ set (const T& x)
+ {
+ set (x, 0);
+ }
void
- set (std::auto_ptr<T>);
+ set (XSD_AUTO_PTR<T>);
void
reset ();
- std::auto_ptr<T>
+ XSD_AUTO_PTR<T>
detach ()
{
T* x (x_);
x->_container (0);
x_ = 0;
- return std::auto_ptr<T> (x);
+ return XSD_AUTO_PTR<T> (x);
}
- private:
+ protected:
+ void
+ set (const T&, flags);
+
void
true_ ();
- private:
+ protected:
T* x_;
- flags flags_;
container* container_;
};
@@ -367,13 +374,13 @@ namespace xsd
{
public:
explicit
- optional (flags = 0, container* = 0)
+ optional (container* = 0)
: present_ (false)
{
}
explicit
- optional (const T&, flags = 0, container* = 0);
+ optional (const T&, container* = 0);
optional (const optional&, flags = 0, container* = 0);
@@ -506,7 +513,7 @@ namespace xsd
return !(a < b);
}
- // Provide an ostream insertion opretaor to prevent confusion from
+ // Provide an ostream insertion operator to prevent confusion from
// the implicit bool conversion.
//
template <typename C, typename T, bool fund>
@@ -516,264 +523,9 @@ namespace xsd
// Sequence.
//
-
- // Note that I cannot get rid of 'fund' because HP aCC3 likes it
- // this way.
- //
template <typename T, bool fund = fundamental_p<T>::r>
class sequence;
-
- // Sun CC's <iterator> does not have iterator_traits. To overcome
- // this, we will wrap std::iterator_traits into our own and also
- // specialize it for pointer types. Since Sun CC uses pointer
- // for vector::iterator, it will use the specialization and won't
- // notice the std::iterator_traits.
- //
-#ifndef _RWSTD_NO_CLASS_PARTIAL_SPEC
- template <typename I>
- struct iterator_traits
- {
- typedef
- typename std::iterator_traits<I>::iterator_category
- iterator_category;
-
- typedef
- typename std::iterator_traits<I>::value_type
- value_type;
-
- typedef
- typename std::iterator_traits<I>::difference_type
- difference_type;
- };
-#else
- // The Pointer specialization does not work for reverse and
- // set iterators. But these iterators are user-dfined types
- // and have suitable typedefs that we can use.
- //
- template <typename I>
- struct iterator_traits
- {
- typedef typename I::iterator_category iterator_category;
- typedef typename I::value_type value_type;
- typedef typename I::difference_type difference_type;
- };
-
- template <typename T>
- struct iterator_traits<T*>
- {
- typedef std::random_access_iterator_tag iterator_category;
- typedef T value_type;
- typedef std::ptrdiff_t difference_type;
- };
-#endif
-
- // Iterator adapter for complex types. It expects I to point to
- // a smart pointer-like object that has operator*() that returns
- // a refernce to a type static_cast'able to T and get() that
- // returns a pointer to a type static_cast'able to T.
- //
-
- template <typename I, typename T>
- struct iterator_adapter
- {
- typedef T value_type;
- typedef value_type& reference;
- typedef value_type* pointer;
-
- typedef
- typename iterator_traits<I>::iterator_category
- iterator_category;
-
- typedef
- typename iterator_traits<I>::difference_type
- difference_type;
-
-
- public:
- iterator_adapter ()
- : i_ () // i_ can be of a pointer type.
- {
- }
-
- // Allow iterator to const_iterator conversion.
- //
- template <typename J, typename T2>
- iterator_adapter (const iterator_adapter<J, T2>& j)
- : i_ (j.base ())
- {
- }
-
- explicit
- iterator_adapter (const I& i)
- : i_ (i)
- {
- }
-
- public:
- // Forward iterator requirements.
- //
- reference
- operator* () const
- {
- return static_cast<reference> (**i_);
- }
-
- pointer
- operator-> () const
- {
- return static_cast<pointer> (i_->get ());
- }
-
- iterator_adapter&
- operator++ ()
- {
- ++i_;
- return *this;
- }
-
- iterator_adapter
- operator++ (int)
- {
- iterator_adapter r (*this);
- ++i_;
- return r;
- }
-
- // Bidirectional iterator requirements.
- //
- iterator_adapter&
- operator-- ()
- {
- --i_;
- return *this;
- }
-
- iterator_adapter
- operator-- (int)
- {
- iterator_adapter r (*this);
- --i_;
- return r;
- }
-
- // Random access iterator requirements.
- //
- reference
- operator[] (difference_type n) const
- {
- return static_cast<reference> (*(i_[n]));
- }
-
- iterator_adapter&
- operator+= (difference_type n)
- {
- i_ += n;
- return *this;
- }
-
- iterator_adapter
- operator+ (difference_type n) const
- {
- return iterator_adapter (i_ + n);
- }
-
- iterator_adapter&
- operator-= (difference_type n)
- {
- i_ -= n;
- return *this;
- }
-
- iterator_adapter
- operator- (difference_type n) const
- {
- return iterator_adapter (i_ - n);
- }
-
- public:
- const I&
- base () const
- {
- return i_;
- }
-
- private:
- I i_;
- };
-
- // Note: We use different types for left- and right-hand-side
- // arguments to allow comparison between iterator and const_iterator.
- //
-
- // Forward iterator requirements.
- //
- template <typename I, typename J, typename T1, typename T2>
- inline bool
- operator== (const iterator_adapter<I, T1>& i,
- const iterator_adapter<J, T2>& j)
- {
- return i.base () == j.base ();
- }
-
- template <typename I, typename J, typename T1, typename T2>
- inline bool
- operator!= (const iterator_adapter<I, T1>& i,
- const iterator_adapter<J, T2>& j)
- {
- return i.base () != j.base ();
- }
-
- // Random access iterator requirements
- //
- template <typename I, typename J, typename T1, typename T2>
- inline bool
- operator< (const iterator_adapter<I, T1>& i,
- const iterator_adapter<J, T2>& j)
- {
- return i.base () < j.base ();
- }
-
- template <typename I, typename J, typename T1, typename T2>
- inline bool
- operator> (const iterator_adapter<I, T1>& i,
- const iterator_adapter<J, T2>& j)
- {
- return i.base () > j.base ();
- }
-
- template <typename I, typename J, typename T1, typename T2>
- inline bool
- operator<= (const iterator_adapter<I, T1>& i,
- const iterator_adapter<J, T2>& j)
- {
- return i.base () <= j.base ();
- }
-
- template <typename I, typename J, typename T1, typename T2>
- inline bool
- operator>= (const iterator_adapter<I, T1>& i,
- const iterator_adapter<J, T2>& j)
- {
- return i.base () >= j.base ();
- }
-
- template <typename I, typename J, typename T1, typename T2>
- inline typename iterator_adapter<I, T1>::difference_type
- operator- (const iterator_adapter<I, T1>& i,
- const iterator_adapter<J, T2>& j)
- {
- return i.base () - j.base ();
- }
-
- template <typename I, typename T>
- inline iterator_adapter<I, T>
- operator+ (typename iterator_adapter<I, T>::difference_type n,
- const iterator_adapter<I, T>& i)
- {
- return iterator_adapter<I, T> (i.base () + n);
- }
-
//
//
class sequence_common
@@ -859,33 +611,33 @@ namespace xsd
typedef base_sequence::allocator_type allocator_type;
protected:
- sequence_common (flags f, container* c)
- : flags_ (f), container_ (c)
+ sequence_common (container* c)
+ : container_ (c)
{
}
sequence_common (size_type n, const type& x, container* c)
- : flags_ (0), container_ (c)
+ : container_ (c)
{
assign (n, x);
}
template <typename I>
sequence_common (const I& begin, const I& end, container* c)
- : flags_ (0), container_ (c)
+ : container_ (c)
{
assign (begin, end);
}
sequence_common (const sequence_common& v, flags f, container* c)
- : flags_ (f), container_ (c)
+ : container_ (c)
{
v_.reserve (v.v_.size ());
for (base_const_iterator i (v.v_.begin ()), e (v.v_.end ());
i != e; ++i)
{
- ptr p ((**i)._clone (flags_, container_));
+ ptr p ((**i)._clone (f, container_));
v_.push_back (p);
}
}
@@ -906,7 +658,7 @@ namespace xsd
{
// We have no ptr_ref.
//
- ptr p ((**si)._clone (flags_, container_));
+ ptr p ((**si)._clone (0, container_));
*di = p;
}
@@ -958,7 +710,7 @@ namespace xsd
for (base_iterator i (v_.begin ()), e (v_.end ()); i != e; ++i)
{
- ptr p (x._clone (flags_, container_));
+ ptr p (x._clone (0, container_));
*i = p;
}
}
@@ -974,7 +726,7 @@ namespace xsd
for (I i (begin); i != end; ++i)
{
- ptr p (i->_clone (flags_, container_));
+ ptr p (i->_clone (0, container_));
v_.push_back (p);
}
}
@@ -990,7 +742,7 @@ namespace xsd
for (base_iterator i (v_.begin () + old), e (v_.end ());
i != e; ++i)
{
- ptr p (x._clone (flags_, container_));
+ ptr p (x._clone (0, container_));
*i = p;
}
}
@@ -1004,7 +756,7 @@ namespace xsd
for (base_iterator i (v_.end () - d); n != 0; --n)
{
- ptr r (x._clone (flags_, container_));
+ ptr r (x._clone (0, container_));
*(--i) = r;
}
}
@@ -1021,7 +773,7 @@ namespace xsd
for (I i (end);;)
{
--i;
- ptr r (i->_clone (flags_, container_));
+ ptr r (i->_clone (0, container_));
p = v_.insert (p, r);
if (i == begin)
@@ -1031,7 +783,6 @@ namespace xsd
}
protected:
- flags flags_;
container* container_;
base_sequence v_;
};
@@ -1075,8 +826,8 @@ namespace xsd
public:
explicit
- sequence (flags f = 0, container* c = 0)
- : sequence_common (f, c)
+ sequence (container* c = 0)
+ : sequence_common (c)
{
}
@@ -1260,11 +1011,11 @@ namespace xsd
void
push_back (const T& x)
{
- v_.push_back (ptr (x._clone (flags_, container_)));
+ v_.push_back (ptr (x._clone (0, container_)));
}
void
- push_back (std::auto_ptr<T> x)
+ push_back (XSD_AUTO_PTR<T> x)
{
if (x->_container () != container_)
x->_container (container_);
@@ -1278,7 +1029,7 @@ namespace xsd
v_.pop_back ();
}
- std::auto_ptr<T>
+ XSD_AUTO_PTR<T>
detach_back (bool pop = true)
{
ptr& p (v_.back ());
@@ -1288,7 +1039,7 @@ namespace xsd
if (pop)
v_.pop_back ();
- return std::auto_ptr<T> (x);
+ return XSD_AUTO_PTR<T> (x);
}
iterator
@@ -1296,11 +1047,11 @@ namespace xsd
{
return iterator (
v_.insert (
- position.base (), ptr (x._clone (flags_, container_))));
+ position.base (), ptr (x._clone (0, container_))));
}
iterator
- insert (iterator position, std::auto_ptr<T> x)
+ insert (iterator position, XSD_AUTO_PTR<T> x)
{
if (x->_container () != container_)
x->_container (container_);
@@ -1334,12 +1085,11 @@ namespace xsd
}
iterator
- detach (iterator position, std::auto_ptr<T>& r, bool erase = true)
+ detach (iterator position, XSD_AUTO_PTR<T>& r, bool erase = true)
{
ptr& p (*position.base ());
p->_container (0);
- std::auto_ptr<T> tmp (static_cast<T*> (p.release ()));
- r = tmp;
+ r.reset (static_cast<T*> (p.release ()));
if (erase)
return iterator (v_.erase (position.base ()));
@@ -1368,7 +1118,7 @@ namespace xsd
public:
explicit
- sequence (flags = 0, container* = 0)
+ sequence (container* = 0)
{
}
diff --git a/xsd/libxsd/xsd/cxx/tree/containers.txx b/xsd/libxsd/xsd/cxx/tree/containers.txx
index fdc0bfd..2a3573f 100644
--- a/xsd/libxsd/xsd/cxx/tree/containers.txx
+++ b/xsd/libxsd/xsd/cxx/tree/containers.txx
@@ -1,9 +1,13 @@
// file : xsd/cxx/tree/containers.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <ostream>
+
+#ifdef XSD_CXX11
+# include <utility> // std::move
+#endif
+
#include <xsd/cxx/tree/bits/literals.hxx>
namespace xsd
@@ -23,34 +27,38 @@ namespace xsd
template<typename T>
one<T, false>::
- one (flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ one (container* c)
+ : x_ (0), container_ (c)
{
}
template<typename T>
one<T, false>::
- one (const T& x, flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ one (const T& x, container* c)
+ : x_ (0), container_ (c)
{
set (x);
}
template<typename T>
one<T, false>::
- one (std::auto_ptr<T> x, flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ one (XSD_AUTO_PTR<T> x, container* c)
+ : x_ (0), container_ (c)
{
+#ifdef XSD_CXX11
+ set (std::move (x));
+#else
set (x);
+#endif
}
template<typename T>
one<T, false>::
one (const one<T, false>& x, flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ : x_ (0), container_ (c)
{
if (x.present ())
- set (x.get ());
+ set (x.get (), f);
}
template<typename T>
@@ -73,12 +81,12 @@ namespace xsd
template<typename T>
void one<T, false>::
- set (const T& x)
+ set (const T& x, flags f)
{
// We always do a fresh copy because T may not be x's
// dynamic type.
//
- T* r (x._clone (flags_, container_));
+ T* r (x._clone (f, container_));
delete x_;
x_ = r;
@@ -86,7 +94,7 @@ namespace xsd
template<typename T>
void one<T, false>::
- set (std::auto_ptr<T> x)
+ set (XSD_AUTO_PTR<T> x)
{
T* r (0);
@@ -113,34 +121,38 @@ namespace xsd
template <typename T>
optional<T, false>::
- optional (flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ optional (container* c)
+ : x_ (0), container_ (c)
{
}
template <typename T>
optional<T, false>::
- optional (const T& x, flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ optional (const T& x, container* c)
+ : x_ (0), container_ (c)
{
set (x);
}
template <typename T>
optional<T, false>::
- optional (std::auto_ptr<T> x, flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ optional (XSD_AUTO_PTR<T> x, container* c)
+ : x_ (0), container_ (c)
{
+#ifdef XSD_CXX11
+ set (std::move (x));
+#else
set (x);
+#endif
}
template <typename T>
optional<T, false>::
optional (const optional<T, false>& x, flags f, container* c)
- : x_ (0), flags_ (f), container_ (c)
+ : x_ (0), container_ (c)
{
if (x)
- set (*x);
+ set (*x, f);
}
template <typename T>
@@ -172,12 +184,12 @@ namespace xsd
template <typename T>
void optional<T, false>::
- set (const T& x)
+ set (const T& x, flags f)
{
// We always do a fresh copy because T may not be x's
// dynamic type.
//
- T* r (x._clone (flags_, container_));
+ T* r (x._clone (f, container_));
delete x_;
x_ = r;
@@ -185,7 +197,7 @@ namespace xsd
template <typename T>
void optional<T, false>::
- set (std::auto_ptr<T> x)
+ set (XSD_AUTO_PTR<T> x)
{
T* r (0);
@@ -220,7 +232,7 @@ namespace xsd
//
template <typename T>
optional<T, true>::
- optional (const T& y, flags, container*)
+ optional (const T& y, container*)
: present_ (false)
{
set (y);
diff --git a/xsd/libxsd/xsd/cxx/tree/date-time-extraction.txx b/xsd/libxsd/xsd/cxx/tree/date-time-extraction.txx
index 317b80f..4ada1a0 100644
--- a/xsd/libxsd/xsd/cxx/tree/date-time-extraction.txx
+++ b/xsd/libxsd/xsd/cxx/tree/date-time-extraction.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/date-time-extraction.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/date-time-insertion.txx b/xsd/libxsd/xsd/cxx/tree/date-time-insertion.txx
index db24ae1..b41ffce 100644
--- a/xsd/libxsd/xsd/cxx/tree/date-time-insertion.txx
+++ b/xsd/libxsd/xsd/cxx/tree/date-time-insertion.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/date-time-insertion.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/date-time-ostream.txx b/xsd/libxsd/xsd/cxx/tree/date-time-ostream.txx
index 90073f4..830cd49 100644
--- a/xsd/libxsd/xsd/cxx/tree/date-time-ostream.txx
+++ b/xsd/libxsd/xsd/cxx/tree/date-time-ostream.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/date-time-ostream.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <ostream>
diff --git a/xsd/libxsd/xsd/cxx/tree/date-time.hxx b/xsd/libxsd/xsd/cxx/tree/date-time.hxx
index abde516..9526f92 100644
--- a/xsd/libxsd/xsd/cxx/tree/date-time.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/date-time.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/date-time.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
/**
diff --git a/xsd/libxsd/xsd/cxx/tree/date-time.ixx b/xsd/libxsd/xsd/cxx/tree/date-time.ixx
index 5bc7200..00d7f8c 100644
--- a/xsd/libxsd/xsd/cxx/tree/date-time.ixx
+++ b/xsd/libxsd/xsd/cxx/tree/date-time.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/date-time.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/date-time.txx b/xsd/libxsd/xsd/cxx/tree/date-time.txx
index 34c6c84..f5b9b8e 100644
--- a/xsd/libxsd/xsd/cxx/tree/date-time.txx
+++ b/xsd/libxsd/xsd/cxx/tree/date-time.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/date-time.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/element-map.hxx b/xsd/libxsd/xsd/cxx/tree/element-map.hxx
index 2f12b0b..0f4883d 100644
--- a/xsd/libxsd/xsd/cxx/tree/element-map.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/element-map.hxx
@@ -1,16 +1,17 @@
// file : xsd/cxx/tree/element-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_ELEMENT_MAP_HXX
#define XSD_CXX_TREE_ELEMENT_MAP_HXX
#include <map>
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cstddef> // std::size_t
#include <string>
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/xml/qualified-name.hxx>
#include <xsd/cxx/tree/elements.hxx>
@@ -44,7 +45,7 @@ namespace xsd
* @param f Flags to create the new element object with.
* @return An automatic pointer to the new element object.
*/
- static std::auto_ptr<element_type>
+ static XSD_AUTO_PTR<element_type>
parse (const xercesc::DOMElement& e, flags f = 0);
/**
@@ -61,7 +62,7 @@ namespace xsd
typedef xml::qualified_name<C> qualified_name;
- typedef std::auto_ptr<element_type>
+ typedef XSD_AUTO_PTR<element_type>
(*parser) (const xercesc::DOMElement&, flags f);
typedef void
@@ -113,7 +114,7 @@ namespace xsd
//
//
template<typename T, typename C, typename B>
- std::auto_ptr<element_type<C, B> >
+ XSD_AUTO_PTR<element_type<C, B> >
parser_impl (const xercesc::DOMElement&, flags);
template<typename T, typename C, typename B>
diff --git a/xsd/libxsd/xsd/cxx/tree/element-map.txx b/xsd/libxsd/xsd/cxx/tree/element-map.txx
index 0ff5d2a..32fe873 100644
--- a/xsd/libxsd/xsd/cxx/tree/element-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/element-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/element-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/elements.hxx b/xsd/libxsd/xsd/cxx/tree/elements.hxx
index 403fdb3..a3bbea4 100644
--- a/xsd/libxsd/xsd/cxx/tree/elements.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/elements.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
/**
@@ -17,25 +16,40 @@
#ifndef XSD_CXX_TREE_ELEMENTS_HXX
#define XSD_CXX_TREE_ELEMENTS_HXX
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR, XSD_CXX11
+
#include <map>
#include <string>
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
+#include <cstddef> // std::size_t
#include <istream>
#include <sstream>
#include <cassert>
+#ifdef XSD_CXX11
+# include <utility> // std::move
+#endif
+
#include <xercesc/dom/DOMNode.hpp>
#include <xercesc/dom/DOMAttr.hpp>
#include <xercesc/dom/DOMElement.hpp>
#include <xercesc/dom/DOMDocument.hpp>
#include <xercesc/dom/DOMNamedNodeMap.hpp>
+#include <xercesc/util/XercesVersion.hpp>
+
#include <xsd/cxx/xml/elements.hxx> // xml::properties
-#include <xsd/cxx/xml/dom/auto-ptr.hxx> // dom::auto_ptr
+#include <xsd/cxx/xml/dom/auto-ptr.hxx> // dom::auto_ptr/unique_ptr
+#include <xsd/cxx/xml/dom/wildcard-source.hxx> // dom::create_document()
#include <xsd/cxx/tree/facet.hxx>
#include <xsd/cxx/tree/exceptions.hxx>
#include <xsd/cxx/tree/istream-fwd.hxx>
+#include <xsd/cxx/tree/containers-wildcard.hxx>
+
+#if _XERCES_VERSION < 30000
+# error Xerces-C++ 2-series is not supported
+#endif
namespace xsd
{
@@ -77,7 +91,7 @@ namespace xsd
*
* This flag only makes sense together with the @c keep_dom
* flag in the call to the %parsing function with the
- * @c dom::auto_ptr<DOMDocument> argument.
+ * @c dom::auto_ptr/unique_ptr<DOMDocument> argument.
*
*/
static const unsigned long own_dom = 0x00000200UL;
@@ -89,6 +103,12 @@ namespace xsd
static const unsigned long dont_validate = 0x00000400UL;
/**
+ * @brief Extract XML content for anyType or anySimpleType.
+ * Normally you don't need to specify this flag explicitly.
+ */
+ static const unsigned long extract_content = 0x00000800UL;
+
+ /**
* @brief Do not initialize the Xerces-C++ runtime.
*/
static const unsigned long dont_initialize = 0x00000001UL;
@@ -179,7 +199,6 @@ namespace xsd
unsigned long x_;
};
-
// Parsing properties. Refer to xsd/cxx/xml/elements.hxx for XML-
// related properties.
//
@@ -188,6 +207,44 @@ namespace xsd
{
};
+ /**
+ * @brief Content order sequence entry.
+ *
+ * @nosubgrouping
+ */
+ struct content_order
+ {
+ /**
+ * @brief Initialize an instance with passed id and index.
+ *
+ * @param id Content id.
+ * @param index Content index in the corresponding sequence.
+ */
+ content_order (std::size_t id, std::size_t index = 0)
+ : id (id), index (index)
+ {
+ }
+
+ /**
+ * @brief Content id.
+ */
+ std::size_t id;
+
+ /**
+ * @brief Content index.
+ */
+ std::size_t index;
+ };
+
+ bool
+ operator== (const content_order&, const content_order&);
+
+ bool
+ operator!= (const content_order&, const content_order&);
+
+ bool
+ operator< (const content_order&, const content_order&);
+
//@cond
// DOM user data keys.
@@ -202,12 +259,6 @@ namespace xsd
typedef user_data_keys_template<0> user_data_keys;
- // HP aCC3 complains about unresolved symbols without an explicit
- // instantiation.
- //
-#if defined(__HP_aCC) && __HP_aCC <= 39999
- template struct user_data_keys_template<0>;
-#endif
//
//
struct identity
@@ -284,10 +335,20 @@ namespace xsd
/**
* @brief Default constructor.
*/
- _type ()
- : container_ (0)
- {
- }
+ _type ();
+
+ /**
+ * @brief Create an instance from a C string.
+ *
+ * @param s A string to initialize the instance with.
+ *
+ * Note that this constructor ignores the string and creates an
+ * empty anyType instance. In particular, it will not convert the
+ * string into DOM content. The purpose of such a strange constructor
+ * is to allow statically-initialized default values of anyType type.
+ */
+ template <typename C>
+ _type (const C* s);
public:
/**
@@ -339,7 +400,9 @@ namespace xsd
* @param c A pointer to the object that will contain the new
* instance.
*/
- _type (const xercesc::DOMElement& e, flags f = 0, container* c = 0);
+ _type (const xercesc::DOMElement& e,
+ flags f = flags::extract_content,
+ container* c = 0);
/**
* @brief Create an instance from a DOM Attribute.
@@ -377,10 +440,150 @@ namespace xsd
type&
operator= (const type& x)
{
- while (&x == 0) /* unused */;
+ if (this != &x)
+ {
+ if (x.content_.get () == 0)
+ content_.reset ();
+ else
+ content_ = x.content_->clone ();
+
+ // Drop DOM association.
+ //
+ dom_info_.reset ();
+ }
+
return *this;
}
+ // anyType content API.
+ //
+ public:
+ typedef element_optional dom_content_optional;
+
+ /**
+ * @brief Return a read-only (constant) reference to the anyType
+ * DOM content.
+ *
+ * @return A constant reference to the optional container.
+ *
+ * The DOM content is returned as an optional element container,
+ * the same container as used for optional element wildcards.
+ */
+ const dom_content_optional&
+ dom_content () const;
+
+ /**
+ * @brief Return a read-write reference to the anyType DOM content.
+ *
+ * @return A reference to the optional container.
+ *
+ * The DOM content is returned as an optional element container,
+ * the same container as used for optional element wildcards.
+ */
+ dom_content_optional&
+ dom_content ();
+
+ /**
+ * @brief Set the anyType DOM content.
+ *
+ * @param e A new element to set.
+ *
+ * This function makes a copy of its argument and sets it as the
+ * new DOM content.
+ */
+ void
+ dom_content (const xercesc::DOMElement& e);
+
+ /**
+ * @brief Set the anyType DOM content.
+ *
+ * @param e A new element to use.
+ *
+ * This function will use the passed element directly instead
+ * of making a copy. For this to work the element should belong
+ * to the DOM document associated with this anyType instance.
+ *
+ * @see dom_content_document
+ */
+ void
+ dom_content (xercesc::DOMElement* e);
+
+ /**
+ * @brief Set the anyType DOM content.
+ *
+ * @param d An optional container with the new element to set.
+ *
+ * If the element is present in @a d then this function makes a
+ * copy of this element and sets it as the new wildcard content.
+ * Otherwise the element container is set the 'not present' state.
+ */
+ void
+ dom_content (const dom_content_optional& d);
+
+ /**
+ * @brief Return a read-only (constant) reference to the DOM
+ * document associated with this anyType instance.
+ *
+ * @return A constant reference to the DOM document.
+ *
+ * The DOM document returned by this function is used to store
+ * the raw XML content corresponding to the anyType instance.
+ */
+ const xercesc::DOMDocument&
+ dom_content_document () const;
+
+ /**
+ * @brief Return a read-write reference to the DOM document
+ * associated with this anyType instance.
+ *
+ * @return A reference to the DOM document.
+ *
+ * The DOM document returned by this function is used to store
+ * the raw XML content corresponding to the anyType instance.
+ */
+ xercesc::DOMDocument&
+ dom_content_document ();
+
+ /**
+ * @brief Check for absence of DOM (anyType) and text (anySimpleType)
+ * content.
+ *
+ * @return True if there is no content and false otherwise.
+ *
+ * This is an optimization function that allows us to check for the
+ * lack of content without actually creating its empty representation
+ * (that is, empty DOM document for DOM or empty string for text).
+ */
+ bool
+ null_content () const;
+
+ //
+ //
+ public:
+ /**
+ * @brief Comparison operator. It uses DOM (anyType) or text
+ * (anySimpleType) content if present. If the content is missing
+ * then the types are assumed unequal.
+ *
+ * @return True if the instances are equal, false otherwise.
+ */
+ friend bool
+ operator== (const type& x, const type& y)
+ {
+ return x.content_.get () != 0 &&
+ x.content_->compare (y.content_.get ());
+ }
+
+ /**
+ * @brief Comparison operator. It uses DOM (anyType) or text
+ * (anySimpleType) content if present. If the content is missing
+ * then the types are assumed unequal.
+ *
+ * @return True if the instances are not equal, false otherwise.
+ */
+ friend bool
+ operator!= (const type& x, const type& y) {return !(x == y);}
+
// Container API.
//
public:
@@ -429,7 +632,7 @@ namespace xsd
dr = c;
}
- std::auto_ptr<map>& m (dr ? dr->map_ : map_);
+ XSD_AUTO_PTR<map>& m (dr ? dr->map_ : map_);
if (container_ == 0)
{
@@ -440,11 +643,16 @@ namespace xsd
if (m.get () != 0)
{
m->insert (map_->begin (), map_->end ());
- std::auto_ptr<map> tmp (0);
- map_ = tmp;
+ map_.reset ();
}
else
+ {
+#ifdef XSD_CXX11
+ m = std::move (map_);
+#else
m = map_;
+#endif
+ }
}
}
else
@@ -466,10 +674,7 @@ namespace xsd
// Part of our subtree.
//
if (m.get () == 0)
- {
- std::auto_ptr<map> tmp (new map);
- m = tmp;
- }
+ m.reset (new map);
m->insert (*i);
sr->map_->erase (i++);
@@ -548,7 +753,7 @@ namespace xsd
* @brief Exception indicating that a DOM node cannot be associated
* with an object model node.
*/
- class bad_dom_node_type: public std::exception //@@ Inherit exception.
+ class bad_dom_node_type: public std::exception //@@ Inherit exception<C>.
{
public:
/**
@@ -584,37 +789,31 @@ namespace xsd
{
if (container_ != 0)
{
- // @@ Should be a throw.
- //
assert (_root ()->_node () != 0);
assert (_root ()->_node ()->getOwnerDocument () ==
n->getOwnerDocument ());
}
- std::auto_ptr<dom_info> r (
+ dom_info_ =
dom_info_factory::create (
*static_cast<xercesc::DOMElement*> (n),
*this,
- container_ == 0));
+ container_ == 0);
- dom_info_ = r;
break;
}
case xercesc::DOMNode::ATTRIBUTE_NODE:
{
- //@@ Should be a throw.
- //
assert (container_ != 0);
assert (_root ()->_node () != 0);
assert (_root ()->_node ()->getOwnerDocument () ==
n->getOwnerDocument ());
- std::auto_ptr<dom_info> r (
+ dom_info_ =
dom_info_factory::create (
*static_cast<xercesc::DOMAttr*> (n),
- *this));
+ *this);
- dom_info_ = r;
break;
}
default:
@@ -628,26 +827,23 @@ namespace xsd
//@cond
void
- _register_id (const identity& id, type* t)
+ _register_id (const identity& i, type* t)
{
// We should be the root.
//
assert (container_ == 0);
if (map_.get () == 0)
- {
- std::auto_ptr<map> tmp (new map);
- map_ = tmp;
- }
+ map_.reset (new map);
if (!map_->insert (
- std::pair<const identity*, type*> (&id, t)).second)
+ std::pair<const identity*, type*> (&i, t)).second)
{
- id.throw_duplicate_id ();
+ i.throw_duplicate_id ();
}
}
- //@@ Does not inherit from exception.
+ //@@ Does not inherit from exception<C>.
//
struct not_registered: std::exception
{
@@ -691,15 +887,11 @@ namespace xsd
struct dom_info
{
virtual
- ~dom_info ()
- {
- }
+ ~dom_info () {}
- dom_info ()
- {
- }
+ dom_info () {}
- virtual std::auto_ptr<dom_info>
+ virtual XSD_AUTO_PTR<dom_info>
clone (type& tree_node, container*) const = 0;
virtual xercesc::DOMNode*
@@ -707,41 +899,41 @@ namespace xsd
private:
dom_info (const dom_info&);
-
- dom_info&
- operator= (const dom_info&);
+ dom_info& operator= (const dom_info&);
};
-
struct dom_element_info: public dom_info
{
dom_element_info (xercesc::DOMElement& e, type& n, bool root)
- : doc_ (0), e_ (e)
+ : e_ (e)
{
e_.setUserData (user_data_keys::node, &n, 0);
if (root)
{
- // The caller should have associated a dom::auto_ptr object
- // that owns this document with the document node using the
- // xml_schema::dom::tree_node_key key.
+ // The caller should have associated a dom::auto/unique_ptr
+ // object that owns this document with the document node
+ // using the xml_schema::dom::tree_node_key key.
//
- xml::dom::auto_ptr<xercesc::DOMDocument>* pd (
- reinterpret_cast<xml::dom::auto_ptr<xercesc::DOMDocument>*> (
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>* pd (
+ reinterpret_cast<XSD_DOM_AUTO_PTR<xercesc::DOMDocument>*> (
e.getOwnerDocument ()->getUserData (user_data_keys::node)));
assert (pd != 0);
assert (pd->get () == e.getOwnerDocument ());
- doc_ = *pd; // Transfer ownership.
+ // Transfer ownership.
+#ifdef XSD_CXX11
+ doc_ = std::move (*pd);
+#else
+ doc_ = *pd;
+#endif
}
}
- virtual std::auto_ptr<dom_info>
+ virtual XSD_AUTO_PTR<dom_info>
clone (type& tree_node, container* c) const
{
- using std::auto_ptr;
-
// Check if we are a document root.
//
if (c == 0)
@@ -749,11 +941,10 @@ namespace xsd
// We preserver DOM associations only in complete
// copies from root.
//
- if (doc_.get () == 0)
- return auto_ptr<dom_info> (0);
-
- return auto_ptr<dom_info> (
- new dom_element_info (*doc_, tree_node));
+ return XSD_AUTO_PTR<dom_info> (
+ doc_.get () == 0
+ ? 0
+ : new dom_element_info (*doc_, tree_node));
}
// Check if our container does not have DOM association (e.g.,
@@ -764,8 +955,7 @@ namespace xsd
DOMNode* cn (c->_node ());
if (cn == 0)
- return auto_ptr<dom_info> (0);
-
+ return XSD_AUTO_PTR<dom_info> ();
// Now we are going to find the corresponding element in
// the new tree.
@@ -797,7 +987,7 @@ namespace xsd
assert (dn->getNodeType () == DOMNode::ELEMENT_NODE);
- return auto_ptr<dom_info> (
+ return XSD_AUTO_PTR<dom_info> (
new dom_element_info (static_cast<DOMElement&> (*dn),
tree_node,
false));
@@ -820,7 +1010,7 @@ namespace xsd
}
private:
- xml::dom::auto_ptr<xercesc::DOMDocument> doc_;
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument> doc_;
xercesc::DOMElement& e_;
};
@@ -833,11 +1023,9 @@ namespace xsd
a_.setUserData (user_data_keys::node, &n, 0);
}
- virtual std::auto_ptr<dom_info>
+ virtual XSD_AUTO_PTR<dom_info>
clone (type& tree_node, container* c) const
{
- using std::auto_ptr;
-
// Check if we are a document root.
//
if (c == 0)
@@ -845,7 +1033,7 @@ namespace xsd
// We preserver DOM associations only in complete
// copies from root.
//
- return auto_ptr<dom_info> (0);
+ return XSD_AUTO_PTR<dom_info> ();
}
// Check if our container does not have DOM association (e.g.,
@@ -856,7 +1044,7 @@ namespace xsd
DOMNode* cn (c->_node ());
if (cn == 0)
- return auto_ptr<dom_info> (0);
+ return XSD_AUTO_PTR<dom_info> ();
// We are going to find the corresponding attribute in
// the new tree.
@@ -883,7 +1071,7 @@ namespace xsd
DOMNode& n (*cn->getAttributes ()->item (i));
assert (n.getNodeType () == DOMNode::ATTRIBUTE_NODE);
- return auto_ptr<dom_info> (
+ return XSD_AUTO_PTR<dom_info> (
new dom_attribute_info (static_cast<DOMAttr&> (n), tree_node));
}
@@ -904,18 +1092,18 @@ namespace xsd
struct dom_info_factory
{
- static std::auto_ptr<dom_info>
+ static XSD_AUTO_PTR<dom_info>
create (const xercesc::DOMElement& e, type& n, bool root)
{
- return std::auto_ptr<dom_info> (
+ return XSD_AUTO_PTR<dom_info> (
new dom_element_info (
const_cast<xercesc::DOMElement&> (e), n, root));
}
- static std::auto_ptr<dom_info>
+ static XSD_AUTO_PTR<dom_info>
create (const xercesc::DOMAttr& a, type& n)
{
- return std::auto_ptr<dom_info> (
+ return XSD_AUTO_PTR<dom_info> (
new dom_attribute_info (
const_cast<xercesc::DOMAttr&> (a), n));
}
@@ -923,7 +1111,7 @@ namespace xsd
//@endcond
- std::auto_ptr<dom_info> dom_info_;
+ XSD_AUTO_PTR<dom_info> dom_info_;
// ID/IDREF map.
@@ -946,23 +1134,77 @@ namespace xsd
std::map<const identity*, type*, identity_comparator>
map;
- std::auto_ptr<map> map_;
+ XSD_AUTO_PTR<map> map_;
- private:
- container* container_;
- };
+ // anyType and anySimpleType content.
+ //
+ protected:
- inline _type::
- _type (const type& x, flags, container* c)
- : container_ (c)
- {
- if (x.dom_info_.get ())
+ //@cond
+
+ struct content_type
{
- std::auto_ptr<dom_info> r (x.dom_info_->clone (*this, c));
- dom_info_ = r;
- }
- }
+ virtual
+ ~content_type () {}
+
+ content_type () {}
+ virtual XSD_AUTO_PTR<content_type>
+ clone () const = 0;
+
+ virtual bool
+ compare (const content_type*) const = 0;
+
+ private:
+ content_type (const content_type&);
+ content_type& operator= (const content_type&);
+ };
+
+ struct dom_content_type: content_type
+ {
+ dom_content_type ()
+ : doc (xml::dom::create_document<char> ()), dom (*doc) {}
+
+ explicit
+ dom_content_type (const xercesc::DOMElement& e)
+ : doc (xml::dom::create_document<char> ()), dom (e, *doc) {}
+
+ explicit
+ dom_content_type (xercesc::DOMElement* e)
+ : doc (xml::dom::create_document<char> ()), dom (e, *doc) {}
+
+ explicit
+ dom_content_type (const dom_content_optional& d)
+ : doc (xml::dom::create_document<char> ()), dom (d, *doc) {}
+
+ virtual XSD_AUTO_PTR<content_type>
+ clone () const
+ {
+ return XSD_AUTO_PTR<content_type> (new dom_content_type (dom));
+ }
+
+ virtual bool
+ compare (const content_type* c) const
+ {
+ if (const dom_content_type* dc =
+ dynamic_cast<const dom_content_type*> (c))
+ return dom == dc->dom;
+
+ return false;
+ }
+
+ public:
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument> doc;
+ dom_content_optional dom;
+ };
+
+ //@endcond
+
+ mutable XSD_AUTO_PTR<content_type> content_;
+
+ private:
+ container* container_;
+ };
/**
* @brief Class corresponding to the XML Schema anySimpleType built-in
@@ -970,7 +1212,7 @@ namespace xsd
*
* @nosubgrouping
*/
- template <typename B>
+ template <typename C, typename B>
class simple_type: public B
{
public:
@@ -985,13 +1227,19 @@ namespace xsd
simple_type ();
/**
- * @brief Create an instance from a string.
+ * @brief Create an instance from a C string.
*
* @param s A string to initialize the instance with.
*/
- template <typename C>
simple_type (const C* s);
+ /**
+ * @brief Create an instance from a string.
+ *
+ * @param s A string to initialize the instance with.
+ */
+ simple_type (const std::basic_string<C>& s);
+
public:
/**
* @brief Copy constructor.
@@ -1029,7 +1277,9 @@ namespace xsd
* instance.
*/
template <typename S>
- simple_type (istream<S>& s, flags f = 0, container* c = 0);
+ simple_type (istream<S>& s,
+ flags f = flags::extract_content,
+ container* c = 0);
/**
* @brief Create an instance from a DOM element.
@@ -1040,7 +1290,7 @@ namespace xsd
* instance.
*/
simple_type (const xercesc::DOMElement& e,
- flags f = 0,
+ flags f = flags::extract_content,
container* c = 0);
/**
@@ -1052,7 +1302,7 @@ namespace xsd
* instance.
*/
simple_type (const xercesc::DOMAttr& a,
- flags f = 0,
+ flags f = flags::extract_content,
container* c = 0);
/**
@@ -1064,12 +1314,82 @@ namespace xsd
* @param c A pointer to the object that will contain the new
* instance.
*/
- template <typename C>
simple_type (const std::basic_string<C>& s,
const xercesc::DOMElement* e,
- flags f = 0,
+ flags f = flags::extract_content,
container* c = 0);
//@}
+
+ // anySimpleType content API.
+ //
+ public:
+ /**
+ * @brief Return a read-only (constant) reference to the anySimpleType
+ * text content.
+ *
+ * @return A constant reference to the text string.
+ */
+ const std::basic_string<C>&
+ text_content () const;
+
+ /**
+ * @brief Return a read-write reference to the anySimpleType text
+ * content.
+ *
+ * @return A reference to the text string.
+ */
+ std::basic_string<C>&
+ text_content ();
+
+ /**
+ * @brief Set the anySimpleType text content.
+ *
+ * @param e A new text string to set.
+ */
+ void
+ text_content (const std::basic_string<C>& t);
+
+ protected:
+ //@cond
+
+ typedef typename B::content_type content_type;
+
+ struct text_content_type: content_type
+ {
+ text_content_type () {}
+
+ explicit
+ text_content_type (const std::basic_string<C>& t): text (t) {}
+
+ explicit
+ text_content_type (const C* t): text (t) {}
+
+ virtual XSD_AUTO_PTR<content_type>
+ clone () const
+ {
+ return XSD_AUTO_PTR<content_type> (new text_content_type (text));
+ }
+
+ virtual bool
+ compare (const content_type* c) const
+ {
+ if (const text_content_type* tc =
+ dynamic_cast<const text_content_type*> (c))
+ return text == tc->text;
+
+ return false;
+ }
+
+ public:
+ // It would have been more elegant to store text content as DOMText.
+ // However, that would require Xerces-C++ initialization. Also
+ // having a separate DOMDocument for each text node seems like
+ // an overkill.
+ //
+ std::basic_string<C> text;
+ };
+
+ //@endcond
};
@@ -1168,28 +1488,77 @@ namespace xsd
{
typedef T type;
- static std::auto_ptr<T>
+ static XSD_AUTO_PTR<T>
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return std::auto_ptr<T> (new T (e, f, c));
+ return XSD_AUTO_PTR<T> (new T (e, f, c));
}
- static std::auto_ptr<T>
+ static XSD_AUTO_PTR<T>
create (const xercesc::DOMAttr& a, flags f, container* c)
{
- return std::auto_ptr<T> (new T (a, f, c));
+ return XSD_AUTO_PTR<T> (new T (a, f, c));
}
- static std::auto_ptr<T>
+ static XSD_AUTO_PTR<T>
create (const std::basic_string<C>& s,
const xercesc::DOMElement* e,
flags f,
container* c)
{
- return std::auto_ptr<T> (new T (s, e, f, c));
+ return XSD_AUTO_PTR<T> (new T (s, e, f, c));
+ }
+
+ // For now for istream we only go through traits for non-
+ // fundamental types.
+ //
+ template <typename S>
+ static XSD_AUTO_PTR<T>
+ create (istream<S>& s, flags f, container* c)
+ {
+ return XSD_AUTO_PTR<T> (new T (s, f, c));
}
};
+ template <typename B,
+ typename C,
+ schema_type::value ST>
+ struct traits<simple_type<C, B>, C, ST>
+ {
+ typedef simple_type<C, B> type;
+
+ static XSD_AUTO_PTR<type>
+ create (const xercesc::DOMElement& e, flags f, container* c)
+ {
+ return XSD_AUTO_PTR<type> (
+ new type (e, f | flags::extract_content, c));
+ }
+
+ static XSD_AUTO_PTR<type>
+ create (const xercesc::DOMAttr& a, flags f, container* c)
+ {
+ return XSD_AUTO_PTR<type> (
+ new type (a, f | flags::extract_content, c));
+ }
+
+ static XSD_AUTO_PTR<type>
+ create (const std::basic_string<C>& s,
+ const xercesc::DOMElement* e,
+ flags f,
+ container* c)
+ {
+ return XSD_AUTO_PTR<type> (
+ new type (s, e, f | flags::extract_content, c));
+ }
+
+ template <typename S>
+ static XSD_AUTO_PTR<type>
+ create (istream<S>& s, flags f, container* c)
+ {
+ return XSD_AUTO_PTR<type> (
+ new type (s, f | flags::extract_content, c));
+ }
+ };
//@endcond
@@ -1352,8 +1721,7 @@ namespace xsd
}
// The following extra conversion operators causes problems on
- // some compilers (notably VC 7.1 and 9.0) and are disabled by
- // default.
+ // some compilers (notably VC 9.0) and are disabled by default.
//
#ifdef XSD_TREE_EXTRA_FUND_CONV
/**
diff --git a/xsd/libxsd/xsd/cxx/tree/elements.ixx b/xsd/libxsd/xsd/cxx/tree/elements.ixx
index e4dd60a..844ccf7 100644
--- a/xsd/libxsd/xsd/cxx/tree/elements.ixx
+++ b/xsd/libxsd/xsd/cxx/tree/elements.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/elements.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
@@ -9,20 +8,258 @@ namespace xsd
{
namespace tree
{
+ // content_order_type
+ //
+
+ inline bool
+ operator== (const content_order& x, const content_order& y)
+ {
+ return x.id == y.id && x.index == y.index;
+ }
+
+ inline bool
+ operator!= (const content_order& x, const content_order& y)
+ {
+ return !(x == y);
+ }
+
+ inline bool
+ operator< (const content_order& x, const content_order& y)
+ {
+ return x.id < y.id || (x.id == y.id && x.index < y.index);
+ }
+
+ // type
+ //
+
+ inline _type::
+ _type ()
+ : container_ (0)
+ {
+ }
+
+ template <typename C>
+ inline _type::
+ _type (const C*)
+ : container_ (0)
+ {
+ }
+
+ inline _type::
+ _type (const type& x, flags f, container* c)
+ : container_ (c)
+ {
+ if (x.content_.get () != 0)
+ content_ = x.content_->clone ();
+
+ if (x.dom_info_.get () != 0 && (f & flags::keep_dom))
+ {
+ dom_info_ = x.dom_info_->clone (*this, c);
+ }
+ }
+
+ inline const _type::dom_content_optional& _type::
+ dom_content () const
+ {
+ const content_type* c (content_.get ());
+
+ if (c == 0)
+ {
+ content_.reset (new dom_content_type);
+ c = content_.get ();
+ }
+
+ // Accessing non-DOM content via the DOM API.
+ //
+ assert (dynamic_cast<const dom_content_type*> (c) != 0);
+
+ return static_cast<const dom_content_type*> (c)->dom;
+ }
+
+ inline _type::dom_content_optional& _type::
+ dom_content ()
+ {
+ content_type* c (content_.get ());
+
+ if (c == 0)
+ {
+ content_.reset (new dom_content_type);
+ c = content_.get ();
+ }
+
+ // Accessing non-DOM content via the DOM API.
+ //
+ assert (dynamic_cast<dom_content_type*> (c) != 0);
+
+ return static_cast<dom_content_type*> (c)->dom;
+ }
+
+ inline void _type::
+ dom_content (const xercesc::DOMElement& e)
+ {
+ content_type* c (content_.get ());
+
+ if (c == 0)
+ content_.reset (new dom_content_type (e));
+ else
+ {
+ // Accessing non-DOM content via the DOM API.
+ //
+ assert (dynamic_cast<dom_content_type*> (c) != 0);
+ static_cast<dom_content_type*> (c)->dom.set (e);
+ }
+ }
+
+ inline void _type::
+ dom_content (xercesc::DOMElement* e)
+ {
+ content_type* c (content_.get ());
+
+ if (c == 0)
+ content_.reset (new dom_content_type (e));
+ else
+ {
+ // Accessing non-DOM content via the DOM API.
+ //
+ assert (dynamic_cast<dom_content_type*> (c) != 0);
+ static_cast<dom_content_type*> (c)->dom.set (e);
+ }
+ }
+
+ inline void _type::
+ dom_content (const dom_content_optional& d)
+ {
+ content_type* c (content_.get ());
+
+ if (c == 0)
+ content_.reset (new dom_content_type (d));
+ else
+ {
+ // Accessing non-DOM content via the DOM API.
+ //
+ assert (dynamic_cast<dom_content_type*> (c) != 0);
+ static_cast<dom_content_type*> (c)->dom = d;
+ }
+ }
+
+ inline const xercesc::DOMDocument& _type::
+ dom_content_document () const
+ {
+ const content_type* c (content_.get ());
+
+ if (c == 0)
+ {
+ content_.reset (new dom_content_type);
+ c = content_.get ();
+ }
+
+ // Accessing non-DOM content via the DOM API.
+ //
+ assert (dynamic_cast<const dom_content_type*> (c) != 0);
+
+ return *static_cast<const dom_content_type*> (c)->doc;
+ }
+
+ inline xercesc::DOMDocument& _type::
+ dom_content_document ()
+ {
+ content_type* c (content_.get ());
+
+ if (c == 0)
+ {
+ content_.reset (new dom_content_type);
+ c = content_.get ();
+ }
+
+ // Accessing non-DOM content via the DOM API.
+ //
+ assert (dynamic_cast<dom_content_type*> (c) != 0);
+
+ return *static_cast<dom_content_type*> (c)->doc;
+ }
+
+ inline bool _type::
+ null_content () const
+ {
+ return content_.get () == 0;
+ }
+
// simple_type
//
- template <typename B>
- inline simple_type<B>::
+ template <typename C, typename B>
+ inline simple_type<C, B>::
simple_type ()
{
}
- template <typename B>
- template <typename C>
- inline simple_type<B>::
- simple_type (const C*)
+ template <typename C, typename B>
+ inline simple_type<C, B>::
+ simple_type (const C* s)
+ {
+ this->content_.reset (new text_content_type (s));
+ }
+
+ template <typename C, typename B>
+ inline simple_type<C, B>::
+ simple_type (const std::basic_string<C>& s)
+ {
+ this->content_.reset (new text_content_type (s));
+ }
+
+ template <typename C, typename B>
+ inline const std::basic_string<C>& simple_type<C, B>::
+ text_content () const
+ {
+ const content_type* c (this->content_.get ());
+
+ if (c == 0)
+ {
+ this->content_.reset (new text_content_type);
+ c = this->content_.get ();
+ }
+
+ // Accessing non-text content via the text API.
+ //
+ assert (dynamic_cast<const text_content_type*> (c) != 0);
+
+ return static_cast<const text_content_type*> (c)->text;
+ }
+
+ template <typename C, typename B>
+ inline std::basic_string<C>& simple_type<C, B>::
+ text_content ()
+ {
+ content_type* c (this->content_.get ());
+
+ if (c == 0)
+ {
+ this->content_.reset (new text_content_type);
+ c = this->content_.get ();
+ }
+
+ // Accessing non-text content via the text API.
+ //
+ assert (dynamic_cast<text_content_type*> (c) != 0);
+
+ return static_cast<text_content_type*> (c)->text;
+ }
+
+ template <typename C, typename B>
+ inline void simple_type<C, B>::
+ text_content (const std::basic_string<C>& t)
{
+ content_type* c (this->content_.get ());
+
+ if (c == 0)
+ this->content_.reset (new text_content_type (t));
+ else
+ {
+ // Accessing non-text content via the text API.
+ //
+ assert (dynamic_cast<text_content_type*> (c) != 0);
+ static_cast<text_content_type*> (c)->text = t;
+ }
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/tree/elements.txx b/xsd/libxsd/xsd/cxx/tree/elements.txx
index 084cb56..4a8ca6e 100644
--- a/xsd/libxsd/xsd/cxx/tree/elements.txx
+++ b/xsd/libxsd/xsd/cxx/tree/elements.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/elements.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xercesc/util/XMLUniDefs.hpp>
@@ -28,8 +27,8 @@ namespace xsd
// simple_type
//
- template <typename B>
- simple_type<B>::
+ template <typename C, typename B>
+ simple_type<C, B>::
simple_type (const simple_type& other,
flags f,
container* c)
@@ -37,8 +36,8 @@ namespace xsd
{
}
- template <typename B>
- simple_type<B>* simple_type<B>::
+ template <typename C, typename B>
+ simple_type<C, B>* simple_type<C, B>::
_clone (flags f, container* c) const
{
return new simple_type (*this, f, c);
diff --git a/xsd/libxsd/xsd/cxx/tree/error-handler.hxx b/xsd/libxsd/xsd/cxx/tree/error-handler.hxx
index 6e4426b..e520cce 100644
--- a/xsd/libxsd/xsd/cxx/tree/error-handler.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/error-handler.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/error-handler.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_ERROR_HANDLER_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/error-handler.txx b/xsd/libxsd/xsd/cxx/tree/error-handler.txx
index c19d354..8520856 100644
--- a/xsd/libxsd/xsd/cxx/tree/error-handler.txx
+++ b/xsd/libxsd/xsd/cxx/tree/error-handler.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/error-handler.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/tree/exceptions.hxx b/xsd/libxsd/xsd/cxx/tree/exceptions.hxx
index f6ddb15..d871416 100644
--- a/xsd/libxsd/xsd/cxx/tree/exceptions.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/exceptions.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/exceptions.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
/**
diff --git a/xsd/libxsd/xsd/cxx/tree/exceptions.txx b/xsd/libxsd/xsd/cxx/tree/exceptions.txx
index 8262fce..2544f42 100644
--- a/xsd/libxsd/xsd/cxx/tree/exceptions.txx
+++ b/xsd/libxsd/xsd/cxx/tree/exceptions.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/exceptions.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/tree/bits/literals.hxx>
diff --git a/xsd/libxsd/xsd/cxx/tree/facet.hxx b/xsd/libxsd/xsd/cxx/tree/facet.hxx
index c4fbcbe..e17ead1 100644
--- a/xsd/libxsd/xsd/cxx/tree/facet.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/facet.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/facet.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_FACET_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/istream-fwd.hxx b/xsd/libxsd/xsd/cxx/tree/istream-fwd.hxx
index a523952..bd20fff 100644
--- a/xsd/libxsd/xsd/cxx/tree/istream-fwd.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/istream-fwd.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/istream-fwd.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_ISTREAM_FWD_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/istream.hxx b/xsd/libxsd/xsd/cxx/tree/istream.hxx
index 2f8f8cb..45e334b 100644
--- a/xsd/libxsd/xsd/cxx/tree/istream.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/istream.hxx
@@ -1,13 +1,17 @@
// file : xsd/cxx/tree/istream.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_ISTREAM_HXX
#define XSD_CXX_TREE_ISTREAM_HXX
+#include <map>
+#include <string>
+#include <memory> // std::auto_ptr/unique_ptr
#include <cstddef> // std::size_t
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/tree/istream-fwd.hxx>
namespace xsd
@@ -138,13 +142,102 @@ namespace xsd
return s_;
}
+ // Add string to the pool. The application should add every
+ // potentially pooled string to correctly re-create the pool
+ // constructed during insertion.
+ //
+ template <typename C>
+ void
+ pool_add (const std::basic_string<C>& s)
+ {
+ typedef pool_impl<C> pool_type;
+
+ if (pool_.get () == 0)
+ pool_.reset (new pool_type);
+
+ pool_type& p (*static_cast<pool_type*> (pool_.get ()));
+ p.push_back (s);
+ }
+
+ // Get string from pool id. We return the result via an argument
+ // instead of as a return type to avoid difficulties some compilers
+ // (e.g., GCC) experience with calls like istream<S>::pool_string<C>.
+ //
+ template <typename C>
+ void
+ pool_string (std::size_t id, std::basic_string<C>& out)
+ {
+ typedef pool_impl<C> pool_type;
+ pool_type& p (*static_cast<pool_type*> (pool_.get ()));
+ out = p[id - 1];
+ }
+
+ public:
+ // 8-bit
+ //
+ signed char
+ read_char ();
+
+ unsigned char
+ read_uchar ();
+
+ // 16-bit
+ //
+ unsigned short
+ read_short ();
+
+ unsigned short
+ read_ushort ();
+
+ // 32-bit
+ //
+ unsigned int
+ read_int ();
+
+ unsigned int
+ read_uint ();
+
+ // 64-bit
+ //
+ unsigned long long
+ read_ulonglong ();
+
+ unsigned long long
+ read_longlong ();
+
+ // Boolean
+ //
+ bool
+ read_bool ();
+
+ // Floating-point
+ //
+ float
+ read_float ();
+
+ double
+ read_double ();
+
private:
istream (const istream&);
istream&
operator= (const istream&);
private:
+ struct pool
+ {
+ virtual
+ ~pool () {}
+ };
+
+ template <typename C>
+ struct pool_impl: pool, std::vector<std::basic_string<C> >
+ {
+ };
+
S& s_;
+ std::size_t seq_;
+ XSD_AUTO_PTR<pool> pool_;
};
@@ -251,6 +344,109 @@ namespace xsd
istream_common::as_float64<double> as_float64 (x);
return s >> as_float64;
}
+
+ //
+ // read_* functions.
+ //
+
+ template <typename S>
+ inline signed char istream<S>::
+ read_char ()
+ {
+ signed char r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline unsigned char istream<S>::
+ read_uchar ()
+ {
+ unsigned char r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline unsigned short istream<S>::
+ read_short ()
+ {
+ short r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline unsigned short istream<S>::
+ read_ushort ()
+ {
+ unsigned short r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline unsigned int istream<S>::
+ read_int ()
+ {
+ int r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline unsigned int istream<S>::
+ read_uint ()
+ {
+ unsigned int r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline unsigned long long istream<S>::
+ read_ulonglong ()
+ {
+ long long r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline unsigned long long istream<S>::
+ read_longlong ()
+ {
+ unsigned long long r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline bool istream<S>::
+ read_bool ()
+ {
+ bool r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline float istream<S>::
+ read_float ()
+ {
+ float r;
+ *this >> r;
+ return r;
+ }
+
+ template <typename S>
+ inline double istream<S>::
+ read_double ()
+ {
+ double r;
+ *this >> r;
+ return r;
+ }
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/tree/iterator-adapter.hxx b/xsd/libxsd/xsd/cxx/tree/iterator-adapter.hxx
new file mode 100644
index 0000000..0a54604
--- /dev/null
+++ b/xsd/libxsd/xsd/cxx/tree/iterator-adapter.hxx
@@ -0,0 +1,270 @@
+// file : xsd/cxx/tree/iterator-adapter.hxx
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef XSD_CXX_TREE_ITERATOR_ADAPTER_HXX
+#define XSD_CXX_TREE_ITERATOR_ADAPTER_HXX
+
+#include <cstddef> // std::ptrdiff_t
+#include <iterator> // std::iterator_traits
+
+namespace xsd
+{
+ namespace cxx
+ {
+ namespace tree
+ {
+ // Sun CC's <iterator> does not have iterator_traits. To overcome
+ // this, we will wrap std::iterator_traits into our own and also
+ // specialize it for pointer types. Since Sun CC uses pointer
+ // for vector::iterator, it will use the specialization and won't
+ // notice the std::iterator_traits.
+ //
+#ifndef _RWSTD_NO_CLASS_PARTIAL_SPEC
+ template <typename I>
+ struct iterator_traits
+ {
+ typedef
+ typename std::iterator_traits<I>::iterator_category
+ iterator_category;
+
+ typedef
+ typename std::iterator_traits<I>::value_type
+ value_type;
+
+ typedef
+ typename std::iterator_traits<I>::difference_type
+ difference_type;
+ };
+#else
+ // The Pointer specialization does not work for reverse and
+ // set iterators. But these iterators are user-dfined types
+ // and have suitable typedefs that we can use.
+ //
+ template <typename I>
+ struct iterator_traits
+ {
+ typedef typename I::iterator_category iterator_category;
+ typedef typename I::value_type value_type;
+ typedef typename I::difference_type difference_type;
+ };
+
+ template <typename T>
+ struct iterator_traits<T*>
+ {
+ typedef std::random_access_iterator_tag iterator_category;
+ typedef T value_type;
+ typedef std::ptrdiff_t difference_type;
+ };
+#endif
+
+ // Iterator adapter for complex types. It expects I to point to
+ // a smart pointer-like object that has operator*() that returns
+ // a refernce to a type static_cast'able to T and get() that
+ // returns a pointer to a type static_cast'able to T.
+ //
+
+ template <typename I, typename T>
+ struct iterator_adapter
+ {
+ typedef T value_type;
+ typedef value_type& reference;
+ typedef value_type* pointer;
+
+ typedef
+ typename iterator_traits<I>::iterator_category
+ iterator_category;
+
+ typedef
+ typename iterator_traits<I>::difference_type
+ difference_type;
+
+
+ public:
+ iterator_adapter ()
+ : i_ () // i_ can be of a pointer type.
+ {
+ }
+
+ // Allow iterator to const_iterator conversion.
+ //
+ template <typename J, typename T2>
+ iterator_adapter (const iterator_adapter<J, T2>& j)
+ : i_ (j.base ())
+ {
+ }
+
+ explicit
+ iterator_adapter (const I& i)
+ : i_ (i)
+ {
+ }
+
+ public:
+ // Forward iterator requirements.
+ //
+ reference
+ operator* () const
+ {
+ return static_cast<reference> (**i_);
+ }
+
+ pointer
+ operator-> () const
+ {
+ return static_cast<pointer> (i_->get ());
+ }
+
+ iterator_adapter&
+ operator++ ()
+ {
+ ++i_;
+ return *this;
+ }
+
+ iterator_adapter
+ operator++ (int)
+ {
+ iterator_adapter r (*this);
+ ++i_;
+ return r;
+ }
+
+ // Bidirectional iterator requirements.
+ //
+ iterator_adapter&
+ operator-- ()
+ {
+ --i_;
+ return *this;
+ }
+
+ iterator_adapter
+ operator-- (int)
+ {
+ iterator_adapter r (*this);
+ --i_;
+ return r;
+ }
+
+ // Random access iterator requirements.
+ //
+ reference
+ operator[] (difference_type n) const
+ {
+ return static_cast<reference> (*(i_[n]));
+ }
+
+ iterator_adapter&
+ operator+= (difference_type n)
+ {
+ i_ += n;
+ return *this;
+ }
+
+ iterator_adapter
+ operator+ (difference_type n) const
+ {
+ return iterator_adapter (i_ + n);
+ }
+
+ iterator_adapter&
+ operator-= (difference_type n)
+ {
+ i_ -= n;
+ return *this;
+ }
+
+ iterator_adapter
+ operator- (difference_type n) const
+ {
+ return iterator_adapter (i_ - n);
+ }
+
+ public:
+ const I&
+ base () const
+ {
+ return i_;
+ }
+
+ private:
+ I i_;
+ };
+
+ // Note: We use different types for left- and right-hand-side
+ // arguments to allow comparison between iterator and const_iterator.
+ //
+
+ // Forward iterator requirements.
+ //
+ template <typename I, typename J, typename T1, typename T2>
+ inline bool
+ operator== (const iterator_adapter<I, T1>& i,
+ const iterator_adapter<J, T2>& j)
+ {
+ return i.base () == j.base ();
+ }
+
+ template <typename I, typename J, typename T1, typename T2>
+ inline bool
+ operator!= (const iterator_adapter<I, T1>& i,
+ const iterator_adapter<J, T2>& j)
+ {
+ return i.base () != j.base ();
+ }
+
+ // Random access iterator requirements
+ //
+ template <typename I, typename J, typename T1, typename T2>
+ inline bool
+ operator< (const iterator_adapter<I, T1>& i,
+ const iterator_adapter<J, T2>& j)
+ {
+ return i.base () < j.base ();
+ }
+
+ template <typename I, typename J, typename T1, typename T2>
+ inline bool
+ operator> (const iterator_adapter<I, T1>& i,
+ const iterator_adapter<J, T2>& j)
+ {
+ return i.base () > j.base ();
+ }
+
+ template <typename I, typename J, typename T1, typename T2>
+ inline bool
+ operator<= (const iterator_adapter<I, T1>& i,
+ const iterator_adapter<J, T2>& j)
+ {
+ return i.base () <= j.base ();
+ }
+
+ template <typename I, typename J, typename T1, typename T2>
+ inline bool
+ operator>= (const iterator_adapter<I, T1>& i,
+ const iterator_adapter<J, T2>& j)
+ {
+ return i.base () >= j.base ();
+ }
+
+ template <typename I, typename J, typename T1, typename T2>
+ inline typename iterator_adapter<I, T1>::difference_type
+ operator- (const iterator_adapter<I, T1>& i,
+ const iterator_adapter<J, T2>& j)
+ {
+ return i.base () - j.base ();
+ }
+
+ template <typename I, typename T>
+ inline iterator_adapter<I, T>
+ operator+ (typename iterator_adapter<I, T>::difference_type n,
+ const iterator_adapter<I, T>& i)
+ {
+ return iterator_adapter<I, T> (i.base () + n);
+ }
+ }
+ }
+}
+
+#endif // XSD_CXX_TREE_ITERATOR_ADAPTER_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/list.hxx b/xsd/libxsd/xsd/cxx/tree/list.hxx
index 30636e9..d1fe907 100644
--- a/xsd/libxsd/xsd/cxx/tree/list.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/list.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/list.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_LIST_HXX
@@ -11,7 +10,7 @@
#include <xercesc/dom/DOMAttr.hpp>
#include <xercesc/dom/DOMElement.hpp>
-#include <xsd/cxx/tree/elements.hxx> // tree::istream
+#include <xsd/cxx/tree/elements.hxx>
#include <xsd/cxx/tree/istream-fwd.hxx> // tree::istream
#include <xsd/cxx/tree/containers.hxx> // fundamental_p, sequence
@@ -22,8 +21,7 @@ namespace xsd
namespace tree
{
// Class template for xsd:list mapping. Based on the sequence
- // template. Note that I cannot get rid of 'fund' because HP
- // aCC3 likes it this way.
+ // template.
//
template <typename T,
typename C,
@@ -39,8 +37,8 @@ namespace xsd
{
public:
explicit
- list (flags f = 0, container* c = 0)
- : sequence<T> (f, c)
+ list (container* c = 0)
+ : sequence<T> (c)
{
}
@@ -60,8 +58,8 @@ namespace xsd
template <typename S>
list (istream<S>&, flags = 0, container* c = 0);
- list (const list<T, C, ST, false>& v, flags f = 0, container* c = 0)
- : sequence<T> (v, f, c)
+ list (const list<T, C, ST, false>& l, flags f = 0, container* c = 0)
+ : sequence<T> (l, f, c)
{
}
@@ -77,7 +75,9 @@ namespace xsd
private:
void
- init (const std::basic_string<C>&, const xercesc::DOMElement*);
+ init (const std::basic_string<C>&,
+ const xercesc::DOMElement*,
+ flags);
};
@@ -88,8 +88,8 @@ namespace xsd
{
public:
explicit
- list (flags f = 0, container* c = 0)
- : sequence<T> (f, c)
+ list (container* c = 0)
+ : sequence<T> (c)
{
}
@@ -108,8 +108,8 @@ namespace xsd
template <typename S>
list (istream<S>&, flags = 0, container* c = 0);
- list (const list<T, C, ST, true>& s, flags f = 0, container* c = 0)
- : sequence<T> (s, f, c)
+ list (const list<T, C, ST, true>& l, flags f = 0, container* c = 0)
+ : sequence<T> (l, f, c)
{
}
diff --git a/xsd/libxsd/xsd/cxx/tree/ostream.hxx b/xsd/libxsd/xsd/cxx/tree/ostream.hxx
index cf2d9ee..ec15c51 100644
--- a/xsd/libxsd/xsd/cxx/tree/ostream.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/ostream.hxx
@@ -1,13 +1,17 @@
// file : xsd/cxx/tree/ostream.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_OSTREAM_HXX
#define XSD_CXX_TREE_OSTREAM_HXX
+#include <map>
+#include <string>
+#include <memory> // std::auto_ptr/unique_ptr
#include <cstddef> // std::size_t
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
namespace xsd
{
namespace cxx
@@ -126,7 +130,7 @@ namespace xsd
public:
explicit
ostream (S& s)
- : s_ (s)
+ : s_ (s), seq_ (1)
{
}
@@ -136,13 +140,55 @@ namespace xsd
return s_;
}
+ // If the string is not in the pool, add it and return 0. Otherwise
+ // return the string's pool id. In the former case the application
+ // should serialize the original string.
+ //
+ // The returned ids are sequential and start with 1. 0 is reserved
+ // as a special marker to be used by the application for the first
+ // encounter of the string.
+ //
+ template <typename C>
+ std::size_t
+ pool_string (const std::basic_string<C>& s)
+ {
+ typedef pool_impl<C> pool_type;
+
+ if (pool_.get () == 0)
+ pool_.reset (new pool_type);
+
+ pool_type& p (*static_cast<pool_type*> (pool_.get ()));
+
+ std::pair<typename pool_type::iterator, bool> r (
+ p.insert (std::pair<std::basic_string<C>, std::size_t> (s, seq_)));
+
+ if (!r.second)
+ return r.first->second;
+
+ seq_++;
+ return 0;
+ }
+
private:
ostream (const ostream&);
ostream&
operator= (const ostream&);
private:
+ struct pool
+ {
+ virtual
+ ~pool () {}
+ };
+
+ template <typename C>
+ struct pool_impl: pool, std::map<std::basic_string<C>, std::size_t>
+ {
+ };
+
S& s_;
+ std::size_t seq_;
+ XSD_AUTO_PTR<pool> pool_;
};
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing.hxx b/xsd/libxsd/xsd/cxx/tree/parsing.hxx
index 84b3898..f811788 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing.txx b/xsd/libxsd/xsd/cxx/tree/parsing.txx
index db50775..73e06f4 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing.txx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <string>
@@ -35,25 +34,23 @@ namespace xsd
//
inline _type::
_type (const xercesc::DOMElement& e, flags f, container* c)
- : dom_info_ (0), container_ (c)
+ : container_ (c)
{
+ if (f & flags::extract_content)
+ content_.reset (new dom_content_type (e));
+
if (f & flags::keep_dom)
- {
- std::auto_ptr<dom_info> r (
- dom_info_factory::create (e, *this, c == 0));
- dom_info_ = r;
- }
+ dom_info_ = dom_info_factory::create (e, *this, c == 0);
}
inline _type::
_type (const xercesc::DOMAttr& a, flags f, container* c)
- : dom_info_ (0), container_ (c)
+ : container_ (c)
{
+ // anyType cannot be an attribute type so no content extraction.
+
if (f & flags::keep_dom)
- {
- std::auto_ptr<dom_info> r (dom_info_factory::create (a, *this));
- dom_info_ = r;
- }
+ dom_info_ = dom_info_factory::create (a, *this);
}
template <typename C>
@@ -62,36 +59,43 @@ namespace xsd
const xercesc::DOMElement*,
flags,
container* c)
- : dom_info_ (0), // List elements don't have associated DOM nodes.
- container_ (c)
+ : container_ (c) // List elements don't have associated DOM nodes.
{
+ // anyType cannot be a list element type so no content extraction.
}
// simple_type
//
- template <typename B>
- inline simple_type<B>::
+ template <typename C, typename B>
+ inline simple_type<C, B>::
simple_type (const xercesc::DOMElement& e, flags f, container* c)
- : B (e, f, c)
+ : B (e, (f & ~flags::extract_content), c)
{
+ if (f & flags::extract_content)
+ this->content_.reset (
+ new text_content_type (tree::text_content<C> (e)));
}
- template <typename B>
- inline simple_type<B>::
+ template <typename C, typename B>
+ inline simple_type<C, B>::
simple_type (const xercesc::DOMAttr& a, flags f, container* c)
- : B (a, f, c)
+ : B (a, (f & ~flags::extract_content), c)
{
+ if (f & flags::extract_content)
+ this->content_.reset (new text_content_type (
+ xml::transcode<C> (a.getValue ())));
}
- template <typename B>
- template <typename C>
- inline simple_type<B>::
+ template <typename C, typename B>
+ inline simple_type<C, B>::
simple_type (const std::basic_string<C>& s,
const xercesc::DOMElement* e,
flags f,
container* c)
- : B (s, e, f, c)
+ : B (s, e, (f & ~flags::extract_content), c)
{
+ if (f & flags::extract_content)
+ this->content_.reset (new text_content_type (s));
}
// fundamental_base
@@ -170,23 +174,25 @@ namespace xsd
}
// Individual items of the list have no DOM association. Therefore
- // I clear keep_dom from flags.
+ // we clear keep_dom from flags.
//
template <typename T, typename C, schema_type::value ST>
list<T, C, ST, false>::
list (const xercesc::DOMElement& e, flags f, container* c)
- : sequence<T> (flags (f & ~flags::keep_dom), c) // ambiguous
+ : sequence<T> (c)
{
- init (text_content<C> (e), &e);
+ init (tree::text_content<C> (e), &e, f & ~flags::keep_dom);
}
template <typename T, typename C, schema_type::value ST>
list<T, C, ST, false>::
list (const xercesc::DOMAttr& a, flags f, container* c)
- : sequence<T> (flags (f & ~flags::keep_dom), c) // ambiguous
+ : sequence<T> (c)
{
- init (xml::transcode<C> (a.getValue ()), a.getOwnerElement ());
+ init (xml::transcode<C> (a.getValue ()),
+ a.getOwnerElement (),
+ f & ~flags::keep_dom);
}
template <typename T, typename C, schema_type::value ST>
@@ -195,20 +201,21 @@ namespace xsd
const xercesc::DOMElement* e,
flags f,
container* c)
- : sequence<T> (flags (f & ~flags::keep_dom), c) // ambiguous
+ : sequence<T> (c)
{
- init (s, e);
+ init (s, e, f & ~flags::keep_dom);
}
template <typename T, typename C, schema_type::value ST>
void list<T, C, ST, false>::
- init (const std::basic_string<C>& s, const xercesc::DOMElement* parent)
+ init (const std::basic_string<C>& s,
+ const xercesc::DOMElement* parent,
+ flags f)
{
if (s.size () == 0)
return;
using std::basic_string;
- typedef typename sequence<T>::ptr ptr;
typedef typename basic_string<C>::size_type size_type;
const C* data (s.c_str ());
@@ -223,13 +230,12 @@ namespace xsd
if (j != basic_string<C>::npos)
{
- ptr r (
- new T (basic_string<C> (data + i, j - i),
- parent,
- this->flags_,
- this->container_));
-
- this->v_.push_back (r);
+ this->push_back (
+ traits<T, C, ST>::create (
+ basic_string<C> (data + i, j - i),
+ parent,
+ f,
+ this->container_));
i = bits::find_ns (data, size, j);
}
@@ -237,13 +243,12 @@ namespace xsd
{
// Last element.
//
- ptr r (
- new T (basic_string<C> (data + i, size - i),
- parent,
- this->flags_,
- this->container_));
-
- this->v_.push_back (r);
+ this->push_back (
+ traits<T, C, ST>::create (
+ basic_string<C> (data + i, size - i),
+ parent,
+ f,
+ this->container_));
break;
}
@@ -252,16 +257,16 @@ namespace xsd
template <typename T, typename C, schema_type::value ST>
list<T, C, ST, true>::
- list (const xercesc::DOMElement& e, flags f, container* c)
- : sequence<T> (flags (f & ~flags::keep_dom), c) // ambiguous
+ list (const xercesc::DOMElement& e, flags, container* c)
+ : sequence<T> (c)
{
- init (text_content<C> (e), &e);
+ init (tree::text_content<C> (e), &e);
}
template <typename T, typename C, schema_type::value ST>
inline list<T, C, ST, true>::
- list (const xercesc::DOMAttr& a, flags f, container* c)
- : sequence<T> (flags (f & ~flags::keep_dom), c) // ambiguous
+ list (const xercesc::DOMAttr& a, flags, container* c)
+ : sequence<T> (c)
{
init (xml::transcode<C> (a.getValue ()), a.getOwnerElement ());
}
@@ -270,9 +275,9 @@ namespace xsd
inline list<T, C, ST, true>::
list (const std::basic_string<C>& s,
const xercesc::DOMElement* parent,
- flags f,
+ flags,
container* c)
- : sequence<T> (flags (f & ~flags::keep_dom), c) // ambiguous
+ : sequence<T> (c)
{
init (s, parent);
}
@@ -329,7 +334,7 @@ namespace xsd
string<C, B>::
string (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c),
- base_type (text_content<C> (e))
+ base_type (tree::text_content<C> (e))
{
}
@@ -696,7 +701,7 @@ namespace xsd
uri<C, B>::
uri (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c),
- base_type (trim (text_content<C> (e)))
+ base_type (trim (tree::text_content<C> (e)))
{
}
@@ -726,7 +731,7 @@ namespace xsd
qname (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- std::basic_string<C> v (trim (text_content<C> (e)));
+ std::basic_string<C> v (trim (tree::text_content<C> (e)));
ns_ = resolve (v, &e);
name_ = xml::uq_name (v);
}
@@ -797,7 +802,7 @@ namespace xsd
{
// This implementation is not optimal.
//
- std::basic_string<C> str (trim (text_content<C> (e)));
+ std::basic_string<C> str (trim (tree::text_content<C> (e)));
decode (xml::string (str).c_str ());
}
@@ -832,7 +837,7 @@ namespace xsd
{
// This implementation is not optimal.
//
- std::basic_string<C> str (trim (text_content<C> (e)));
+ std::basic_string<C> str (trim (tree::text_content<C> (e)));
decode (xml::string (str).c_str ());
}
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/boolean.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/boolean.hxx
index 3dafdaa..8bbd3a8 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/boolean.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/boolean.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/boolean.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_BOOLEAN_HXX
@@ -42,7 +41,7 @@ namespace xsd
bool traits<bool, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/byte.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/byte.hxx
index 0a127c9..d6cf1d3 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/byte.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/byte.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/byte.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_BYTE_HXX
@@ -41,7 +40,7 @@ namespace xsd
signed char traits<signed char, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/date-time.txx b/xsd/libxsd/xsd/cxx/tree/parsing/date-time.txx
index 913786c..29b12b6 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/date-time.txx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/date-time.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/date-time.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/ro-string.hxx>
@@ -60,7 +59,7 @@ namespace xsd
gday (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -110,7 +109,7 @@ namespace xsd
gmonth (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -160,7 +159,7 @@ namespace xsd
gyear (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -223,7 +222,7 @@ namespace xsd
gmonth_day (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -274,7 +273,7 @@ namespace xsd
gyear_month (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -338,7 +337,7 @@ namespace xsd
date (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -403,7 +402,7 @@ namespace xsd
time (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -470,7 +469,7 @@ namespace xsd
date_time (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
@@ -557,7 +556,7 @@ namespace xsd
duration (const xercesc::DOMElement& e, flags f, container* c)
: B (e, f, c)
{
- parse (text_content<C> (e));
+ parse (tree::text_content<C> (e));
}
template <typename C, typename B>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/decimal.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/decimal.hxx
index 636c0f5..b615d3c 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/decimal.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/decimal.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/decimal.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_DECIMAL_HXX
@@ -45,7 +44,7 @@ namespace xsd
double traits<double, C, schema_type::decimal>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/double.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/double.hxx
index 1507ccf..4466f7d 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/double.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/double.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/double.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_DOUBLE_HXX
@@ -45,7 +44,7 @@ namespace xsd
double traits<double, C, schema_type::double_>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/element-map.txx b/xsd/libxsd/xsd/cxx/tree/parsing/element-map.txx
index bb9a4c6..6ac9674 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/element-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/element-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/element-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_ELEMENT_MAP_TXX
@@ -17,7 +16,7 @@ namespace xsd
namespace tree
{
template <typename C, typename T>
- std::auto_ptr<element_type<C, T> > element_map<C, T>::
+ XSD_AUTO_PTR<element_type<C, T> > element_map<C, T>::
parse (const xercesc::DOMElement& e, flags f)
{
const qualified_name n (xml::dom::name<C> (e));
@@ -30,10 +29,10 @@ namespace xsd
}
template<typename T, typename C, typename B>
- std::auto_ptr<element_type<C, B> >
+ XSD_AUTO_PTR<element_type<C, B> >
parser_impl (const xercesc::DOMElement& e, flags f)
{
- return std::auto_ptr<element_type<C, B> > (new T (e, f));
+ return XSD_AUTO_PTR<element_type<C, B> > (new T (e, f));
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/float.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/float.hxx
index 3e34f93..ee582e5 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/float.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/float.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/float.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_FLOAT_HXX
@@ -45,7 +44,7 @@ namespace xsd
float traits<float, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/int.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/int.hxx
index d996d3a..b4eec88 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/int.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/int.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/int.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_INT_HXX
@@ -41,7 +40,7 @@ namespace xsd
int traits<int, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/long.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/long.hxx
index 742ade1..070e66d 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/long.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/long.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/long.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_LONG_HXX
@@ -41,7 +40,7 @@ namespace xsd
long long traits<long long, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/short.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/short.hxx
index 3a7ead8..90d5144 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/short.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/short.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/short.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_SHORT_HXX
@@ -41,7 +40,7 @@ namespace xsd
short traits<short, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-byte.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-byte.hxx
index ce336be..c172e93 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-byte.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-byte.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/unsigned-byte.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_UNSIGNED_BYTE_HXX
@@ -41,7 +40,7 @@ namespace xsd
unsigned char traits<unsigned char, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-int.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-int.hxx
index e908dd0..07fb7f2 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-int.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-int.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/unsigned-int.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_UNSIGNED_INT_HXX
@@ -41,7 +40,7 @@ namespace xsd
unsigned int traits<unsigned int, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-long.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-long.hxx
index 647b8dd..0036e0d 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-long.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-long.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/unsigned-long.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_UNSIGNED_LONG_HXX
@@ -41,7 +40,7 @@ namespace xsd
unsigned long long traits<unsigned long long, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-short.hxx b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-short.hxx
index f53c724..838a2a8 100644
--- a/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-short.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/parsing/unsigned-short.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parsing/unsigned-short.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_PARSING_UNSIGNED_SHORT_HXX
@@ -41,7 +40,7 @@ namespace xsd
unsigned short traits<unsigned short, C, schema_type::other>::
create (const xercesc::DOMElement& e, flags f, container* c)
{
- return create (text_content<C> (e), 0, f, c);
+ return create (tree::text_content<C> (e), 0, f, c);
}
template <typename C>
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization.hxx b/xsd/libxsd/xsd/cxx/tree/serialization.hxx
index 612185f..24b26e2 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization.txx b/xsd/libxsd/xsd/cxx/tree/serialization.txx
index 29364f4..055f603 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization.txx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <string>
@@ -92,9 +91,29 @@ namespace xsd
// Insertion operators for type.
//
inline void
- operator<< (xercesc::DOMElement& e, const type&)
+ operator<< (xercesc::DOMElement& e, const type& x)
{
xml::dom::clear<char> (e);
+
+ if (!x.null_content () && x.dom_content ().present ())
+ {
+ // Clone the contents of the element.
+ //
+ using namespace xercesc;
+
+ DOMDocument& doc (*e.getOwnerDocument ());
+ const DOMElement& se (x.dom_content ().get ());
+ DOMNamedNodeMap& sa (*se.getAttributes ());
+
+ for (XMLSize_t i (0), n (sa.getLength ()); i != n; ++i)
+ e.setAttributeNode (
+ static_cast<DOMAttr*> (doc.importNode (sa.item (i), true)));
+
+ for (DOMNode* sn (se.getFirstChild ());
+ sn != 0;
+ sn = sn->getNextSibling ())
+ e.appendChild (doc.importNode (sn, true));
+ }
}
inline void
@@ -110,23 +129,30 @@ namespace xsd
// Insertion operators for simple_type.
//
- template <typename B>
+ template <typename C, typename B>
inline void
- operator<< (xercesc::DOMElement& e, const simple_type<B>&)
+ operator<< (xercesc::DOMElement& e, const simple_type<C, B>& x)
{
- xml::dom::clear<char> (e);
+ if (x.null_content ())
+ xml::dom::clear<char> (e);
+ else
+ e << x.text_content ();
}
- template <typename B>
+ template <typename C, typename B>
inline void
- operator<< (xercesc::DOMAttr&, const simple_type<B>&)
+ operator<< (xercesc::DOMAttr& a, const simple_type<C, B>& x)
{
+ if (!x.null_content ())
+ a << x.text_content ();
}
template <typename C, typename B>
inline void
- operator<< (list_stream<C>&, const simple_type<B>&)
+ operator<< (list_stream<C>& ls, const simple_type<C, B>& x)
{
+ if (!x.null_content ())
+ ls << x.text_content ();
}
// Insertion operators for list.
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/boolean.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/boolean.hxx
index ce34560..90978c4 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/boolean.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/boolean.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/boolean.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_BOOLEAN_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/byte.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/byte.hxx
index 583eda9..bd7bceb 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/byte.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/byte.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/byte.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_BYTE_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/date-time.txx b/xsd/libxsd/xsd/cxx/tree/serialization/date-time.txx
index 1180e1c..c2a02d6 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/date-time.txx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/date-time.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/date-time.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <locale>
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/decimal.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/decimal.hxx
index 971622f..6e48809 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/decimal.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/decimal.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/decimal.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_DECIMAL_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/double.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/double.hxx
index 6d21536..bc4d5c4 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/double.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/double.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/double.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_DOUBLE_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/element-map.txx b/xsd/libxsd/xsd/cxx/tree/serialization/element-map.txx
index 9870ff2..63149f4 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/element-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/element-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/element-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_ELEMENT_MAP_TXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/float.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/float.hxx
index 2d37ae6..9aa79b0 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/float.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/float.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/float.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_FLOAT_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/int.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/int.hxx
index f88d6b8..f96124a 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/int.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/int.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/int.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_INT_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/long.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/long.hxx
index c37338b..98a4632 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/long.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/long.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/long.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_LONG_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/short.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/short.hxx
index 7d885c1..f8a9b94 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/short.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/short.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/short.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_SHORT_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-byte.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-byte.hxx
index 114f1a1..f30c575 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-byte.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-byte.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/unsigned-byte.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_UNSIGNED_BYTE_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-int.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-int.hxx
index f91fe21..7dbb3a8 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-int.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-int.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/unsigned-int.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_UNSIGNED_INT_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-long.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-long.hxx
index f5f12f3..8808e34 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-long.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-long.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/unsigned-long.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_UNSIGNED_LONG_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-short.hxx b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-short.hxx
index 52437e0..ac3a448 100644
--- a/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-short.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/serialization/unsigned-short.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization/unsigned-short.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_SERIALIZATION_UNSIGNED_SHORT_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/std-ostream-map.hxx b/xsd/libxsd/xsd/cxx/tree/std-ostream-map.hxx
index 28619a5..836ee30 100644
--- a/xsd/libxsd/xsd/cxx/tree/std-ostream-map.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/std-ostream-map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/std-ostream-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_STD_OSTREAM_MAP_HXX
@@ -28,7 +27,7 @@ namespace xsd
std_ostream_map ();
void
- register_type (const type_id&, inserter, bool override = true);
+ register_type (const type_id&, inserter, bool replace = true);
void
unregister_type (const type_id&);
diff --git a/xsd/libxsd/xsd/cxx/tree/std-ostream-map.txx b/xsd/libxsd/xsd/cxx/tree/std-ostream-map.txx
index 6a748ec..ef65ef2 100644
--- a/xsd/libxsd/xsd/cxx/tree/std-ostream-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/std-ostream-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/std-ostream-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/tree/types.hxx>
@@ -25,7 +24,7 @@ namespace xsd
&inserter_impl<C, type>,
false);
- typedef simple_type<type> simple_type;
+ typedef simple_type<C, type> simple_type;
register_type (
typeid (simple_type),
&inserter_impl<C, simple_type>,
@@ -211,9 +210,9 @@ namespace xsd
template <typename C>
void std_ostream_map<C>::
- register_type (const type_id& tid, inserter i, bool override)
+ register_type (const type_id& tid, inserter i, bool replace)
{
- if (override || type_map_.find (&tid) == type_map_.end ())
+ if (replace || type_map_.find (&tid) == type_map_.end ())
type_map_[&tid] = i;
}
diff --git a/xsd/libxsd/xsd/cxx/tree/std-ostream-operators.hxx b/xsd/libxsd/xsd/cxx/tree/std-ostream-operators.hxx
index a7ab357..9a8f976 100644
--- a/xsd/libxsd/xsd/cxx/tree/std-ostream-operators.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/std-ostream-operators.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/std-ostream-operators.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_STD_OSTREAM_OPERATORS_HXX
@@ -25,6 +24,7 @@ namespace xsd
inline std::basic_ostream<C>&
operator<< (std::basic_ostream<C>& os, const type&)
{
+ // Not printing DOM content even if it's there.
return os;
}
@@ -33,8 +33,11 @@ namespace xsd
//
template <typename C, typename B>
inline std::basic_ostream<C>&
- operator<< (std::basic_ostream<C>& os, const simple_type<B>&)
+ operator<< (std::basic_ostream<C>& os, const simple_type<C, B>& x)
{
+ if (!x.null_content ())
+ os << x.text_content ();
+
return os;
}
diff --git a/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.hxx b/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.hxx
index dd4c79a..f57c435 100644
--- a/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.hxx
@@ -1,15 +1,16 @@
// file : xsd/cxx/tree/stream-extraction-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_STREAM_EXTRACTION_MAP_HXX
#define XSD_CXX_TREE_STREAM_EXTRACTION_MAP_HXX
#include <map>
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cstddef> // std::size_t
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/tree/elements.hxx>
#include <xsd/cxx/tree/istream.hxx>
#include <xsd/cxx/xml/qualified-name.hxx>
@@ -24,7 +25,7 @@ namespace xsd
struct stream_extraction_map
{
typedef xml::qualified_name<C> qualified_name;
- typedef std::auto_ptr<type> (*extractor) (
+ typedef XSD_AUTO_PTR<type> (*extractor) (
istream<S>&, flags, container*);
public:
@@ -33,12 +34,12 @@ namespace xsd
void
register_type (const qualified_name& name,
extractor,
- bool override = true);
+ bool replace = true);
void
unregister_type (const qualified_name& name);
- std::auto_ptr<type>
+ XSD_AUTO_PTR<type>
extract (istream<S>&, flags, container*);
public:
@@ -82,7 +83,7 @@ namespace xsd
//
//
template<typename S, typename T>
- std::auto_ptr<type>
+ XSD_AUTO_PTR<type>
extractor_impl (istream<S>&, flags, container*);
diff --git a/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.txx b/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.txx
index a4e429e..61dd306 100644
--- a/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/stream-extraction-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-extraction-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/tree/types.hxx>
@@ -31,7 +30,7 @@ namespace xsd
&extractor_impl<S, type>,
false);
- typedef simple_type<type> simple_type;
+ typedef simple_type<C, type> simple_type;
register_type (
qualified_name (bits::any_simple_type<C> (), xsd),
&extractor_impl<S, simple_type>,
@@ -219,9 +218,9 @@ namespace xsd
void stream_extraction_map<S, C>::
register_type (const qualified_name& name,
extractor e,
- bool override)
+ bool replace)
{
- if (override || type_map_.find (name) == type_map_.end ())
+ if (replace || type_map_.find (name) == type_map_.end ())
type_map_[name] = e;
}
@@ -233,11 +232,34 @@ namespace xsd
}
template <typename S, typename C>
- std::auto_ptr<type> stream_extraction_map<S, C>::
+ XSD_AUTO_PTR<type> stream_extraction_map<S, C>::
extract (istream<S>& s, flags f, container* c)
{
- std::basic_string<C> name, ns;
- s >> ns >> name;
+ std::basic_string<C> ns, name;
+
+ // The namespace and name strings are pooled.
+ //
+ std::size_t id;
+ istream_common::as_size<std::size_t> as_size (id);
+ s >> as_size;
+
+ if (id != 0)
+ s.pool_string (id, ns);
+ else
+ {
+ s >> ns;
+ s.pool_add (ns);
+ }
+
+ s >> as_size;
+
+ if (id != 0)
+ s.pool_string (id, name);
+ else
+ {
+ s >> name;
+ s.pool_add (name);
+ }
if (extractor e = find (qualified_name (name, ns)))
{
@@ -280,10 +302,10 @@ namespace xsd
//
//
template<typename S, typename T>
- std::auto_ptr<type>
+ XSD_AUTO_PTR<type>
extractor_impl (istream<S>& s, flags f, container* c)
{
- return std::auto_ptr<type> (new T (s, f, c));
+ return XSD_AUTO_PTR<type> (new T (s, f, c));
}
diff --git a/xsd/libxsd/xsd/cxx/tree/stream-extraction.hxx b/xsd/libxsd/xsd/cxx/tree/stream-extraction.hxx
index f82042f..ee39bcc 100644
--- a/xsd/libxsd/xsd/cxx/tree/stream-extraction.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/stream-extraction.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-extraction.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_STREAM_EXTRACTION_HXX
@@ -29,12 +28,18 @@ namespace xsd
// simple_type
//
- template <typename B>
+ template <typename C, typename B>
template <typename S>
- inline simple_type<B>::
+ inline simple_type<C, B>::
simple_type (istream<S>& s, flags f, container* c)
- : type (s, f, c)
+ : type (s, f & ~flags::extract_content, c)
{
+ if (f & flags::extract_content)
+ {
+ std::basic_string<C> t;
+ s >> t;
+ this->content_.reset (new text_content_type (t));
+ }
}
// fundamental_base
@@ -55,7 +60,7 @@ namespace xsd
template <typename S>
list<T, C, ST, false>::
list (istream<S>& s, flags f, container* c)
- : sequence<T> (f, c)
+ : sequence<T> (c)
{
std::size_t size;
istream_common::as_size<std::size_t> as_size (size);
@@ -66,18 +71,15 @@ namespace xsd
this->reserve (size);
while (size--)
- {
- std::auto_ptr<T> p (new T (s, f, c));
- this->push_back (p);
- }
+ this->push_back (traits<T, C, ST>::create (s, f, c));
}
}
template <typename T, typename C, schema_type::value ST>
template <typename S>
list<T, C, ST, true>::
- list (istream<S>& s, flags f, container* c)
- : sequence<T> (f, c)
+ list (istream<S>& s, flags, container* c)
+ : sequence<T> (c)
{
std::size_t size;
istream_common::as_size<std::size_t> as_size (size);
diff --git a/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.hxx b/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.hxx
index e26a3da..c8a113b 100644
--- a/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-insertion-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_STREAM_INSERTION_MAP_HXX
@@ -34,7 +33,7 @@ namespace xsd
register_type (const type_id&,
const qualified_name& name,
inserter,
- bool override = true);
+ bool replace = true);
void
unregister_type (const type_id&);
diff --git a/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.txx b/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.txx
index 07bfa8b..78fbacb 100644
--- a/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/stream-insertion-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-insertion-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/tree/types.hxx>
@@ -32,7 +31,7 @@ namespace xsd
&inserter_impl<S, type>,
false);
- typedef simple_type<type> simple_type;
+ typedef simple_type<C, type> simple_type;
register_type (
typeid (simple_type),
qualified_name (bits::any_simple_type<C> (), xsd),
@@ -248,9 +247,9 @@ namespace xsd
register_type (const type_id& tid,
const qualified_name& name,
inserter i,
- bool override)
+ bool replace)
{
- if (override || type_map_.find (&tid) == type_map_.end ())
+ if (replace || type_map_.find (&tid) == type_map_.end ())
type_map_[&tid] = type_info (name, i);
}
@@ -269,7 +268,24 @@ namespace xsd
{
const qualified_name& qn (ti->name ());
- s << qn.namespace_ () << qn.name ();
+ // Pool the namespace and name strings.
+ //
+ const std::basic_string<C>& ns (qn.namespace_ ());
+ const std::basic_string<C>& n (qn.name ());
+
+ std::size_t ns_id (s.pool_string (ns));
+ std::size_t n_id (s.pool_string (n));
+
+ s << ostream_common::as_size<std::size_t> (ns_id);
+
+ if (ns_id == 0)
+ s << ns;
+
+ s << ostream_common::as_size<std::size_t> (n_id);
+
+ if (n_id == 0)
+ s << n;
+
ti->inserter () (s, x);
}
else
diff --git a/xsd/libxsd/xsd/cxx/tree/stream-insertion.hxx b/xsd/libxsd/xsd/cxx/tree/stream-insertion.hxx
index c345e80..b04846f 100644
--- a/xsd/libxsd/xsd/cxx/tree/stream-insertion.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/stream-insertion.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-insertion.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_STREAM_INSERTION_HXX
@@ -24,15 +23,19 @@ namespace xsd
inline ostream<S>&
operator<< (ostream<S>& s, const type&)
{
+ // Not saving DOM content even if it's there.
return s;
}
// simple_type
//
- template <typename S, typename B>
+ template <typename S, typename C, typename B>
inline ostream<S>&
- operator<< (ostream<S>& s, const simple_type<B>&)
+ operator<< (ostream<S>& s, const simple_type<C, B>& x)
{
+ if (!x.null_content ())
+ s << x.text_content ();
+
return s;
}
diff --git a/xsd/libxsd/xsd/cxx/tree/text.hxx b/xsd/libxsd/xsd/cxx/tree/text.hxx
index 15f12dc..8808787 100644
--- a/xsd/libxsd/xsd/cxx/tree/text.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/text.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/text.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_TEXT_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/text.txx b/xsd/libxsd/xsd/cxx/tree/text.txx
index 2d83c71..6764d5c 100644
--- a/xsd/libxsd/xsd/cxx/tree/text.txx
+++ b/xsd/libxsd/xsd/cxx/tree/text.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/text.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xercesc/dom/DOMText.hpp>
@@ -31,14 +30,7 @@ namespace xsd
n->getNextSibling () == 0)
{
DOMText* t (static_cast<DOMText*> (n));
-
- // Berkeley DB XML DOM does not implement getLength().
- //
-#ifndef DBXML_DOM
return xml::transcode<C> (t->getData (), t->getLength ());
-#else
- return xml::transcode<C> (t->getData ());
-#endif
}
std::basic_string<C> r;
@@ -51,14 +43,7 @@ namespace xsd
case DOMNode::CDATA_SECTION_NODE:
{
DOMText* t (static_cast<DOMText*> (n));
-
- // Berkeley DB XML DOM does not implement getLength().
- //
-#ifndef DBXML_DOM
r += xml::transcode<C> (t->getData (), t->getLength ());
-#else
- r += xml::transcode<C> (t->getData ());
-#endif
break;
}
case DOMNode::ELEMENT_NODE:
diff --git a/xsd/libxsd/xsd/cxx/tree/type-factory-map.hxx b/xsd/libxsd/xsd/cxx/tree/type-factory-map.hxx
index 7e849db..b2558c7 100644
--- a/xsd/libxsd/xsd/cxx/tree/type-factory-map.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/type-factory-map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/type-factory-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_TYPE_FACTORY_MAP_HXX
@@ -8,11 +7,13 @@
#include <map>
#include <string>
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cstddef> // std::size_t
#include <xercesc/dom/DOMElement.hpp>
+#include <xsd/cxx/config.hxx> // XSD_AUTO_PTR
+
#include <xsd/cxx/tree/elements.hxx>
#include <xsd/cxx/xml/qualified-name.hxx>
@@ -26,16 +27,16 @@ namespace xsd
struct type_factory_map
{
typedef xml::qualified_name<C> qualified_name;
- typedef std::auto_ptr<type> (*factory) (const xercesc::DOMElement&,
- flags,
- container*);
+ typedef XSD_AUTO_PTR<type> (*factory) (const xercesc::DOMElement&,
+ flags,
+ container*);
public:
type_factory_map ();
void
register_type (const qualified_name& name,
factory,
- bool override = true);
+ bool replace = true);
void
unregister_type (const qualified_name& name);
@@ -49,7 +50,7 @@ namespace xsd
unregister_element (const qualified_name& root,
const qualified_name& subst);
- std::auto_ptr<type>
+ XSD_AUTO_PTR<type>
create (const C* name, // element name
const C* ns, // element namespace
factory static_type,
@@ -66,7 +67,7 @@ namespace xsd
private:
template <typename T>
- static std::auto_ptr<type>
+ static XSD_AUTO_PTR<type>
traits_adapter (const xercesc::DOMElement&, flags, container*);
private:
@@ -132,7 +133,7 @@ namespace xsd
//
//
template<typename T>
- std::auto_ptr<type>
+ XSD_AUTO_PTR<type>
factory_impl (const xercesc::DOMElement&, flags, container*);
//
diff --git a/xsd/libxsd/xsd/cxx/tree/type-factory-map.txx b/xsd/libxsd/xsd/cxx/tree/type-factory-map.txx
index b9e0a06..e1fe0cc 100644
--- a/xsd/libxsd/xsd/cxx/tree/type-factory-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/type-factory-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/type-factory-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xercesc/validators/schema/SchemaSymbols.hpp>
@@ -38,7 +37,7 @@ namespace xsd
&factory_impl<type>,
false);
- typedef simple_type<type> simple_type;
+ typedef simple_type<C, type> simple_type;
register_type (
qualified_name (bits::any_simple_type<C> (), xsd),
&factory_impl<simple_type>,
@@ -226,9 +225,9 @@ namespace xsd
void type_factory_map<C>::
register_type (const qualified_name& name,
factory f,
- bool override)
+ bool replace)
{
- if (override || type_map_.find (name) == type_map_.end ())
+ if (replace || type_map_.find (name) == type_map_.end ())
type_map_[name] = f;
}
@@ -273,7 +272,7 @@ namespace xsd
}
template <typename C>
- std::auto_ptr<type> type_factory_map<C>::
+ XSD_AUTO_PTR<type> type_factory_map<C>::
create (const C* name,
const C* ns,
factory static_type,
@@ -307,7 +306,7 @@ namespace xsd
}
if (f == 0)
- return std::auto_ptr<type> (0); // No match.
+ return XSD_AUTO_PTR<type> (); // No match.
// Check for xsi:type
//
@@ -326,11 +325,10 @@ namespace xsd
template <typename C>
template <typename T>
- std::auto_ptr<type> type_factory_map<C>::
+ XSD_AUTO_PTR<type> type_factory_map<C>::
traits_adapter (const xercesc::DOMElement& e, flags f, container* c)
{
- std::auto_ptr<T> r (traits<T, C>::create (e, f, c));
- return std::auto_ptr<type> (r.release ());
+ return XSD_AUTO_PTR<type> (traits<T, C>::create (e, f, c));
}
template <typename C>
@@ -428,10 +426,10 @@ namespace xsd
//
//
template<typename T>
- std::auto_ptr<type>
+ XSD_AUTO_PTR<type>
factory_impl (const xercesc::DOMElement& e, flags f, container* c)
{
- return std::auto_ptr<type> (new T (e, f, c));
+ return XSD_AUTO_PTR<type> (new T (e, f, c));
}
//
diff --git a/xsd/libxsd/xsd/cxx/tree/type-serializer-map.hxx b/xsd/libxsd/xsd/cxx/tree/type-serializer-map.hxx
index 491ad3b..f461b7d 100644
--- a/xsd/libxsd/xsd/cxx/tree/type-serializer-map.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/type-serializer-map.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/type-serializer-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_TYPE_SERIALIZER_MAP_HXX
@@ -16,6 +15,7 @@
#include <xsd/cxx/tree/elements.hxx>
#include <xsd/cxx/xml/qualified-name.hxx>
+#include <xsd/cxx/xml/dom/auto-ptr.hxx>
#include <xsd/cxx/xml/dom/serialization-header.hxx> // namespace_infomap
namespace xsd
@@ -35,7 +35,7 @@ namespace xsd
register_type (const type_id&,
const qualified_name& name,
serializer,
- bool override = true);
+ bool replace = true);
void
unregister_type (const type_id&);
@@ -70,7 +70,7 @@ namespace xsd
// Create DOMDocument with root element suitable for serializing
// x into it.
//
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
serialize (const C* name, // element name
const C* ns, // element namespace
const xml::dom::namespace_infomap<C>&,
diff --git a/xsd/libxsd/xsd/cxx/tree/type-serializer-map.txx b/xsd/libxsd/xsd/cxx/tree/type-serializer-map.txx
index 859331f..44a2204 100644
--- a/xsd/libxsd/xsd/cxx/tree/type-serializer-map.txx
+++ b/xsd/libxsd/xsd/cxx/tree/type-serializer-map.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/type-serializer-map.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xercesc/util/XMLUni.hpp>
@@ -12,8 +11,6 @@
#include <xsd/cxx/tree/types.hxx>
#include <xsd/cxx/tree/bits/literals.hxx>
-#include <iostream>
-
namespace xsd
{
namespace cxx
@@ -39,7 +36,7 @@ namespace xsd
&serializer_impl<type>,
false);
- typedef simple_type<type> simple_type;
+ typedef simple_type<C, type> simple_type;
register_type (
typeid (simple_type),
qualified_name (bits::any_simple_type<C> (), xsd),
@@ -255,9 +252,9 @@ namespace xsd
register_type (const type_id& tid,
const qualified_name& name,
serializer s,
- bool override)
+ bool replace)
{
- if (override || type_map_.find (&tid) == type_map_.end ())
+ if (replace || type_map_.find (&tid) == type_map_.end ())
type_map_[&tid] = type_info (name, s);
}
@@ -399,7 +396,7 @@ namespace xsd
}
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument> type_serializer_map<C>::
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument> type_serializer_map<C>::
serialize (const C* name,
const C* ns,
const xml::dom::namespace_infomap<C>& m,
diff --git a/xsd/libxsd/xsd/cxx/tree/types.hxx b/xsd/libxsd/xsd/cxx/tree/types.hxx
index 299824f..288a291 100644
--- a/xsd/libxsd/xsd/cxx/tree/types.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/types.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/types.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
/**
@@ -272,6 +271,29 @@ namespace xsd
}
};
+ /**
+ * @brief %string comparison operator.
+ *
+ * @return True if the strings are equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator== (const string<C, B>& a, const string<C, B>& b)
+ {
+ return static_cast<const std::basic_string<C>&> (a) == b;
+ }
+
+ /**
+ * @brief %string comparison operator.
+ *
+ * @return True if the strings are not equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator!= (const string<C, B>& a, const string<C, B>& b)
+ {
+ return !(a == b);
+ }
/**
* @brief Class corresponding to the XML Schema normalizedString
@@ -1014,7 +1036,7 @@ namespace xsd
* @brief Default constructor creates no elements.
*/
nmtokens ()
- : base_type (0, this)
+ : base_type (this)
{
}
@@ -1120,6 +1142,31 @@ namespace xsd
//@}
};
+ /**
+ * @brief %nmtokens comparison operator.
+ *
+ * @return True if the lists of nmtokens are equal, false otherwise.
+ */
+ template <typename C, typename B, typename nmtoken>
+ inline bool
+ operator== (const nmtokens<C, B, nmtoken>& a,
+ const nmtokens<C, B, nmtoken>& b)
+ {
+ return static_cast<const list<nmtoken, C>&> (a) == b;
+ }
+
+ /**
+ * @brief %nmtokens comparison operator.
+ *
+ * @return True if the lists of nmtokens are not equal, false otherwise.
+ */
+ template <typename C, typename B, typename nmtoken>
+ inline bool
+ operator!= (const nmtokens<C, B, nmtoken>& a,
+ const nmtokens<C, B, nmtoken>& b)
+ {
+ return !(a == b);
+ }
/**
* @brief Class corresponding to the XML Schema Name built-in
@@ -2076,20 +2123,7 @@ namespace xsd
virtual void
_container (container*);
- // The above override also hides other _container versions. We
- // also cannot do using-declarations because of bugs in HP aCC3.
- //
- const container*
- _container () const
- {
- return B::_container ();
- }
-
- container*
- _container ()
- {
- return B::_container ();
- }
+ using B::_container;
//@endcond
@@ -2483,7 +2517,7 @@ namespace xsd
* @brief Default constructor creates no elements.
*/
idrefs ()
- : base_type (0, this)
+ : base_type (this)
{
}
@@ -2589,6 +2623,29 @@ namespace xsd
//@}
};
+ /**
+ * @brief %idrefs comparison operator.
+ *
+ * @return True if the lists of idrefs are equal, false otherwise.
+ */
+ template <typename C, typename B, typename idref>
+ inline bool
+ operator== (const idrefs<C, B, idref>& a, const idrefs<C, B, idref>& b)
+ {
+ return static_cast<const list<idref, C>&> (a) == b;
+ }
+
+ /**
+ * @brief %idrefs comparison operator.
+ *
+ * @return True if the lists of idrefs are not equal, false otherwise.
+ */
+ template <typename C, typename B, typename idref>
+ inline bool
+ operator!= (const idrefs<C, B, idref>& a, const idrefs<C, B, idref>& b)
+ {
+ return !(a == b);
+ }
/**
* @brief Class corresponding to the XML Schema anyURI built-in
@@ -2825,6 +2882,29 @@ namespace xsd
friend class qname;
};
+ /**
+ * @brief %uri comparison operator.
+ *
+ * @return True if the uris are equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator== (const uri<C, B>& a, const uri<C, B>& b)
+ {
+ return static_cast<const std::basic_string<C>&> (a) == b;
+ }
+
+ /**
+ * @brief %uri comparison operator.
+ *
+ * @return True if the uris are not equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator!= (const uri<C, B>& a, const uri<C, B>& b)
+ {
+ return !(a == b);
+ }
/**
* @brief Class corresponding to the XML Schema QName built-in
@@ -3225,6 +3305,29 @@ namespace xsd
decode (const XMLCh*);
};
+ /**
+ * @brief %base64_binary comparison operator.
+ *
+ * @return True if the binaries are equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator== (const base64_binary<C, B>& a, const base64_binary<C, B>& b)
+ {
+ return static_cast<const buffer<C>&> (a) == b;
+ }
+
+ /**
+ * @brief %base64_binary comparison operator.
+ *
+ * @return True if the binaries are not equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator!= (const base64_binary<C, B>& a, const base64_binary<C, B>& b)
+ {
+ return !(a == b);
+ }
/**
* @brief Class corresponding to the XML Schema hexBinary
@@ -3418,6 +3521,29 @@ namespace xsd
decode (const XMLCh*);
};
+ /**
+ * @brief %hex_binary comparison operator.
+ *
+ * @return True if the binaries are equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator== (const hex_binary<C, B>& a, const hex_binary<C, B>& b)
+ {
+ return static_cast<const buffer<C>&> (a) == b;
+ }
+
+ /**
+ * @brief %hex_binary comparison operator.
+ *
+ * @return True if the binaries are not equal, false otherwise.
+ */
+ template <typename C, typename B>
+ inline bool
+ operator!= (const hex_binary<C, B>& a, const hex_binary<C, B>& b)
+ {
+ return !(a == b);
+ }
/**
* @brief Class corresponding to the XML Schema ENTITY built-in
@@ -3677,7 +3803,7 @@ namespace xsd
* @brief Default constructor creates no elements.
*/
entities ()
- : base_type (0, this)
+ : base_type (this)
{
}
@@ -3782,6 +3908,32 @@ namespace xsd
container* c = 0);
//@}
};
+
+ /**
+ * @brief %entities comparison operator.
+ *
+ * @return True if the lists of entities are equal, false otherwise.
+ */
+ template <typename C, typename B, typename entity>
+ inline bool
+ operator== (const entities<C, B, entity>& a,
+ const entities<C, B, entity>& b)
+ {
+ return static_cast<const list<entity, C>&> (a) == b;
+ }
+
+ /**
+ * @brief %entities comparison operator.
+ *
+ * @return True if the lists of entities are not equal, false otherwise.
+ */
+ template <typename C, typename B, typename entity>
+ inline bool
+ operator!= (const entities<C, B, entity>& a,
+ const entities<C, B, entity>& b)
+ {
+ return !(a == b);
+ }
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/tree/types.txx b/xsd/libxsd/xsd/cxx/tree/types.txx
index 8d6d79f..8696171 100644
--- a/xsd/libxsd/xsd/cxx/tree/types.txx
+++ b/xsd/libxsd/xsd/cxx/tree/types.txx
@@ -1,13 +1,17 @@
// file : xsd/cxx/tree/types.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xercesc/util/Base64.hpp>
#include <xercesc/util/XMLString.hpp>
-#include <xercesc/util/XercesVersion.hpp>
-#include <xsd/cxx/auto-array.hxx>
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+#else
+# include <xsd/cxx/auto-array.hxx>
+#endif
#include <xsd/cxx/xml/std-memory-manager.hxx>
@@ -168,11 +172,6 @@ namespace xsd
return *this;
}
- // It would have been cleaner to mention empty and _container
- // with the using-declaration but HP aCC3 can't handle it in
- // some non-trivial to track down cases. So we are going to use
- // the old-n-ugly this-> techniques.
- //
template <typename C, typename B>
void id<C, B>::
_container (container* c)
@@ -211,11 +210,6 @@ namespace xsd
return new idref (*this, f, c);
}
- // It would have been cleaner to mention empty, _root, etc. with
- // the using-declaration but HP aCC3 can't handle it in some
- // non-trivial to track down cases. So we are going to use the
- // old-n-ugly this-> techniques.
- //
template <typename C, typename B, typename T>
const _type* idref<C, B, T>::
get_ () const
@@ -321,52 +315,24 @@ namespace xsd
return new base64_binary (*this, f, c);
}
- // It would have been cleaner to mention size, and data with the
- // using-declaration but HP aCC3 can't handle it in some non-
- // trivial to track down cases. So we are going to use the
- // old-n- ugly this-> techniques.
- //
template <typename C, typename B>
std::basic_string<C> base64_binary<C, B>::
encode () const
{
- // HP aCC3 cannot handle using namespace xercesc;
- //
- using xercesc::Base64;
+ using namespace xercesc;
std::basic_string<C> str;
-#if _XERCES_VERSION >= 30000
XMLSize_t n;
-
xml::std_memory_manager mm;
- auto_array<XMLByte, xml::std_memory_manager> r (
- Base64::encode (
- reinterpret_cast<const XMLByte*> (this->data ()),
- static_cast<XMLSize_t> (this->size ()),
- &n,
- &mm),
- mm);
- if (r)
- {
- str.reserve (n + 1);
- str.resize (n);
-
- for (XMLSize_t i (0); i < n; ++i)
- str[i] = C (r[i]);
- }
- else
- {
- //@@ throw
- }
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLByte[], xml::std_memory_manager&> r (
#else
- unsigned int n;
-
- xml::std_memory_manager mm;
auto_array<XMLByte, xml::std_memory_manager> r (
+#endif
Base64::encode (
reinterpret_cast<const XMLByte*> (this->data ()),
- static_cast<unsigned int> (this->size ()),
+ static_cast<XMLSize_t> (this->size ()),
&n,
&mm),
mm);
@@ -376,14 +342,13 @@ namespace xsd
str.reserve (n + 1);
str.resize (n);
- for (unsigned int i (0); i < n; ++i)
+ for (XMLSize_t i (0); i < n; ++i)
str[i] = C (r[i]);
}
else
{
//@@ throw
}
-#endif
return str;
}
@@ -392,28 +357,18 @@ namespace xsd
void base64_binary<C, B>::
decode (const XMLCh* src)
{
- // HP aCC3 cannot handle using namespace xercesc;
- //
- using xercesc::Base64;
+ using namespace xercesc;
xml::std_memory_manager mm;
-
- // Xerces 2.6.0 and earlier do not have decodeToXMLByte which
- // makes my life harder and your code slower.
- //
-#if _XERCES_VERSION >= 20700
-
-#if _XERCES_VERSION >= 30000
XMLSize_t size;
- auto_array<XMLByte, xml::std_memory_manager> data (
- Base64::decodeToXMLByte (src, &size, &mm, Base64::Conf_RFC2045),
- mm);
+
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLByte[], xml::std_memory_manager&> data (
#else
- unsigned int size;
auto_array<XMLByte, xml::std_memory_manager> data (
+#endif
Base64::decodeToXMLByte (src, &size, &mm, Base64::Conf_RFC2045),
- mm);
-#endif // _XERCES_VERSION >= 30000
+ mm);
if (data)
{
@@ -425,30 +380,6 @@ namespace xsd
{
//@@ throw
}
-#else
- unsigned int size;
-
-#if _XERCES_VERSION >= 20600 // Xerces 2.5.0 does not have Conf_RFC2045.
- auto_array<XMLCh, xml::std_memory_manager> data (
- Base64::decode (src, &size, &mm, Base64::Conf_RFC2045),
- mm);
-#else
- auto_array<XMLCh, xml::std_memory_manager> data (
- Base64::decode (src, &size, &mm), mm);
-#endif // _XERCES_VERSION >= 20600
-
- if (data)
- {
- buffer<C> tmp (size);
- for (unsigned int i (0); i < size; ++i)
- tmp.data ()[i] = static_cast<char> (data[i]);
- this->swap (tmp); // g++ 4.1 likes it qualified, not sure why.
- }
- else
- {
- //@@ throw
- }
-#endif //_XERCES_VERSION >= 20700
}
@@ -496,11 +427,6 @@ namespace xsd
return new hex_binary (*this, f, c);
}
- // It would have been cleaner to mention size, and data with the
- // using-declaration but HP aCC3 can't handle it in some non-
- // trivial to track down cases. So we are going to use the
- // old-n-ugly this-> techniques.
- //
template <typename C, typename B>
std::basic_string<C> hex_binary<C, B>::
encode () const
diff --git a/xsd/libxsd/xsd/cxx/tree/xdr-stream-common.hxx b/xsd/libxsd/xsd/cxx/tree/xdr-stream-common.hxx
index ebc3d22..d3b6ce1 100644
--- a/xsd/libxsd/xsd/cxx/tree/xdr-stream-common.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/xdr-stream-common.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/xdr-stream-common.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_XDR_STREAM_COMMON_HXX
diff --git a/xsd/libxsd/xsd/cxx/tree/xdr-stream-extraction.hxx b/xsd/libxsd/xsd/cxx/tree/xdr-stream-extraction.hxx
index 012c1e4..d64825b 100644
--- a/xsd/libxsd/xsd/cxx/tree/xdr-stream-extraction.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/xdr-stream-extraction.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/xdr-stream-extraction.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_XDR_STREAM_EXTRACTION_HXX
@@ -9,6 +8,19 @@
#include <rpc/types.h>
#include <rpc/xdr.h>
+// Of course BSD has to be different and name its functions u_intXX
+// instead of uintXX. Plus it does not have XX == 8.
+//
+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__)
+# if !defined(XSD_CXX_TREE_ASSUME_SUN_XDR) && !defined(xdr_int8_t)
+# define xdr_int8_t(x, y) xdr_char(x, reinterpret_cast<char*> (y))
+# define xdr_uint8_t(x, y) xdr_u_char(x, reinterpret_cast<unsigned char*> (y))
+# define xdr_uint16_t xdr_u_int16_t
+# define xdr_uint32_t xdr_u_int32_t
+# define xdr_uint64_t xdr_u_int64_t
+# endif
+#endif
+
#include <string>
#include <xsd/cxx/tree/buffer.hxx>
@@ -249,7 +261,7 @@ namespace xsd
// Dangerous but fast.
//
x.clear ();
-
+
if (n != 0)
{
x.resize (n);
diff --git a/xsd/libxsd/xsd/cxx/tree/xdr-stream-insertion.hxx b/xsd/libxsd/xsd/cxx/tree/xdr-stream-insertion.hxx
index 00031d2..113569f 100644
--- a/xsd/libxsd/xsd/cxx/tree/xdr-stream-insertion.hxx
+++ b/xsd/libxsd/xsd/cxx/tree/xdr-stream-insertion.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/xdr-stream-insertion.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_TREE_XDR_STREAM_INSERTION_HXX
@@ -9,6 +8,19 @@
#include <rpc/types.h>
#include <rpc/xdr.h>
+// Of course BSD has to be different and name its functions u_intXX
+// instead of uintXX. Plus it does not have XX == 8.
+//
+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__)
+# if !defined(XSD_CXX_TREE_ASSUME_SUN_XDR) && !defined(xdr_int8_t)
+# define xdr_int8_t(x, y) xdr_char(x, reinterpret_cast<char*> (y))
+# define xdr_uint8_t(x, y) xdr_u_char(x, reinterpret_cast<unsigned char*> (y))
+# define xdr_uint16_t xdr_u_int16_t
+# define xdr_uint32_t xdr_u_int32_t
+# define xdr_uint64_t xdr_u_int64_t
+# endif
+#endif
+
#include <string>
#include <xsd/cxx/tree/buffer.hxx>
diff --git a/xsd/libxsd/xsd/cxx/version.hxx b/xsd/libxsd/xsd/cxx/version.hxx
index 69bd1a1..2e2312f 100644
--- a/xsd/libxsd/xsd/cxx/version.hxx
+++ b/xsd/libxsd/xsd/cxx/version.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/version.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_VERSION_HXX
@@ -23,7 +22,7 @@
// 3.0.0.b2 02999952
//
-#define XSD_STR_VERSION "3.3.0"
-#define XSD_INT_VERSION 3030000L
+#define XSD_STR_VERSION "4.0.0"
+#define XSD_INT_VERSION 4000000L
#endif // XSD_CXX_VERSION_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/bits/literals.hxx b/xsd/libxsd/xsd/cxx/xml/bits/literals.hxx
index 5b9fe99..51d08ad 100644
--- a/xsd/libxsd/xsd/cxx/xml/bits/literals.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/bits/literals.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/bits/literals.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_BITS_LITERALS_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/bits/literals.ixx b/xsd/libxsd/xsd/cxx/xml/bits/literals.ixx
index f0ec6eb..bd8f4ed 100644
--- a/xsd/libxsd/xsd/cxx/xml/bits/literals.ixx
+++ b/xsd/libxsd/xsd/cxx/xml/bits/literals.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/bits/literals.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_BITS_LITERALS_IXX
diff --git a/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.hxx b/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.hxx
index c8ab507..309e8ef 100644
--- a/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/char-iso8859-1.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_TRANSCODER
diff --git a/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.txx b/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.txx
index cbf7cd8..acef18c 100644
--- a/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.txx
+++ b/xsd/libxsd/xsd/cxx/xml/char-iso8859-1.txx
@@ -1,9 +1,14 @@
// file : xsd/cxx/xml/char-iso8859-1.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#include <xsd/cxx/auto-array.hxx>
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+#else
+# include <xsd/cxx/auto-array.hxx>
+#endif
namespace xsd
{
@@ -87,7 +92,12 @@ namespace xsd
{
const C* end (s + len);
- auto_array<XMLCh> r (new XMLCh[len + 1]);
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLCh[]> r (
+#else
+ auto_array<XMLCh> r (
+#endif
+ new XMLCh[len + 1]);
XMLCh* ir (r.get ());
for (const C* p (s); p < end; ++p)
diff --git a/xsd/libxsd/xsd/cxx/xml/char-lcp.hxx b/xsd/libxsd/xsd/cxx/xml/char-lcp.hxx
index c100bab..ce46229 100644
--- a/xsd/libxsd/xsd/cxx/xml/char-lcp.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/char-lcp.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/char-lcp.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_TRANSCODER
diff --git a/xsd/libxsd/xsd/cxx/xml/char-lcp.txx b/xsd/libxsd/xsd/cxx/xml/char-lcp.txx
index 4603537..c71d92f 100644
--- a/xsd/libxsd/xsd/cxx/xml/char-lcp.txx
+++ b/xsd/libxsd/xsd/cxx/xml/char-lcp.txx
@@ -1,13 +1,19 @@
// file : xsd/cxx/xml/char-lcp.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cstring> // std::memcpy
#include <xercesc/util/XMLString.hpp>
-#include <xsd/cxx/auto-array.hxx>
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+#else
+# include <xsd/cxx/auto-array.hxx>
+#endif
+
#include <xsd/cxx/xml/std-memory-manager.hxx>
namespace xsd
@@ -21,7 +27,11 @@ namespace xsd
to (const XMLCh* s)
{
std_memory_manager mm;
+#ifdef XSD_CXX11
+ std::unique_ptr<C[], std_memory_manager&> r (
+#else
auto_array<C, std_memory_manager> r (
+#endif
xercesc::XMLString::transcode (s, &mm), mm);
return std::basic_string<C> (r.get ());
}
@@ -30,12 +40,21 @@ namespace xsd
std::basic_string<C> char_lcp_transcoder<C>::
to (const XMLCh* s, std::size_t len)
{
- auto_array<XMLCh> tmp (new XMLCh[len + 1]);
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLCh[]> tmp (
+#else
+ auto_array<XMLCh> tmp (
+#endif
+ new XMLCh[len + 1]);
std::memcpy (tmp.get (), s, len * sizeof (XMLCh));
tmp[len] = XMLCh (0);
std_memory_manager mm;
+#ifdef XSD_CXX11
+ std::unique_ptr<C[], std_memory_manager&> r (
+#else
auto_array<C, std_memory_manager> r (
+#endif
xercesc::XMLString::transcode (tmp.get (), &mm), mm);
tmp.reset ();
diff --git a/xsd/libxsd/xsd/cxx/xml/char-utf8.hxx b/xsd/libxsd/xsd/cxx/xml/char-utf8.hxx
index 719881b..afc923a 100644
--- a/xsd/libxsd/xsd/cxx/xml/char-utf8.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/char-utf8.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/char-utf8.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_TRANSCODER
diff --git a/xsd/libxsd/xsd/cxx/xml/char-utf8.txx b/xsd/libxsd/xsd/cxx/xml/char-utf8.txx
index 9935daf..a6511be 100644
--- a/xsd/libxsd/xsd/cxx/xml/char-utf8.txx
+++ b/xsd/libxsd/xsd/cxx/xml/char-utf8.txx
@@ -1,9 +1,14 @@
// file : xsd/cxx/xml/char-utf8.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#include <xsd/cxx/auto-array.hxx>
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+#else
+# include <xsd/cxx/auto-array.hxx>
+#endif
namespace xsd
{
@@ -184,7 +189,12 @@ namespace xsd
if (!valid)
throw invalid_utf8_string ();
- auto_array<XMLCh> r (new XMLCh[rl + 1]);
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLCh[]> r (
+#else
+ auto_array<XMLCh> r (
+#endif
+ new XMLCh[rl + 1]);
XMLCh* ir (r.get ());
unsigned int u (0); // Four byte UCS-4 char.
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/auto-ptr.hxx b/xsd/libxsd/xsd/cxx/xml/dom/auto-ptr.hxx
index f22e652..fc8f194 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/auto-ptr.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/auto-ptr.hxx
@@ -1,11 +1,18 @@
// file : xsd/cxx/xml/dom/auto-ptr.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_AUTO_PTR_HXX
#define XSD_CXX_XML_DOM_AUTO_PTR_HXX
+#include <xsd/cxx/config.hxx> // XSD_CXX11_*
+
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+# include <utility> // std::move
+# include <type_traits> // std::remove_const
+#endif
+
namespace xsd
{
namespace cxx
@@ -14,9 +21,73 @@ namespace xsd
{
namespace dom
{
- // Simple auto_ptr version that calls release() instead of delete.
- //
+#ifdef XSD_CXX11
+ template <typename T>
+ struct deleter
+ {
+ void
+ operator() (T* p) const
+ {
+ if (p != 0)
+ const_cast<typename std::remove_const<T>::type*> (p)->release ();
+ }
+ };
+
+#ifdef XSD_CXX11_TEMPLATE_ALIAS
+ template <typename T>
+ using unique_ptr = std::unique_ptr<T, deleter<T>>;
+#else
+ template <typename T>
+ class unique_ptr: public std::unique_ptr<T, deleter<T>>
+ {
+ public:
+ typedef std::unique_ptr<T, deleter<T>> base;
+
+ typedef typename base::pointer pointer;
+ typedef T element_type;
+ typedef deleter<T> deleter_type;
+
+ unique_ptr (): base () {}
+ explicit unique_ptr (pointer p): base (p) {}
+ unique_ptr (pointer p, const deleter_type& d): base (p, d) {}
+ unique_ptr (pointer p, deleter_type&& d): base (p, std::move (d)) {}
+ unique_ptr (unique_ptr&& p): base (std::move (p)) {}
+ template <class T1>
+ unique_ptr (unique_ptr<T1>&& p): base (std::move (p)) {}
+ template <class T1>
+ unique_ptr (std::auto_ptr<T1>&& p): base (std::move (p)) {}
+
+ unique_ptr& operator= (unique_ptr&& p)
+ {
+ static_cast<base&> (*this) = std::move (p);
+ return *this;
+ }
+ template <class T1>
+ unique_ptr& operator= (unique_ptr<T1>&& p)
+ {
+ static_cast<base&> (*this) = std::move (p);
+ return *this;
+ }
+
+#ifdef XSD_CXX11_NULLPTR
+ unique_ptr (std::nullptr_t p): base (p) {}
+
+ unique_ptr& operator= (std::nullptr_t p)
+ {
+ static_cast<base&> (*this) = p;
+ return *this;
+ }
+#endif
+ };
+#endif // XSD_CXX11_TEMPLATE_ALIAS
+
+#define XSD_DOM_AUTO_PTR xsd::cxx::xml::dom::unique_ptr
+
+#else
+ // Simple auto_ptr version for C++98 that calls release() instead
+ // of delete.
+ //
template <typename T>
struct remove_c
{
@@ -150,6 +221,10 @@ namespace xsd
private:
T* x_;
};
+
+#define XSD_DOM_AUTO_PTR xsd::cxx::xml::dom::auto_ptr
+
+#endif // XSD_CXX11
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.hxx b/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.hxx
index 83e9a7e..01111e1 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/bits/error-handler-proxy.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_BITS_ERROR_HANDLER_PROXY_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.txx b/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.txx
index 23e71cd..7e5579b 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.txx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/bits/error-handler-proxy.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/bits/error-handler-proxy.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/xml/string.hxx>
@@ -53,24 +52,12 @@ namespace xsd
xercesc::DOMLocator* loc (e.getLocation ());
-#if _XERCES_VERSION >= 30000
return eh_->handle (
transcode<C> (loc->getURI ()),
static_cast<unsigned long> (loc->getLineNumber ()),
static_cast<unsigned long> (loc->getColumnNumber ()),
s,
transcode<C> (e.getMessage ()));
-#else
- XMLSSize_t l (loc->getLineNumber ());
- XMLSSize_t c (loc->getColumnNumber ());
-
- return eh_->handle (
- transcode<C> (loc->getURI ()),
- (l == -1 ? 0 : static_cast<unsigned long> (l)),
- (c == -1 ? 0 : static_cast<unsigned long> (c)),
- s,
- transcode<C> (e.getMessage ()));
-#endif
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/elements.hxx b/xsd/libxsd/xsd/cxx/xml/dom/elements.hxx
index e8ce8d2..613b978 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/elements.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/elements.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_ELEMENTS_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/elements.txx b/xsd/libxsd/xsd/cxx/xml/dom/elements.txx
index 540d0fb..c493676 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/elements.txx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/elements.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/elements.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/xml/string.hxx>
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/parsing-header.hxx b/xsd/libxsd/xsd/cxx/xml/dom/parsing-header.hxx
index d9a3695..f9ec033 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/parsing-header.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/parsing-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/parsing-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_PARSING_HEADER_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.hxx b/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.hxx
index 2c90cf3..fac1006 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/parsing-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_PARSING_SOURCE_HXX
@@ -19,7 +18,6 @@
#include <xsd/cxx/xml/elements.hxx> // properies
#include <xsd/cxx/xml/error-handler.hxx>
-
#include <xsd/cxx/xml/dom/auto-ptr.hxx>
#include <xsd/cxx/xml/dom/elements.hxx> // name
#include <xsd/cxx/xml/dom/parsing-header.hxx>
@@ -32,30 +30,47 @@ namespace xsd
{
namespace dom
{
- // Parser state object. Can be used for parsing element, attributes,
- // or both.
+ // Parser state object. Can be used for parsing elements (and
+ // optionally text), attributes, or both.
//
template <typename C>
class parser
{
public:
- parser (const xercesc::DOMElement& e, bool ep, bool ap);
+ parser (const xercesc::DOMElement& e, bool ep, bool tp, bool ap);
+ // Content parsing.
+ //
bool
- more_elements ()
+ more_content ()
{
- return next_element_ != 0;
+ return next_content_ != 0;
}
const xercesc::DOMElement&
cur_element ()
{
- return *static_cast<const xercesc::DOMElement*> (next_element_);
+ return *static_cast<const xercesc::DOMElement*> (next_content_);
+ }
+
+ const xercesc::DOMText&
+ cur_text ()
+ {
+ return *static_cast<const xercesc::DOMText*> (next_content_);
+ }
+
+ bool
+ cur_is_text ()
+ {
+ return next_content_->getNodeType () !=
+ xercesc::DOMNode::ELEMENT_NODE;
}
void
- next_element ();
+ next_content (bool text);
+ // Attribute parsing.
+ //
bool
more_attributes ()
{
@@ -88,7 +103,7 @@ namespace xsd
private:
const xercesc::DOMElement& element_;
- const xercesc::DOMNode* next_element_;
+ const xercesc::DOMNode* next_content_;
const xercesc::DOMNamedNodeMap* a_;
XMLSize_t ai_; // Index of the next DOMAttr.
@@ -102,28 +117,28 @@ namespace xsd
const unsigned long no_muliple_imports = 0x00000800UL;
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (xercesc::InputSource&,
error_handler<C>&,
const properties<C>&,
unsigned long flags);
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (xercesc::InputSource&,
xercesc::DOMErrorHandler&,
const properties<C>&,
unsigned long flags);
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (const std::basic_string<C>& uri,
error_handler<C>&,
const properties<C>&,
unsigned long flags);
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (const std::basic_string<C>& uri,
xercesc::DOMErrorHandler&,
const properties<C>&,
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.txx b/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.txx
index 50fa285..c789fa6 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.txx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/parsing-source.txx
@@ -1,14 +1,10 @@
// file : xsd/cxx/xml/dom/parsing-source.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#if _XERCES_VERSION >= 30000
-# include <xercesc/dom/DOMLSParser.hpp>
-# include <xercesc/dom/DOMLSException.hpp>
-#else
-# include <xercesc/dom/DOMBuilder.hpp>
-#endif
+#include <xercesc/dom/DOMLSParser.hpp>
+#include <xercesc/dom/DOMLSException.hpp>
+
#include <xercesc/dom/DOMNamedNodeMap.hpp>
#include <xercesc/dom/DOMImplementation.hpp>
#include <xercesc/dom/DOMImplementationRegistry.hpp>
@@ -33,9 +29,9 @@ namespace xsd
//
template <typename C>
parser<C>::
- parser (const xercesc::DOMElement& e, bool ep, bool ap)
+ parser (const xercesc::DOMElement& e, bool ep, bool tp, bool ap)
: element_ (e),
- next_element_ (0),
+ next_content_ (0),
a_ (0),
ai_ (0)
{
@@ -43,10 +39,21 @@ namespace xsd
if (ep)
{
- for (next_element_ = e.getFirstChild ();
- next_element_ != 0 &&
- next_element_->getNodeType () != DOMNode::ELEMENT_NODE;
- next_element_ = next_element_->getNextSibling ()) /*noop*/;
+ for (next_content_ = e.getFirstChild ();;
+ next_content_ = next_content_->getNextSibling ())
+ {
+ if (next_content_ == 0)
+ break;
+
+ DOMNode::NodeType t (next_content_->getNodeType ());
+
+ if (t == DOMNode::ELEMENT_NODE)
+ break;
+
+ if (tp && (t == DOMNode::TEXT_NODE ||
+ t == DOMNode::CDATA_SECTION_NODE))
+ break;
+ }
}
if (ap)
@@ -58,20 +65,31 @@ namespace xsd
template <typename C>
void parser<C>::
- next_element ()
+ next_content (bool tp)
{
using xercesc::DOMNode;
- for (next_element_ = next_element_->getNextSibling ();
- next_element_ != 0 &&
- next_element_->getNodeType () != DOMNode::ELEMENT_NODE;
- next_element_ = next_element_->getNextSibling ())/*noop*/;
+ for (next_content_ = next_content_->getNextSibling ();;
+ next_content_ = next_content_->getNextSibling ())
+ {
+ if (next_content_ == 0)
+ break;
+
+ DOMNode::NodeType t (next_content_->getNodeType ());
+
+ if (t == DOMNode::ELEMENT_NODE)
+ break;
+
+ if (tp && (t == DOMNode::TEXT_NODE ||
+ t == DOMNode::CDATA_SECTION_NODE))
+ break;
+ }
}
// parse()
//
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (xercesc::InputSource& is,
error_handler<C>& eh,
const properties<C>& prop,
@@ -82,28 +100,13 @@ namespace xsd
}
template <typename C>
- auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (xercesc::InputSource& is,
xercesc::DOMErrorHandler& eh,
const properties<C>& prop,
unsigned long flags)
{
- // HP aCC cannot handle using namespace xercesc;
- //
- using xercesc::DOMImplementationRegistry;
- using xercesc::DOMImplementationLS;
- using xercesc::DOMImplementation;
- using xercesc::DOMDocument;
-#if _XERCES_VERSION >= 30000
- using xercesc::DOMLSParser;
- using xercesc::DOMConfiguration;
-#else
- using xercesc::DOMBuilder;
-#endif
-
- using xercesc::Wrapper4InputSource;
- using xercesc::XMLUni;
-
+ using namespace xercesc;
// Instantiate the DOM parser.
//
@@ -116,8 +119,7 @@ namespace xsd
DOMImplementation* impl (
DOMImplementationRegistry::getDOMImplementation (ls_id));
-#if _XERCES_VERSION >= 30000
- auto_ptr<DOMLSParser> parser (
+ XSD_DOM_AUTO_PTR<DOMLSParser> parser (
impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
DOMConfiguration* conf (parser->getDomConfig ());
@@ -163,7 +165,6 @@ namespace xsd
if (!(flags & no_muliple_imports))
conf->setParameter (XMLUni::fgXercesHandleMultipleImports, true);
#endif
-
// This feature checks the schema grammar for additional
// errors. We most likely do not need it when validating
// instances (assuming the schema is valid).
@@ -214,64 +215,9 @@ namespace xsd
bits::error_handler_proxy<C> ehp (eh);
conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
-
- if (flags & dont_validate)
- {
- parser->setFeature (XMLUni::fgDOMValidation, false);
- parser->setFeature (XMLUni::fgXercesSchema, false);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- }
- else
- {
- parser->setFeature (XMLUni::fgDOMValidation, true);
- parser->setFeature (XMLUni::fgXercesSchema, true);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- }
-
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
- if (!prop.schema_location ().empty ())
- {
- xml::string sl (prop.schema_location ());
- const void* v (sl.c_str ());
-
- parser->setProperty (
- XMLUni::fgXercesSchemaExternalSchemaLocation,
- const_cast<void*> (v));
- }
-
- if (!prop.no_namespace_schema_location ().empty ())
- {
- xml::string sl (prop.no_namespace_schema_location ());
- const void* v (sl.c_str ());
-
- parser->setProperty (
- XMLUni::fgXercesSchemaExternalNoNameSpaceSchemaLocation,
- const_cast<void*> (v));
- }
-
- bits::error_handler_proxy<C> ehp (eh);
- parser->setErrorHandler (&ehp);
-
-#endif // _XERCES_VERSION >= 30000
-
xercesc::Wrapper4InputSource wrap (&is, false);
-#if _XERCES_VERSION >= 30000
- auto_ptr<DOMDocument> doc;
-
+ XSD_DOM_AUTO_PTR<DOMDocument> doc;
try
{
doc.reset (parser->parse (&wrap));
@@ -279,9 +225,7 @@ namespace xsd
catch (const xercesc::DOMLSException&)
{
}
-#else
- auto_ptr<DOMDocument> doc (parser->parse (wrap));
-#endif
+
if (ehp.failed ())
doc.reset ();
@@ -289,7 +233,7 @@ namespace xsd
}
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (const std::basic_string<C>& uri,
error_handler<C>& eh,
const properties<C>& prop,
@@ -300,26 +244,13 @@ namespace xsd
}
template <typename C>
- auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
parse (const std::basic_string<C>& uri,
xercesc::DOMErrorHandler& eh,
const properties<C>& prop,
unsigned long flags)
{
- // HP aCC cannot handle using namespace xercesc;
- //
- using xercesc::DOMImplementationRegistry;
- using xercesc::DOMImplementationLS;
- using xercesc::DOMImplementation;
- using xercesc::DOMDocument;
-#if _XERCES_VERSION >= 30000
- using xercesc::DOMLSParser;
- using xercesc::DOMConfiguration;
-#else
- using xercesc::DOMBuilder;
-#endif
- using xercesc::XMLUni;
-
+ using namespace xercesc;
// Instantiate the DOM parser.
//
@@ -332,8 +263,7 @@ namespace xsd
DOMImplementation* impl (
DOMImplementationRegistry::getDOMImplementation (ls_id));
-#if _XERCES_VERSION >= 30000
- auto_ptr<DOMLSParser> parser (
+ XSD_DOM_AUTO_PTR<DOMLSParser> parser (
impl->createLSParser(DOMImplementationLS::MODE_SYNCHRONOUS, 0));
DOMConfiguration* conf (parser->getDomConfig ());
@@ -430,63 +360,7 @@ namespace xsd
bits::error_handler_proxy<C> ehp (eh);
conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
-#else // _XERCES_VERSION >= 30000
-
- // Same as above but for Xerces-C++ 2 series.
- //
- auto_ptr<DOMBuilder> parser (
- impl->createDOMBuilder(DOMImplementationLS::MODE_SYNCHRONOUS, 0));
-
- parser->setFeature (XMLUni::fgDOMComments, false);
- parser->setFeature (XMLUni::fgDOMDatatypeNormalization, true);
- parser->setFeature (XMLUni::fgDOMEntities, false);
- parser->setFeature (XMLUni::fgDOMNamespaces, true);
- parser->setFeature (XMLUni::fgDOMWhitespaceInElementContent, false);
-
- if (flags & dont_validate)
- {
- parser->setFeature (XMLUni::fgDOMValidation, false);
- parser->setFeature (XMLUni::fgXercesSchema, false);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- }
- else
- {
- parser->setFeature (XMLUni::fgDOMValidation, true);
- parser->setFeature (XMLUni::fgXercesSchema, true);
- parser->setFeature (XMLUni::fgXercesSchemaFullChecking, false);
- }
-
- parser->setFeature (XMLUni::fgXercesUserAdoptsDOMDocument, true);
-
- if (!prop.schema_location ().empty ())
- {
- xml::string sl (prop.schema_location ());
- const void* v (sl.c_str ());
-
- parser->setProperty (
- XMLUni::fgXercesSchemaExternalSchemaLocation,
- const_cast<void*> (v));
- }
-
- if (!prop.no_namespace_schema_location ().empty ())
- {
- xml::string sl (prop.no_namespace_schema_location ());
- const void* v (sl.c_str ());
-
- parser->setProperty (
- XMLUni::fgXercesSchemaExternalNoNameSpaceSchemaLocation,
- const_cast<void*> (v));
- }
-
- bits::error_handler_proxy<C> ehp (eh);
- parser->setErrorHandler (&ehp);
-
-#endif // _XERCES_VERSION >= 30000
-
-
-#if _XERCES_VERSION >= 30000
- auto_ptr<DOMDocument> doc;
-
+ XSD_DOM_AUTO_PTR<DOMDocument> doc;
try
{
doc.reset (parser->parseURI (string (uri).c_str ()));
@@ -494,10 +368,6 @@ namespace xsd
catch (const xercesc::DOMLSException&)
{
}
-#else
- auto_ptr<DOMDocument> doc (
- parser->parseURI (string (uri).c_str ()));
-#endif
if (ehp.failed ())
doc.reset ();
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.hxx b/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.hxx
index 3b879b1..a3cbff4 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/serialization-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_SERIALIZATION_HEADER_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.txx b/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.txx
index 3052b7e..6e58cfd 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.txx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/serialization-header.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/serialization-header.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <vector>
@@ -33,12 +32,8 @@ namespace xsd
prefix (const C* ns, xercesc::DOMElement& e, const C* hint)
{
string xns (ns);
-
-#if _XERCES_VERSION >= 30000
const XMLCh* p (e.lookupPrefix (xns.c_str ()));
-#else
- const XMLCh* p (e.lookupNamespacePrefix (xns.c_str (), false));
-#endif
+
if (p != 0)
return transcode<C> (p);
@@ -125,13 +120,7 @@ namespace xsd
void
clear (xercesc::DOMElement& e)
{
- // HP aCC cannot handle using namespace xercesc;
- //
- using xercesc::DOMNode;
- using xercesc::DOMAttr;
- using xercesc::DOMNamedNodeMap;
- using xercesc::XMLString;
- using xercesc::SchemaSymbols;
+ using namespace xercesc;
// Remove child nodes.
//
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.hxx b/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.hxx
index 325c1ec..9056917 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/serialization-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_SERIALIZATION_SOURCE_HXX
@@ -47,13 +46,19 @@ namespace xsd
xercesc::DOMElement&
create_element (const C* name, const C* ns, xercesc::DOMElement&);
+ // Add namespace declarations and schema locations.
+ //
+ template <typename C>
+ void
+ add_namespaces (xercesc::DOMElement&, const namespace_infomap<C>&);
+
// Serialization flags.
//
const unsigned long no_xml_declaration = 0x00010000UL;
const unsigned long dont_pretty_print = 0x00020000UL;
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
serialize (const std::basic_string<C>& root_element,
const std::basic_string<C>& root_element_namespace,
const namespace_infomap<C>& map,
@@ -62,7 +67,7 @@ namespace xsd
// This one helps Sun C++ to overcome its fears.
//
template <typename C>
- inline xml::dom::auto_ptr<xercesc::DOMDocument>
+ inline XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
serialize (const C* root_element,
const C* root_element_namespace,
const namespace_infomap<C>& map,
@@ -103,16 +108,12 @@ namespace xsd
public:
// I know, some of those consts are stupid. But that's what
- // Xerces folks put into their interfaces and VC-7.1 thinks
- // there are different signatures if one strips this fluff off.
+ // Xerces folks put into their interfaces and VC thinks there
+ // are different signatures if one strips this fluff off.
//
virtual void
writeChars (const XMLByte* const buf,
-#if _XERCES_VERSION >= 30000
const XMLSize_t size,
-#else
- const unsigned int size,
-#endif
xercesc::XMLFormatter* const)
{
// Ignore the write request if there was a stream failure and the
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.txx b/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.txx
index 2b27dd5..eed1196 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.txx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/serialization-source.txx
@@ -1,18 +1,14 @@
// file : xsd/cxx/xml/dom/serialization-source.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xercesc/util/XMLUni.hpp> // xercesc::fg*
#include <xercesc/util/XMLUniDefs.hpp> // chLatin_L, etc
#include <xercesc/validators/schema/SchemaSymbols.hpp>
-#if _XERCES_VERSION >= 30000
-# include <xercesc/dom/DOMLSOutput.hpp>
-# include <xercesc/dom/DOMLSSerializer.hpp>
-#else
-# include <xercesc/dom/DOMWriter.hpp>
-#endif
+#include <xercesc/dom/DOMLSOutput.hpp>
+#include <xercesc/dom/DOMLSSerializer.hpp>
+
#include <xercesc/dom/DOMElement.hpp>
#include <xercesc/dom/DOMImplementation.hpp>
#include <xercesc/dom/DOMImplementationRegistry.hpp>
@@ -109,70 +105,19 @@ namespace xsd
return *e;
}
-
- //
- //
template <typename C>
- auto_ptr<xercesc::DOMDocument>
- serialize (const std::basic_string<C>& el,
- const std::basic_string<C>& ns,
- const namespace_infomap<C>& map,
- unsigned long)
+ void
+ add_namespaces (xercesc::DOMElement& el,
+ const namespace_infomap<C>& map)
{
- // HP aCC cannot handle using namespace xercesc;
- //
- using xercesc::DOMImplementationRegistry;
- using xercesc::DOMImplementation;
- using xercesc::DOMDocument;
- using xercesc::DOMElement;
+ using namespace xercesc;
- //
- //
typedef std::basic_string<C> string;
typedef namespace_infomap<C> infomap;
typedef typename infomap::const_iterator infomap_iterator;
C colon (':'), space (' ');
- string prefix;
-
- if (!ns.empty ())
- {
- infomap_iterator i (map.begin ()), e (map.end ());
-
- for ( ;i != e; ++i)
- {
- if (i->second.name == ns)
- {
- prefix = i->first;
- break;
- }
- }
-
- // Since this is the first namespace in document we don't
- // need to worry about conflicts.
- //
- if (i == e)
- prefix = xml::bits::first_prefix<C> ();
- }
-
- const XMLCh ls[] = {xercesc::chLatin_L,
- xercesc::chLatin_S,
- xercesc::chNull};
-
- DOMImplementation* impl (
- DOMImplementationRegistry::getDOMImplementation (ls));
-
- auto_ptr<DOMDocument> doc (
- impl->createDocument (
- (ns.empty () ? 0 : xml::string (ns).c_str ()),
- xml::string ((prefix.empty ()
- ? el
- : prefix + colon + el)).c_str (),
- 0));
-
- DOMElement* root (doc->getDocumentElement ());
-
// Check if we need to provide xsi mapping.
//
bool xsi (false);
@@ -214,14 +159,14 @@ namespace xsd
// Empty prefix.
//
if (!i->second.name.empty ())
- root->setAttributeNS (
+ el.setAttributeNS (
xercesc::XMLUni::fgXMLNSURIName,
xml::string (xmlns_prefix).c_str (),
xml::string (i->second.name).c_str ());
}
else
{
- root->setAttributeNS (
+ el.setAttributeNS (
xercesc::XMLUni::fgXMLNSURIName,
xml::string (xmlns_prefix + colon + i->first).c_str (),
xml::string (i->second.name).c_str ());
@@ -233,7 +178,7 @@ namespace xsd
//
if (xsi)
xsi_prefix = dom::prefix (xml::bits::xsi_namespace<C> (),
- *root,
+ el,
xml::bits::xsi_prefix<C> ());
// Create xsi:schemaLocation and xsi:noNamespaceSchemaLocation
@@ -265,7 +210,7 @@ namespace xsd
if (!schema_location.empty ())
{
- root->setAttributeNS (
+ el.setAttributeNS (
xercesc::SchemaSymbols::fgURI_XSI,
xml::string (xsi_prefix + colon +
xml::bits::schema_location<C> ()).c_str (),
@@ -274,13 +219,68 @@ namespace xsd
if (!no_namespace_schema_location.empty ())
{
- root->setAttributeNS (
+ el.setAttributeNS (
xercesc::SchemaSymbols::fgURI_XSI,
xml::string (
xsi_prefix + colon +
xml::bits::no_namespace_schema_location<C> ()).c_str (),
xml::string (no_namespace_schema_location).c_str ());
}
+ }
+
+ //
+ //
+ template <typename C>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
+ serialize (const std::basic_string<C>& el,
+ const std::basic_string<C>& ns,
+ const namespace_infomap<C>& map,
+ unsigned long)
+ {
+ using namespace xercesc;
+
+ typedef std::basic_string<C> string;
+ typedef namespace_infomap<C> infomap;
+ typedef typename infomap::const_iterator infomap_iterator;
+
+ string prefix;
+
+ if (!ns.empty ())
+ {
+ infomap_iterator i (map.begin ()), e (map.end ());
+
+ for ( ;i != e; ++i)
+ {
+ if (i->second.name == ns)
+ {
+ prefix = i->first;
+ break;
+ }
+ }
+
+ // Since this is the first namespace in document we don't
+ // need to worry about conflicts.
+ //
+ if (i == e)
+ prefix = xml::bits::first_prefix<C> ();
+ }
+
+ const XMLCh ls[] = {xercesc::chLatin_L,
+ xercesc::chLatin_S,
+ xercesc::chNull};
+
+ DOMImplementation* impl (
+ DOMImplementationRegistry::getDOMImplementation (ls));
+
+ XSD_DOM_AUTO_PTR<DOMDocument> doc (
+ impl->createDocument (
+ (ns.empty () ? 0 : xml::string (ns).c_str ()),
+ xml::string ((prefix.empty ()
+ ? el
+ : prefix + C (':') + el)).c_str (),
+ 0));
+
+ add_namespaces (*doc->getDocumentElement (), map);
return doc;
}
@@ -294,18 +294,7 @@ namespace xsd
xercesc::DOMErrorHandler& eh,
unsigned long flags)
{
- // HP aCC cannot handle using namespace xercesc;
- //
- using xercesc::DOMImplementationRegistry;
- using xercesc::DOMImplementation;
-#if _XERCES_VERSION >= 30000
- using xercesc::DOMLSSerializer;
- using xercesc::DOMConfiguration;
- using xercesc::DOMLSOutput;
-#else
- using xercesc::DOMWriter;
-#endif
- using xercesc::XMLUni;
+ using namespace xercesc;
const XMLCh ls[] = {xercesc::chLatin_L,
xercesc::chLatin_S,
@@ -316,8 +305,7 @@ namespace xsd
bits::error_handler_proxy<C> ehp (eh);
-#if _XERCES_VERSION >= 30000
- xml::dom::auto_ptr<DOMLSSerializer> writer (
+ XSD_DOM_AUTO_PTR<DOMLSSerializer> writer (
impl->createLSSerializer ());
DOMConfiguration* conf (writer->getDomConfig ());
@@ -332,46 +320,27 @@ namespace xsd
if (!(flags & dont_pretty_print) &&
conf->canSetParameter (XMLUni::fgDOMWRTFormatPrettyPrint, true))
+ {
conf->setParameter (XMLUni::fgDOMWRTFormatPrettyPrint, true);
+ // Don't add extra new lines between first-level elements.
+ //
+ if (conf->canSetParameter (XMLUni::fgDOMWRTXercesPrettyPrint, true))
+ conf->setParameter (XMLUni::fgDOMWRTXercesPrettyPrint, false);
+ }
+
// See if we need to write XML declaration.
//
if ((flags & no_xml_declaration) &&
conf->canSetParameter (XMLUni::fgDOMXMLDeclaration, false))
conf->setParameter (XMLUni::fgDOMXMLDeclaration, false);
- xml::dom::auto_ptr<DOMLSOutput> out (impl->createLSOutput ());
+ XSD_DOM_AUTO_PTR<DOMLSOutput> out (impl->createLSOutput ());
out->setEncoding (xml::string (encoding).c_str ());
out->setByteStream (&target);
- bool r (writer->write (&doc, out.get ()));
-#else
- xml::dom::auto_ptr<DOMWriter> writer (impl->createDOMWriter ());
-
- writer->setErrorHandler (&ehp);
- writer->setEncoding (xml::string (encoding).c_str ());
-
- // Set some nice features if the serializer supports them.
- //
- if (writer->canSetFeature (
- XMLUni::fgDOMWRTDiscardDefaultContent, true))
- writer->setFeature (XMLUni::fgDOMWRTDiscardDefaultContent, true);
-
- if (!(flags & dont_pretty_print) &&
- writer->canSetFeature (XMLUni::fgDOMWRTFormatPrettyPrint, true))
- writer->setFeature (XMLUni::fgDOMWRTFormatPrettyPrint, true);
-
- // See if we need to write XML declaration.
- //
- if ((flags & no_xml_declaration) &&
- writer->canSetFeature (XMLUni::fgDOMXMLDeclaration, false))
- writer->setFeature (XMLUni::fgDOMXMLDeclaration, false);
-
- bool r (writer->writeNode (&target, doc));
-#endif
-
- if (!r || ehp.failed ())
+ if (!writer->write (&doc, out.get ()) || ehp.failed ())
return false;
return true;
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.hxx b/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.hxx
index 11d7114..95de764 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/wildcard-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_DOM_WILDCARD_SOURCE_HXX
@@ -19,7 +18,7 @@ namespace xsd
namespace dom
{
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
create_document ();
}
}
diff --git a/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.txx b/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.txx
index 32043c0..cce6922 100644
--- a/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.txx
+++ b/xsd/libxsd/xsd/cxx/xml/dom/wildcard-source.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/dom/wildcard-source.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xercesc/util/XMLUniDefs.hpp> // chLatin_L, etc
@@ -17,7 +16,7 @@ namespace xsd
namespace dom
{
template <typename C>
- xml::dom::auto_ptr<xercesc::DOMDocument>
+ XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
create_document ()
{
const XMLCh ls[] = {xercesc::chLatin_L,
@@ -29,7 +28,7 @@ namespace xsd
xercesc::DOMImplementation* impl (
xercesc::DOMImplementationRegistry::getDOMImplementation (ls));
- return xml::dom::auto_ptr<xercesc::DOMDocument> (
+ return XSD_DOM_AUTO_PTR<xercesc::DOMDocument> (
impl->createDocument ());
}
}
diff --git a/xsd/libxsd/xsd/cxx/xml/elements.hxx b/xsd/libxsd/xsd/cxx/xml/elements.hxx
index d9f8a50..107b36d 100644
--- a/xsd/libxsd/xsd/cxx/xml/elements.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/elements.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_ELEMENTS_HXX
@@ -8,8 +7,13 @@
#include <string>
+#include <xercesc/util/XercesVersion.hpp>
#include <xercesc/util/PlatformUtils.hpp>
+#if _XERCES_VERSION < 30000
+# error Xerces-C++ 2-series is not supported
+#endif
+
namespace xsd
{
namespace cxx
diff --git a/xsd/libxsd/xsd/cxx/xml/elements.txx b/xsd/libxsd/xsd/cxx/xml/elements.txx
index 8ba07df..37adcf0 100644
--- a/xsd/libxsd/xsd/cxx/xml/elements.txx
+++ b/xsd/libxsd/xsd/cxx/xml/elements.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/elements.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/libxsd/xsd/cxx/xml/error-handler.hxx b/xsd/libxsd/xsd/cxx/xml/error-handler.hxx
index bf0b3d7..616d081 100644
--- a/xsd/libxsd/xsd/cxx/xml/error-handler.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/error-handler.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/error-handler.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_ERROR_HANDLER_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/exceptions.hxx b/xsd/libxsd/xsd/cxx/xml/exceptions.hxx
index 1ed93d8..ef1ec7a 100644
--- a/xsd/libxsd/xsd/cxx/xml/exceptions.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/exceptions.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/exceptions.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_EXCEPTIONS_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/qualified-name.hxx b/xsd/libxsd/xsd/cxx/xml/qualified-name.hxx
index 1a0e032..bfdf4f3 100644
--- a/xsd/libxsd/xsd/cxx/xml/qualified-name.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/qualified-name.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/qualified-name.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_QUALIFIED_NAME_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.hxx b/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.hxx
index f92b6ab..0cfacc2 100644
--- a/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/sax/bits/error-handler-proxy.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_SAX_ERROR_HANDLER_PROXY_HXX
diff --git a/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.txx b/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.txx
index f8ca26d..24b8a3d 100644
--- a/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.txx
+++ b/xsd/libxsd/xsd/cxx/xml/sax/bits/error-handler-proxy.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/sax/bits/error-handler-proxy.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd/cxx/xml/string.hxx>
@@ -65,22 +64,11 @@ namespace xsd
if (id == 0)
id = e.getSystemId ();
-#if _XERCES_VERSION >= 30000
eh_->handle (transcode<C> (id),
static_cast<unsigned long> (e.getLineNumber ()),
static_cast<unsigned long> (e.getColumnNumber ()),
s,
transcode<C> (e.getMessage ()));
-#else
- XMLSSize_t l (e.getLineNumber ());
- XMLSSize_t c (e.getColumnNumber ());
-
- eh_->handle (transcode<C> (id),
- (l == -1 ? 0 : static_cast<unsigned long> (l)),
- (c == -1 ? 0 : static_cast<unsigned long> (c)),
- s,
- transcode<C> (e.getMessage ()));
-#endif
}
}
}
diff --git a/xsd/libxsd/xsd/cxx/xml/sax/std-input-source.hxx b/xsd/libxsd/xsd/cxx/xml/sax/std-input-source.hxx
index 71760a9..00b2397 100644
--- a/xsd/libxsd/xsd/cxx/xml/sax/std-input-source.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/sax/std-input-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/sax/std-input-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_SAX_STD_INPUT_SOURCE_HXX
@@ -29,27 +28,14 @@ namespace xsd
{
}
-#if _XERCES_VERSION >= 30000
virtual XMLFilePos
curPos () const
{
return static_cast<XMLFilePos> (is_.tellg ());
}
-#else
- virtual unsigned int
- curPos () const
- {
- return static_cast<unsigned int> (is_.tellg ());
- }
-#endif
-#if _XERCES_VERSION >= 30000
virtual XMLSize_t
readBytes (XMLByte* const buf, const XMLSize_t size)
-#else
- virtual unsigned int
- readBytes (XMLByte* const buf, const unsigned int size)
-#endif
{
// Some implementations don't clear gcount if you
// call read() on a stream that is in the eof state.
@@ -78,25 +64,17 @@ namespace xsd
// Make sure that if we failed, readBytes won't be called
// again.
//
- if (!is_.fail ())
- {
-#if _XERCES_VERSION >= 30000
- return static_cast<XMLSize_t> (is_.gcount ());
-#else
- return static_cast<unsigned int> (is_.gcount ());
-#endif
- }
- else
- return 0;
+ return !is_.fail ()
+ ? static_cast<XMLSize_t> (is_.gcount ())
+ : 0;
}
-#if _XERCES_VERSION >= 30000
virtual const XMLCh*
getContentType () const
{
return 0;
}
-#endif
+
private:
std::istream& is_;
};
diff --git a/xsd/libxsd/xsd/cxx/xml/std-memory-manager.hxx b/xsd/libxsd/xsd/cxx/xml/std-memory-manager.hxx
index b5cfaf9..e4d6f5b 100644
--- a/xsd/libxsd/xsd/cxx/xml/std-memory-manager.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/std-memory-manager.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/std-memory-manager.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_STD_MEMORY_MANAGER_HXX
@@ -18,12 +17,10 @@ namespace xsd
class std_memory_manager: public xercesc::MemoryManager
{
public:
+ // Xerces-C++ MemoryManager interface.
+ //
virtual void*
-#if _XERCES_VERSION >= 30000
allocate(XMLSize_t size)
-#else
- allocate(size_t size)
-#endif
{
return operator new (size);
}
@@ -35,13 +32,20 @@ namespace xsd
operator delete (p);
}
-#if _XERCES_VERSION >= 30000
virtual xercesc::MemoryManager*
getExceptionMemoryManager()
{
return xercesc::XMLPlatformUtils::fgMemoryManager;
}
-#endif
+
+ // Standard deleter interface.
+ //
+ void
+ operator() (void* p) const
+ {
+ if (p)
+ operator delete (p);
+ }
};
}
}
diff --git a/xsd/libxsd/xsd/cxx/xml/string.hxx b/xsd/libxsd/xsd/cxx/xml/string.hxx
index f79e66e..9f4767b 100644
--- a/xsd/libxsd/xsd/cxx/xml/string.hxx
+++ b/xsd/libxsd/xsd/cxx/xml/string.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/string.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_STRING_HXX
@@ -9,9 +8,16 @@
#include <string>
#include <cstddef> // std::size_t
-#include <xsd/cxx/auto-array.hxx>
#include <xercesc/util/XercesDefs.hpp> // XMLCh
+#include <xsd/cxx/config.hxx> // XSD_CXX11
+
+#ifdef XSD_CXX11
+# include <memory> // std::unique_ptr
+#else
+# include <xsd/cxx/auto-array.hxx>
+#endif
+
namespace xsd
{
namespace cxx
@@ -31,9 +37,9 @@ namespace xsd
transcode (const XMLCh* s, std::size_t length);
- // For VC7.1 wchar_t and XMLCh are the same type so we cannot
- // overload the transcode name. You should not use these functions
- // anyway and instead use the xml::string class below.
+ // For VC wchar_t and XMLCh are the same type so we cannot overload
+ // the transcode name. You should not use these functions anyway and
+ // instead use the xml::string class below.
//
template <typename C>
XMLCh*
@@ -50,21 +56,16 @@ namespace xsd
public :
template <typename C>
string (const std::basic_string<C>& s)
- : s_ (transcode_to_xmlch<C> (s))
- {
- }
+ : s_ (transcode_to_xmlch<C> (s)) {}
template <typename C>
- string (const C* s)
- : s_ (transcode_to_xmlch<C> (s))
- {
- }
+ string (const C* s): s_ (transcode_to_xmlch<C> (s)) {}
const XMLCh*
- c_str () const
- {
- return s_.get ();
- }
+ c_str () const {return s_.get ();}
+
+ XMLCh*
+ release () {return s_.release ();}
private:
string (const string&);
@@ -73,7 +74,11 @@ namespace xsd
operator= (const string&);
private:
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLCh[]> s_;
+#else
auto_array<XMLCh> s_;
+#endif
};
}
}
diff --git a/xsd/libxsd/xsd/cxx/xml/string.ixx b/xsd/libxsd/xsd/cxx/xml/string.ixx
index 0f46f4d..ede125e 100644
--- a/xsd/libxsd/xsd/cxx/xml/string.ixx
+++ b/xsd/libxsd/xsd/cxx/xml/string.ixx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/string.ixx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_STRING_IXX
diff --git a/xsd/libxsd/xsd/cxx/xml/string.txx b/xsd/libxsd/xsd/cxx/xml/string.txx
index df0fb74..e6adb98 100644
--- a/xsd/libxsd/xsd/cxx/xml/string.txx
+++ b/xsd/libxsd/xsd/cxx/xml/string.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/xml/string.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_XML_STRING_TXX
@@ -47,7 +46,13 @@ namespace xsd
XMLCh* wchar_transcoder<W, 2>::
from (const W* s, std::size_t length)
{
- auto_array<XMLCh> r (new XMLCh[length + 1]);
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLCh[]> r (
+#else
+ auto_array<XMLCh> r (
+#endif
+ new XMLCh[length + 1]);
+
XMLCh* ir (r.get ());
for (std::size_t i (0); i < length; ++ir, ++i)
@@ -120,7 +125,13 @@ namespace xsd
rl += (*p & 0xFFFF0000) ? 2 : 1;
}
- auto_array<XMLCh> r (new XMLCh[rl + 1]);
+#ifdef XSD_CXX11
+ std::unique_ptr<XMLCh[]> r (
+#else
+ auto_array<XMLCh> r (
+#endif
+ new XMLCh[rl + 1]);
+
XMLCh* ir (r.get ());
for (const W* p (s); p < s + length; ++p)
diff --git a/xsd/libxsd/xsd/cxx/zc-istream.hxx b/xsd/libxsd/xsd/cxx/zc-istream.hxx
index 2ae345f..440fdd4 100644
--- a/xsd/libxsd/xsd/cxx/zc-istream.hxx
+++ b/xsd/libxsd/xsd/cxx/zc-istream.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/zc-istream.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_CXX_ZC_ISTREAM_HXX
diff --git a/xsd/libxsd/xsd/cxx/zc-istream.txx b/xsd/libxsd/xsd/cxx/zc-istream.txx
index 8c00a5b..b37e067 100644
--- a/xsd/libxsd/xsd/cxx/zc-istream.txx
+++ b/xsd/libxsd/xsd/cxx/zc-istream.txx
@@ -1,6 +1,5 @@
// file : xsd/cxx/zc-istream.txx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
namespace xsd
diff --git a/xsd/makefile b/xsd/makefile
index 0c07b0d..98e7d62 100644
--- a/xsd/makefile
+++ b/xsd/makefile
@@ -1,6 +1,5 @@
# file : makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))build/bootstrap.make
@@ -10,13 +9,15 @@ test := $(out_base)/.test
install := $(out_base)/.install
dist := $(out_base)/.dist
dist-win := $(out_base)/.dist-win
+dist-pre := $(out_base)/.dist-pre
clean := $(out_base)/.clean
-cleandoc := $(out_base)/.cleandoc
+
+.PHONY: $(dist-pre)
$(default): $(out_base)/xsd/ \
$(out_base)/tests/ \
$(out_base)/examples/ \
- $(out_base)/documentation/
+ $(out_base)/doc/
# Test.
#
@@ -28,7 +29,7 @@ $(test): $(out_base)/tests/.test
$(install): $(out_base)/xsd/.install \
$(out_base)/libxsd/.install \
$(out_base)/examples/.install \
- $(out_base)/documentation/.install
+ $(out_base)/doc/.install
$(call install-dir,$(src_base)/dist/examples/build,$(install_doc_dir)/xsd/examples/build)
$(call install-dir,$(src_base)/dist/examples/cxx,$(install_doc_dir)/xsd/examples/cxx,-name makefile)
$(call install-data,$(src_base)/dist/examples/makefile,$(install_doc_dir)/xsd/examples/makefile)
@@ -44,7 +45,7 @@ $(install): $(out_base)/xsd/.install \
$(dist): $(out_base)/xsd/.dist \
$(out_base)/libxsd/.dist \
$(out_base)/examples/.dist \
- $(out_base)/documentation/.dist
+ $(out_base)/doc/.dist
$(call install-dir,$(src_base)/dist/examples/build,$(dist_prefix)/examples/build)
$(call install-dir,$(src_base)/dist/examples/cxx,$(dist_prefix)/examples/cxx,-name makefile)
$(call install-data,$(src_base)/dist/examples/makefile,$(dist_prefix)/examples/makefile)
@@ -55,37 +56,43 @@ $(dist): $(out_base)/xsd/.dist \
$(call install-data,$(src_base)/NEWS,$(dist_prefix)/NEWS)
$(call install-data,$(src_base)/version,$(dist_prefix)/version)
-$(dist-win): $(out_base)/xsd/.dist-win \
+$(dist-win): $(dist-pre) \
+ $(out_base)/xsd/.dist-win \
$(out_base)/libxsd/.dist-win \
$(out_base)/examples/.dist-win \
- $(out_base)/documentation/.dist-win
+ $(out_base)/doc/.dist-win
$(call install-dir,$(src_base)/dist/etc,$(dist_prefix)/etc)
$(call install-dir,$(src_base)/dist/examples/build,$(dist_prefix)/examples/build)
- $(call install-dir,$(src_base)/dist/examples/cxx,$(dist_prefix)/examples/cxx)
+ $(call install-data,$(src_base)/dist/examples/tester.bat,$(dist_prefix)/examples/tester.bat)
$(call install-data,$(src_base)/dist/examples/makefile,$(dist_prefix)/examples/makefile)
$(call install-data,$(src_base)/dist/README-WINDOWS,$(dist_prefix)/README.txt)
- $(call message,,unix2dos $(dist_prefix)/README.txt)
+ $(call message,,todos $(dist_prefix)/README.txt)
$(call install-data,$(src_base)/dist/README-UNIX,$(dist_prefix)/README-CYGWIN.txt)
- $(call message,,unix2dos $(dist_prefix)/README-CYGWIN.txt)
+ $(call message,,todos $(dist_prefix)/README-CYGWIN.txt)
$(call install-data,$(src_base)/GPLv2,$(dist_prefix)/GPLv2.txt)
- $(call message,,unix2dos $(dist_prefix)/GPLv2.txt)
+ $(call message,,todos $(dist_prefix)/GPLv2.txt)
$(call install-data,$(src_base)/FLOSSE,$(dist_prefix)/FLOSSE.txt)
- $(call message,,unix2dos $(dist_prefix)/FLOSSE.txt)
+ $(call message,,todos $(dist_prefix)/FLOSSE.txt)
$(call install-data,$(src_base)/LICENSE,$(dist_prefix)/LICENSE.txt)
- $(call message,,unix2dos $(dist_prefix)/LICENSE.txt)
+ $(call message,,todos $(dist_prefix)/LICENSE.txt)
$(call install-data,$(src_base)/NEWS,$(dist_prefix)/NEWS.txt)
- $(call message,,unix2dos $(dist_prefix)/NEWS.txt)
+ $(call message,,todos $(dist_prefix)/NEWS.txt)
$(call install-data,$(src_base)/version,$(dist_prefix)/version.txt)
- $(call message,,unix2dos $(dist_prefix)/version.txt)
+ $(call message,,todos $(dist_prefix)/version.txt)
+# We need the project files for the examples copied before we try to
+# auto-generate the solution files. So each example target that generates
+# solutions should depend in order-only on this target.
+#
+$(dist-pre):
+ $(call install-dir,$(src_base)/dist/examples/cxx,$(dist_prefix)/examples/cxx)
# Clean.
#
$(clean): $(out_base)/xsd/.clean \
$(out_base)/tests/.clean \
- $(out_base)/examples/.clean
-
-$(cleandoc): $(out_base)/documentation/.cleandoc
+ $(out_base)/examples/.clean \
+ $(out_base)/doc/.clean
$(call include,$(bld_root)/install.make)
@@ -93,4 +100,4 @@ $(call import,$(src_base)/xsd/makefile)
$(call import,$(src_base)/libxsd/makefile)
$(call import,$(src_base)/tests/makefile)
$(call import,$(src_base)/examples/makefile)
-$(call import,$(src_base)/documentation/makefile)
+$(call import,$(src_base)/doc/makefile)
diff --git a/xsd/tests/cxx/makefile b/xsd/tests/cxx/makefile
index 2a9f659..2e1364a 100644
--- a/xsd/tests/cxx/makefile
+++ b/xsd/tests/cxx/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../build/bootstrap.make
diff --git a/xsd/tests/cxx/parser/built-in/driver.cxx b/xsd/tests/cxx/parser/built-in/driver.cxx
index 11cae41..2791387 100644
--- a/xsd/tests/cxx/parser/built-in/driver.cxx
+++ b/xsd/tests/cxx/parser/built-in/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/built-in/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test built-in type parsing.
@@ -24,7 +23,7 @@ struct any_type_pimpl: xml_schema::any_type_pimpl
}
virtual void
- _start_any_element (ro_string const&,
+ _start_any_element (ro_string const&,
ro_string const& n,
ro_string const*)
{
@@ -278,14 +277,14 @@ struct type_pimpl: type_pskel
}
virtual void
- base64_binary (std::auto_ptr<xml_schema::buffer> v)
+ base64_binary (XSD_AUTO_PTR<xml_schema::buffer> v)
{
std::string tmp (v->data (), v->size ());
cout << "'" << tmp << "'" << endl;
}
virtual void
- hex_binary (std::auto_ptr<xml_schema::buffer> v)
+ hex_binary (XSD_AUTO_PTR<xml_schema::buffer> v)
{
std::string tmp (v->data (), v->size ());
cout << "'" << tmp << "'" << endl;
diff --git a/xsd/tests/cxx/parser/built-in/makefile b/xsd/tests/cxx/parser/built-in/makefile
index 3164219..64987d0 100644
--- a/xsd/tests/cxx/parser/built-in/makefile
+++ b/xsd/tests/cxx/parser/built-in/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/built-in/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -25,7 +24,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
@@ -34,7 +33,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -71,7 +70,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/enumeration/driver.cxx b/xsd/tests/cxx/parser/enumeration/driver.cxx
index fdb0134..acd95a0 100644
--- a/xsd/tests/cxx/parser/enumeration/driver.cxx
+++ b/xsd/tests/cxx/parser/enumeration/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/enumeration/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test xsd:enumeration parsing.
diff --git a/xsd/tests/cxx/parser/enumeration/gender.hxx b/xsd/tests/cxx/parser/enumeration/gender.hxx
index 8e5dbfd..7540888 100644
--- a/xsd/tests/cxx/parser/enumeration/gender.hxx
+++ b/xsd/tests/cxx/parser/enumeration/gender.hxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/enumeration/gender.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef GENDER_HXX
diff --git a/xsd/tests/cxx/parser/enumeration/makefile b/xsd/tests/cxx/parser/enumeration/makefile
index 5776cbe..e991260 100644
--- a/xsd/tests/cxx/parser/enumeration/makefile
+++ b/xsd/tests/cxx/parser/enumeration/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/enumeration/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -25,17 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --type-map $(src_base)/test.map
+$(gen): xsd_options += --type-map $(src_base)/test.map
$(gen): $(out_root)/xsd/xsd $(src_base)/test.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/generated-impl/makefile b/xsd/tests/cxx/parser/generated-impl/makefile
index 3733590..251fd41 100644
--- a/xsd/tests/cxx/parser/generated-impl/makefile
+++ b/xsd/tests/cxx/parser/generated-impl/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/generated-impl/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -24,7 +23,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) \
@@ -38,11 +37,11 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-print-impl --generate-test-driver \
+$(gen): xsd_options += --generate-print-impl --generate-test-driver \
--force-overwrite
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -82,7 +81,12 @@ $(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
xsd_parser_impl_suffix := -pimpl
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/list/driver.cxx b/xsd/tests/cxx/parser/list/driver.cxx
index d4ac4e2..0a4071a 100644
--- a/xsd/tests/cxx/parser/list/driver.cxx
+++ b/xsd/tests/cxx/parser/list/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/list/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test xsd:list parsing.
diff --git a/xsd/tests/cxx/parser/list/makefile b/xsd/tests/cxx/parser/list/makefile
index deacdb9..9fc63fd 100644
--- a/xsd/tests/cxx/parser/list/makefile
+++ b/xsd/tests/cxx/parser/list/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/list/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -25,7 +24,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
@@ -34,7 +33,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -71,7 +70,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/makefile b/xsd/tests/cxx/parser/makefile
index 935345b..8031478 100644
--- a/xsd/tests/cxx/parser/makefile
+++ b/xsd/tests/cxx/parser/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/parser/name-clash/inheritance/driver.cxx b/xsd/tests/cxx/parser/name-clash/inheritance/driver.cxx
index 81adb7f..af70f88 100644
--- a/xsd/tests/cxx/parser/name-clash/inheritance/driver.cxx
+++ b/xsd/tests/cxx/parser/name-clash/inheritance/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/name-clash/inheritance/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test for name clashes across inheritance hierarchy.
diff --git a/xsd/tests/cxx/parser/name-clash/inheritance/makefile b/xsd/tests/cxx/parser/name-clash/inheritance/makefile
index 359b7e4..273c03c 100644
--- a/xsd/tests/cxx/parser/name-clash/inheritance/makefile
+++ b/xsd/tests/cxx/parser/name-clash/inheritance/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/name-clash/inheritance/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -25,17 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/polymorphism/makefile b/xsd/tests/cxx/parser/polymorphism/makefile
index 42ac5c3..bb1ebeb 100644
--- a/xsd/tests/cxx/parser/polymorphism/makefile
+++ b/xsd/tests/cxx/parser/polymorphism/makefile
@@ -1,11 +1,10 @@
# file : tests/cxx/parser/polymorphism/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
-tests := same-type
+tests := same-type recursive
default := $(out_base)/
test := $(out_base)/.test
diff --git a/xsd/tests/cxx/parser/polymorphism/recursive/driver.cxx b/xsd/tests/cxx/parser/polymorphism/recursive/driver.cxx
new file mode 100644
index 0000000..2ad96cd
--- /dev/null
+++ b/xsd/tests/cxx/parser/polymorphism/recursive/driver.cxx
@@ -0,0 +1,69 @@
+// file : tests/cxx/parser/polymorphism/recursive/driver.cxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+// Test polymorphic recursive parsing.
+//
+
+#include <string>
+#include <iostream>
+
+#include "test-pskel.hxx"
+#include "test-pimpl.hxx"
+
+using namespace std;
+using namespace test;
+
+int
+main (int argc, char* argv[])
+{
+ if (argc != 2)
+ {
+ cerr << "usage: " << argv[0] << " test.xml" << endl;
+ return 1;
+ }
+
+ try
+ {
+ xml_schema::int_pimpl int_p;
+
+ root_pimpl root_p;
+ expression_pimpl expression_p;
+ recursive_pimpl recursive_p;
+ value_a_pimpl value_a_p;
+ value_b_pimpl value_b_p;
+
+ xml_schema::parser_map_impl expression_map;
+
+ // Connect the parsers together.
+ //
+ root_p.parsers (expression_p);
+ expression_map.insert(value_a_p);
+ expression_map.insert(value_b_p);
+ expression_map.insert(recursive_p);
+
+ root_p.expression_parser(expression_map);
+
+ recursive_p.parsers(expression_p);
+ recursive_p.expression_parser(expression_map);
+
+ value_a_p.parsers(int_p);
+ value_b_p.parsers(int_p);
+
+ xml_schema::document doc_p (root_p, "test", "root", true);
+
+ root_p.pre ();
+ doc_p.parse (argv[1]);
+ root_p.post_root ();
+ }
+ catch (xml_schema::exception const& e)
+ {
+ cerr << e << endl;
+ return 1;
+ }
+ catch (std::ios_base::failure const&)
+ {
+ cerr << "io failure" << endl;
+ return 1;
+ }
+}
diff --git a/xsd/tests/cxx/parser/polymorphism/recursive/makefile b/xsd/tests/cxx/parser/polymorphism/recursive/makefile
new file mode 100644
index 0000000..50e4f3d
--- /dev/null
+++ b/xsd/tests/cxx/parser/polymorphism/recursive/makefile
@@ -0,0 +1,84 @@
+# file : tests/cxx/parser/polymorphism/recursive/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
+
+xsd := test.xsd
+cxx := driver.cxx test-pimpl.cxx
+
+obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=-pskel.o))
+dep := $(obj:.o=.o.d)
+
+driver := $(out_base)/driver
+test := $(out_base)/.test
+clean := $(out_base)/.clean
+
+# Import.
+#
+$(call import,\
+ $(scf_root)/import/libxerces-c/stub.make,\
+ l: xerces_c.l,cpp-options: xerces_c.l.cpp-options)
+
+# Build.
+#
+$(driver): $(obj) $(xerces_c.l)
+
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
+$(obj) $(dep): $(xerces_c.l.cpp-options)
+
+genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
+gen := $(addprefix $(out_base)/,$(genf))
+
+$(gen): xsd := $(out_root)/xsd/xsd
+$(gen): xsd_options += --generate-polymorphic
+$(gen): $(out_root)/xsd/xsd
+
+$(call include-dep,$(dep),$(obj),$(gen))
+
+# Convenience alias for default target.
+#
+$(out_base)/: $(driver)
+
+
+# Test.
+#
+$(test): driver := $(driver)
+$(test): $(driver) $(src_base)/test.xml $(src_base)/output
+ $(call message,test $$1,$$1 $(src_base)/test.xml | diff -u $(src_base)/output -,$(driver))
+
+# Clean.
+#
+$(clean): $(driver).o.clean \
+ $(addsuffix .cxx.clean,$(obj)) \
+ $(addsuffix .cxx.clean,$(dep)) \
+ $(addprefix $(out_base)/,$(xsd:.xsd=-pskel.cxx.xsd.clean))
+
+# Generated .gitignore.
+#
+ifeq ($(out_base),$(src_base))
+$(gen): | $(out_base)/.gitignore
+$(driver): | $(out_base)/.gitignore
+
+$(out_base)/.gitignore: files := driver $(genf)
+$(clean): $(out_base)/.gitignore.clean
+
+$(call include,$(bld_root)/git/gitignore.make)
+endif
+
+# How to.
+#
+$(call include,$(bld_root)/cxx/o-e.make)
+$(call include,$(bld_root)/cxx/cxx-o.make)
+$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
+$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
+
+
+# Dependencies.
+#
+$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/tests/cxx/parser/polymorphism/recursive/output b/xsd/tests/cxx/parser/polymorphism/recursive/output
new file mode 100644
index 0000000..28a835f
--- /dev/null
+++ b/xsd/tests/cxx/parser/polymorphism/recursive/output
@@ -0,0 +1,22 @@
+root start
+recursive start
+value_a begin
+value->constant
+value: post_expression override
+value_a: post_value override
+value_a end
+recursive->expression event
+recursive start
+value_b begin
+value->constant
+value: post_expression override
+value_b: post_value override
+value_b end
+recursive->expression event
+recursive: post_expression override
+recursive end
+recursive->expression event
+recursive: post_expression override
+recursive end
+root->expression
+root end
diff --git a/xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.cxx b/xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.cxx
new file mode 100644
index 0000000..fe32626
--- /dev/null
+++ b/xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.cxx
@@ -0,0 +1,148 @@
+// file : tests/cxx/parser/polymorphism/recursive/test-pimpl.cxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#include <iostream>
+
+#include "test-pimpl.hxx"
+
+using namespace std;
+
+namespace test
+{
+ // root_pimpl
+ //
+
+ void root_pimpl::
+ pre ()
+ {
+ cout << "root start" << endl;
+ }
+
+ void root_pimpl::
+ expression ()
+ {
+ cout << "root->expression" << endl;
+ }
+
+ void root_pimpl::
+ post_root ()
+ {
+ cout << "root end" << endl;
+ }
+
+ // expression_pimpl
+ //
+
+ void expression_pimpl::
+ pre ()
+ {
+ cout << "expression begin" << endl;
+ }
+
+ void expression_pimpl::
+ post_expression ()
+ {
+ cout << "expression end" << endl;
+ }
+
+ // recursive_pimpl
+ //
+
+ void recursive_pimpl::
+ pre ()
+ {
+ cout << "recursive start" << endl;
+ }
+
+ void recursive_pimpl::
+ expression ()
+ {
+ cout << "recursive->expression event" << endl;
+ }
+
+ void recursive_pimpl::
+ post_expression ()
+ {
+ cout << "recursive: post_expression override" << endl;
+ post_recursive ();
+ }
+
+ void recursive_pimpl::
+ post_recursive ()
+ {
+ cout << "recursive end" << endl;
+ }
+
+ // value_pimpl
+ //
+
+ void value_pimpl::
+ pre ()
+ {
+ cout << "value begin" << endl;
+ }
+
+ void value_pimpl::
+ constant (int)
+ {
+ cout << "value->constant" << endl;
+ }
+
+ void value_pimpl::
+ post_expression ()
+ {
+ cout << "value: post_expression override" << endl;
+ post_value ();
+ }
+
+ void value_pimpl::
+ post_value ()
+ {
+ cout << "value end" << endl;
+ }
+
+ // value_a_pimpl
+ //
+
+ void value_a_pimpl::
+ pre ()
+ {
+ cout << "value_a begin" << endl;
+ }
+
+ void value_a_pimpl::
+ post_value ()
+ {
+ cout << "value_a: post_value override" << endl;
+ post_value_a ();
+ }
+
+ void value_a_pimpl::
+ post_value_a ()
+ {
+ cout << "value_a end" << endl;
+ }
+
+ // value_b_pimpl
+ //
+
+ void value_b_pimpl::
+ pre ()
+ {
+ cout << "value_b begin" << endl;
+ }
+
+ void value_b_pimpl::
+ post_value ()
+ {
+ cout << "value_b: post_value override" << endl;
+ post_value_b ();
+ }
+
+ void value_b_pimpl::
+ post_value_b ()
+ {
+ cout << "value_b end" << endl;
+ }
+}
diff --git a/xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.hxx b/xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.hxx
new file mode 100644
index 0000000..f345720
--- /dev/null
+++ b/xsd/tests/cxx/parser/polymorphism/recursive/test-pimpl.hxx
@@ -0,0 +1,95 @@
+// file : tests/cxx/parser/polymorphism/recursive/test-pimpl.hxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef TEST_PIMPL_HXX
+#define TEST_PIMPL_HXX
+
+#include "test-pskel.hxx"
+
+namespace test
+{
+ class root_pimpl: public virtual root_pskel
+ {
+ public:
+ virtual void
+ pre ();
+
+ virtual void
+ expression ();
+
+ virtual void
+ post_root ();
+ };
+
+ class expression_pimpl: public virtual expression_pskel
+ {
+ public:
+ virtual void
+ pre ();
+
+ virtual void
+ post_expression ();
+ };
+
+ class recursive_pimpl: public virtual recursive_pskel,
+ public expression_pimpl
+ {
+ public:
+ virtual void
+ pre ();
+
+ virtual void
+ expression ();
+
+ virtual void
+ post_expression ();
+
+ virtual void
+ post_recursive ();
+ };
+
+ class value_pimpl: public virtual value_pskel, public expression_pimpl
+ {
+ public:
+ virtual void
+ pre ();
+
+ virtual void
+ constant (int);
+
+ virtual void
+ post_expression ();
+
+ virtual void
+ post_value ();
+ };
+
+ class value_a_pimpl: public virtual value_a_pskel, public value_pimpl
+ {
+ public:
+ virtual void
+ pre ();
+
+ virtual void
+ post_value ();
+
+ virtual void
+ post_value_a ();
+ };
+
+ class value_b_pimpl: public virtual value_b_pskel, public value_pimpl
+ {
+ public:
+ virtual void
+ pre ();
+
+ virtual void
+ post_value ();
+
+ virtual void
+ post_value_b ();
+ };
+}
+
+#endif // TEST_PIMPL_HXX
diff --git a/xsd/tests/cxx/parser/polymorphism/recursive/test.xml b/xsd/tests/cxx/parser/polymorphism/recursive/test.xml
new file mode 100644
index 0000000..42035ba
--- /dev/null
+++ b/xsd/tests/cxx/parser/polymorphism/recursive/test.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root xmlns="test"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="test test.xsd">
+ <recursive>
+ <value-a>
+ <constant>1</constant>
+ </value-a>
+ <recursive>
+ <value-b>
+ <constant>2</constant>
+ </value-b>
+ </recursive>
+ </recursive>
+</root>
diff --git a/xsd/tests/cxx/parser/polymorphism/recursive/test.xsd b/xsd/tests/cxx/parser/polymorphism/recursive/test.xsd
new file mode 100644
index 0000000..affcc8a
--- /dev/null
+++ b/xsd/tests/cxx/parser/polymorphism/recursive/test.xsd
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:t="test"
+ targetNamespace="test"
+ elementFormDefault="qualified">
+
+ <element name="root" type="t:root"/>
+ <complexType name="root">
+ <sequence>
+ <element ref="t:expression" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <element name="expression" type="t:expression" abstract="true"/>
+ <complexType name="expression" abstract="true"/>
+
+ <element name="recursive" type="t:recursive" substitutionGroup="t:expression"/>
+ <complexType name="recursive">
+ <complexContent>
+ <extension base="t:expression">
+ <sequence minOccurs="0" maxOccurs="unbounded">
+ <element ref="t:expression"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="value" type="t:value" abstract="true" substitutionGroup="t:expression"/>
+ <complexType name="value" abstract="true">
+ <complexContent>
+ <extension base="t:expression">
+ <sequence>
+ <element name="constant" type="int"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="value-a" type="t:value-a" substitutionGroup="t:expression"/>
+ <complexType name="value-a">
+ <complexContent>
+ <extension base="t:value"/>
+ </complexContent>
+ </complexType>
+
+ <element name="value-b" type="t:value-b" substitutionGroup="t:expression"/>
+ <complexType name="value-b">
+ <complexContent>
+ <extension base="t:value"/>
+ </complexContent>
+ </complexType>
+
+</schema>
diff --git a/xsd/tests/cxx/parser/polymorphism/same-type/driver.cxx b/xsd/tests/cxx/parser/polymorphism/same-type/driver.cxx
index ea50776..05abc3c 100644
--- a/xsd/tests/cxx/parser/polymorphism/same-type/driver.cxx
+++ b/xsd/tests/cxx/parser/polymorphism/same-type/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/polymorphism/same-type/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test substitution group and xsi:type that don't change the type.
@@ -45,7 +44,7 @@ main (int argc, char* argv[])
base_p.parsers (string_p);
type_p.parsers (base_p);
- xml_schema::document doc_p (type_p, "test", "root");
+ xml_schema::document doc_p (type_p, "test", "root", true);
type_p.pre ();
doc_p.parse (argv[1]);
diff --git a/xsd/tests/cxx/parser/polymorphism/same-type/makefile b/xsd/tests/cxx/parser/polymorphism/same-type/makefile
index c357597..256b34d 100644
--- a/xsd/tests/cxx/parser/polymorphism/same-type/makefile
+++ b/xsd/tests/cxx/parser/polymorphism/same-type/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/polymorphism/same-type/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -25,17 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-polymorphic
+$(gen): xsd_options += --generate-polymorphic
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/recursive/driver.cxx b/xsd/tests/cxx/parser/recursive/driver.cxx
index 3f54f8f..41f21e7 100644
--- a/xsd/tests/cxx/parser/recursive/driver.cxx
+++ b/xsd/tests/cxx/parser/recursive/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/recursive/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test recursive parser invocation.
diff --git a/xsd/tests/cxx/parser/recursive/makefile b/xsd/tests/cxx/parser/recursive/makefile
index bd78bef..8ccf0bc 100644
--- a/xsd/tests/cxx/parser/recursive/makefile
+++ b/xsd/tests/cxx/parser/recursive/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/recursive/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -25,17 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -72,7 +71,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/test-template/driver.cxx b/xsd/tests/cxx/parser/test-template/driver.cxx
index b3379ff..01ef390 100644
--- a/xsd/tests/cxx/parser/test-template/driver.cxx
+++ b/xsd/tests/cxx/parser/test-template/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/test-template/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Insert test description here.
diff --git a/xsd/tests/cxx/parser/test-template/makefile b/xsd/tests/cxx/parser/test-template/makefile
index 5f5f9bc..dd1e19f 100644
--- a/xsd/tests/cxx/parser/test-template/makefile
+++ b/xsd/tests/cxx/parser/test-template/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/test-template/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -25,7 +24,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
@@ -34,7 +33,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -71,7 +70,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/union/driver.cxx b/xsd/tests/cxx/parser/union/driver.cxx
index 4a67f2f..5a576ba 100644
--- a/xsd/tests/cxx/parser/union/driver.cxx
+++ b/xsd/tests/cxx/parser/union/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/union/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test xsd:union parsing.
diff --git a/xsd/tests/cxx/parser/union/makefile b/xsd/tests/cxx/parser/union/makefile
index fa2b844..7de92ad 100644
--- a/xsd/tests/cxx/parser/union/makefile
+++ b/xsd/tests/cxx/parser/union/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/union/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -25,7 +24,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
@@ -34,7 +33,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -71,7 +70,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/validation/all/driver.cxx b/xsd/tests/cxx/parser/validation/all/driver.cxx
index d4a3839..71a21a0 100644
--- a/xsd/tests/cxx/parser/validation/all/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/all/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/all/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the all compositor validation.
diff --git a/xsd/tests/cxx/parser/validation/all/makefile b/xsd/tests/cxx/parser/validation/all/makefile
index 6336fdc..acc0a79 100644
--- a/xsd/tests/cxx/parser/validation/all/makefile
+++ b/xsd/tests/cxx/parser/validation/all/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/all/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -81,7 +80,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/validation/any/driver.cxx b/xsd/tests/cxx/parser/validation/any/driver.cxx
index e858285..f7773b4 100644
--- a/xsd/tests/cxx/parser/validation/any/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/any/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/any/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the any particle validation.
diff --git a/xsd/tests/cxx/parser/validation/any/makefile b/xsd/tests/cxx/parser/validation/any/makefile
index 084a131..ae6735d 100644
--- a/xsd/tests/cxx/parser/validation/any/makefile
+++ b/xsd/tests/cxx/parser/validation/any/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/any/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -81,7 +80,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/validation/attribute/driver.cxx b/xsd/tests/cxx/parser/validation/attribute/driver.cxx
index e726ad8..7e4de25 100644
--- a/xsd/tests/cxx/parser/validation/attribute/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/attribute/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/attribute/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test attribute and attribute wildcard (anyAttribute) validation.
diff --git a/xsd/tests/cxx/parser/validation/attribute/makefile b/xsd/tests/cxx/parser/validation/attribute/makefile
index 0f7df21..94e5369 100644
--- a/xsd/tests/cxx/parser/validation/attribute/makefile
+++ b/xsd/tests/cxx/parser/validation/attribute/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/attribute/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -81,7 +80,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/validation/built-in/any-type/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/any-type/driver.cxx
index 46ccc96..4b03218 100644
--- a/xsd/tests/cxx/parser/validation/built-in/any-type/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/any-type/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/any-type/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the anyType and anySimpleType validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/any-type/makefile b/xsd/tests/cxx/parser/validation/built-in/any-type/makefile
index bf42aac..7ae3a96 100644
--- a/xsd/tests/cxx/parser/validation/built-in/any-type/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/any-type/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/any-type/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -81,7 +80,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/validation/built-in/binary/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/binary/driver.cxx
index e75d55f..96f6d4e 100644
--- a/xsd/tests/cxx/parser/validation/built-in/binary/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/binary/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/binary/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in base64Binary and hexBinary types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/binary/makefile b/xsd/tests/cxx/parser/validation/built-in/binary/makefile
index b729cd0..fe48886 100644
--- a/xsd/tests/cxx/parser/validation/built-in/binary/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/binary/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/binary/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/boolean/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/boolean/driver.cxx
index 85586a6..6ebe23c 100644
--- a/xsd/tests/cxx/parser/validation/built-in/boolean/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/boolean/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/boolean/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in boolean type validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/boolean/makefile b/xsd/tests/cxx/parser/validation/built-in/boolean/makefile
index 39ca5e9..f5812a5 100644
--- a/xsd/tests/cxx/parser/validation/built-in/boolean/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/boolean/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/boolean/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/byte/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/byte/driver.cxx
index 466f004..48d91df 100644
--- a/xsd/tests/cxx/parser/validation/built-in/byte/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/byte/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/byte/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in byte and unsigned byte types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/byte/makefile b/xsd/tests/cxx/parser/validation/built-in/byte/makefile
index 32f4b91..cdaabfc 100644
--- a/xsd/tests/cxx/parser/validation/built-in/byte/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/byte/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/byte/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/date-time/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/date-time/driver.cxx
index 6297912..015205a 100644
--- a/xsd/tests/cxx/parser/validation/built-in/date-time/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/date-time/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/date-time/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in date and time types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/date-time/makefile b/xsd/tests/cxx/parser/validation/built-in/date-time/makefile
index d5e2edc..ee16e1f 100644
--- a/xsd/tests/cxx/parser/validation/built-in/date-time/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/date-time/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/date-time/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/float/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/float/driver.cxx
index 1f6f0bd..f984498 100644
--- a/xsd/tests/cxx/parser/validation/built-in/float/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/float/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/float/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in float, double, and decimal types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/float/makefile b/xsd/tests/cxx/parser/validation/built-in/float/makefile
index 8755f3a..6755693 100644
--- a/xsd/tests/cxx/parser/validation/built-in/float/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/float/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/float/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/int/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/int/driver.cxx
index 00c5947..8d4392b 100644
--- a/xsd/tests/cxx/parser/validation/built-in/int/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/int/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/int/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in int and unsigned int types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/int/makefile b/xsd/tests/cxx/parser/validation/built-in/int/makefile
index 4cebe64..46f0baa 100644
--- a/xsd/tests/cxx/parser/validation/built-in/int/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/int/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/int/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/integer/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/integer/driver.cxx
index fa8e4e0..2828249 100644
--- a/xsd/tests/cxx/parser/validation/built-in/integer/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/integer/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/int/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in integer & friends types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/integer/makefile b/xsd/tests/cxx/parser/validation/built-in/integer/makefile
index 6b9d816..ca6482f 100644
--- a/xsd/tests/cxx/parser/validation/built-in/integer/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/integer/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/integer/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/long/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/long/driver.cxx
index c7a66c4..2033125 100644
--- a/xsd/tests/cxx/parser/validation/built-in/long/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/long/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/long/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in long and unsigned long types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/long/makefile b/xsd/tests/cxx/parser/validation/built-in/long/makefile
index 2ab6368..b3ad382 100644
--- a/xsd/tests/cxx/parser/validation/built-in/long/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/long/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/long/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/makefile b/xsd/tests/cxx/parser/validation/built-in/makefile
index 34bea8f..e300092 100644
--- a/xsd/tests/cxx/parser/validation/built-in/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/parser/validation/built-in/qname/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/qname/driver.cxx
index 3a4bc90..3c77eea 100644
--- a/xsd/tests/cxx/parser/validation/built-in/qname/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/qname/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/qname/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in QName type validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/qname/makefile b/xsd/tests/cxx/parser/validation/built-in/qname/makefile
index 5f53fea..9e06bad 100644
--- a/xsd/tests/cxx/parser/validation/built-in/qname/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/qname/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/qname/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/short/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/short/driver.cxx
index 2bb95d2..5ee950c 100644
--- a/xsd/tests/cxx/parser/validation/built-in/short/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/short/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/short/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in short and unsigned short types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/short/makefile b/xsd/tests/cxx/parser/validation/built-in/short/makefile
index eee8382..50c2b80 100644
--- a/xsd/tests/cxx/parser/validation/built-in/short/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/short/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/short/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/string/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/string/driver.cxx
index 2419d59..5948542 100644
--- a/xsd/tests/cxx/parser/validation/built-in/string/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/string/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/string/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in string & friends types validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/string/makefile b/xsd/tests/cxx/parser/validation/built-in/string/makefile
index 5be3c4c..41c0dcd 100644
--- a/xsd/tests/cxx/parser/validation/built-in/string/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/string/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/string/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/built-in/uri/driver.cxx b/xsd/tests/cxx/parser/validation/built-in/uri/driver.cxx
index f6de3c2..daff0c7 100644
--- a/xsd/tests/cxx/parser/validation/built-in/uri/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/built-in/uri/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/built-in/uri/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the built-in anyURI type validation.
diff --git a/xsd/tests/cxx/parser/validation/built-in/uri/makefile b/xsd/tests/cxx/parser/validation/built-in/uri/makefile
index ad53e89..cfb8101 100644
--- a/xsd/tests/cxx/parser/validation/built-in/uri/makefile
+++ b/xsd/tests/cxx/parser/validation/built-in/uri/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/built-in/uri/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -25,10 +24,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
-$(call include-dep,$(dep))
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/xsd/tests/cxx/parser/validation/choice/driver.cxx b/xsd/tests/cxx/parser/validation/choice/driver.cxx
index 87cd0a9..fd1e651 100644
--- a/xsd/tests/cxx/parser/validation/choice/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/choice/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/choice/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the choice compositor validation.
diff --git a/xsd/tests/cxx/parser/validation/choice/makefile b/xsd/tests/cxx/parser/validation/choice/makefile
index f113bd5..ec86590 100644
--- a/xsd/tests/cxx/parser/validation/choice/makefile
+++ b/xsd/tests/cxx/parser/validation/choice/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/choice/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -81,7 +80,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/validation/makefile b/xsd/tests/cxx/parser/validation/makefile
index 5b7b884..c5d43ed 100644
--- a/xsd/tests/cxx/parser/validation/makefile
+++ b/xsd/tests/cxx/parser/validation/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/parser/validation/restriction/driver.cxx b/xsd/tests/cxx/parser/validation/restriction/driver.cxx
index 40a2bc9..ea87af6 100644
--- a/xsd/tests/cxx/parser/validation/restriction/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/restriction/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/restriction/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the restriction compositor validation.
diff --git a/xsd/tests/cxx/parser/validation/restriction/makefile b/xsd/tests/cxx/parser/validation/restriction/makefile
index 66e4d9a..5e1a9fd 100644
--- a/xsd/tests/cxx/parser/validation/restriction/makefile
+++ b/xsd/tests/cxx/parser/validation/restriction/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/restriction/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -81,7 +80,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/parser/validation/sequence/driver.cxx b/xsd/tests/cxx/parser/validation/sequence/driver.cxx
index 2e994b2..eddf744 100644
--- a/xsd/tests/cxx/parser/validation/sequence/driver.cxx
+++ b/xsd/tests/cxx/parser/validation/sequence/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/parser/validation/sequence/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the sequence compositor validation.
diff --git a/xsd/tests/cxx/parser/validation/sequence/makefile b/xsd/tests/cxx/parser/validation/sequence/makefile
index 53f6c61..540f2ea 100644
--- a/xsd/tests/cxx/parser/validation/sequence/makefile
+++ b/xsd/tests/cxx/parser/validation/sequence/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/parser/validation/sequence/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-validation
+$(gen): xsd_options += --generate-validation
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
@@ -81,7 +80,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/parser/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/any-type/driver.cxx b/xsd/tests/cxx/tree/any-type/driver.cxx
new file mode 100644
index 0000000..1ac5274
--- /dev/null
+++ b/xsd/tests/cxx/tree/any-type/driver.cxx
@@ -0,0 +1,145 @@
+// file : tests/cxx/tree/any-type/driver.cxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+// Test anyType and anySimpleType content extraction.
+//
+
+#include <memory> // std::auto_ptr/unique_ptr
+#include <utility> // std::move
+#include <sstream>
+#include <iostream>
+
+#include <xercesc/dom/DOM.hpp>
+#include <xercesc/util/PlatformUtils.hpp>
+
+#include "test.hxx" // Get XSD_CXX11 defined.
+
+#include <xsd/cxx/xml/string.hxx>
+
+using namespace std;
+using namespace test;
+using namespace xercesc;
+
+namespace xml = xsd::cxx::xml;
+
+int
+main (int argc, char* argv[])
+{
+ if (argc != 2)
+ {
+ cerr << "usage: " << argv[0] << " test.xml" << endl;
+ return 1;
+ }
+
+ XMLPlatformUtils::Initialize ();
+
+ try
+ {
+ // Test parsing
+ //
+ XSD_AUTO_PTR<type> r (root (argv[1]));
+
+ // Test API.
+ //
+ {
+ assert (type::a_default_value ().text_content () == "default value");
+ }
+
+ {
+ xml_schema::simple_type x ("fox");
+ assert (x.text_content () == "fox");
+ x.text_content ("foo");
+ assert (x.text_content () == "foo");
+ x.text_content ().clear ();
+ assert (x.text_content () == "");
+ x.text_content () = "baz";
+ r->s ().push_back (x);
+ }
+
+ {
+ xml_schema::type x;
+
+ DOMDocument& doc (x.dom_content_document ());
+
+ // Copy.
+ //
+ DOMElement* e (doc.createElement (xml::string ("dummy").c_str ()));
+ e->setAttribute (xml::string ("x").c_str (),
+ xml::string ("foo").c_str ());
+ e->setTextContent (xml::string ("data").c_str ());
+ x.dom_content ().set (*e);
+ e->release ();
+
+ r->t ().push_back (x);
+ }
+
+ {
+ XSD_AUTO_PTR<xml_schema::type> x (new xml_schema::type);
+
+ DOMDocument& doc (x->dom_content_document ());
+
+ // Assume ownership.
+ //
+ DOMElement* e (doc.createElement (xml::string ("dummy").c_str ()));
+ e->setAttribute (xml::string ("x").c_str (),
+ xml::string ("foo").c_str ());
+ e->setTextContent (xml::string ("data").c_str ());
+ x->dom_content ().set (e);
+
+#ifdef XSD_CXX11
+ r->t ().push_back (std::move (x));
+#else
+ r->t ().push_back (x);
+#endif
+ }
+
+ // Test printing.
+ //
+ cout << *r << endl
+ << endl;
+
+ // Test serialization.
+ //
+ xml_schema::namespace_infomap map;
+
+ map["t"].name = "test";
+ map["t"].schema = "test.xsd";
+ map["o"].name = "other";
+
+ stringstream iostr;
+ root (iostr, *r, map);
+
+ cout << iostr.str () << endl
+ << endl;
+
+ {
+ XSD_AUTO_PTR<type> r1 (root (iostr, argv[1]));
+
+ // Xerces-C++ mis-indentation of mixed content messes this up.
+ // assert (*r == *r);
+
+ stringstream iostr;
+ root (iostr, *r1, map);
+
+ cout << iostr.str () << endl
+ << endl;
+ }
+
+ // Test comparison.
+ //
+ assert (*r == *r);
+
+ // Test copy c-tor.
+ //
+ type copy (*r);
+ assert (copy == *r);
+ }
+ catch (xml_schema::exception const& e)
+ {
+ cerr << e << endl;
+ return 1;
+ }
+
+ XMLPlatformUtils::Terminate ();
+}
diff --git a/xsd/tests/cxx/tree/any-type/makefile b/xsd/tests/cxx/tree/any-type/makefile
new file mode 100644
index 0000000..1d0590f
--- /dev/null
+++ b/xsd/tests/cxx/tree/any-type/makefile
@@ -0,0 +1,87 @@
+# file : tests/cxx/tree/any-type/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
+
+xsd := test.xsd
+cxx := driver.cxx
+
+obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o))
+dep := $(obj:.o=.o.d)
+
+driver := $(out_base)/driver
+test := $(out_base)/.test
+clean := $(out_base)/.clean
+
+
+# Import.
+#
+$(call import,\
+ $(scf_root)/import/libxerces-c/stub.make,\
+ l: xerces_c.l,cpp-options: xerces_c.l.cpp-options)
+
+
+# Build.
+#
+$(driver): $(obj) $(xerces_c.l)
+
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
+$(obj) $(dep): $(xerces_c.l.cpp-options)
+
+genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
+gen := $(addprefix $(out_base)/,$(genf))
+
+$(gen): xsd := $(out_root)/xsd/xsd
+$(gen): xsd_options += --generate-any-type --generate-serialization \
+--generate-ostream --generate-comparison
+$(gen): $(out_root)/xsd/xsd
+
+$(call include-dep,$(dep),$(obj),$(gen))
+
+# Convenience alias for default target.
+#
+$(out_base)/: $(driver)
+
+
+# Test.
+#
+$(test): driver := $(driver)
+$(test): $(driver) $(src_base)/test.xml $(src_base)/output
+ $(call message,test $$1,$$1 $(src_base)/test.xml | diff -u $(src_base)/output -,$(driver))
+
+# Clean.
+#
+$(clean): $(driver).o.clean \
+ $(addsuffix .cxx.clean,$(obj)) \
+ $(addsuffix .cxx.clean,$(dep)) \
+ $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean))
+
+# Generated .gitignore.
+#
+ifeq ($(out_base),$(src_base))
+$(gen): | $(out_base)/.gitignore
+$(driver): | $(out_base)/.gitignore
+
+$(out_base)/.gitignore: files := driver $(genf)
+$(clean): $(out_base)/.gitignore.clean
+
+$(call include,$(bld_root)/git/gitignore.make)
+endif
+
+# How to.
+#
+$(call include,$(bld_root)/cxx/o-e.make)
+$(call include,$(bld_root)/cxx/cxx-o.make)
+$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
+$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
+
+
+# Dependencies.
+#
+$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/tests/cxx/tree/any-type/output b/xsd/tests/cxx/tree/any-type/output
new file mode 100644
index 0000000..580e7db
--- /dev/null
+++ b/xsd/tests/cxx/tree/any-type/output
@@ -0,0 +1,73 @@
+
+t:
+t:
+t:
+t:
+t:
+t:
+t:
+t:
+s:
+s: simple
+s: baz
+l: one two three
+a: any simple content
+
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<t:root xmlns:t="test" a="any simple content" xmlns:o="other" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="test test.xsd">
+ <t/>
+ <t x="x"/>
+ <t>any</t>
+ <t x="x">any</t>
+ <t o:y="y" x="x">
+ <n1>
+ <n2>nested 1</n2>
+ <n2>nested 2</n2>
+ </n1>
+ <o:n2 o:x="x">more</o:n2>
+ </t><t x="x">
+ <n1>mi
+ <n2>nested 1</n2>x
+ <n2>nested 2</n2>ed
+ </n1>content
+ </t>
+ <t x="foo">data</t>
+ <t x="foo">data</t>
+ <s/>
+ <s>simple</s>
+ <s>baz</s>
+ <l>one two three</l>
+</t:root>
+
+
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<t:root xmlns:t="test" a="any simple content" xmlns:o="other" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="test test.xsd">
+ <t/>
+ <t x="x"/>
+ <t>any</t>
+ <t x="x">any</t>
+ <t o:y="y" x="x">
+ <n1>
+ <n2>nested 1</n2>
+ <n2>nested 2</n2>
+ </n1>
+ <o:n2 o:x="x">more</o:n2>
+ </t><t x="x">
+ <n1>mi
+
+ <n2>nested 1</n2>x
+
+ <n2>nested 2</n2>ed
+
+ </n1>content
+
+ </t>
+ <t x="foo">data</t>
+ <t x="foo">data</t>
+ <s/>
+ <s>simple</s>
+ <s>baz</s>
+ <l>one two three</l>
+</t:root>
+
+
diff --git a/xsd/tests/cxx/tree/any-type/test.xml b/xsd/tests/cxx/tree/any-type/test.xml
new file mode 100644
index 0000000..7c9035a
--- /dev/null
+++ b/xsd/tests/cxx/tree/any-type/test.xml
@@ -0,0 +1,26 @@
+<t:root xmlns:t="test"
+ xmlns:o="other"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="test test.xsd"
+
+ a="any simple content">
+
+ <t/>
+ <t x="x"/>
+ <t>any</t>
+ <t x="x">any</t>
+ <t x="x" o:y="y">
+ <n1>
+ <n2>nested 1</n2>
+ <n2>nested 2</n2>
+ </n1>
+ <o:n2 o:x="x">more</o:n2>
+ </t>
+ <t x="x"><n1>mi<n2>nested 1</n2>x<n2>nested 2</n2>ed</n1>content</t>
+
+ <s/>
+ <s>simple</s>
+
+ <l>one two three</l>
+
+</t:root>
diff --git a/xsd/tests/cxx/tree/any-type/test.xsd b/xsd/tests/cxx/tree/any-type/test.xsd
new file mode 100644
index 0000000..37dcc8d
--- /dev/null
+++ b/xsd/tests/cxx/tree/any-type/test.xsd
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test" targetNamespace="test">
+
+ <simpleType name="any-list">
+ <!--Not allowed? list itemType="anySimpleType"/-->
+ <list itemType="string"/>
+ </simpleType>
+
+ <complexType name="type">
+ <sequence>
+ <element name="t" type="anyType" maxOccurs="unbounded"/>
+ <element name="s" type="anySimpleType" maxOccurs="unbounded"/>
+ <element name="l" type="t:any-list" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="a" type="anySimpleType" default="default value"/>
+ </complexType>
+
+ <element name="root" type="t:type"/>
+</schema>
diff --git a/xsd/tests/cxx/tree/binary/cdr/driver.cxx b/xsd/tests/cxx/tree/binary/cdr/driver.cxx
index 42ca181..a2d7195 100644
--- a/xsd/tests/cxx/tree/binary/cdr/driver.cxx
+++ b/xsd/tests/cxx/tree/binary/cdr/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/binary/cdr/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test non-polymorphic binary serialization to ACE CDR.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cassert>
#include <iostream>
@@ -26,7 +25,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
// Save to a CDR stream.
//
@@ -38,7 +37,7 @@ main (int argc, char* argv[])
//
ACE_InputCDR ace_icdr (ace_ocdr);
xml_schema::istream<ACE_InputCDR> icdr (ace_icdr);
- auto_ptr<type> c (new type (icdr));
+ XSD_AUTO_PTR<type> c (new type (icdr));
// Compare the two.
//
@@ -128,6 +127,14 @@ main (int argc, char* argv[])
assert (r->time () == c->time ());
assert (r->date_time () == c->date_time ());
assert (r->duration () == c->duration ());
+
+ // anySimpleType
+ //
+ assert (!r->any_simple_type_attr ().text_content ().empty ());
+ assert (r->any_simple_type_attr () == c->any_simple_type_attr ());
+
+ assert (!r->any_simple_type ().text_content ().empty ());
+ assert (r->any_simple_type () == c->any_simple_type ());
}
catch (xml_schema::exception const& e)
{
diff --git a/xsd/tests/cxx/tree/binary/cdr/makefile b/xsd/tests/cxx/tree/binary/cdr/makefile
index 67437dc..eb80d35 100644
--- a/xsd/tests/cxx/tree/binary/cdr/makefile
+++ b/xsd/tests/cxx/tree/binary/cdr/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/binary/cdr/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -30,18 +29,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l) $(ace.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options) $(ace.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-insertion ACE_OutputCDR \
---generate-extraction ACE_InputCDR
+$(gen): xsd_options += --generate-insertion ACE_OutputCDR \
+--generate-extraction ACE_InputCDR --generate-comparison
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -78,7 +77,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/binary/cdr/test.xml b/xsd/tests/cxx/tree/binary/cdr/test.xml
index 928b4cf..5cedd98 100644
--- a/xsd/tests/cxx/tree/binary/cdr/test.xml
+++ b/xsd/tests/cxx/tree/binary/cdr/test.xml
@@ -1,6 +1,7 @@
<t:root xmlns:t="test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
+ xsi:schemaLocation="test test.xsd"
+ any_simple_type_attr="any simple content">
<list>1 2 3</list>
@@ -87,5 +88,6 @@
<year_month>2001-11+02:00</year_month>
<time>21:32:52+02:00</time>
+ <any_simple_type>any simple content in element</any_simple_type>
</t:root>
diff --git a/xsd/tests/cxx/tree/binary/cdr/test.xsd b/xsd/tests/cxx/tree/binary/cdr/test.xsd
index e593f64..0629e94 100644
--- a/xsd/tests/cxx/tree/binary/cdr/test.xsd
+++ b/xsd/tests/cxx/tree/binary/cdr/test.xsd
@@ -112,7 +112,10 @@
<element name="year" type="gYear"/>
<element name="year_month" type="gYearMonth"/>
<element name="time" type="time"/>
+
+ <element name="any_simple_type" type="anySimpleType"/>
</sequence>
+ <attribute name="any_simple_type_attr" type="anySimpleType" use="required"/>
</complexType>
<element name="root" type="t:type"/>
diff --git a/xsd/tests/cxx/tree/binary/makefile b/xsd/tests/cxx/tree/binary/makefile
index 8a242c7..7ec2f6a 100644
--- a/xsd/tests/cxx/tree/binary/makefile
+++ b/xsd/tests/cxx/tree/binary/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/binary/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/binary/polymorphic/driver.cxx b/xsd/tests/cxx/tree/binary/polymorphic/driver.cxx
index 3c3e057..8e7256e 100644
--- a/xsd/tests/cxx/tree/binary/polymorphic/driver.cxx
+++ b/xsd/tests/cxx/tree/binary/polymorphic/driver.cxx
@@ -1,16 +1,17 @@
// file : tests/cxx/tree/binary/polymorphic/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test polymorphic binary serialization.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cassert>
#include <iostream>
#include <typeinfo>
+#include <ace/Log_Msg.h> // ACE_HEX_DUMP
+
#include "test.hxx"
using namespace std;
@@ -27,7 +28,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
// Save to a CDR stream.
//
@@ -35,11 +36,24 @@ main (int argc, char* argv[])
xml_schema::ostream<ACE_OutputCDR> ocdr (ace_ocdr);
ocdr << *r;
+ /*
+ // Print the binary representation.
+ //
+ cerr << "binary representation size: " << ace_ocdr.total_length () << endl;
+
+ for (const ACE_Message_Block* mb = ace_ocdr.begin ();
+ mb != 0;
+ mb = mb->cont ())
+ {
+ ACE_HEX_DUMP ((LM_DEBUG, mb->rd_ptr (), mb->length ()));
+ }
+ */
+
// Load from a CDR stream.
//
ACE_InputCDR ace_icdr (ace_ocdr);
xml_schema::istream<ACE_InputCDR> icdr (ace_icdr);
- auto_ptr<type> c (new type (icdr));
+ XSD_AUTO_PTR<type> c (new type (icdr));
// Compare the two.
//
diff --git a/xsd/tests/cxx/tree/binary/polymorphic/makefile b/xsd/tests/cxx/tree/binary/polymorphic/makefile
index 7e97e00..05c5186 100644
--- a/xsd/tests/cxx/tree/binary/polymorphic/makefile
+++ b/xsd/tests/cxx/tree/binary/polymorphic/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/binary/polymorphic/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -30,18 +29,19 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l) $(ace.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options) $(ace.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-polymorphic --root-element-last \
---generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR
+$(gen): xsd_options += --generate-polymorphic --root-element-last \
+--generate-insertion ACE_OutputCDR --generate-extraction ACE_InputCDR \
+ --generate-comparison
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -78,7 +78,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/binary/xdr/driver.cxx b/xsd/tests/cxx/tree/binary/xdr/driver.cxx
index cf2a264..623a953 100644
--- a/xsd/tests/cxx/tree/binary/xdr/driver.cxx
+++ b/xsd/tests/cxx/tree/binary/xdr/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/binary/xdr/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test non-polymorphic binary serialization to XDR.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cstring> // std::memcpy
#include <cassert>
#include <iostream>
@@ -17,15 +16,15 @@ using namespace std;
using namespace test;
extern "C" int
-overflow (char* p, char* buf, int n)
+overflow (char* p, char* buf, int in)
{
xml_schema::buffer* dst (reinterpret_cast<xml_schema::buffer*> (p));
- std::size_t size (dst->size ());
+ size_t n (static_cast<size_t> (in)), size (dst->size ());
dst->size (size + n);
memcpy (dst->data () + size, buf, n);
- return n;
+ return static_cast<int> (n);
}
struct underflow_info
@@ -35,17 +34,17 @@ struct underflow_info
};
extern "C" int
-underflow (char* p, char* buf, int n)
+underflow (char* p, char* buf, int in)
{
underflow_info* ui (reinterpret_cast<underflow_info*> (p));
- std::size_t size (ui->buf->size () - ui->pos);
+ size_t n (static_cast<size_t> (in)), size (ui->buf->size () - ui->pos);
n = size > n ? n : size;
memcpy (buf, ui->buf->data () + ui->pos, n);
ui->pos += n;
- return n;
+ return static_cast<int> (n);
}
int
@@ -59,7 +58,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
// Save to an XDR stream.
//
@@ -81,7 +80,7 @@ main (int argc, char* argv[])
xdr.x_op = XDR_DECODE;
xdrrec_skiprecord (&xdr);
xsd::cxx::tree::istream<XDR> ixdr (xdr);
- auto_ptr<type> c (new type (ixdr));
+ XSD_AUTO_PTR<type> c (new type (ixdr));
xdr_destroy (&xdr);
// Compare the two.
@@ -172,6 +171,14 @@ main (int argc, char* argv[])
assert (r->year () == c->year ());
assert (r->year_month () == c->year_month ());
assert (r->time () == c->time ());
+
+ // anySimpleType
+ //
+ assert (!r->any_simple_type_attr ().text_content ().empty ());
+ assert (r->any_simple_type_attr () == c->any_simple_type_attr ());
+
+ assert (!r->any_simple_type ().text_content ().empty ());
+ assert (r->any_simple_type () == c->any_simple_type ());
}
catch (xml_schema::exception const& e)
{
diff --git a/xsd/tests/cxx/tree/binary/xdr/makefile b/xsd/tests/cxx/tree/binary/xdr/makefile
index 7b3089b..2994134 100644
--- a/xsd/tests/cxx/tree/binary/xdr/makefile
+++ b/xsd/tests/cxx/tree/binary/xdr/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/binary/xdr/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -26,17 +25,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-insertion XDR --generate-extraction XDR
+$(gen): xsd_options += --generate-insertion XDR --generate-extraction XDR \
+--generate-comparison
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -73,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/binary/xdr/test.xml b/xsd/tests/cxx/tree/binary/xdr/test.xml
index 928b4cf..5cedd98 100644
--- a/xsd/tests/cxx/tree/binary/xdr/test.xml
+++ b/xsd/tests/cxx/tree/binary/xdr/test.xml
@@ -1,6 +1,7 @@
<t:root xmlns:t="test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
+ xsi:schemaLocation="test test.xsd"
+ any_simple_type_attr="any simple content">
<list>1 2 3</list>
@@ -87,5 +88,6 @@
<year_month>2001-11+02:00</year_month>
<time>21:32:52+02:00</time>
+ <any_simple_type>any simple content in element</any_simple_type>
</t:root>
diff --git a/xsd/tests/cxx/tree/binary/xdr/test.xsd b/xsd/tests/cxx/tree/binary/xdr/test.xsd
index e593f64..0629e94 100644
--- a/xsd/tests/cxx/tree/binary/xdr/test.xsd
+++ b/xsd/tests/cxx/tree/binary/xdr/test.xsd
@@ -112,7 +112,10 @@
<element name="year" type="gYear"/>
<element name="year_month" type="gYearMonth"/>
<element name="time" type="time"/>
+
+ <element name="any_simple_type" type="anySimpleType"/>
</sequence>
+ <attribute name="any_simple_type_attr" type="anySimpleType" use="required"/>
</complexType>
<element name="root" type="t:type"/>
diff --git a/xsd/tests/cxx/tree/built-in/driver.cxx b/xsd/tests/cxx/tree/built-in/driver.cxx
index a41e4f3..f60ac16 100644
--- a/xsd/tests/cxx/tree/built-in/driver.cxx
+++ b/xsd/tests/cxx/tree/built-in/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/built-in/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test built-in type mapping.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <sstream>
#include <iostream>
@@ -15,7 +14,6 @@
using std::cerr;
using std::endl;
-using std::auto_ptr;
int
main (int argc, char* argv[])
@@ -26,12 +24,13 @@ main (int argc, char* argv[])
return 1;
}
- auto_ptr<xmlns::test::Elements> elements (xmlns::test::elements (argv[1]));
+ XSD_AUTO_PTR<xmlns::test::Elements> elements (
+ xmlns::test::elements (argv[1]));
- auto_ptr<xmlns::test::Attributes> attributes (
+ XSD_AUTO_PTR<xmlns::test::Attributes> attributes (
xmlns::test::attributes (argv[2]));
- auto_ptr<xmlns::test::Inherited> inherited (
+ XSD_AUTO_PTR<xmlns::test::Inherited> inherited (
xmlns::test::inherited (argv[3]));
cerr << "elements: " << *elements << endl
@@ -53,13 +52,14 @@ main (int argc, char* argv[])
xmlns::test::elements (ostr, *elements, map);
std::istringstream istr (ostr.str ());
- auto_ptr<xmlns::test::Elements> elements1 (xmlns::test::elements (istr));
+ XSD_AUTO_PTR<xmlns::test::Elements> elements1 (
+ xmlns::test::elements (istr));
std::ostringstream ostr1;
xmlns::test::elements (ostr1, *elements1, map);
if (ostr.str () != ostr1.str ())
- return 1;
+ return 1;
}
{
@@ -67,7 +67,7 @@ main (int argc, char* argv[])
xmlns::test::attributes (ostr, *attributes, map);
std::istringstream istr (ostr.str ());
- auto_ptr<xmlns::test::Attributes> attributes1 (
+ XSD_AUTO_PTR<xmlns::test::Attributes> attributes1 (
xmlns::test::attributes (istr));
std::ostringstream ostr1;
@@ -82,7 +82,7 @@ main (int argc, char* argv[])
xmlns::test::inherited (ostr, *inherited, map);
std::istringstream istr (ostr.str ());
- auto_ptr<xmlns::test::Inherited> inherited1 (
+ XSD_AUTO_PTR<xmlns::test::Inherited> inherited1 (
xmlns::test::inherited (istr));
std::ostringstream ostr1;
diff --git a/xsd/tests/cxx/tree/built-in/makefile b/xsd/tests/cxx/tree/built-in/makefile
index bf6301b..3df37c3 100644
--- a/xsd/tests/cxx/tree/built-in/makefile
+++ b/xsd/tests/cxx/tree/built-in/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/built-in/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,7 +26,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -35,7 +34,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--char-type char \
--generate-inline \
--generate-ostream \
@@ -44,10 +43,9 @@ $(gen): xsd_options := \
--generate-from-base-ctor \
--root-element-all
-$(gen): $(src_root)/xsd/xsd
-
-$(call include-dep,$(dep))
+$(gen): $(out_root)/xsd/xsd
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -90,7 +88,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
#
diff --git a/xsd/tests/cxx/tree/chameleon/driver.cxx b/xsd/tests/cxx/tree/chameleon/driver.cxx
index 6dae28e..80c67da 100644
--- a/xsd/tests/cxx/tree/chameleon/driver.cxx
+++ b/xsd/tests/cxx/tree/chameleon/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/chameleon/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test chameleon inclusion.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "includer.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<root_t> r (root (argv[1]));
+ XSD_AUTO_PTR<root_t> r (root (argv[1]));
cout << *r << endl;
}
diff --git a/xsd/tests/cxx/tree/chameleon/makefile b/xsd/tests/cxx/tree/chameleon/makefile
index 890de3f..4ae7eb7 100644
--- a/xsd/tests/cxx/tree/chameleon/makefile
+++ b/xsd/tests/cxx/tree/chameleon/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/chameleon/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --root-element root --generate-ostream
+$(gen): xsd_options += --root-element root --generate-ostream
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/comparison/driver.cxx b/xsd/tests/cxx/tree/comparison/driver.cxx
index 07ed7a6..e685050 100644
--- a/xsd/tests/cxx/tree/comparison/driver.cxx
+++ b/xsd/tests/cxx/tree/comparison/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/comparison/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test generated comparison operators.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
type::complex_sequence s (r->complex ());
diff --git a/xsd/tests/cxx/tree/comparison/makefile b/xsd/tests/cxx/tree/comparison/makefile
index 5d8721a..82cb7b0 100644
--- a/xsd/tests/cxx/tree/comparison/makefile
+++ b/xsd/tests/cxx/tree/comparison/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/comparison/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-comparison
+$(gen): xsd_options += --generate-comparison
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/compilation/driver.cxx b/xsd/tests/cxx/tree/compilation/driver.cxx
index 8135c9b..c2e6298 100644
--- a/xsd/tests/cxx/tree/compilation/driver.cxx
+++ b/xsd/tests/cxx/tree/compilation/driver.cxx
@@ -1,13 +1,11 @@
// file : tests/cxx/tree/compilation/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Make sure the runtime library compiles by explicitly instantiating
// all the types.
//
-#include <memory> // std::auto_ptr
#include <iostream>
#include "test.hxx"
@@ -15,7 +13,7 @@
using namespace std;
using namespace test;
-template class xsd::cxx::tree::simple_type<xml_schema::type>;
+template class xsd::cxx::tree::simple_type<char, xml_schema::type>;
// String types.
//
diff --git a/xsd/tests/cxx/tree/compilation/makefile b/xsd/tests/cxx/tree/compilation/makefile
index 93b88db..16dbb91 100644
--- a/xsd/tests/cxx/tree/compilation/makefile
+++ b/xsd/tests/cxx/tree/compilation/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/compilation/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization
+$(gen): xsd_options += --generate-serialization
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/complex/ctor/driver.cxx b/xsd/tests/cxx/tree/complex/ctor/driver.cxx
index 55044a3..8ea8c87 100644
--- a/xsd/tests/cxx/tree/complex/ctor/driver.cxx
+++ b/xsd/tests/cxx/tree/complex/ctor/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/tree/complex/ctor/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test generation of varous complex type constructors.
@@ -11,6 +10,13 @@
#include "test.hxx"
+#ifdef XSD_CXX11
+# include <utility> // std::move
+# define XSD_MOVE(x) std::move(x)
+#else
+# define XSD_MOVE(x) x
+#endif
+
using namespace std;
using namespace test;
@@ -64,12 +70,12 @@ main ()
//
e_base b1 (1, "foo", e_complex_type ("bar"));
- auto_ptr<e_complex_type> c2 (new e_complex_type ("bar"));
- e_base b2 (1, "foo", c2);
+ XSD_AUTO_PTR<e_complex_type> c2 (new e_complex_type ("bar"));
+ e_base b2 (1, "foo", XSD_MOVE (c2));
- auto_ptr<e_simple_type> s3 (new e_simple_type ("foo"));
- auto_ptr<e_complex_type> c3 (new e_complex_type ("bar"));
- e_base b3 (1, s3, c3);
+ XSD_AUTO_PTR<e_simple_type> s3 (new e_simple_type ("foo"));
+ XSD_AUTO_PTR<e_complex_type> c3 (new e_complex_type ("bar"));
+ e_base b3 (1, XSD_MOVE (s3), XSD_MOVE (c3));
assert (b1 == b2);
assert (b1 == b3);
@@ -79,15 +85,20 @@ main ()
e_derived d1 (1, "foo", e_complex_type ("bar"),
true, "baz", e_complex_type ("biz"));
- auto_ptr<e_complex_type> c2a (new e_complex_type ("bar"));
- auto_ptr<e_complex_type> c2b (new e_complex_type ("biz"));
- e_derived d2 (1, "foo", c2a, true, "baz", c2b);
-
- auto_ptr<e_simple_type> s3a (new e_simple_type ("foo"));
- auto_ptr<xml_schema::string> s3b (new xml_schema::string ("baz"));
- auto_ptr<e_complex_type> c3a (new e_complex_type ("bar"));
- auto_ptr<e_complex_type> c3b (new e_complex_type ("biz"));
- e_derived d3 (1, s3a, c3a, true, s3b, c3b);
+ XSD_AUTO_PTR<e_complex_type> c2a (new e_complex_type ("bar"));
+ XSD_AUTO_PTR<e_complex_type> c2b (new e_complex_type ("biz"));
+ e_derived d2 (1, "foo", XSD_MOVE (c2a), true, "baz", XSD_MOVE (c2b));
+
+ XSD_AUTO_PTR<e_simple_type> s3a (new e_simple_type ("foo"));
+ XSD_AUTO_PTR<xml_schema::string> s3b (new xml_schema::string ("baz"));
+ XSD_AUTO_PTR<e_complex_type> c3a (new e_complex_type ("bar"));
+ XSD_AUTO_PTR<e_complex_type> c3b (new e_complex_type ("biz"));
+ e_derived d3 (1,
+ XSD_MOVE (s3a),
+ XSD_MOVE (c3a),
+ true,
+ XSD_MOVE (s3b),
+ XSD_MOVE (c3b));
assert (d1 == d2);
assert (d1 == d3);
@@ -99,12 +110,12 @@ main ()
{
f_type f1 (xml_schema::type (), 1, "foo", f_complex_type ("bar"));
- auto_ptr<f_complex_type> c2 (new f_complex_type ("bar"));
- f_type f2 (1, "foo", c2);
+ XSD_AUTO_PTR<f_complex_type> c2 (new f_complex_type ("bar"));
+ f_type f2 (1, "foo", XSD_MOVE (c2));
- auto_ptr<f_simple_type> s3 (new f_simple_type ("foo"));
- auto_ptr<f_complex_type> c3 (new f_complex_type ("bar"));
- f_type f3 (1, s3, c3);
+ XSD_AUTO_PTR<f_simple_type> s3 (new f_simple_type ("foo"));
+ XSD_AUTO_PTR<f_complex_type> c3 (new f_complex_type ("bar"));
+ f_type f3 (1, XSD_MOVE (s3), XSD_MOVE (c3));
assert (f1 == f2);
assert (f1 == f3);
diff --git a/xsd/tests/cxx/tree/complex/ctor/makefile b/xsd/tests/cxx/tree/complex/ctor/makefile
index 66558f5..ffc82b0 100644
--- a/xsd/tests/cxx/tree/complex/ctor/makefile
+++ b/xsd/tests/cxx/tree/complex/ctor/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/complex/ctor/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,19 +26,19 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-default-ctor --generate-from-base-ctor \
+$(gen): xsd_options += --generate-default-ctor --generate-from-base-ctor \
--generate-doxygen --generate-polymorphic --polymorphic-type-all \
--generate-comparison
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -76,8 +75,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
-$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
+$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
#
diff --git a/xsd/tests/cxx/tree/complex/makefile b/xsd/tests/cxx/tree/complex/makefile
index a0b3294..db6e6a8 100644
--- a/xsd/tests/cxx/tree/complex/makefile
+++ b/xsd/tests/cxx/tree/complex/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/complex/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/containment/driver.cxx b/xsd/tests/cxx/tree/containment/driver.cxx
index cb6c76e..f019de8 100644
--- a/xsd/tests/cxx/tree/containment/driver.cxx
+++ b/xsd/tests/cxx/tree/containment/driver.cxx
@@ -1,16 +1,22 @@
// file : tests/cxx/tree/containment/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test tree node containment.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cassert>
#include "test.hxx"
+#ifdef XSD_CXX11
+# include <utility> // std::move
+# define XSD_MOVE(x) std::move(x)
+#else
+# define XSD_MOVE(x) x
+#endif
+
using namespace std;
using namespace test;
@@ -20,11 +26,11 @@ main ()
// Change of a container in a sub-tree without ID.
//
{
- auto_ptr<inner> i (new inner ());
+ XSD_AUTO_PTR<inner> i (new inner ());
i->ref ("foo");
outer o;
- o.i (i);
+ o.i (XSD_MOVE (i));
o.ref ("foo");
assert (o.i ()->ref ()->get () == 0);
@@ -34,14 +40,14 @@ main ()
// Change of container in a sub-tree with ID inside.
//
{
- auto_ptr<inner> i (new inner ());
+ XSD_AUTO_PTR<inner> i (new inner ());
inner* p (i.get ());
i->id ("foo");
i->ref ("foo");
assert (i->ref ()->get () == p);
outer o;
- o.i (i);
+ o.i (XSD_MOVE (i));
o.ref ("foo");
assert (o.i ()->ref ()->get () == p);
@@ -51,10 +57,10 @@ main ()
// Change of a container in ID.
//
{
- auto_ptr<xml_schema::id> id (new xml_schema::id ("foo"));
+ XSD_AUTO_PTR<xml_schema::id> id (new xml_schema::id ("foo"));
inner i;
- i.id (id);
+ i.id (XSD_MOVE (id));
i.ref ("foo");
assert (i.ref ()->get () == &i);
}
@@ -62,12 +68,12 @@ main ()
// Change of a container in a type derived from ID with ID inside.
//
{
- auto_ptr<id_ex> id (new id_ex ("foo"));
+ XSD_AUTO_PTR<id_ex> id (new id_ex ("foo"));
id_ex* p (id.get ());
id->id ("bar");
inner i;
- i.id_ex (id);
+ i.id_ex (XSD_MOVE (id));
i.ref ("foo");
assert (i.ref ()->get () == &i);
@@ -81,28 +87,28 @@ main ()
{
id i1 ("a"), i2 ("b");
- auto_ptr<ids> ic (new ids);
+ XSD_AUTO_PTR<ids> ic (new ids);
ic->id ().push_back (i1);
ic->id ().push_back (i2);
- auto_ptr<xml_schema::idrefs> r1 (new xml_schema::idrefs);
+ XSD_AUTO_PTR<xml_schema::idrefs> r1 (new xml_schema::idrefs);
r1->push_back (xml_schema::idref ("a"));
r1->push_back (xml_schema::idref ("b"));
- auto_ptr<idref_list> r2 (new idref_list);
+ XSD_AUTO_PTR<idref_list> r2 (new idref_list);
r2->push_back (xml_schema::idref ("a"));
r2->push_back (xml_schema::idref ("b"));
- auto_ptr<idrefs1> rc1 (new idrefs1);
- auto_ptr<idrefs2> rc2 (new idrefs2);
+ XSD_AUTO_PTR<idrefs1> rc1 (new idrefs1);
+ XSD_AUTO_PTR<idrefs2> rc2 (new idrefs2);
- rc1->idrefs (r1);
- rc2->idrefs (r2);
+ rc1->idrefs (XSD_MOVE (r1));
+ rc2->idrefs (XSD_MOVE (r2));
model m;
- m.ids (ic);
- m.idrefs1 (rc1);
- m.idrefs2 (rc2);
+ m.ids (XSD_MOVE (ic));
+ m.idrefs1 (XSD_MOVE (rc1));
+ m.idrefs2 (XSD_MOVE (rc2));
assert (m.idrefs1 ().idrefs ()[0].get () != 0);
assert (m.idrefs1 ().idrefs ()[1].get () != 0);
diff --git a/xsd/tests/cxx/tree/containment/makefile b/xsd/tests/cxx/tree/containment/makefile
index fcdd792..d181fb5 100644
--- a/xsd/tests/cxx/tree/containment/makefile
+++ b/xsd/tests/cxx/tree/containment/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/containment/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-default-ctor
+$(gen): xsd_options += --generate-default-ctor
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/default/general/driver.cxx b/xsd/tests/cxx/tree/default/general/driver.cxx
index a48650f..b0df8ba 100644
--- a/xsd/tests/cxx/tree/default/general/driver.cxx
+++ b/xsd/tests/cxx/tree/default/general/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/default/general/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test default attribute/element values.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1], xml_schema::flags::dont_validate));
+ XSD_AUTO_PTR<type> r (root (argv[1], xml_schema::flags::dont_validate));
xml_schema::namespace_infomap map;
map["t"].name = "test";
diff --git a/xsd/tests/cxx/tree/default/general/makefile b/xsd/tests/cxx/tree/default/general/makefile
index b1b7fca..6c2dfe6 100644
--- a/xsd/tests/cxx/tree/default/general/makefile
+++ b/xsd/tests/cxx/tree/default/general/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/default/general/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream --generate-serialization \
+$(gen): xsd_options += --generate-ostream --generate-serialization \
--generate-default-ctor --generate-from-base-ctor
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/default/general/output b/xsd/tests/cxx/tree/default/general/output
index 72a8fa4..396a698 100644
--- a/xsd/tests/cxx/tree/default/general/output
+++ b/xsd/tests/cxx/tree/default/general/output
@@ -1,28 +1,15 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<t:root xmlns:t="test" base64_bin1="" base64_bin2="YmFzZTY0IGJpbmFyeQ==&#xA;" bool1="true" bool2="true" bool3="false" bool4="false" byte="-99" decimal1="1.12345" decimal2="-0.456" double1="1.12345" double2="1123.45" double3="-0.00012345" double4="NaN" double5="-INF" fix1="123" fix2="123" fix3="abc" fix4="abc" fix5="aaa bbb ccc" fix6="aaa bbb ccc" float1="1.123" float2="1123" float3="-0.000123" float4="NaN" float5="-INF" hex_bin1="" hex_bin2="6865782052696E617279" id="this" idref="this" idrefs="this" int="-99999" integer="-99999" language="en-us" long="-99999" ncname="abcd" ninteger="-99999" nmtoken="ab:cd" nmtokens1="a:b efg aaa" nmtokens2="abc" nninteger="99999" npinteger="-99999" nstring=" a b " pinteger="99999" qname1="foo" qname2="t:bar" short="-999" string1="" string2=" a b " token="a b" ubyte="99" uint="99999" ulong="99999" uri="http://example.com" ushort="999">
-
<union a="abc"/>
-
<list a="123 345 678" b="ab cd ef" c="abc" d="abc def"/>
-
<simple a="123" b="abc" c="123" d="abc" e="abc" f="abc 123"/>
-
<date a="2009-03-31" b="2009-03-31Z" c="2009-03-31Z" d="2009-03-31Z" e="2009-03-31+12:30" f="2009-03-31-12:30" g="2002009-03-31-12:30"/>
-
<time a="12:03:45" b="12:03:45.123Z" c="12:03:05.123Z" d="12:03:45.123Z" e="12:03:45.123+12:30" f="12:03:45-12:30"/>
-
<date-time a="2009-03-31T12:03:45" b="2009-03-31T12:03:45.123Z" c="2002009-03-31T12:03:05.123-12:30"/>
-
<duration a="P100Y" b="P100M" c="P100D" d="PT12H" e="PT12M" f="PT12.123S" g="-P100Y10M20DT12H12M1.123S"/>
-
<day a="---02" b="---22Z" c="---22-12:30"/>
-
<month a="--02" b="--12Z" c="--12+12:30"/>
-
<year a="2009" b="-2002009Z" c="2009-12:30"/>
-
<month-day a="--02-02" b="--12-22Z" c="--12-22+12:30"/>
-
<year-month a="2009-02" b="-2002009-12Z" c="2009-12-12:30"/>
-
</t:root>
diff --git a/xsd/tests/cxx/tree/default/makefile b/xsd/tests/cxx/tree/default/makefile
index 218e69c..56fa53d 100644
--- a/xsd/tests/cxx/tree/default/makefile
+++ b/xsd/tests/cxx/tree/default/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/default/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/default/omit/driver.cxx b/xsd/tests/cxx/tree/default/omit/driver.cxx
index cbf69b5..6a074c1 100644
--- a/xsd/tests/cxx/tree/default/omit/driver.cxx
+++ b/xsd/tests/cxx/tree/default/omit/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/default/omit/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test default attribute omission from the output.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1], xml_schema::flags::dont_validate));
+ XSD_AUTO_PTR<type> r (root (argv[1], xml_schema::flags::dont_validate));
cout << *r << endl
<< "default x: " << derived::x_default_value () << endl
diff --git a/xsd/tests/cxx/tree/default/omit/makefile b/xsd/tests/cxx/tree/default/omit/makefile
index e0cce27..caaec12 100644
--- a/xsd/tests/cxx/tree/default/omit/makefile
+++ b/xsd/tests/cxx/tree/default/omit/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/default/omit/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream --generate-serialization \
+$(gen): xsd_options += --generate-ostream --generate-serialization \
--generate-default-ctor --generate-from-base-ctor --omit-default-attributes
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/default/omit/output b/xsd/tests/cxx/tree/default/omit/output
index eef99a3..150ad58 100644
--- a/xsd/tests/cxx/tree/default/omit/output
+++ b/xsd/tests/cxx/tree/default/omit/output
@@ -13,9 +13,7 @@ fixed q1: 1
fixed q2: 2
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<t:root xmlns:t="test">
-
<derived q1="1" q2="2">
<a>a</a>
</derived>
-
</t:root>
diff --git a/xsd/tests/cxx/tree/detach/driver.cxx b/xsd/tests/cxx/tree/detach/driver.cxx
index afcb90d..cabd9ea 100644
--- a/xsd/tests/cxx/tree/detach/driver.cxx
+++ b/xsd/tests/cxx/tree/detach/driver.cxx
@@ -1,22 +1,30 @@
// file : tests/cxx/tree/detach/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the detach functionality.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <cassert>
#include "test.hxx"
+#ifdef XSD_CXX11
+# include <utility> // std::move
+# define XSD_MOVE(x) std::move(x)
+#else
+# define XSD_MOVE(x) x
+#endif
+
using namespace std;
using namespace test;
int
main ()
{
+ using test::ref;
+
// Construct the model.
//
object o1 ("o1");
@@ -57,22 +65,22 @@ main ()
// Detach one.
//
- auto_ptr<subtree> p (m.detach_one ());
+ XSD_AUTO_PTR<subtree> p (m.detach_one ());
assert (p->_container () == 0);
assert (p->r ()[0].get () == &p->o ()[1]);
assert (m.opt ()->r ()[1].get () == 0);
- m.one (p);
+ m.one (XSD_MOVE (p));
assert (m.opt ()->r ()[1].get () == &m.one ().o ()[0]);
p = m.detach_one ();
model m1;
- m1.one (p);
+ m1.one (XSD_MOVE (p));
m1.opt (s2);
assert (m1.opt ()->r ()[1].get () == &m1.one ().o ()[0]);
p = m1.detach_one ();
- m.seq ().push_back (p);
+ m.seq ().push_back (XSD_MOVE (p));
// Detach opt.
//
@@ -82,7 +90,7 @@ main ()
assert (p->r ()[0].get () == &p->o ()[1]);
assert (m.seq ()[0].r ()[1].get () == 0);
- m.seq ().push_back (p);
+ m.seq ().push_back (XSD_MOVE (p));
// Detach seq.
//
@@ -91,7 +99,7 @@ main ()
assert (p->r ()[0].get () == &p->o ()[1]);
assert (m.seq ()[0].r ()[1].get () == 0);
- m.seq ().push_back (p);
+ m.seq ().push_back (XSD_MOVE (p));
assert (m.seq ()[0].r ()[1].get () == &m.seq ()[1].o ()[0]);
m.seq ().detach (m.seq ().begin (), p);
diff --git a/xsd/tests/cxx/tree/detach/makefile b/xsd/tests/cxx/tree/detach/makefile
index 938fba2..64def55 100644
--- a/xsd/tests/cxx/tree/detach/makefile
+++ b/xsd/tests/cxx/tree/detach/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/detach/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-detach --generate-default-ctor
+$(gen): xsd_options += --generate-detach --generate-default-ctor
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/dom-association/dom-parse.cxx b/xsd/tests/cxx/tree/dom-association/dom-parse.cxx
new file mode 100644
index 0000000..c065d19
--- /dev/null
+++ b/xsd/tests/cxx/tree/dom-association/dom-parse.cxx
@@ -0,0 +1,96 @@
+// file : tests/cxx/tree/dom-association/dom-parse.cxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#include "dom-parse.hxx"
+
+#include <istream>
+
+#include <xercesc/dom/DOM.hpp>
+#include <xercesc/util/XMLUniDefs.hpp> // chLatin_*
+#include <xercesc/framework/Wrapper4InputSource.hpp>
+
+#include <xsd/cxx/xml/sax/std-input-source.hxx>
+#include <xsd/cxx/xml/dom/bits/error-handler-proxy.hxx>
+
+#include <xsd/cxx/tree/exceptions.hxx>
+#include <xsd/cxx/tree/error-handler.hxx>
+
+using namespace xercesc;
+namespace xml = xsd::cxx::xml;
+namespace tree = xsd::cxx::tree;
+
+XSD_DOM_AUTO_PTR<DOMDocument>
+parse (std::istream& is,
+ const std::string& id,
+ bool validate)
+{
+ const XMLCh ls_id [] = {chLatin_L, chLatin_S, chNull};
+
+ // Get an implementation of the Load-Store (LS) interface.
+ //
+ DOMImplementation* impl (
+ DOMImplementationRegistry::getDOMImplementation (ls_id));
+
+ XSD_DOM_AUTO_PTR<DOMLSParser> parser (
+ impl->createLSParser (DOMImplementationLS::MODE_SYNCHRONOUS, 0));
+
+ DOMConfiguration* conf (parser->getDomConfig ());
+
+ // Discard comment nodes in the document.
+ //
+ conf->setParameter (XMLUni::fgDOMComments, false);
+
+ // Enable datatype normalization.
+ //
+ conf->setParameter (XMLUni::fgDOMDatatypeNormalization, true);
+
+ // Do not create EntityReference nodes in the DOM tree. No
+ // EntityReference nodes will be created, only the nodes
+ // corresponding to their fully expanded substitution text
+ // will be created.
+ //
+ conf->setParameter (XMLUni::fgDOMEntities, false);
+
+ // Perform namespace processing.
+ //
+ conf->setParameter (XMLUni::fgDOMNamespaces, true);
+
+ // Do not include ignorable whitespace in the DOM tree.
+ //
+ conf->setParameter (XMLUni::fgDOMElementContentWhitespace, false);
+
+ // Enable/Disable validation.
+ //
+ conf->setParameter (XMLUni::fgDOMValidate, validate);
+ conf->setParameter (XMLUni::fgXercesSchema, validate);
+ conf->setParameter (XMLUni::fgXercesSchemaFullChecking, false);
+
+ // Xerces-C++ 3.1.0 is the first version with working multi import
+ // support.
+ //
+#if _XERCES_VERSION >= 30100
+ conf->setParameter (XMLUni::fgXercesHandleMultipleImports, true);
+#endif
+
+ // We will release the DOM document ourselves.
+ //
+ conf->setParameter (XMLUni::fgXercesUserAdoptsDOMDocument, true);
+
+ // Set error handler.
+ //
+ tree::error_handler<char> eh;
+ xml::dom::bits::error_handler_proxy<char> ehp (eh);
+ conf->setParameter (XMLUni::fgDOMErrorHandler, &ehp);
+
+ // Prepare input stream.
+ //
+ xml::sax::std_input_source isrc (is, id);
+ Wrapper4InputSource wrap (&isrc, false);
+
+ XSD_DOM_AUTO_PTR<DOMDocument> doc (parser->parse (&wrap));
+
+ eh.throw_if_failed<tree::parsing<char> > ();
+
+ return doc;
+}
diff --git a/xsd/tests/cxx/tree/dom-association/dom-parse.hxx b/xsd/tests/cxx/tree/dom-association/dom-parse.hxx
new file mode 100644
index 0000000..2c3bd3f
--- /dev/null
+++ b/xsd/tests/cxx/tree/dom-association/dom-parse.hxx
@@ -0,0 +1,24 @@
+// file : tests/cxx/tree/dom-association/dom-parse.hxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef DOM_PARSE
+#define DOM_PARSE
+
+#include <string>
+#include <iosfwd>
+
+#include <xercesc/dom/DOMDocument.hpp>
+
+#include <xsd/cxx/xml/dom/auto-ptr.hxx>
+
+// Parse an XML document from the standard input stream with an
+// optional resource id. Resource id is used in diagnostics as
+// well as to locate schemas referenced from inside the document.
+//
+XSD_DOM_AUTO_PTR<xercesc::DOMDocument>
+parse (std::istream& is,
+ const std::string& id,
+ bool validate);
+
+#endif // DOM_PARSE
diff --git a/xsd/tests/cxx/tree/dom-association/driver.cxx b/xsd/tests/cxx/tree/dom-association/driver.cxx
new file mode 100644
index 0000000..edcda50
--- /dev/null
+++ b/xsd/tests/cxx/tree/dom-association/driver.cxx
@@ -0,0 +1,72 @@
+// file : tests/cxx/tree/dom-association/driver.cxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+// Test DOM association/ownership.
+//
+
+#include <memory> // std::auto_ptr/unique_ptr
+#include <fstream>
+#include <iostream>
+
+#include <xercesc/dom/DOM.hpp>
+
+#include "dom-parse.hxx"
+#include "test.hxx"
+
+using namespace std;
+using namespace test;
+using namespace xercesc;
+
+int
+main (int argc, char* argv[])
+{
+ if (argc != 2)
+ {
+ cerr << "usage: " << argv[0] << " test.xml" << endl;
+ return 1;
+ }
+
+ int r (0);
+
+ XMLPlatformUtils::Initialize ();
+
+ try
+ {
+ ifstream ifs;
+ ifs.exceptions (ifstream::badbit | ifstream::failbit);
+ ifs.open (argv[1]);
+
+ DOMDocument* ptr;
+
+#ifdef XSD_CXX11
+ xml_schema::dom::unique_ptr<DOMDocument> doc (parse (ifs, argv[1], true));
+ ptr = doc.get ();
+ unique_ptr<type> r (
+ root (std::move (doc),
+ xml_schema::flags::keep_dom | xml_schema::flags::own_dom));
+#else
+ xml_schema::dom::auto_ptr<DOMDocument> doc (parse (ifs, argv[1], true));
+ ptr = doc.get ();
+ auto_ptr<type> r (
+ root (doc,
+ xml_schema::flags::keep_dom | xml_schema::flags::own_dom));
+#endif
+
+ assert (doc.get () == 0);
+ assert (r->_node ()->getOwnerDocument () == ptr);
+ }
+ catch (xml_schema::exception const& e)
+ {
+ cerr << e << endl;
+ r = 1;
+ }
+ catch (const std::ios_base::failure&)
+ {
+ cerr << argv[1] << ": unable to open or read failure" << endl;
+ r = 1;
+ }
+
+ XMLPlatformUtils::Terminate ();
+ return r;
+}
diff --git a/xsd/tests/cxx/tree/dom-association/makefile b/xsd/tests/cxx/tree/dom-association/makefile
new file mode 100644
index 0000000..4a05d45
--- /dev/null
+++ b/xsd/tests/cxx/tree/dom-association/makefile
@@ -0,0 +1,92 @@
+# file : tests/cxx/tree/dom-association/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
+
+xsd := test.xsd
+cxx := driver.cxx dom-parse.cxx
+
+obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o))
+dep := $(obj:.o=.o.d)
+
+driver := $(out_base)/driver
+test := $(out_base)/.test
+clean := $(out_base)/.clean
+
+
+# Import.
+#
+$(call import,\
+ $(scf_root)/import/libxerces-c/stub.make,\
+ l: xerces_c.l,cpp-options: xerces_c.l.cpp-options)
+
+
+# Build.
+#
+$(driver): $(obj) $(xerces_c.l)
+
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
+$(obj) $(dep): $(xerces_c.l.cpp-options)
+
+# Define XSD_CXX11 since we include libxsd headers directly.
+#
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifeq ($(cxx_standard),c++11)
+$(obj) $(dep): cpp_options += -DXSD_CXX11
+endif
+
+genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
+gen := $(addprefix $(out_base)/,$(genf))
+
+$(gen): xsd := $(out_root)/xsd/xsd
+$(gen): xsd_options += --generate-ostream
+$(gen): $(out_root)/xsd/xsd
+
+$(call include-dep,$(dep),$(obj),$(gen))
+
+# Convenience alias for default target.
+#
+$(out_base)/: $(driver)
+
+
+# Test.
+#
+$(test): driver := $(driver)
+$(test): $(driver) $(src_base)/test.xml $(src_base)/output
+ $(call message,test $$1,$$1 $(src_base)/test.xml | diff -u $(src_base)/output -,$(driver))
+
+# Clean.
+#
+$(clean): $(driver).o.clean \
+ $(addsuffix .cxx.clean,$(obj)) \
+ $(addsuffix .cxx.clean,$(dep)) \
+ $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean))
+
+# Generated .gitignore.
+#
+ifeq ($(out_base),$(src_base))
+$(gen): | $(out_base)/.gitignore
+$(driver): | $(out_base)/.gitignore
+
+$(out_base)/.gitignore: files := driver $(genf)
+$(clean): $(out_base)/.gitignore.clean
+
+$(call include,$(bld_root)/git/gitignore.make)
+endif
+
+# How to.
+#
+$(call include,$(bld_root)/cxx/o-e.make)
+$(call include,$(bld_root)/cxx/cxx-o.make)
+$(call include,$(bld_root)/cxx/cxx-d.make)
+
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
+$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
+
+
+# Dependencies.
+#
+$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/tests/cxx/tree/dom-association/output b/xsd/tests/cxx/tree/dom-association/output
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/xsd/tests/cxx/tree/dom-association/output
diff --git a/xsd/tests/cxx/tree/dom-association/test.xml b/xsd/tests/cxx/tree/dom-association/test.xml
new file mode 100644
index 0000000..624a80c
--- /dev/null
+++ b/xsd/tests/cxx/tree/dom-association/test.xml
@@ -0,0 +1,7 @@
+<t:root xmlns:t="test"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="test test.xsd">
+
+ <a>a</a>
+
+</t:root>
diff --git a/xsd/tests/cxx/tree/dom-association/test.xsd b/xsd/tests/cxx/tree/dom-association/test.xsd
new file mode 100644
index 0000000..07bebc7
--- /dev/null
+++ b/xsd/tests/cxx/tree/dom-association/test.xsd
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test" targetNamespace="test">
+
+ <complexType name="type">
+ <sequence>
+ <element name="a" type="string"/>
+ </sequence>
+ </complexType>
+
+ <element name="root" type="t:type"/>
+
+</schema>
diff --git a/xsd/tests/cxx/tree/encoding/char/iso-8859-1/driver.cxx b/xsd/tests/cxx/tree/encoding/char/iso-8859-1/driver.cxx
index 56b2df8..6a92ae0 100644
--- a/xsd/tests/cxx/tree/encoding/char/iso-8859-1/driver.cxx
+++ b/xsd/tests/cxx/tree/encoding/char/iso-8859-1/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/encoding/char/iso-8859-1/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test ISO-8859-1 encoding.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <fstream>
#include <iostream>
@@ -36,7 +35,7 @@ main (int argc, char* argv[])
}
xsd::cxx::xml::char_transcoder::unrep_char ('?');
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
{
type::a_sequence const& s (r->a ());
diff --git a/xsd/tests/cxx/tree/encoding/char/iso-8859-1/makefile b/xsd/tests/cxx/tree/encoding/char/iso-8859-1/makefile
index 967357f..8a952f7 100644
--- a/xsd/tests/cxx/tree/encoding/char/iso-8859-1/makefile
+++ b/xsd/tests/cxx/tree/encoding/char/iso-8859-1/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/encoding/char/iso-8859-1/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --char-encoding iso8859-1 --generate-serialization \
+$(gen): xsd_options += --char-encoding iso8859-1 --generate-serialization \
--generate-doxygen
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/encoding/char/iso-8859-1/test.std b/xsd/tests/cxx/tree/encoding/char/iso-8859-1/test.std
index ca6297f..d26b30f 100644
--- a/xsd/tests/cxx/tree/encoding/char/iso-8859-1/test.std
+++ b/xsd/tests/cxx/tree/encoding/char/iso-8859-1/test.std
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="ISO-8859-1" standalone="no" ?>
<t:root xmlns:t="test">
-
<a>abc</a>
-
<a>æ</a>
-
<a>¢£¤¥</a>
-
<a>???</a>
-
<b>abc</b>
-
<b>aâc</b>
-
<b>âòbc</b>
-
</t:root>
diff --git a/xsd/tests/cxx/tree/encoding/char/lcp/driver.cxx b/xsd/tests/cxx/tree/encoding/char/lcp/driver.cxx
index 2fb13a3..d44d0fe 100644
--- a/xsd/tests/cxx/tree/encoding/char/lcp/driver.cxx
+++ b/xsd/tests/cxx/tree/encoding/char/lcp/driver.cxx
@@ -1,13 +1,12 @@
// file : tests/cxx/tree/encoding/char/lcp/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test local code page encoding (--char-encoding lcp).
// The test just makes sure it still compiles and works.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <fstream>
#include <iostream>
@@ -27,7 +26,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
xml_schema::namespace_infomap map;
map["t"].name = "test";
diff --git a/xsd/tests/cxx/tree/encoding/char/lcp/makefile b/xsd/tests/cxx/tree/encoding/char/lcp/makefile
index 518c514..9dc599d 100644
--- a/xsd/tests/cxx/tree/encoding/char/lcp/makefile
+++ b/xsd/tests/cxx/tree/encoding/char/lcp/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/encoding/char/lcp/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization --char-encoding lcp
+$(gen): xsd_options += --generate-serialization --char-encoding lcp
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/encoding/char/lcp/test.std b/xsd/tests/cxx/tree/encoding/char/lcp/test.std
index cc20ef7..368826d 100644
--- a/xsd/tests/cxx/tree/encoding/char/lcp/test.std
+++ b/xsd/tests/cxx/tree/encoding/char/lcp/test.std
@@ -1,6 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<t:root xmlns:t="test">
-
<a>abcd</a>
-
</t:root>
diff --git a/xsd/tests/cxx/tree/encoding/char/makefile b/xsd/tests/cxx/tree/encoding/char/makefile
index 3e64dd9..587eeb1 100644
--- a/xsd/tests/cxx/tree/encoding/char/makefile
+++ b/xsd/tests/cxx/tree/encoding/char/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/encoding/char/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/encoding/char/utf-8/driver.cxx b/xsd/tests/cxx/tree/encoding/char/utf-8/driver.cxx
index 0842203..9d12659 100644
--- a/xsd/tests/cxx/tree/encoding/char/utf-8/driver.cxx
+++ b/xsd/tests/cxx/tree/encoding/char/utf-8/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/encoding/char/utf-8/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test UTF-8 encoding.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <fstream>
#include <iostream>
@@ -26,7 +25,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
{
type::a_sequence const& s (r->a ());
@@ -57,7 +56,7 @@ main (int argc, char* argv[])
xml_schema::namespace_infomap map;
map["t"].name = "test";
- root (std::cout, *r, map, "UCS-4LE");
+ root (std::cout, *r, map, "ASCII");
}
catch (xml_schema::exception const& e)
{
diff --git a/xsd/tests/cxx/tree/encoding/char/utf-8/makefile b/xsd/tests/cxx/tree/encoding/char/utf-8/makefile
index 8c0256e..e2bbdfc 100644
--- a/xsd/tests/cxx/tree/encoding/char/utf-8/makefile
+++ b/xsd/tests/cxx/tree/encoding/char/utf-8/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/encoding/char/utf-8/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization --generate-doxygen
+$(gen): xsd_options += --generate-serialization --generate-doxygen
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/encoding/char/utf-8/test.std b/xsd/tests/cxx/tree/encoding/char/utf-8/test.std
index 328fe6d..ffce337 100644
--- a/xsd/tests/cxx/tree/encoding/char/utf-8/test.std
+++ b/xsd/tests/cxx/tree/encoding/char/utf-8/test.std
Binary files differ
diff --git a/xsd/tests/cxx/tree/encoding/makefile b/xsd/tests/cxx/tree/encoding/makefile
index fcadb8c..2108fa2 100644
--- a/xsd/tests/cxx/tree/encoding/makefile
+++ b/xsd/tests/cxx/tree/encoding/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/encoding/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/encoding/wchar/driver.cxx b/xsd/tests/cxx/tree/encoding/wchar/driver.cxx
index 22cbfb4..6b8d51e 100644
--- a/xsd/tests/cxx/tree/encoding/wchar/driver.cxx
+++ b/xsd/tests/cxx/tree/encoding/wchar/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/encoding/wchar/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test the wide character mapping.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <fstream>
#include <iostream>
@@ -29,7 +28,7 @@ main (int argc, char* argv[])
// Use dont_validate because we do not have instance's system id (path).
//
std::ifstream ifs (argv[1]);
- auto_ptr<type> r (root (ifs, xml_schema::flags::dont_validate));
+ XSD_AUTO_PTR<type> r (root (ifs, xml_schema::flags::dont_validate));
{
type::b_sequence const& s (r->b ());
@@ -47,7 +46,7 @@ main (int argc, char* argv[])
xml_schema::namespace_infomap map;
map[L"t"].name = L"test";
- root (std::cout, *r, map, L"UCS-4LE");
+ root (std::cout, *r, map, L"ASCII");
}
catch (xml_schema::exception const& e)
{
diff --git a/xsd/tests/cxx/tree/encoding/wchar/makefile b/xsd/tests/cxx/tree/encoding/wchar/makefile
index fb2faed..e66d3a5 100644
--- a/xsd/tests/cxx/tree/encoding/wchar/makefile
+++ b/xsd/tests/cxx/tree/encoding/wchar/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/encoding/wchar/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization --generate-doxygen \
+$(gen): xsd_options += --generate-serialization --generate-doxygen \
--char-type wchar_t
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/encoding/wchar/test.std b/xsd/tests/cxx/tree/encoding/wchar/test.std
index 93d4561..815ba6c 100644
--- a/xsd/tests/cxx/tree/encoding/wchar/test.std
+++ b/xsd/tests/cxx/tree/encoding/wchar/test.std
Binary files differ
diff --git a/xsd/tests/cxx/tree/enumeration/ctor/driver.cxx b/xsd/tests/cxx/tree/enumeration/ctor/driver.cxx
index 114b7b7..bd2589f 100644
--- a/xsd/tests/cxx/tree/enumeration/ctor/driver.cxx
+++ b/xsd/tests/cxx/tree/enumeration/ctor/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/tree/enumeration/ctor/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test enumeration constructors.
diff --git a/xsd/tests/cxx/tree/enumeration/ctor/makefile b/xsd/tests/cxx/tree/enumeration/ctor/makefile
index b33ab94..2fae138 100644
--- a/xsd/tests/cxx/tree/enumeration/ctor/makefile
+++ b/xsd/tests/cxx/tree/enumeration/ctor/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/enumeration/ctor/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-default-ctor --generate-from-base-ctor \
+$(gen): xsd_options += --generate-default-ctor --generate-from-base-ctor \
--generate-doxygen
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/enumeration/inheritance/driver.cxx b/xsd/tests/cxx/tree/enumeration/inheritance/driver.cxx
index 358f61d..0a6d5d2 100644
--- a/xsd/tests/cxx/tree/enumeration/inheritance/driver.cxx
+++ b/xsd/tests/cxx/tree/enumeration/inheritance/driver.cxx
@@ -1,12 +1,12 @@
// file : tests/cxx/tree/enumeration/inheritance/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Insert test description here.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
+#include <cassert>
#include <iostream>
#include "test.hxx"
@@ -25,7 +25,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<top_bottom> r (root (argv[1]));
+ XSD_AUTO_PTR<top_bottom> r (root (argv[1]));
switch (*r)
{
@@ -39,6 +39,11 @@ main (int argc, char* argv[])
cout << "bottom" << endl;
break;
}
+ default: // Suppress warning.
+ {
+ assert (false);
+ break;
+ }
}
}
catch (xml_schema::exception const& e)
diff --git a/xsd/tests/cxx/tree/enumeration/inheritance/makefile b/xsd/tests/cxx/tree/enumeration/inheritance/makefile
index c29b0f8..77df855 100644
--- a/xsd/tests/cxx/tree/enumeration/inheritance/makefile
+++ b/xsd/tests/cxx/tree/enumeration/inheritance/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/enumeration/inheritance/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream
+$(gen): xsd_options += --generate-ostream
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/enumeration/makefile b/xsd/tests/cxx/tree/enumeration/makefile
index 5730a08..8f55b20 100644
--- a/xsd/tests/cxx/tree/enumeration/makefile
+++ b/xsd/tests/cxx/tree/enumeration/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/enumeration/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/float/driver.cxx b/xsd/tests/cxx/tree/float/driver.cxx
index d2ec1dd..a71d2f3 100644
--- a/xsd/tests/cxx/tree/float/driver.cxx
+++ b/xsd/tests/cxx/tree/float/driver.cxx
@@ -1,13 +1,12 @@
// file : tests/cxx/tree/float/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test floating point (xsd:{float, double, decimal}) type parsing
// and serialization.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -26,7 +25,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
r->simple ().push_back (12.129456);
r->simple ().push_back (123.129456);
diff --git a/xsd/tests/cxx/tree/float/makefile b/xsd/tests/cxx/tree/float/makefile
index 21966ba..a585afb 100644
--- a/xsd/tests/cxx/tree/float/makefile
+++ b/xsd/tests/cxx/tree/float/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/float/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization --root-element-all
+$(gen): xsd_options += --generate-serialization --root-element-all
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/float/test.std b/xsd/tests/cxx/tree/float/test.std
index 44264c2..399e28c 100644
--- a/xsd/tests/cxx/tree/float/test.std
+++ b/xsd/tests/cxx/tree/float/test.std
@@ -1,68 +1,35 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<t:root xmlns:t="test" de="0" do="0" f="0" s="12.13">
-
<float>0</float>
-
<float>1</float>
-
<float>1e+06</float>
-
<float>1e-07</float>
-
<float-list>0 1 1e+06 1e-07</float-list>
-
<double>0</double>
-
<double>1</double>
-
<double>100000000000000</double>
-
<double>1e-15</double>
-
<double-list>0 1 100000000000000 1e-15</double-list>
-
<decimal>0</decimal>
-
<decimal>1</decimal>
-
<decimal>10000</decimal>
-
<decimal>100000000000000</decimal>
-
<decimal>0.000000000000001</decimal>
-
<decimal-list>0 1 100000000000000 0.000000000000001</decimal-list>
-
<simple>0</simple>
-
<simple>1</simple>
-
<simple>12.34</simple>
-
<simple>0.12</simple>
-
<simple>12.13</simple>
-
<simple>123.1</simple>
-
<simple>1234</simple>
-
<complex>0</complex>
-
<complex>1</complex>
-
<complex>12.34</complex>
-
<complex>0.12</complex>
-
<complex>12.13</complex>
-
<complex>123.1</complex>
-
<complex>1234</complex>
-
<complex>-12.12</complex>
-
<complex>-123.1</complex>
-
</t:root>
diff --git a/xsd/tests/cxx/tree/list/ctor/driver.cxx b/xsd/tests/cxx/tree/list/ctor/driver.cxx
index 81743e8..784ae01 100644
--- a/xsd/tests/cxx/tree/list/ctor/driver.cxx
+++ b/xsd/tests/cxx/tree/list/ctor/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/tree/list/ctor/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test list constructors.
diff --git a/xsd/tests/cxx/tree/list/ctor/makefile b/xsd/tests/cxx/tree/list/ctor/makefile
index cfda43a..4115606 100644
--- a/xsd/tests/cxx/tree/list/ctor/makefile
+++ b/xsd/tests/cxx/tree/list/ctor/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/list/ctor/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-default-ctor --generate-from-base-ctor \
+$(gen): xsd_options += --generate-default-ctor --generate-from-base-ctor \
--generate-doxygen
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/list/makefile b/xsd/tests/cxx/tree/list/makefile
index ae6bb0a..4af3e22 100644
--- a/xsd/tests/cxx/tree/list/makefile
+++ b/xsd/tests/cxx/tree/list/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/list/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/makefile b/xsd/tests/cxx/tree/makefile
index 9b79424..7fd9f63 100644
--- a/xsd/tests/cxx/tree/makefile
+++ b/xsd/tests/cxx/tree/makefile
@@ -1,30 +1,32 @@
# file : tests/cxx/tree/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
-tests := \
-built-in \
-chameleon \
-comparison \
-compilation \
-complex \
-containment \
-default \
-detach \
-encoding \
-enumeration \
-float \
-list \
-name-clash \
-naming \
-polymorphism \
-prefix \
-test-template \
-types-only \
-union \
+tests := \
+any-type \
+built-in \
+chameleon \
+comparison \
+compilation \
+complex \
+containment \
+default \
+detach \
+dom-association \
+encoding \
+enumeration \
+float \
+list \
+name-clash \
+naming \
+order \
+polymorphism \
+prefix \
+test-template \
+types-only \
+union \
wildcard
ifeq ($(xsd_with_ace),y)
diff --git a/xsd/tests/cxx/tree/name-clash/inheritance/driver.cxx b/xsd/tests/cxx/tree/name-clash/inheritance/driver.cxx
index 70e6fc6..07e0c00 100644
--- a/xsd/tests/cxx/tree/name-clash/inheritance/driver.cxx
+++ b/xsd/tests/cxx/tree/name-clash/inheritance/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/name-clash/inheritance/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test for name clashes across inheritance hierarchy.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<derived> r (root (argv[1]));
+ XSD_AUTO_PTR<derived> r (root (argv[1]));
cout << *r << endl;
}
diff --git a/xsd/tests/cxx/tree/name-clash/inheritance/makefile b/xsd/tests/cxx/tree/name-clash/inheritance/makefile
index b983d91..ea05693 100644
--- a/xsd/tests/cxx/tree/name-clash/inheritance/makefile
+++ b/xsd/tests/cxx/tree/name-clash/inheritance/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/name-clash/inheritance/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream
+$(gen): xsd_options += --generate-ostream
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/name-clash/makefile b/xsd/tests/cxx/tree/name-clash/makefile
index ef2fdf0..c9a4d0f 100644
--- a/xsd/tests/cxx/tree/name-clash/makefile
+++ b/xsd/tests/cxx/tree/name-clash/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/name-clash/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/naming/camel/driver.cxx b/xsd/tests/cxx/tree/naming/camel/driver.cxx
index 96b88d5..716a544 100644
--- a/xsd/tests/cxx/tree/naming/camel/driver.cxx
+++ b/xsd/tests/cxx/tree/naming/camel/driver.cxx
@@ -1,12 +1,10 @@
// file : tests/cxx/tree/naming/camel/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test camel case (upper for types, lower for functions) naming style.
//
-#include <memory> // std::auto_ptr
#include <sstream>
#include <iostream>
@@ -29,6 +27,7 @@ main ()
{
Gender::Value v;
v = Gender::female;
+ XSD_UNUSED (v);
}
// Anonymous type.
@@ -49,6 +48,8 @@ main ()
//
{
Type::FooType* p = 0;
+ XSD_UNUSED (p);
+
Type::FooOptional o;
if (t.foo ().present ())
@@ -61,6 +62,7 @@ main ()
//
{
Type::BarType* p = 0;
+ XSD_UNUSED (p);
if (t.bar () != "bar")
return 1;
@@ -72,9 +74,13 @@ main ()
//
{
Type::BazType* p = 0;
+ XSD_UNUSED (p);
+
Type::BazSequence s;
Type::BazIterator i (s.begin ());
Type::BazConstIterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.baz () != s)
return 1;
@@ -88,6 +94,8 @@ main ()
Type::AnySequence s (t.domDocument ());
Type::AnyIterator i (s.begin ());
Type::AnyConstIterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.any () != s)
return 1;
@@ -112,6 +120,8 @@ main ()
Type::AnyAttributeSet s (t.domDocument ());
Type::AnyAttributeIterator i (s.begin ());
Type::AnyAttributeConstIterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.anyAttribute () != s)
return 1;
diff --git a/xsd/tests/cxx/tree/naming/camel/makefile b/xsd/tests/cxx/tree/naming/camel/makefile
index e9ce149..6364196 100644
--- a/xsd/tests/cxx/tree/naming/camel/makefile
+++ b/xsd/tests/cxx/tree/naming/camel/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/naming/camel/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,7 +26,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -35,7 +34,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--type-naming ucc \
--function-naming lcc \
--generate-ostream \
@@ -45,7 +44,7 @@ $(gen): xsd_options := \
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -82,7 +81,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/naming/java/driver.cxx b/xsd/tests/cxx/tree/naming/java/driver.cxx
index 843acff..f35607a 100644
--- a/xsd/tests/cxx/tree/naming/java/driver.cxx
+++ b/xsd/tests/cxx/tree/naming/java/driver.cxx
@@ -1,12 +1,10 @@
// file : tests/cxx/tree/naming/java/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test Java naming style.
//
-#include <memory> // std::auto_ptr
#include <sstream>
#include <iostream>
@@ -29,6 +27,7 @@ main ()
{
Gender::Value v;
v = Gender::female;
+ XSD_UNUSED (v);
}
// Anonymous type.
@@ -49,6 +48,7 @@ main ()
//
{
Type::FooType* p = 0;
+ XSD_UNUSED (p);
Type::FooOptional o;
if (t.getFoo ().present ())
@@ -61,6 +61,7 @@ main ()
//
{
Type::BarType* p = 0;
+ XSD_UNUSED (p);
if (t.getBar () != "bar")
return 1;
@@ -72,9 +73,13 @@ main ()
//
{
Type::BazType* p = 0;
+ XSD_UNUSED (p);
+
Type::BazSequence s;
Type::BazIterator i (s.begin ());
Type::BazConstIterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.getBaz () != s)
return 1;
@@ -88,6 +93,8 @@ main ()
Type::AnySequence s (t.getDomDocument ());
Type::AnyIterator i (s.begin ());
Type::AnyConstIterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.getAny () != s)
return 1;
@@ -112,6 +119,8 @@ main ()
Type::AnyAttributeSet s (t.getDomDocument ());
Type::AnyAttributeIterator i (s.begin ());
Type::AnyAttributeConstIterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.getAnyAttribute () != s)
return 1;
diff --git a/xsd/tests/cxx/tree/naming/java/makefile b/xsd/tests/cxx/tree/naming/java/makefile
index f8e7d04..83d73e1 100644
--- a/xsd/tests/cxx/tree/naming/java/makefile
+++ b/xsd/tests/cxx/tree/naming/java/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/naming/java/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,7 +26,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -35,7 +34,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--type-naming java \
--function-naming java \
--generate-ostream \
@@ -45,7 +44,7 @@ $(gen): xsd_options := \
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -82,7 +81,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/naming/knr/driver.cxx b/xsd/tests/cxx/tree/naming/knr/driver.cxx
index fff944b..5038d7b 100644
--- a/xsd/tests/cxx/tree/naming/knr/driver.cxx
+++ b/xsd/tests/cxx/tree/naming/knr/driver.cxx
@@ -1,12 +1,10 @@
// file : tests/cxx/tree/naming/knr/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test K&R naming style.
//
-#include <memory> // std::auto_ptr
#include <sstream>
#include <iostream>
@@ -29,6 +27,7 @@ main ()
{
gender::value v;
v = gender::female;
+ XSD_UNUSED (v);
}
// Anonymous type.
@@ -49,6 +48,8 @@ main ()
//
{
type::foo_type* p = 0;
+ XSD_UNUSED (p);
+
type::foo_optional o;
if (t.foo ().present ())
@@ -61,6 +62,7 @@ main ()
//
{
type::bar_type* p = 0;
+ XSD_UNUSED (p);
if (t.bar () != "bar")
return 1;
@@ -72,9 +74,13 @@ main ()
//
{
type::baz_type* p = 0;
+ XSD_UNUSED (p);
+
type::baz_sequence s;
type::baz_iterator i (s.begin ());
type::baz_const_iterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.baz () != s)
return 1;
@@ -88,6 +94,8 @@ main ()
type::any_sequence s (t.dom_document ());
type::any_iterator i (s.begin ());
type::any_const_iterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.any () != s)
return 1;
@@ -112,6 +120,8 @@ main ()
type::any_attribute_set s (t.dom_document ());
type::any_attribute_iterator i (s.begin ());
type::any_attribute_const_iterator ci (s.begin ());
+ XSD_UNUSED (i);
+ XSD_UNUSED (ci);
if (t.any_attribute () != s)
return 1;
diff --git a/xsd/tests/cxx/tree/naming/knr/makefile b/xsd/tests/cxx/tree/naming/knr/makefile
index ac9e75e..d8ecbab 100644
--- a/xsd/tests/cxx/tree/naming/knr/makefile
+++ b/xsd/tests/cxx/tree/naming/knr/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/naming/knr/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,7 +26,7 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
@@ -35,7 +34,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := \
+$(gen): xsd_options += \
--type-naming knr \
--function-naming knr \
--generate-ostream \
@@ -45,7 +44,7 @@ $(gen): xsd_options := \
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -82,7 +81,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/naming/makefile b/xsd/tests/cxx/tree/naming/makefile
index 90bd7d3..60ac63b 100644
--- a/xsd/tests/cxx/tree/naming/makefile
+++ b/xsd/tests/cxx/tree/naming/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/naming/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/order/driver.cxx b/xsd/tests/cxx/tree/order/driver.cxx
new file mode 100644
index 0000000..01d8d9f
--- /dev/null
+++ b/xsd/tests/cxx/tree/order/driver.cxx
@@ -0,0 +1,65 @@
+// file : tests/cxx/tree/order/driver.cxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+// Test ordered type support.
+//
+
+#include <memory> // std::auto_ptr/unique_ptr
+#include <cassert>
+#include <iostream>
+
+#include <xercesc/dom/DOM.hpp>
+#include <xercesc/util/PlatformUtils.hpp>
+
+#include "test.hxx"
+
+using namespace std;
+using namespace test;
+using namespace xercesc;
+
+int
+main (int argc, char* argv[])
+{
+ if (argc != 2)
+ {
+ cerr << "usage: " << argv[0] << " test.xml" << endl;
+ return 1;
+ }
+
+ XMLPlatformUtils::Initialize ();
+
+ try
+ {
+ XSD_AUTO_PTR<root> r (root_ (argv[1], xml_schema::flags::dont_initialize));
+
+ root c (*r);
+ assert (c == *r);
+
+ for (root::t1_const_iterator j (r->t1 ().begin ());
+ j != r->t1 ().end (); ++j)
+ {
+ const t1_derived& d (*j);
+
+ for (t1_derived::content_order_const_iterator i (
+ d.content_order ().begin ()); i != d.content_order ().end (); ++i)
+ {
+ cout << i->id << ' ' << i->index << endl;
+ }
+ }
+
+ xml_schema::namespace_infomap map;
+
+ map["t"].name = "test";
+ map["t1"].name = "test1";
+
+ root_ (cout, *r, map, "UTF-8", xml_schema::flags::dont_initialize);
+ }
+ catch (xml_schema::exception const& e)
+ {
+ cerr << e << endl;
+ return 1;
+ }
+
+ XMLPlatformUtils::Terminate ();
+}
diff --git a/xsd/tests/cxx/tree/order/makefile b/xsd/tests/cxx/tree/order/makefile
new file mode 100644
index 0000000..0dff0f9
--- /dev/null
+++ b/xsd/tests/cxx/tree/order/makefile
@@ -0,0 +1,94 @@
+# file : tests/cxx/tree/order/makefile
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
+
+xsd := test.xsd
+cxx := driver.cxx
+
+obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o))
+dep := $(obj:.o=.o.d)
+
+driver := $(out_base)/driver
+test := $(out_base)/.test
+clean := $(out_base)/.clean
+
+
+# Import.
+#
+$(call import,\
+ $(scf_root)/import/libxerces-c/stub.make,\
+ l: xerces_c.l,cpp-options: xerces_c.l.cpp-options)
+
+
+# Build.
+#
+$(driver): $(obj) $(xerces_c.l)
+
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
+$(obj) $(dep): $(xerces_c.l.cpp-options)
+
+genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
+gen := $(addprefix $(out_base)/,$(genf))
+
+$(gen): xsd := $(out_root)/xsd/xsd
+$(gen): xsd_options += --generate-serialization --generate-wildcard \
+--generate-comparison \
+--ordered-type t1_base --ordered-type t1_derived \
+--ordered-type t2_base --ordered-type t2_derived \
+--ordered-type t3_type \
+--ordered-type t4_base --ordered-type t4_derived \
+--ordered-type t5_base --ordered-type t5_derived \
+--ordered-type t6_base --ordered-type t6_derived \
+--ordered-type t7_type
+$(gen): $(out_root)/xsd/xsd
+
+$(call include-dep,$(dep),$(obj),$(gen))
+
+# Convenience alias for default target.
+#
+$(out_base)/: $(driver)
+
+
+# Test.
+#
+$(test): driver := $(driver)
+$(test): $(driver) $(src_base)/test.xml $(src_base)/output
+ $(call message,test $$1,$$1 $(src_base)/test.xml | diff -u $(src_base)/output -,$(driver))
+
+# Clean.
+#
+$(clean): $(driver).o.clean \
+ $(addsuffix .cxx.clean,$(obj)) \
+ $(addsuffix .cxx.clean,$(dep)) \
+ $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean))
+
+# Generated .gitignore.
+#
+ifeq ($(out_base),$(src_base))
+$(gen): | $(out_base)/.gitignore
+$(driver): | $(out_base)/.gitignore
+
+$(out_base)/.gitignore: files := driver $(genf)
+$(clean): $(out_base)/.gitignore.clean
+
+$(call include,$(bld_root)/git/gitignore.make)
+endif
+
+# How to.
+#
+$(call include,$(bld_root)/cxx/o-e.make)
+$(call include,$(bld_root)/cxx/cxx-o.make)
+$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
+$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
+
+
+# Dependencies.
+#
+$(call import,$(src_root)/xsd/makefile)
diff --git a/xsd/tests/cxx/tree/order/output b/xsd/tests/cxx/tree/order/output
new file mode 100644
index 0000000..73442fe
--- /dev/null
+++ b/xsd/tests/cxx/tree/order/output
@@ -0,0 +1,92 @@
+2 0
+1 0
+1 1
+2 1
+3 0
+4 0
+3 1
+4 1
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<t:root xmlns:t="test" xmlns:t1="test1">
+ <t1>
+ <b>b1</b>
+ <a>a1</a>
+ <a>a2</a>
+ <b>b2</b>
+ <c>c1</c>
+ <d>d1</d>
+ <t1:e>e1</t1:e>
+ <d>d2</d>
+ <t1:f>f1</t1:f>
+ </t1>
+ <t2>
+ <b>b1</b>
+ <a>a1</a>
+ <b>b2</b>
+ <a>a2</a>
+ </t2>
+ <t3>
+ <a>a1</a>
+ <b>b1</b>
+ <c>c1</c>
+ <c>c2</c>
+ </t3>
+ <t3>
+ <a>a1</a>
+ <c>c1</c>
+ </t3>
+ <t4>
+ t1
+
+ <b>b1</b>
+ t2
+
+ <a>a1</a>
+ t3
+
+ <b>b2</b>
+ t4
+
+ <a>a2</a>
+ t5
+
+ <t1:d>d1</t1:d>
+ t6
+
+ <c>c1</c>
+ t7
+
+ </t4>
+ <t5a>
+ t5a
+ </t5a>
+ <t5b>
+ t1
+
+ <b>b1</b>
+ t2
+
+ <a>a1</a>
+ t3
+
+ <a>a2</a>
+ t4
+
+ <b>b2</b>
+ t5
+
+ </t5b>
+ <t6>
+ t6
+ </t6>
+ <t7>
+ t1
+
+ <t1:a>a1</t1:a>
+ t2
+
+ <t1:b>b1</t1:b>
+ t3
+
+ </t7>
+</t:root>
diff --git a/xsd/tests/cxx/tree/order/test.xml b/xsd/tests/cxx/tree/order/test.xml
new file mode 100644
index 0000000..cd82936
--- /dev/null
+++ b/xsd/tests/cxx/tree/order/test.xml
@@ -0,0 +1,71 @@
+<t:root xmlns:t="test"
+ xmlns:t1="test1"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="test test.xsd">
+ <t1>
+ <b>b1</b>
+ <a>a1</a>
+ <a>a2</a>
+ <b>b2</b>
+ <c>c1</c>
+ <d>d1</d>
+ <t1:e>e1</t1:e>
+ <d>d2</d>
+ <t1:f>f1</t1:f>
+ </t1>
+ <t2>
+ <b>b1</b>
+ <a>a1</a>
+ <b>b2</b>
+ <a>a2</a>
+ </t2>
+ <t3>
+ <a>a1</a>
+ <b>b1</b>
+ <c>c1</c>
+ <c>c2</c>
+ </t3>
+ <t3>
+ <a>a1</a>
+ <c>c1</c>
+ </t3>
+ <t4>
+ t1
+ <b>b1</b>
+ t2
+ <a>a1</a>
+ t3
+ <b>b2</b>
+ t4
+ <a>a2</a>
+ t5
+ <t1:d>d1</t1:d>
+ t6
+ <c>c1</c>
+ t7
+ </t4>
+ <t5a>
+ t5a
+ </t5a>
+ <t5b>
+ t1
+ <b>b1</b>
+ t2
+ <a>a1</a>
+ t3
+ <a>a2</a>
+ t4
+ <b>b2</b>
+ t5
+ </t5b>
+ <t6>
+ t6
+ </t6>
+ <t7>
+ t1
+ <t1:a>a1</t1:a>
+ t2
+ <t1:b>b1</t1:b>
+ t3
+ </t7>
+</t:root>
diff --git a/xsd/tests/cxx/tree/order/test.xsd b/xsd/tests/cxx/tree/order/test.xsd
new file mode 100644
index 0000000..c30c027
--- /dev/null
+++ b/xsd/tests/cxx/tree/order/test.xsd
@@ -0,0 +1,130 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test" targetNamespace="test">
+
+ <!-- Test 1: general, with non-ordered intermediate. -->
+
+ <complexType name="t1_base">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="a" type="string"/>
+ <element name="b" type="string"/>
+ </choice>
+ </complexType>
+
+ <complexType name="t1_interm">
+ <complexContent>
+ <extension base="t:t1_base">
+ <sequence>
+ <element name="c" type="string" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <complexType name="t1_derived">
+ <complexContent>
+ <extension base="t:t1_interm">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="d" type="string"/>
+ <any namespace="##other" processContents="lax"/>
+ </choice>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <!-- Test 2: empty base. -->
+
+ <complexType name="t2_base"/>
+
+ <complexType name="t2_derived">
+ <complexContent>
+ <extension base="t:t2_base">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="a" type="string"/>
+ <element name="b" type="string"/>
+ </choice>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <!-- Test 3: element cardinalities. -->
+
+ <complexType name="t3_type">
+ <sequence>
+ <element name="a" type="string"/>
+ <element name="b" type="string" minOccurs="0"/>
+ <element name="c" type="string" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+
+ <!-- Test 4: mixed content, general. -->
+
+ <complexType name="t4_base" mixed="true">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="a" type="string"/>
+ <element name="b" type="string"/>
+ </choice>
+ </complexType>
+
+ <complexType name="t4_derived">
+ <complexContent mixed="true">
+ <extension base="t:t4_base">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="c" type="string"/>
+ <any namespace="##other" processContents="lax"/>
+ </choice>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <!-- Test 5: mixed content, empty base. -->
+
+ <complexType name="t5_base" mixed="true"/>
+
+ <complexType name="t5_derived">
+ <complexContent mixed="true">
+ <extension base="t:t5_base">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="a" type="string"/>
+ <element name="b" type="string"/>
+ </choice>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <!-- Test 6: mixed content, empty base and derived. -->
+
+ <complexType name="t6_base" mixed="true"/>
+
+ <complexType name="t6_derived">
+ <complexContent mixed="true">
+ <extension base="t:t6_base"/>
+ </complexContent>
+ </complexType>
+
+ <!-- Test 7: mixed content wildcard only. -->
+
+ <complexType name="t7_type" mixed="true">
+ <sequence>
+ <any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <!-- Root -->
+
+ <complexType name="root">
+ <sequence>
+ <element name="t1" type="t:t1_derived" maxOccurs="unbounded"/>
+ <element name="t2" type="t:t2_derived" maxOccurs="unbounded"/>
+ <element name="t3" type="t:t3_type" maxOccurs="unbounded"/>
+ <element name="t4" type="t:t4_derived" maxOccurs="unbounded"/>
+ <element name="t5a" type="t:t5_base" maxOccurs="unbounded"/>
+ <element name="t5b" type="t:t5_derived" maxOccurs="unbounded"/>
+ <element name="t6" type="t:t6_derived" maxOccurs="unbounded"/>
+ <element name="t7" type="t:t7_type" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <element name="root" type="t:root"/>
+
+</schema>
diff --git a/xsd/tests/cxx/tree/polymorphism/comparison/driver.cxx b/xsd/tests/cxx/tree/polymorphism/comparison/driver.cxx
index 5e52e70..5394991 100644
--- a/xsd/tests/cxx/tree/polymorphism/comparison/driver.cxx
+++ b/xsd/tests/cxx/tree/polymorphism/comparison/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/polymorphism/comparison/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test comparison of polymorphic object models.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
// Equals.
//
diff --git a/xsd/tests/cxx/tree/polymorphism/comparison/makefile b/xsd/tests/cxx/tree/polymorphism/comparison/makefile
index ad2c8ec..ef3e70a 100644
--- a/xsd/tests/cxx/tree/polymorphism/comparison/makefile
+++ b/xsd/tests/cxx/tree/polymorphism/comparison/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/polymorphism/comparison/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-polymorphic --polymorphic-type base \
+$(gen): xsd_options += --generate-polymorphic --polymorphic-type base \
--generate-comparison
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/polymorphism/makefile b/xsd/tests/cxx/tree/polymorphism/makefile
index bca8f3f..9215e44 100644
--- a/xsd/tests/cxx/tree/polymorphism/makefile
+++ b/xsd/tests/cxx/tree/polymorphism/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/polymorphism/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/polymorphism/ostream/driver.cxx b/xsd/tests/cxx/tree/polymorphism/ostream/driver.cxx
index 216c887..bfbd2d4 100644
--- a/xsd/tests/cxx/tree/polymorphism/ostream/driver.cxx
+++ b/xsd/tests/cxx/tree/polymorphism/ostream/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/polymorphism/ostream/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test printing of polymorphic object models.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
cout << *r << endl;
}
catch (xml_schema::exception const& e)
diff --git a/xsd/tests/cxx/tree/polymorphism/ostream/makefile b/xsd/tests/cxx/tree/polymorphism/ostream/makefile
index 661ba16..76a366f 100644
--- a/xsd/tests/cxx/tree/polymorphism/ostream/makefile
+++ b/xsd/tests/cxx/tree/polymorphism/ostream/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/polymorphism/ostream/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-polymorphic --polymorphic-type-all \
---generate-ostream
+$(gen): xsd_options += --generate-polymorphic --polymorphic-type-all \
+--root-element root --generate-ostream
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -76,7 +75,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/polymorphism/ostream/output b/xsd/tests/cxx/tree/polymorphism/ostream/output
index bf0e814..e7fbd68 100644
--- a/xsd/tests/cxx/tree/polymorphism/ostream/output
+++ b/xsd/tests/cxx/tree/polymorphism/ostream/output
@@ -11,3 +11,8 @@ a: a
fund: 1
c: c1
c: c2
+base:
+a: a
+fund: 1
+d: d1
+d: d2
diff --git a/xsd/tests/cxx/tree/polymorphism/ostream/test.xml b/xsd/tests/cxx/tree/polymorphism/ostream/test.xml
index 157e15c..5409d2a 100644
--- a/xsd/tests/cxx/tree/polymorphism/ostream/test.xml
+++ b/xsd/tests/cxx/tree/polymorphism/ostream/test.xml
@@ -1,9 +1,10 @@
-<t:root xmlns:t="test"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="test test.xsd">
+<root xmlns="test"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="test test.xsd">
<base><a>a</a><fund>1</fund></base>
- <base xsi:type="t:derived1"><a>a</a><fund>1</fund><b>b</b></base>
- <base xsi:type="t:derived2"><a>a</a><fund>1</fund><c>c1</c><c>c2</c></base>
+ <base xsi:type="derived1"><a>a</a><fund>1</fund><b>b</b></base>
+ <base xsi:type="derived2"><a>a</a><fund>1</fund><c>c1</c><c>c2</c></base>
+ <derived3><a>a</a><fund>1</fund><d>d1</d><d>d2</d></derived3>
-</t:root>
+</root>
diff --git a/xsd/tests/cxx/tree/polymorphism/ostream/test.xsd b/xsd/tests/cxx/tree/polymorphism/ostream/test.xsd
index cc1f7a8..ddeaeae 100644
--- a/xsd/tests/cxx/tree/polymorphism/ostream/test.xsd
+++ b/xsd/tests/cxx/tree/polymorphism/ostream/test.xsd
@@ -1,5 +1,6 @@
<?xml version="1.0"?>
-<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test" targetNamespace="test">
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test"
+ targetNamespace="test" elementFormDefault="qualified">
<complexType name="base">
<sequence>
@@ -7,6 +8,7 @@
<element name="fund" type="int"/>
</sequence>
</complexType>
+ <element name="base" type="t:base"/>
<complexType name="derived1">
<complexContent>
@@ -28,9 +30,21 @@
</complexContent>
</complexType>
+ <element name="derived3" substitutionGroup="t:base">
+ <complexType>
+ <complexContent>
+ <extension base="t:base">
+ <sequence>
+ <element name="d" type="string" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ </element>
+
<complexType name="type">
<sequence>
- <element name="base" type="t:base" maxOccurs="unbounded"/>
+ <element ref="t:base" maxOccurs="unbounded"/>
</sequence>
</complexType>
diff --git a/xsd/tests/cxx/tree/polymorphism/same-type/driver.cxx b/xsd/tests/cxx/tree/polymorphism/same-type/driver.cxx
index 441a742..0846b04 100644
--- a/xsd/tests/cxx/tree/polymorphism/same-type/driver.cxx
+++ b/xsd/tests/cxx/tree/polymorphism/same-type/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/polymorphism/same-type/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test substitution group and xsi:type that don't change the type.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
cout << *r << endl;
}
diff --git a/xsd/tests/cxx/tree/polymorphism/same-type/makefile b/xsd/tests/cxx/tree/polymorphism/same-type/makefile
index c8e7bed..549f590 100644
--- a/xsd/tests/cxx/tree/polymorphism/same-type/makefile
+++ b/xsd/tests/cxx/tree/polymorphism/same-type/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/polymorphism/same-type/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream --generate-polymorphic \
+$(gen): xsd_options += --generate-ostream --generate-polymorphic \
--root-element root
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/prefix/driver.cxx b/xsd/tests/cxx/tree/prefix/driver.cxx
index 3ce9832..244f815 100644
--- a/xsd/tests/cxx/tree/prefix/driver.cxx
+++ b/xsd/tests/cxx/tree/prefix/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/prefix/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test automatic prefix assignment.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
root (std::cout, *r);
}
catch (xml_schema::exception const& e)
diff --git a/xsd/tests/cxx/tree/prefix/makefile b/xsd/tests/cxx/tree/prefix/makefile
index 3317161..688111e 100644
--- a/xsd/tests/cxx/tree/prefix/makefile
+++ b/xsd/tests/cxx/tree/prefix/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/prefix/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-serialization --generate-polymorphic \
---polymorphic-type foo\\\#base --root-element root
+$(gen): xsd_options += --generate-serialization --generate-polymorphic \
+--polymorphic-type foo\#base --root-element root
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/prefix/output b/xsd/tests/cxx/tree/prefix/output
index 4f40f49..9801a23 100644
--- a/xsd/tests/cxx/tree/prefix/output
+++ b/xsd/tests/cxx/tree/prefix/output
@@ -1,22 +1,18 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<p1:root xmlns:p1="test">
-
<a xmlns:p3="bar" p3:abar="456" xmlns:p2="foo">
<p2:efoo>123</p2:efoo>
</a>
-
<b xmlns:p2="bar">
<p2:derived>
<x>1</x>
<y>2</y>
</p2:derived>
</b>
-
<c xmlns:p2="foo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<p2:base xmlns:p3="bar" xsi:type="p3:derived2">
<x>1</x>
<z>2</z>
</p2:base>
</c>
-
</p1:root>
diff --git a/xsd/tests/cxx/tree/test-template/driver.cxx b/xsd/tests/cxx/tree/test-template/driver.cxx
index f36cc10..f28e501 100644
--- a/xsd/tests/cxx/tree/test-template/driver.cxx
+++ b/xsd/tests/cxx/tree/test-template/driver.cxx
@@ -1,12 +1,11 @@
// file : tests/cxx/tree/test-template/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Insert test description here.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <iostream>
#include "test.hxx"
@@ -25,7 +24,7 @@ main (int argc, char* argv[])
try
{
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
cout << *r << endl;
}
diff --git a/xsd/tests/cxx/tree/test-template/makefile b/xsd/tests/cxx/tree/test-template/makefile
index f94665a..32af96b 100644
--- a/xsd/tests/cxx/tree/test-template/makefile
+++ b/xsd/tests/cxx/tree/test-template/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/test-template/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-ostream
+$(gen): xsd_options += --generate-ostream
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/types-only/driver.cxx b/xsd/tests/cxx/tree/types-only/driver.cxx
index b0caf72..8ba7500 100644
--- a/xsd/tests/cxx/tree/types-only/driver.cxx
+++ b/xsd/tests/cxx/tree/types-only/driver.cxx
@@ -1,13 +1,11 @@
// file : tests/cxx/tree/types-only/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test that code generated without parsing and serialization functions
// still compiles.
//
-#include <memory> // std::auto_ptr
#include <iostream>
#include "test.hxx"
diff --git a/xsd/tests/cxx/tree/types-only/makefile b/xsd/tests/cxx/tree/types-only/makefile
index 972de5a..25520a4 100644
--- a/xsd/tests/cxx/tree/types-only/makefile
+++ b/xsd/tests/cxx/tree/types-only/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/types-only/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,17 +26,17 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --suppress-parsing
+$(gen): xsd_options += --suppress-parsing
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -74,7 +73,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/union/ctor/driver.cxx b/xsd/tests/cxx/tree/union/ctor/driver.cxx
index 0aa22ab..14a8565 100644
--- a/xsd/tests/cxx/tree/union/ctor/driver.cxx
+++ b/xsd/tests/cxx/tree/union/ctor/driver.cxx
@@ -1,6 +1,5 @@
// file : tests/cxx/tree/union/ctor/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test union constructors.
diff --git a/xsd/tests/cxx/tree/union/ctor/makefile b/xsd/tests/cxx/tree/union/ctor/makefile
index 234ee45..1edd762 100644
--- a/xsd/tests/cxx/tree/union/ctor/makefile
+++ b/xsd/tests/cxx/tree/union/ctor/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/union/ctor/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-default-ctor --generate-from-base-ctor \
+$(gen): xsd_options += --generate-default-ctor --generate-from-base-ctor \
--generate-doxygen
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/cxx/tree/union/makefile b/xsd/tests/cxx/tree/union/makefile
index 5d61aa7..59abec6 100644
--- a/xsd/tests/cxx/tree/union/makefile
+++ b/xsd/tests/cxx/tree/union/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/union/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
diff --git a/xsd/tests/cxx/tree/wildcard/driver.cxx b/xsd/tests/cxx/tree/wildcard/driver.cxx
index 5bd8229..e2db827 100644
--- a/xsd/tests/cxx/tree/wildcard/driver.cxx
+++ b/xsd/tests/cxx/tree/wildcard/driver.cxx
@@ -1,18 +1,20 @@
// file : tests/cxx/tree/wildcard/driver.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
// Test wildcard (any & anyAttribute) mapping.
//
-#include <memory> // std::auto_ptr
+#include <memory> // std::auto_ptr/unique_ptr
#include <sstream>
#include <iostream>
-#include <xsd/cxx/xml/string.hxx>
+#include <xercesc/dom/DOM.hpp>
+#include <xercesc/util/PlatformUtils.hpp>
+
+#include "test.hxx" // Get XSD_CXX11 defined.
-#include "test.hxx"
+#include <xsd/cxx/xml/string.hxx>
using namespace std;
using namespace test;
@@ -170,7 +172,7 @@ main (int argc, char* argv[])
// Test parsing
//
- auto_ptr<type> r (root (argv[1]));
+ XSD_AUTO_PTR<type> r (root (argv[1]));
print (*r);
// Test serialization.
@@ -187,7 +189,7 @@ main (int argc, char* argv[])
// cout << iostr.str () << endl
// << endl;
- auto_ptr<type> copy (root (iostr, argv[1]));
+ XSD_AUTO_PTR<type> copy (root (iostr, argv[1]));
assert (*copy == *r);
print (*copy);
diff --git a/xsd/tests/cxx/tree/wildcard/makefile b/xsd/tests/cxx/tree/wildcard/makefile
index b7b114f..b86c34a 100644
--- a/xsd/tests/cxx/tree/wildcard/makefile
+++ b/xsd/tests/cxx/tree/wildcard/makefile
@@ -1,6 +1,5 @@
# file : tests/cxx/tree/wildcard/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
@@ -27,18 +26,18 @@ $(call import,\
#
$(driver): $(obj) $(xerces_c.l)
-$(obj) $(dep): cpp_options := -I$(src_root)/libxsd
+$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd
$(obj) $(dep): $(xerces_c.l.cpp-options)
genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx)
gen := $(addprefix $(out_base)/,$(genf))
$(gen): xsd := $(out_root)/xsd/xsd
-$(gen): xsd_options := --generate-wildcard --generate-default-ctor \
+$(gen): xsd_options += --generate-wildcard --generate-default-ctor \
--generate-from-base-ctor --generate-serialization --generate-comparison
$(gen): $(out_root)/xsd/xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
@@ -75,7 +74,12 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+
+$(call include,$(bld_root)/cxx/standard.make) # cxx_standard
+ifdef cxx_standard
+$(gen): xsd_options += --std $(cxx_standard)
$(call include,$(scf_root)/xsd/tree/xsd-cxx.make)
+endif
# Dependencies.
diff --git a/xsd/tests/makefile b/xsd/tests/makefile
index 435bb3a..661571b 100644
--- a/xsd/tests/makefile
+++ b/xsd/tests/makefile
@@ -1,6 +1,5 @@
# file : tests/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make
diff --git a/xsd/version b/xsd/version
index 15a2799..fcdb2e1 100644
--- a/xsd/version
+++ b/xsd/version
@@ -1 +1 @@
-3.3.0
+4.0.0
diff --git a/xsd/xsd/cxx/elements.cxx b/xsd/xsd/cxx/elements.cxx
index d2600dc..dfa2f38 100644
--- a/xsd/xsd/cxx/elements.cxx
+++ b/xsd/xsd/cxx/elements.cxx
@@ -1,16 +1,14 @@
// file : xsd/cxx/elements.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/elements.hxx>
-#include <backend-elements/regex.hxx>
-
#include <cctype> // std::toupper
#include <memory>
#include <sstream>
#include <fstream>
+#include <cassert>
#include <iostream>
using std::wcerr;
@@ -28,7 +26,7 @@ namespace CXX
namespace
{
- WideChar const* keywords[] = {
+ wchar_t const* keywords[] = {
L"NULL",
L"and",
L"asm",
@@ -114,55 +112,47 @@ namespace CXX
Context (std::wostream& o,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- StringLiteralMap const* string_literal_map_,
- NarrowString const& char_type__,
- NarrowString const& char_encoding__,
- Boolean include_with_brackets__,
- NarrowString const& include_prefix__,
- NarrowString const& esymbol,
- Containers::Vector<NarrowString> const& nsm,
- Containers::Vector<NarrowString> const& nsr,
- Boolean trace_namespace_regex_,
- Containers::Vector<NarrowString> const& ir,
- Boolean trace_include_regex_,
- Boolean inline_,
- Containers::Vector<NarrowString> const& reserved_name)
+ options_type const& ops,
+ StringLiteralMap const* string_literal_map_)
: os (o),
schema_root (root),
schema_path (schema_path_),
+ options (ops),
+ std (ops.std ()),
char_type (char_type_),
char_encoding (char_encoding_),
L (L_),
string_type (string_type_),
+ auto_ptr (auto_ptr_),
string_literal_map (string_literal_map_),
- include_with_brackets (include_with_brackets_),
- include_prefix (include_prefix_),
type_exp (type_exp_),
inst_exp (inst_exp_),
inl (inl_),
ns_mapping_cache (ns_mapping_cache_),
schema_path_ (path),
xs_ns_ (0),
- char_type_ (char_type__),
- char_encoding_ (char_encoding__),
+ char_type_ (ops.char_type ()),
+ char_encoding_ (ops.char_encoding ()),
L_ (char_type == L"wchar_t" ? L"L" : L""),
- include_with_brackets_ (include_with_brackets__),
- include_prefix_ (include_prefix__),
- type_exp_ (esymbol ? esymbol + " " : esymbol),
- inst_exp_ (esymbol ? esymbol + "\n" : esymbol),
- inl_ (inline_ ? L"inline\n" : L""),
+ inl_ (ops.generate_inline () ? L"inline\n" : L""),
cxx_id_expr_ (L"^(::)?([a-zA-Z_]\\w*)(::[a-zA-Z_]\\w*)*$"),
cxx_id_expr (cxx_id_expr_),
- trace_namespace_regex (trace_namespace_regex_),
urn_mapping_ (L"#^urn.*:([a-zA-Z_].*)$#$1#"),
urn_mapping (urn_mapping_),
nsr_mapping (nsr_mapping_),
nsm_mapping (nsm_mapping_),
include_mapping (include_mapping_),
- trace_include_regex (trace_include_regex_),
reserved_name_map (reserved_name_map_),
keyword_set (keyword_set_)
{
+ // Export symbol.
+ //
+ {
+ String es (ops.export_symbol ());
+ type_exp_ = es ? es + L" " : es;
+ inst_exp_ = es ? es + L"\n" : es;
+ }
+
// Resolve and cache XML Schema namespace.
//
{
@@ -196,6 +186,12 @@ namespace CXX
else
string_type_ = L"::std::basic_string< " + char_type + L" >";
+ // Automatic pointer type.
+ //
+ auto_ptr_ = std >= cxx_version::cxx11
+ ? "::std::unique_ptr"
+ : "::std::auto_ptr";
+
// Default encoding.
//
if (!char_encoding)
@@ -209,28 +205,28 @@ namespace CXX
// Default mapping.
//
nsr_mapping_.push_back (
- Regex (L"#^.* (.*?/)??"L"(([a-zA-Z_]\\w*)(/[a-zA-Z_]\\w*)*)/?$#$2#"));
+ Regex (L"#^.* (.*?/)??" L"(([a-zA-Z_]\\w*)(/[a-zA-Z_]\\w*)*)/?$#$2#"));
nsr_mapping_.push_back (
Regex (L"#^.* http://www\\.w3\\.org/2001/XMLSchema$#xml_schema#"));
// Custom regex mapping.
//
- for (Containers::Vector<NarrowString>::ConstIterator
- i (nsr.begin ()), e (nsr.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (ops.namespace_regex ().begin ()),
+ e (ops.namespace_regex ().end ()); i != e; ++i)
{
- nsr_mapping_.push_back (Regex (*i));
+ nsr_mapping_.push_back (Regex (String (*i)));
}
// Custom direct mapping.
//
- for (Containers::Vector<NarrowString>::ConstIterator
- i (nsm.begin ()), e (nsm.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (ops.namespace_map ().begin ()),
+ e (ops.namespace_map ().end ()); i != e; ++i)
{
String s (*i);
// Split the string in two parts at the last '='.
//
- Size pos (s.rfind ('='));
+ size_t pos (s.rfind ('='));
if (pos == String::npos)
throw InvalidNamespaceMapping (s, "delimiter ('=') not found");
@@ -248,22 +244,22 @@ namespace CXX
// Include path regex
//
- for (Containers::Vector<NarrowString>::ConstIterator
- i (ir.begin ()), e (ir.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (ops.include_regex ().begin ()),
+ e (ops.include_regex ().end ()); i != e; ++i)
{
- include_mapping_.push_back (Regex (*i));
+ include_mapping_.push_back (Regex (String (*i)));
}
// Reserved names.
//
- for (Containers::Vector<NarrowString>::ConstIterator
- i (reserved_name.begin ()), e (reserved_name.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (ops.reserved_name ().begin ()),
+ e (ops.reserved_name ().end ()); i != e; ++i)
{
String s (*i);
// Split the string in two parts at '='.
//
- Size pos (s.find ('='));
+ size_t pos (s.find ('='));
if (pos == String::npos)
reserved_name_map_[s] = L"";
@@ -273,7 +269,7 @@ namespace CXX
// Populate the keyword set.
//
- for (Size i (0); i < sizeof (keywords) / sizeof (char*); ++i)
+ for (size_t i (0); i < sizeof (keywords) / sizeof (char*); ++i)
keyword_set_.insert (keywords[i]);
}
@@ -287,7 +283,7 @@ namespace CXX
using SemanticGraph::Sources;
String tmp;
- MapMapping::ConstIterator i (nsm_mapping.find (ns.name ()));
+ MapMapping::const_iterator i (nsm_mapping.find (ns.name ()));
if (i != nsm_mapping.end ())
{
@@ -317,20 +313,18 @@ namespace CXX
if (!path.empty ())
{
+ path.normalize ();
+
// Try to use the portable representation of the path. If that
// fails, fall back to the native representation.
//
try
{
- pair = path.string ();
+ pair = path.posix_string ();
}
catch (SemanticGraph::InvalidPath const&)
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- pair = path.native_file_string ();
-#else
pair = path.string ();
-#endif
}
}
@@ -338,7 +332,7 @@ namespace CXX
// Check cache first
//
- MappingCache::ConstIterator i (ns_mapping_cache.find (pair));
+ MappingCache::const_iterator i (ns_mapping_cache.find (pair));
if (i != ns_mapping_cache.end ())
{
@@ -346,32 +340,34 @@ namespace CXX
}
else
{
- if (trace_namespace_regex)
+ bool trace (options.namespace_regex_trace ());
+
+ if (trace)
wcerr << "namespace: '" << pair << "'" << endl;
- Boolean found (false);
+ bool found (false);
Regex colon (L"#/#::#");
- for (RegexMapping::ConstReverseIterator e (nsr_mapping.rbegin ());
+ for (RegexMapping::const_reverse_iterator e (nsr_mapping.rbegin ());
e != nsr_mapping.rend (); ++e)
{
- if (trace_namespace_regex)
- wcerr << "try: '" << e->pattern () << "' : ";
+ if (trace)
+ wcerr << "try: '" << e->regex () << "' : ";
if (e->match (pair))
{
- tmp = e->merge (pair);
- tmp = colon.merge (tmp); // replace `/' with `::'
+ tmp = e->replace (pair);
+ tmp = colon.replace (tmp); // replace `/' with `::'
// Check the result.
//
found = cxx_id_expr.match (tmp);
- if (trace_namespace_regex)
+ if (trace)
wcerr << "'" << tmp << "' : ";
}
- if (trace_namespace_regex)
+ if (trace)
wcerr << (found ? '+' : '-') << endl;
if (found)
@@ -392,7 +388,7 @@ namespace CXX
}
else
{
- tmp = colon.merge (n); // replace `/' with `::'
+ tmp = colon.replace (n); // replace `/' with `::'
if (!cxx_id_expr.match (tmp))
{
@@ -401,8 +397,8 @@ namespace CXX
if (urn_mapping.match (n))
{
Regex filter (L"#[.:-]#_#");
- tmp = urn_mapping.merge (n);
- tmp = filter.merge (tmp);
+ tmp = urn_mapping.replace (n);
+ tmp = filter.replace (tmp);
if (!cxx_id_expr.match (tmp))
throw NoNamespaceMapping (
@@ -496,7 +492,7 @@ namespace CXX
}
String Context::
- fq_name (SemanticGraph::Nameable& n, Char const* name_key)
+ fq_name (SemanticGraph::Nameable& n, char const* name_key)
{
using namespace SemanticGraph;
@@ -548,17 +544,17 @@ namespace CXX
escape (String const& name)
{
String r;
- Size n (name.size ());
+ size_t n (name.size ());
// In most common cases we will have that many chars.
//
r.reserve (n);
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
- Boolean first (i == 0);
+ bool first (i == 0);
- UnsignedLong u (unicode_char (name, i)); // May advance i.
+ unsigned int u (unicode_char (name, i)); // May advance i.
if (first)
{
@@ -574,7 +570,7 @@ namespace CXX
u == '_'))
r.push_back ('_');
else
- r.push_back (static_cast<WideChar> (u));
+ r.push_back (static_cast<wchar_t> (u));
}
if (r.empty ())
@@ -582,7 +578,7 @@ namespace CXX
// Custom reserved words.
//
- ReservedNameMap::ConstIterator i (reserved_name_map.find (r));
+ ReservedNameMap::const_iterator i (reserved_name_map.find (r));
if (i != reserved_name_map.end ())
{
@@ -618,14 +614,14 @@ namespace CXX
//
String
- charlit (UnsignedLong u)
+ charlit (unsigned int u)
{
String r ("\\x");
- Boolean lead (true);
+ bool lead (true);
- for (Long i (7); i >= 0; --i)
+ for (int i (7); i >= 0; --i)
{
- UnsignedLong x ((u >> (i * 4)) & 0x0F);
+ unsigned int x ((u >> (i * 4)) & 0x0F);
if (lead)
{
@@ -645,7 +641,7 @@ namespace CXX
strlit_ascii (String const& str)
{
String r;
- Size n (str.size ());
+ size_t n (str.size ());
// In most common cases we will have that many chars.
//
@@ -653,11 +649,11 @@ namespace CXX
r += '"';
- Boolean escape (false);
+ bool escape (false);
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
- UnsignedLong u (Context::unicode_char (str, i)); // May advance i.
+ unsigned int u (Context::unicode_char (str, i)); // May advance i.
// [128 - ] - unrepresentable
// 127 - \x7F
@@ -738,7 +734,7 @@ namespace CXX
}
default:
{
- r += static_cast<WideChar> (u);
+ r += static_cast<wchar_t> (u);
break;
}
}
@@ -756,7 +752,7 @@ namespace CXX
return r;
}
- const UnsignedLong utf8_first_char_mask[5] =
+ const unsigned int utf8_first_char_mask[5] =
{
0x00, 0x00, 0xC0, 0xE0, 0xF0
};
@@ -765,7 +761,7 @@ namespace CXX
strlit_utf8 (String const& str)
{
String r;
- Size n (str.size ());
+ size_t n (str.size ());
// In most common cases we will have that many chars.
//
@@ -773,11 +769,11 @@ namespace CXX
r += '"';
- Boolean escape (false);
+ bool escape (false);
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
- UnsignedLong u (Context::unicode_char (str, i)); // May advance i.
+ unsigned int u (Context::unicode_char (str, i)); // May advance i.
// [128 - ] - UTF-8
// 127 - \x7F
@@ -858,15 +854,15 @@ namespace CXX
}
default:
{
- r += static_cast<WideChar> (u);
+ r += static_cast<wchar_t> (u);
break;
}
}
}
else
{
- UnsignedLong count;
- UnsignedLong tmp[4];
+ unsigned int count (0);
+ unsigned int tmp[4];
if (u < 0x800)
count = 2;
@@ -895,10 +891,13 @@ namespace CXX
case 1:
{
tmp[0] = u | utf8_first_char_mask[count];
+ break;
}
+ default:
+ assert (false);
}
- for (UnsignedLong j (0); j < count; ++j)
+ for (unsigned int j (0); j < count; ++j)
r += charlit (tmp[j]);
escape = true;
@@ -914,7 +913,7 @@ namespace CXX
strlit_iso8859_1 (String const& str)
{
String r;
- Size n (str.size ());
+ size_t n (str.size ());
// In most common cases we will have that many chars.
//
@@ -922,11 +921,11 @@ namespace CXX
r += '"';
- Boolean escape (false);
+ bool escape (false);
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
- UnsignedLong u (Context::unicode_char (str, i)); // May advance i.
+ unsigned int u (Context::unicode_char (str, i)); // May advance i.
// [256 - ] - unrepresentable
// [127 - 255] - \xXX
@@ -1007,7 +1006,7 @@ namespace CXX
}
default:
{
- r += static_cast<WideChar> (u);
+ r += static_cast<wchar_t> (u);
break;
}
}
@@ -1034,7 +1033,7 @@ namespace CXX
strlit_utf32 (String const& str)
{
String r;
- Size n (str.size ());
+ size_t n (str.size ());
// In most common cases we will have that many chars.
//
@@ -1042,11 +1041,11 @@ namespace CXX
r += L"L\"";
- Boolean escape (false);
+ bool escape (false);
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
- UnsignedLong u (Context::unicode_char (str, i)); // May advance i.
+ unsigned int u (Context::unicode_char (str, i)); // May advance i.
// [128 - ] - \xUUUUUUUU
// 127 - \x7F
@@ -1105,9 +1104,10 @@ namespace CXX
{
if (escape)
{
- // Close and open the string so there are no clashes.
+ // Close and open the string so there are no clashes. C++11
+ // requires a space between " and L.
//
- r += L"\"L\"";
+ r += L"\" L\"";
escape = false;
}
@@ -1125,7 +1125,7 @@ namespace CXX
}
default:
{
- r += static_cast<WideChar> (u);
+ r += static_cast<wchar_t> (u);
break;
}
}
@@ -1148,7 +1148,7 @@ namespace CXX
// First see if we have a custom mapping.
//
assert (string_literal_map != 0);
- StringLiteralMap::ConstIterator i (string_literal_map->find (str));
+ StringLiteralMap::const_iterator i (string_literal_map->find (str));
if (i != string_literal_map->end ())
return i->second;
@@ -1175,16 +1175,16 @@ namespace CXX
{
String r;
- WideChar const* s (str.c_str ());
- Size size (str.size ());
+ wchar_t const* s (str.c_str ());
+ size_t size (str.size ());
// In most common cases we will have that many chars.
//
r.reserve (size);
- for (WideChar const* p (s); p < s + size; ++p)
+ for (wchar_t const* p (s); p < s + size; ++p)
{
- UnsignedLong u (unicode_char (p)); // May advance p.
+ unsigned int u (unicode_char (p)); // May advance p.
// We are going to treat \v, \f and \n as unrepresentable
// here even though they can be present in C++ source code.
@@ -1192,7 +1192,7 @@ namespace CXX
if (u > 127 || (u < 32 && u != '\t'))
r += L'?';
else
- r += static_cast<WideChar> (u);
+ r += static_cast<wchar_t> (u);
}
return r;
@@ -1201,30 +1201,31 @@ namespace CXX
String Context::
process_include_path (String const& name) const
{
- String path (include_prefix + name);
+ String path (String (options.include_prefix ()) + name);
+ bool trace (options.include_regex_trace ());
- if (trace_include_regex)
+ if (trace)
wcerr << "include: '" << path << "'" << endl;
String r;
- Boolean found (false);
+ bool found (false);
- for (RegexMapping::ConstReverseIterator e (include_mapping.rbegin ());
+ for (RegexMapping::const_reverse_iterator e (include_mapping.rbegin ());
e != include_mapping.rend (); ++e)
{
- if (trace_include_regex)
- wcerr << "try: '" << e->pattern () << "' : ";
+ if (trace)
+ wcerr << "try: '" << e->regex () << "' : ";
if (e->match (path))
{
- r = e->merge (path);
+ r = e->replace (path);
found = true;
- if (trace_include_regex)
+ if (trace)
wcerr << "'" << r << "' : ";
}
- if (trace_include_regex)
+ if (trace)
wcerr << (found ? '+' : '-') << endl;
if (found)
@@ -1236,8 +1237,8 @@ namespace CXX
if (!r.empty () && r[0] != L'"' && r[0] != L'<')
{
- WideChar op (include_with_brackets ? L'<' : L'"');
- WideChar cl (include_with_brackets ? L'>' : L'"');
+ wchar_t op (options.include_with_brackets () ? L'<' : L'"');
+ wchar_t cl (options.include_with_brackets () ? L'>' : L'"');
r = op + r + cl;
}
@@ -1247,7 +1248,7 @@ namespace CXX
// Namespace
//
- Void Namespace::
+ void Namespace::
pre (Type& n)
{
String ns (ctx_.ns_name (n));
@@ -1281,7 +1282,7 @@ namespace CXX
} while (true);
}
- Void Namespace::
+ void Namespace::
post (Type& n)
{
String ns (ctx_.ns_name (n));
diff --git a/xsd/xsd/cxx/elements.hxx b/xsd/xsd/cxx/elements.hxx
index 59938c5..4b36da9 100644
--- a/xsd/xsd/cxx/elements.hxx
+++ b/xsd/xsd/cxx/elements.hxx
@@ -1,31 +1,29 @@
// file : xsd/cxx/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_ELEMENTS_HXX
#define CXX_ELEMENTS_HXX
+#include <set>
+#include <map>
+#include <vector>
#include <ostream>
-#include <cult/types.hxx>
-#include <cult/containers/set.hxx>
-#include <cult/containers/map.hxx>
-#include <cult/containers/vector.hxx>
-
-#include <backend-elements/regex.hxx>
+#include <cutl/re.hxx>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
+#include <types.hxx>
#include <elements.hxx>
+
+#include <cxx/options.hxx>
#include <cxx/literal-map.hxx>
namespace CXX
{
using std::endl;
- typedef WideString String;
-
// On some platforms std::toupper can be something other than a
// function with C++ linkage.
@@ -39,7 +37,7 @@ namespace CXX
struct UnrepresentableCharacter
{
- UnrepresentableCharacter (String const& str, Size pos)
+ UnrepresentableCharacter (String const& str, size_t pos)
: str_ (str), pos_ (pos)
{
}
@@ -50,7 +48,7 @@ namespace CXX
return str_;
}
- Size
+ size_t
position () const
{
return pos_;
@@ -58,14 +56,14 @@ namespace CXX
private:
String str_;
- Size pos_;
+ size_t pos_;
};
struct NoNamespaceMapping
{
NoNamespaceMapping (SemanticGraph::Path const& file,
- UnsignedLong line,
- UnsignedLong column,
+ size_t line,
+ size_t column,
String const& ns)
: file_ (file),
line_ (line),
@@ -81,13 +79,13 @@ namespace CXX
return file_;
}
- UnsignedLong
+ size_t
line () const
{
return line_;
}
- UnsignedLong
+ size_t
column () const
{
return column_;
@@ -101,8 +99,8 @@ namespace CXX
private:
SemanticGraph::Path file_;
- UnsignedLong line_;
- UnsignedLong column_;
+ size_t line_;
+ size_t column_;
String ns_;
};
@@ -136,57 +134,47 @@ namespace CXX
class Context
{
public:
- typedef BackendElements::Regex::Pattern<WideChar> RegexPat;
- typedef BackendElements::Regex::Expression<WideChar> Regex;
- typedef Cult::Containers::Vector<Regex> RegexMapping;
- typedef Cult::Containers::Map<String, String> MapMapping;
- typedef Cult::Containers::Map<String, String> MappingCache;
+ typedef cutl::re::wregex RegexPat;
+ typedef cutl::re::wregexsub Regex;
+ typedef std::vector<Regex> RegexMapping;
+ typedef std::map<String, String> MapMapping;
+ typedef std::map<String, String> MappingCache;
- typedef Cult::Containers::Map<String, String> ReservedNameMap;
- typedef Cult::Containers::Set<String> KeywordSet;
+ typedef std::map<String, String> ReservedNameMap;
+ typedef std::set<String> KeywordSet;
+
+ typedef CXX::options options_type;
public:
Context (std::wostream& o,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- StringLiteralMap const* custom_literals_map,
- NarrowString const& char_type__,
- NarrowString const& char_encoding__,
- Boolean include_with_brackets__,
- NarrowString const& include_prefix__,
- NarrowString const& esymbol,
- Containers::Vector<NarrowString> const& nsm,
- Containers::Vector<NarrowString> const& nsr,
- Boolean trace_namespace_regex_,
- Containers::Vector<NarrowString> const& include_regex,
- Boolean trace_include_regex_,
- Boolean inline_,
- Containers::Vector<NarrowString> const& reserved_name);
+ options_type const& ops,
+ StringLiteralMap const* custom_literals_map);
protected:
Context (Context& c)
: os (c.os),
schema_root (c.schema_root),
schema_path (c.schema_path),
+ options (c.options),
+ std (c.std),
char_type (c.char_type),
char_encoding (c.char_encoding),
L (c.L),
string_type (c.string_type),
+ auto_ptr (c.auto_ptr),
string_literal_map (c.string_literal_map),
- include_with_brackets (c.include_with_brackets),
- include_prefix (c.include_prefix),
type_exp (c.type_exp),
inst_exp (c.inst_exp),
inl (c.inl),
ns_mapping_cache (c.ns_mapping_cache),
xs_ns_ (c.xs_ns_),
cxx_id_expr (c.cxx_id_expr),
- trace_namespace_regex (c.trace_namespace_regex),
urn_mapping (c.urn_mapping),
nsr_mapping (c.nsr_mapping),
nsm_mapping (c.nsm_mapping),
include_mapping (c.include_mapping),
- trace_include_regex (c.trace_include_regex),
reserved_name_map (c.reserved_name_map),
keyword_set (c.keyword_set)
{
@@ -196,25 +184,24 @@ namespace CXX
: os (o),
schema_root (c.schema_root),
schema_path (c.schema_path),
+ options (c.options),
+ std (c.std),
char_type (c.char_type),
char_encoding (c.char_encoding),
L (c.L),
string_type (c.string_type),
+ auto_ptr (c.auto_ptr),
string_literal_map (c.string_literal_map),
- include_with_brackets (c.include_with_brackets),
- include_prefix (c.include_prefix),
type_exp (c.type_exp),
inst_exp (c.inst_exp),
inl (c.inl),
ns_mapping_cache (c.ns_mapping_cache),
xs_ns_ (c.xs_ns_),
cxx_id_expr (c.cxx_id_expr),
- trace_namespace_regex (c.trace_namespace_regex),
urn_mapping (c.urn_mapping),
nsr_mapping (c.nsr_mapping),
nsm_mapping (c.nsm_mapping),
include_mapping (c.include_mapping),
- trace_include_regex (c.trace_include_regex),
reserved_name_map (c.reserved_name_map),
keyword_set (c.keyword_set)
{
@@ -232,11 +219,11 @@ namespace CXX
// advanced by 1 if this Unicode character takes more than one
// underlying character.
//
- static UnsignedLong
- unicode_char (String const& str, Size& pos);
+ static unsigned int
+ unicode_char (String const& str, size_t& pos);
- static UnsignedLong
- unicode_char (WideChar const*& p);
+ static unsigned int
+ unicode_char (wchar_t const*& p);
// Escape C++ keywords and illegal characters.
//
@@ -283,7 +270,7 @@ namespace CXX
// Fully-qualified C++ name.
//
String
- fq_name (SemanticGraph::Nameable& n, Char const* name_key = "name");
+ fq_name (SemanticGraph::Nameable& n, char const* name_key = "name");
public:
static SemanticGraph::Type&
@@ -294,7 +281,7 @@ namespace CXX
process_include_path (String const&) const;
public:
- static Boolean
+ static bool
skip (SemanticGraph::Member& m)
{
// "Subsequent" local element.
@@ -303,28 +290,28 @@ namespace CXX
m.context ().count ("min") == 0;
}
- static UnsignedLong
+ static size_t
min (SemanticGraph::Member const& m)
{
- return m.context ().get<UnsignedLong> ("min");
+ return m.context ().get<size_t> ("min");
}
- static UnsignedLong
+ static size_t
min (SemanticGraph::Any const& a)
{
- return a.context ().get<UnsignedLong> ("min");
+ return a.context ().get<size_t> ("min");
}
- static UnsignedLong
+ static size_t
max (SemanticGraph::Member const& m)
{
- return m.context ().get<UnsignedLong> ("max");
+ return m.context ().get<size_t> ("max");
}
- static UnsignedLong
+ static size_t
max (SemanticGraph::Any const& a)
{
- return a.context ().get<UnsignedLong> ("max");
+ return a.context ().get<size_t> ("max");
}
public:
@@ -342,14 +329,17 @@ namespace CXX
SemanticGraph::Schema& schema_root;
SemanticGraph::Path const& schema_path;
+ options_type const& options;
+
+ cxx_version std;
+
String& char_type;
String& char_encoding;
String& L; // string literal prefix
String& string_type;
- StringLiteralMap const* string_literal_map;
+ String& auto_ptr;
- Boolean& include_with_brackets;
- String& include_prefix;
+ StringLiteralMap const* string_literal_map;
String& type_exp;
String& inst_exp;
@@ -367,9 +357,7 @@ namespace CXX
String char_encoding_;
String L_;
String string_type_;
-
- Boolean include_with_brackets_;
- String include_prefix_;
+ String auto_ptr_;
String type_exp_;
String inst_exp_;
@@ -378,7 +366,6 @@ namespace CXX
private:
RegexPat const cxx_id_expr_;
RegexPat const& cxx_id_expr;
- Boolean trace_namespace_regex;
Regex urn_mapping_;
RegexMapping nsr_mapping_;
MapMapping nsm_mapping_;
@@ -389,7 +376,6 @@ namespace CXX
RegexMapping include_mapping_;
RegexMapping const& include_mapping;
- Boolean trace_include_regex;
ReservedNameMap const& reserved_name_map;
ReservedNameMap reserved_name_map_;
@@ -398,16 +384,16 @@ namespace CXX
KeywordSet keyword_set_;
};
- inline UnsignedLong Context::
- unicode_char (String const& str, Size& pos)
+ inline unsigned int Context::
+ unicode_char (String const& str, size_t& pos)
{
- if (sizeof (WideChar) == 4)
+ if (sizeof (wchar_t) == 4)
{
return str[pos];
}
- else if (sizeof (WideChar) == 2)
+ else if (sizeof (wchar_t) == 2)
{
- WideChar x (str[pos]);
+ wchar_t x (str[pos]);
if (x < 0xD800 || x > 0xDBFF)
return x;
@@ -418,16 +404,16 @@ namespace CXX
return 0;
}
- inline UnsignedLong Context::
- unicode_char (WideChar const*& p)
+ inline unsigned int Context::
+ unicode_char (wchar_t const*& p)
{
- if (sizeof (WideChar) == 4)
+ if (sizeof (wchar_t) == 4)
{
return *p;
}
- else if (sizeof (WideChar) == 2)
+ else if (sizeof (wchar_t) == 2)
{
- WideChar x (*p);
+ wchar_t x (*p);
if (x < 0xD800 || x > 0xDBFF)
return x;
@@ -438,6 +424,21 @@ namespace CXX
return 0;
}
+ // Sources traverser that goes into each schema only once.
+ //
+ struct Sources: Traversal::Sources
+ {
+ virtual void
+ traverse (SemanticGraph::Sources& s)
+ {
+ if (schemas_.insert (&s.schema ()).second)
+ Traversal::Sources::traverse (s);
+ }
+
+ private:
+ std::set<SemanticGraph::Schema*> schemas_;
+ };
+
// Usual namespace mapping.
//
struct Namespace: Traversal::Namespace
@@ -447,10 +448,10 @@ namespace CXX
// First scope name if always empty (global scope). The last flag
// signals the last scope.
//
- virtual Void
- enter (Type&, String const& name, Boolean last) = 0;
+ virtual void
+ enter (Type&, String const& name, bool last) = 0;
- virtual Void
+ virtual void
leave () = 0;
};
@@ -465,10 +466,10 @@ namespace CXX
{
}
- virtual Void
+ virtual void
pre (Type&);
- virtual Void
+ virtual void
post (Type&);
private:
@@ -476,36 +477,35 @@ namespace CXX
ScopeTracker* st_;
};
-
//
//
template <typename X>
struct Has : X
{
- Has (Boolean& result)
+ Has (bool& result)
: result_ (result)
{
}
- virtual Void
+ virtual void
traverse (typename X::Type&)
{
result_ = true;
}
private:
- Boolean& result_;
+ bool& result_;
};
// Checks if scope 'Y' names any of 'X'
//
template <typename X, typename Y>
- Boolean
+ bool
has (Y& y)
{
using SemanticGraph::Scope;
- Boolean result (false);
+ bool result (false);
Has<X> t (result);
for (Scope::NamesIterator i (y.names_begin ()), e (y.names_end ());
@@ -518,12 +518,12 @@ namespace CXX
// Checks if the compositor has any particle of 'X'
//
template <typename X>
- Boolean
+ bool
has_particle (SemanticGraph::Compositor& y)
{
using SemanticGraph::Compositor;
- Boolean result (false);
+ bool result (false);
Has<X> t (result);
for (Compositor::ContainsIterator i (y.contains_begin ()),
@@ -543,7 +543,7 @@ namespace CXX
// Specialization for Complex
//
template <typename X>
- Boolean
+ bool
has_particle (SemanticGraph::Complex& c)
{
return c.contains_compositor_p () &&
@@ -562,61 +562,61 @@ namespace CXX
Traversal::Fundamental::Id,
Traversal::Fundamental::IdRef
{
- virtual Void
+ virtual void
fundamental_type (SemanticGraph::Fundamental::Type& t) = 0;
- virtual Void
+ virtual void
fundamental_template (SemanticGraph::Fundamental::Type& t) = 0;
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Type& t)
{
fundamental_type (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
fundamental_template (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
fundamental_template (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
fundamental_template (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
fundamental_template (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
fundamental_template (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
fundamental_template (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
fundamental_template (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
fundamental_template (t);
diff --git a/xsd/xsd/cxx/literal-map.cxx b/xsd/xsd/cxx/literal-map.cxx
index c531b5e..24bfc52 100644
--- a/xsd/xsd/cxx/literal-map.cxx
+++ b/xsd/xsd/cxx/literal-map.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/literal-map.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <memory> // std::auto_ptr
@@ -9,7 +8,6 @@
#include <iostream>
#include <xercesc/util/XMLUni.hpp>
-#include <xercesc/util/XercesVersion.hpp>
#include <xercesc/framework/LocalFileInputSource.hpp>
@@ -45,7 +43,7 @@ namespace CXX
locator_ = l;
}
- virtual Void
+ virtual void
startElement (const XMLCh* const,
const XMLCh* const lname,
const XMLCh* const,
@@ -81,7 +79,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
endElement (const XMLCh* const,
const XMLCh* const lname,
const XMLCh* const)
@@ -115,13 +113,8 @@ namespace CXX
state_ = s_entry;
}
-#if _XERCES_VERSION >= 30000
- virtual Void
+ virtual void
characters (const XMLCh* const s, const XMLSize_t length)
-#else
- virtual Void
- characters (const XMLCh* const s, const unsigned int length)
-#endif
{
String str (XML::transcode (s, length));
@@ -131,9 +124,9 @@ namespace CXX
lit_ += str;
else
{
- for (Size i (0); i < str.size (); ++i)
+ for (size_t i (0); i < str.size (); ++i)
{
- WideChar c (str[i]);
+ wchar_t c (str[i]);
if (c != 0x20 && c != 0x0A && c != 0x0D && c != 0x09)
{
@@ -149,44 +142,37 @@ namespace CXX
//
enum Severity {s_warning, s_error, s_fatal};
- virtual Void
+ virtual void
warning (const SAXParseException& e)
{
handle (e, s_warning);
}
- virtual Void
+ virtual void
error (const SAXParseException& e)
{
handle (e, s_error);
}
- virtual Void
+ virtual void
fatalError (const SAXParseException& e)
{
handle (e, s_fatal);
}
- virtual Void
+ virtual void
resetErrors ()
{
}
- Void
+ void
handle (const SAXParseException& e, Severity s)
{
- wcerr << file_ << ":";
-
-#if _XERCES_VERSION >= 30000
- wcerr << e.getLineNumber () << ":" << e.getColumnNumber () << ": ";
-#else
- XMLSSize_t l (e.getLineNumber ());
- XMLSSize_t c (e.getColumnNumber ());
- wcerr << (l == -1 ? 0 : l) << ":" << (c == -1 ? 0 : c) << ": ";
-#endif
-
String msg (XML::transcode (e.getMessage ()));
- wcerr << (s == s_warning ? "warning: " : "error: ") << msg << endl;
+
+ wcerr << file_ << ":"
+ << e.getLineNumber () << ":" << e.getColumnNumber () << ": "
+ << (s == s_warning ? "warning: " : "error: ") << msg << endl;
if (s != s_warning)
throw Failed ();
@@ -195,37 +181,17 @@ namespace CXX
size_t
line () const
{
- size_t r (0);
-
- if (locator_ != 0)
- {
-#if _XERCES_VERSION >= 30000
- r = static_cast<size_t> (locator_->getLineNumber ());
-#else
- XMLSSize_t l (locator_->getLineNumber ());
- r = l == -1 ? 0 : static_cast<size_t> (l);
-#endif
- }
-
- return r;
+ return locator_ != 0
+ ? static_cast<size_t> (locator_->getLineNumber ())
+ : 0;
}
size_t
col () const
{
- size_t r (0);
-
- if (locator_ != 0)
- {
-#if _XERCES_VERSION >= 30000
- r = static_cast<size_t> (locator_->getColumnNumber ());
-#else
- XMLSSize_t c (locator_->getColumnNumber ());
- r = c == -1 ? 0 : static_cast<size_t> (c);
-#endif
- }
-
- return r;
+ return locator_ != 0
+ ? static_cast<size_t> (locator_->getColumnNumber ())
+ : 0;
}
private:
@@ -243,8 +209,8 @@ namespace CXX
String file_;
StringLiteralMap& map_;
- Boolean str_seen_;
- Boolean lit_seen_;
+ bool str_seen_;
+ bool lit_seen_;
String str_;
String lit_;
diff --git a/xsd/xsd/cxx/literal-map.hxx b/xsd/xsd/cxx/literal-map.hxx
index 6edeb00..987a531 100644
--- a/xsd/xsd/cxx/literal-map.hxx
+++ b/xsd/xsd/cxx/literal-map.hxx
@@ -1,20 +1,17 @@
// file : xsd/cxx/literal-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_LITERAL_MAP_HXX
#define CXX_LITERAL_MAP_HXX
-#include <cult/types.hxx>
-#include <cult/containers/map.hxx>
+#include <map>
+
+#include <types.hxx>
namespace CXX
{
- using namespace Cult;
- typedef WideString String;
-
- typedef Cult::Containers::Map<String, String> StringLiteralMap;
+ typedef std::map<String, String> StringLiteralMap;
bool
read_literal_map (NarrowString const& file, StringLiteralMap& map);
diff --git a/xsd/xsd/cxx/option-types.cxx b/xsd/xsd/cxx/option-types.cxx
new file mode 100644
index 0000000..78424f0
--- /dev/null
+++ b/xsd/xsd/cxx/option-types.cxx
@@ -0,0 +1,48 @@
+// file : xsd/cxx/option-types.cxx
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#include <istream>
+#include <ostream>
+
+#include <cxx/option-types.hxx>
+
+using namespace std;
+
+namespace CXX
+{
+ //
+ // cxx_version
+ //
+
+ static const char* cxx_version_[] =
+ {
+ "c++98",
+ "c++11"
+ };
+
+ string cxx_version::
+ string () const
+ {
+ return cxx_version_[v_];
+ }
+
+ istream&
+ operator>> (istream& is, cxx_version& v)
+ {
+ string s;
+ is >> s;
+
+ if (!is.fail ())
+ {
+ if (s == "c++98")
+ v = cxx_version::cxx98;
+ else if (s == "c++11")
+ v = cxx_version::cxx11;
+ else
+ is.setstate (istream::failbit);
+ }
+
+ return is;
+ }
+}
diff --git a/xsd/xsd/cxx/option-types.hxx b/xsd/xsd/cxx/option-types.hxx
new file mode 100644
index 0000000..b2377ba
--- /dev/null
+++ b/xsd/xsd/cxx/option-types.hxx
@@ -0,0 +1,35 @@
+// file : xsd/cxx/option-types.hxx
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef XSD_OPTION_TYPES_HXX
+#define XSD_OPTION_TYPES_HXX
+
+#include <iosfwd>
+#include <string>
+
+namespace CXX
+{
+ struct cxx_version
+ {
+ enum value
+ {
+ cxx98,
+ cxx11
+ };
+
+ cxx_version (value v = value (0)) : v_ (v) {}
+ operator value () const {return v_;}
+
+ std::string
+ string () const;
+
+ private:
+ value v_;
+ };
+
+ std::istream&
+ operator>> (std::istream&, cxx_version&);
+}
+
+#endif // XSD_OPTION_TYPES_HXX
diff --git a/xsd/xsd/cxx/options.cli b/xsd/xsd/cxx/options.cli
new file mode 100644
index 0000000..8133b25
--- /dev/null
+++ b/xsd/xsd/cxx/options.cli
@@ -0,0 +1,551 @@
+// file : xsd/cxx/options.cli
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include <cstddef>; // std::size_t
+
+include <types.hxx>; // NarrowString, NarrowStrings
+
+include <cxx/option-types.hxx>;
+
+include <options.cli>;
+
+namespace CXX
+{
+ class options: ::options = 0
+ {
+ // Language.
+ //
+ cxx_version --std = cxx_version::cxx98
+ {
+ "<version>",
+ "Specify the C++ standard that the generated code should conform to.
+ Valid values are \cb{c++98} (default) and \cb{c++11}.
+
+ The C++ standard affects various aspects of the generated code that
+ are discussed in more detail in various mapping-specific
+ documentation. Overall, when C++11 is selected, the generated
+ code relies on the move semantics and uses \cb{std::unique_ptr}
+ instead of deprecated \cb{std::auto_ptr}.
+
+ When the C++11 mode is selected, you normally don't need to
+ perform any extra steps other than enable C++11 in your C++
+ compiler, if required. The XSD compiler will automatically
+ add the necessary macro defines to the generated header files
+ that will switch the header-only XSD runtime library (\cb{libxsd})
+ to the C++11 mode. However, if you include any of the XSD runtime
+ headers directly in your application (normally you just include
+ the generated headers), then you will need to define the
+ \cb{XSD_CXX11} macro for your entire project."
+ };
+
+ // Character type and encoding.
+ //
+ NarrowString --char-type = "char"
+ {
+ "<type>",
+ "Generate code using the provided character <type> instead of the
+ default \cb{char}. Valid values are \cb{char} and \cb{wchar_t}."
+ };
+
+ NarrowString --char-encoding
+ {
+ "<enc>",
+ "Specify the character encoding that should be used in the generated
+ code. Valid values for the \cb{char} character type are \cb{utf8}
+ (default), \cb{iso8859-1}, \cb{lcp} (Xerces-C++ local code page),
+ and \cb{custom}. If you pass \cb{custom} as the value then you will
+ need to include the transcoder implementation header for your
+ encoding at the beginning of the generated header files (see the
+ \cb{--hxx-prologue} option).
+
+ For the \cb{wchar_t} character type the only valid value is \cb{auto}
+ and the encoding is automatically selected between UTF-16 and
+ UTF-32/UCS-4, depending on the \cb{wchar_t} type size."
+ };
+
+ // Output options.
+ //
+ NarrowString --output-dir
+ {
+ "<dir>",
+ "Write generated files to <dir> instead of the current directory."
+ };
+
+ bool --generate-inline
+ {
+ "Generate simple functions inline. This option triggers creation of
+ the inline file."
+ };
+
+ // Extern XML Schema.
+ //
+ bool --generate-xml-schema
+ {
+ "Generate a C++ header file as if the schema being compiled defines the
+ XML Schema namespace. For the C++/Tree mapping, the resulting file will
+ contain definitions for all XML Schema built-in types. For the
+ C++/Parser mapping, the resulting file will contain definitions for
+ all the parser skeletons and implementations corresponding to the
+ XML Schema built-in types.
+
+ The schema file provided to the compiler need not exist and is only
+ used to derive the name of the resulting header file. Use the
+ \cb{--extern-xml-schema} option to include this file in the
+ generated files for other schemas."
+ };
+
+ NarrowString --extern-xml-schema
+ {
+ "<file>",
+ "Include a header file derived from <file> instead of generating the
+ XML Schema namespace mapping inline. The provided file need not
+ exist and is only used to derive the name of the included header
+ file. Use the \cb{--generate-xml-schema} option to generate this
+ header file."
+ };
+
+ // Namespace mapping.
+ //
+ NarrowStrings --namespace-map
+ {
+ "<xns>=<cns>",
+ "Map XML Schema namespace <xns> to C++ namespace <cns>. Repeat
+ this option to specify mapping for more than one XML Schema namespace.
+ For example, the following option:
+
+ \cb{--namespace-map http://example.com/foo/bar=foo::bar}
+
+ Will map the \cb{http://example.com/foo/bar} XML Schema namespace to
+ the \cb{foo::bar} C++ namespace."
+ };
+
+ NarrowStrings --namespace-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate XML
+ Schema namespace names to C++ namespace names. <regex> is a Perl-like
+ regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. Any character can be
+ used as a delimiter instead of \cb{/}. Escaping of the delimiter
+ character in \ci{pattern} or \ci{replacement} is not supported.
+
+ All the regular expressions are pushed into a stack with the last
+ specified expression considered first. The first match that
+ succeeds is used. Regular expressions are applied to a string in
+ the form
+
+ \c{\i{filename} \i{namespace}}
+
+ For example, if you have file \cb{hello.xsd} with namespace
+ \cb{http://example.com/hello} and you run \cb{xsd} on this file,
+ then the string in question will be:
+
+ \cb{hello.xsd. http://example.com/hello}
+
+ For the built-in XML Schema namespace the string is:
+
+ \cb{XMLSchema.xsd http://www.w3.org/2001/XMLSchema}
+
+ The following three steps are performed for each regular expression
+ until the match is found:
+
+ 1. The expression is applied and if the result is empty the next
+ expression is considered.
+
+ 2. All \cb{/} are replaced with \cb{::}.
+
+ 3. The result is verified to be a valid C++ scope name (e.g.,
+ \cb{foo::bar}). If this test succeeds, the result is used as a
+ C++ namespace name.
+
+ As an example, the following expression maps XML Schema namespaces
+ in the form \cb{http://example.com/foo/bar} to C++ namespaces in the
+ form \cb{foo::bar}:
+
+ \cb{%.* http://example.com/(.+)%$1%}
+
+ See also the REGEX AND SHELL QUOTING section below."
+ };
+
+ bool --namespace-regex-trace
+ {
+ "Trace the process of applying regular expressions specified with the
+ \cb{--namespace-regex} option. Use this option to find out why your
+ regular expressions don't do what you expected them to do."
+ };
+
+ // Reserved names.
+ //
+ NarrowStrings --reserved-name
+ {
+ "<n>[=<r>]",
+ "Add name <n> to the list of names that should not be used as
+ identifiers. The name can optionally be followed by \cb{=} and the
+ replacement name <r> that should be used instead. All the C++ keywords
+ are already in this list."
+ };
+
+ // Include options.
+ //
+ bool --include-with-brackets
+ {
+ "Use angle brackets (<>) instead of quotes (\"\") in generated
+ \cb{#include} directives."
+ };
+
+ NarrowString --include-prefix
+ {
+ "<prefix>",
+ "Add <prefix> to generated \cb{#include} directive paths.
+
+ For example, if you had the following import element in your schema
+
+ \cb{<import namespace=\"...\" schemaLocation=\"base.xsd\"/>}
+
+ and compiled this fragment with \cb{--include-prefix schemas/}, then
+ the include directive in the generated code would be:
+
+ \cb{#include \"schemas/base.hxx\"}"
+ };
+
+ NarrowStrings --include-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to transform
+ \cb{#include} directive paths. <regex> is a Perl-like regular
+ expression in the form \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}.
+ Any character can be used as a delimiter instead of \cb{/}. Escaping
+ of the delimiter character in \ci{pattern} or \ci{replacement} is not
+ supported.
+
+ All the regular expressions are pushed into a stack with the last
+ specified expression considered first. The first match that succeeds
+ is used.
+
+ As an example, the following expression transforms paths in the form
+ \cb{schemas/foo/bar} to paths in the form \cb{generated/foo/bar}:
+
+ \cb{%schemas/(.+)%generated/$1%}
+
+ See also the REGEX AND SHELL QUOTING section below."
+ };
+
+ bool --include-regex-trace
+ {
+ "Trace the process of applying regular expressions specified with the
+ \cb{--include-regex} option. Use this option to find out why your
+ regular expressions don't do what you expected them to do."
+ };
+
+ NarrowString --guard-prefix
+ {
+ "<prefix>",
+ "Add <prefix> to generated header inclusion guards. The prefix is
+ transformed to upper case and characters that are illegal in a
+ preprocessor macro name are replaced with underscores. If this
+ option is not specified then the directory part of the input schema
+ file is used as a prefix."
+ };
+
+ // File suffixes.
+ //
+ NarrowString --hxx-suffix = ".hxx"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{.hxx} to
+ construct the name of the header file. Note that this suffix is also
+ used to construct names of header files corresponding to
+ included/imported schemas."
+ };
+
+ NarrowString --ixx-suffix = ".ixx"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{.ixx} to
+ construct the name of the inline file."
+ };
+
+ NarrowString --cxx-suffix = ".cxx"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{.cxx} to
+ construct the name of the source file."
+ };
+
+ NarrowString --fwd-suffix = "-fwd.hxx"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{-fwd.hxx} to
+ construct the name of the forward declaration file."
+ };
+
+ NarrowString --hxx-regex
+ {
+ "<regex>",
+ "Use the provided expression to construct the name of the header file.
+ <regex> is a Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}.
+ Note that this expression is also used to construct names of header
+ files corresponding to included/imported schemas. See also the REGEX
+ AND SHELL QUOTING section below."
+ };
+
+ NarrowString --ixx-regex
+ {
+ "<regex>",
+ "Use the provided expression to construct the name of the inline file.
+ <regex> is a Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. See also the REGEX AND
+ SHELL QUOTING section below."
+ };
+
+ NarrowString --cxx-regex
+ {
+ "<regex>",
+ "Use the provided expression to construct the name of the source file.
+ <regex> is a Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. See also the REGEX AND
+ SHELL QUOTING section below."
+ };
+
+ NarrowString --fwd-regex
+ {
+ "<regex>",
+ "Use the provided expression to construct the name of the forward
+ declaration file. <regex> is a Perl-like regular expression in the
+ form \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. See also the REGEX
+ AND SHELL QUOTING section below."
+ };
+
+ // Prologues/epilogues.
+ //
+ NarrowStrings --hxx-prologue
+ {
+ "<text>",
+ "Insert <text> at the beginning of the header file."
+ };
+
+ NarrowStrings --ixx-prologue
+ {
+ "<text>",
+ "Insert <text> at the beginning of the inline file."
+ };
+
+ NarrowStrings --cxx-prologue
+ {
+ "<text>",
+ "Insert <text> at the beginning of the source file."
+ };
+
+ NarrowStrings --fwd-prologue
+ {
+ "<text>",
+ "Insert <text> at the beginning of the forward declaration file."
+ };
+
+ NarrowStrings --prologue
+ {
+ "<text>",
+ "Insert <text> at the beginning of each generated file for which
+ there is no file-specific prologue."
+ };
+
+ NarrowStrings --hxx-epilogue
+ {
+ "<text>",
+ "Insert <text> at the end of the header file."
+ };
+
+ NarrowStrings --ixx-epilogue
+ {
+ "<text>",
+ "Insert <text> at the end of the inline file."
+ };
+
+ NarrowStrings --cxx-epilogue
+ {
+ "<text>",
+ "Insert <text> at the end of the source file."
+ };
+
+ NarrowStrings --fwd-epilogue
+ {
+ "<text>",
+ "Insert <text> at the end of the forward declaration file."
+ };
+
+ NarrowStrings --epilogue
+ {
+ "<text>",
+ "Insert <text> at the end of each generated file for which there
+ is no file-specific epilogue."
+ };
+
+ NarrowString --hxx-prologue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the beginning of the header file."
+ };
+
+ NarrowString --ixx-prologue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the beginning of the inline file."
+ };
+
+ NarrowString --cxx-prologue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the beginning of the source file."
+ };
+
+ NarrowString --fwd-prologue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the beginning of the forward
+ declaration file."
+ };
+
+ NarrowString --prologue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the beginning of each generated
+ file for which there is no file-specific prologue file."
+ };
+
+ NarrowString --hxx-epilogue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the end of the header file."
+ };
+
+ NarrowString --ixx-epilogue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the end of the inline file."
+ };
+
+ NarrowString --cxx-epilogue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the end of the source file."
+ };
+
+ NarrowString --fwd-epilogue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the end of the forward declaration
+ file."
+ };
+
+ NarrowString --epilogue-file
+ {
+ "<file>",
+ "Insert the content of the <file> at the end of each generated file
+ for which there is no file-specific epilogue file."
+ };
+
+ // Export options.
+ //
+ NarrowString --export-symbol
+ {
+ "<symbol>",
+ "Insert <symbol> in places where DLL export/import control statements
+ (\cb{__declspec(dllexport/dllimport)}) are necessary."
+ };
+
+ bool --export-xml-schema
+ {
+ "Export/import types in the XML Schema namespace using the export
+ symbol provided with the \cb{--export-symbol} option. The
+ \cb{XSD_NO_EXPORT} macro can be used to omit this code during C++
+ compilation, which may be useful if you would like to use the same
+ generated code across multiple platforms."
+ };
+
+ bool --export-maps
+ {
+ "Export polymorphism support maps from a Win32 DLL into which this
+ generated code is placed. This is necessary when your type hierarchy
+ is split across several DLLs since otherwise each DLL will have its
+ own set of maps. In this situation the generated code for the DLL
+ which contains base types and/or substitution group heads should be
+ compiled with this option and the generated code for all other DLLs
+ should be compiled with \cb{--import-maps}. This option is only valid
+ together with \cb{--generate-polymorphic}. The \cb{XSD_NO_EXPORT}
+ macro can be used to omit this code during C++ compilation, which may
+ be useful if you would like to use the same generated code across
+ multiple platforms."
+ };
+
+ bool --import-maps
+ {
+ "Import polymorphism support maps to a Win32 DLL or executable into
+ which this generated code is linked. See the \cb{--export-maps}
+ option documentation for details. This options is only valid together
+ with \cb{--generate-polymorphic}. The \cb{XSD_NO_EXPORT} macro can be
+ used to omit this code during C++ compilation, which may be useful if
+ you would like to use the same generated code across multiple
+ platforms."
+ };
+
+ // Make dependency generation.
+ //
+ bool --generate-dep
+ {
+ "Generate \cb{make} dependency information. This option triggers the
+ creation of the \cb{.d} file containing the dependencies of the
+ generated files on the main schema file as well as all the schema
+ files that it includes/imports, transitively. This dependency file
+ is then normally included into the main \cb{makefile} to implement
+ automatic dependency tracking.
+
+ Note also that automatic dependency generation is not supported in
+ the file-per-type mode (\cb{--file-per-type}). In this case, all
+ the generated files are produced with a single compiler invocation
+ and depend on all the schemas. As a result, it is easier to establish
+ such a dependency manually, perhaps with the help of the
+ \cb{--file-list*} options."
+ };
+
+ bool --generate-dep-only
+ {
+ "Generate \cb{make} dependency information only."
+ };
+
+ bool --dep-phony
+ {
+ "Generate phony targets for included/imported schema files, causing
+ each to depend on nothing. Such dummy rules work around \cb{make}
+ errors caused by the removal of schema files without also updating
+ the dependency file to match."
+ };
+
+ NarrowStrings --dep-target
+ {
+ "<target>",
+ "Change the target of the dependency rule. By default it contains
+ all the generated C++ files as well as the dependency file itself,
+ without any directory prefixes. If you require multiple targets,
+ then you can specify them as a single, space-separated argument or
+ you can repeat this option multiple times."
+ };
+
+ NarrowString --dep-suffix = ".d"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{.d} to
+ construct the name of the dependency file."
+ };
+
+ NarrowString --dep-regex
+ {
+ "<regex>",
+ "Use the provided expression to construct the name of the dependency
+ file. <regex> is a Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. See also the REGEX
+ AND SHELL QUOTING section below."
+ };
+ };
+}
diff --git a/xsd/xsd/cxx/options.cxx b/xsd/xsd/cxx/options.cxx
new file mode 100644
index 0000000..1d2e8fd
--- /dev/null
+++ b/xsd/xsd/cxx/options.cxx
@@ -0,0 +1,638 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+#include <options-parser.hxx>
+//
+// End prologue.
+
+#include <cxx/options.hxx>
+
+#include <map>
+#include <set>
+#include <string>
+#include <vector>
+#include <ostream>
+#include <sstream>
+
+namespace cli
+{
+ template <typename X>
+ struct parser
+ {
+ static void
+ parse (X& x, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string v (s.next ());
+ std::istringstream is (v);
+ if (!(is >> x && is.eof ()))
+ throw invalid_value (o, v);
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <>
+ struct parser<bool>
+ {
+ static void
+ parse (bool& x, scanner& s)
+ {
+ s.next ();
+ x = true;
+ }
+ };
+
+ template <>
+ struct parser<std::string>
+ {
+ static void
+ parse (std::string& x, bool& xs, scanner& s)
+ {
+ const char* o (s.next ());
+
+ if (s.more ())
+ x = s.next ();
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::vector<X> >
+ {
+ static void
+ parse (std::vector<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.push_back (x);
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::set<X> >
+ {
+ static void
+ parse (std::set<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.insert (x);
+ xs = true;
+ }
+ };
+
+ template <typename K, typename V>
+ struct parser<std::map<K, V> >
+ {
+ static void
+ parse (std::map<K, V>& m, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string ov (s.next ());
+ std::string::size_type p = ov.find ('=');
+
+ if (p == std::string::npos)
+ {
+ K k = K ();
+
+ if (!ov.empty ())
+ {
+ std::istringstream ks (ov);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = V ();
+ }
+ else
+ {
+ K k = K ();
+ V v = V ();
+ std::string kstr (ov, 0, p);
+ std::string vstr (ov, p + 1);
+
+ if (!kstr.empty ())
+ {
+ std::istringstream ks (kstr);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ if (!vstr.empty ())
+ {
+ std::istringstream vs (vstr);
+
+ if (!(vs >> v && vs.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = v;
+ }
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X, typename T, T X::*M>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, s);
+ }
+
+ template <typename X, typename T, T X::*M, bool X::*S>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, x.*S, s);
+ }
+}
+
+#include <map>
+#include <cstring>
+
+namespace CXX
+{
+ // options
+ //
+
+ options::
+ options ()
+ : std_ (cxx_version::cxx98),
+ std_specified_ (false),
+ char_type_ ("char"),
+ char_type_specified_ (false),
+ char_encoding_ (),
+ char_encoding_specified_ (false),
+ output_dir_ (),
+ output_dir_specified_ (false),
+ generate_inline_ (),
+ generate_xml_schema_ (),
+ extern_xml_schema_ (),
+ extern_xml_schema_specified_ (false),
+ namespace_map_ (),
+ namespace_map_specified_ (false),
+ namespace_regex_ (),
+ namespace_regex_specified_ (false),
+ namespace_regex_trace_ (),
+ reserved_name_ (),
+ reserved_name_specified_ (false),
+ include_with_brackets_ (),
+ include_prefix_ (),
+ include_prefix_specified_ (false),
+ include_regex_ (),
+ include_regex_specified_ (false),
+ include_regex_trace_ (),
+ guard_prefix_ (),
+ guard_prefix_specified_ (false),
+ hxx_suffix_ (".hxx"),
+ hxx_suffix_specified_ (false),
+ ixx_suffix_ (".ixx"),
+ ixx_suffix_specified_ (false),
+ cxx_suffix_ (".cxx"),
+ cxx_suffix_specified_ (false),
+ fwd_suffix_ ("-fwd.hxx"),
+ fwd_suffix_specified_ (false),
+ hxx_regex_ (),
+ hxx_regex_specified_ (false),
+ ixx_regex_ (),
+ ixx_regex_specified_ (false),
+ cxx_regex_ (),
+ cxx_regex_specified_ (false),
+ fwd_regex_ (),
+ fwd_regex_specified_ (false),
+ hxx_prologue_ (),
+ hxx_prologue_specified_ (false),
+ ixx_prologue_ (),
+ ixx_prologue_specified_ (false),
+ cxx_prologue_ (),
+ cxx_prologue_specified_ (false),
+ fwd_prologue_ (),
+ fwd_prologue_specified_ (false),
+ prologue_ (),
+ prologue_specified_ (false),
+ hxx_epilogue_ (),
+ hxx_epilogue_specified_ (false),
+ ixx_epilogue_ (),
+ ixx_epilogue_specified_ (false),
+ cxx_epilogue_ (),
+ cxx_epilogue_specified_ (false),
+ fwd_epilogue_ (),
+ fwd_epilogue_specified_ (false),
+ epilogue_ (),
+ epilogue_specified_ (false),
+ hxx_prologue_file_ (),
+ hxx_prologue_file_specified_ (false),
+ ixx_prologue_file_ (),
+ ixx_prologue_file_specified_ (false),
+ cxx_prologue_file_ (),
+ cxx_prologue_file_specified_ (false),
+ fwd_prologue_file_ (),
+ fwd_prologue_file_specified_ (false),
+ prologue_file_ (),
+ prologue_file_specified_ (false),
+ hxx_epilogue_file_ (),
+ hxx_epilogue_file_specified_ (false),
+ ixx_epilogue_file_ (),
+ ixx_epilogue_file_specified_ (false),
+ cxx_epilogue_file_ (),
+ cxx_epilogue_file_specified_ (false),
+ fwd_epilogue_file_ (),
+ fwd_epilogue_file_specified_ (false),
+ epilogue_file_ (),
+ epilogue_file_specified_ (false),
+ export_symbol_ (),
+ export_symbol_specified_ (false),
+ export_xml_schema_ (),
+ export_maps_ (),
+ import_maps_ (),
+ generate_dep_ (),
+ generate_dep_only_ (),
+ dep_phony_ (),
+ dep_target_ (),
+ dep_target_specified_ (false),
+ dep_suffix_ (".d"),
+ dep_suffix_specified_ (false),
+ dep_regex_ (),
+ dep_regex_specified_ (false)
+ {
+ }
+
+ void options::
+ print_usage (::std::wostream& os)
+ {
+ os << "--std <version> Specify the C++ standard that the generated code" << ::std::endl
+ << " should conform to." << ::std::endl;
+
+ os << "--char-type <type> Generate code using the provided character <type>" << ::std::endl
+ << " instead of the default 'char'." << ::std::endl;
+
+ os << "--char-encoding <enc> Specify the character encoding that should be used" << ::std::endl
+ << " in the generated code." << ::std::endl;
+
+ os << "--output-dir <dir> Write generated files to <dir> instead of the" << ::std::endl
+ << " current directory." << ::std::endl;
+
+ os << "--generate-inline Generate simple functions inline." << ::std::endl;
+
+ os << "--generate-xml-schema Generate a C++ header file as if the schema being" << ::std::endl
+ << " compiled defines the XML Schema namespace." << ::std::endl;
+
+ os << "--extern-xml-schema <file> Include a header file derived from <file> instead" << ::std::endl
+ << " of generating the XML Schema namespace mapping" << ::std::endl
+ << " inline." << ::std::endl;
+
+ os << "--namespace-map <xns>=<cns> Map XML Schema namespace <xns> to C++ namespace" << ::std::endl
+ << " <cns>." << ::std::endl;
+
+ os << "--namespace-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema namespace names to" << ::std::endl
+ << " C++ namespace names." << ::std::endl;
+
+ os << "--namespace-regex-trace Trace the process of applying regular expressions" << ::std::endl
+ << " specified with the '--namespace-regex' option." << ::std::endl;
+
+ os << "--reserved-name <n>[=<r>] Add name <n> to the list of names that should not" << ::std::endl
+ << " be used as identifiers." << ::std::endl;
+
+ os << "--include-with-brackets Use angle brackets (<>) instead of quotes (\"\") in" << ::std::endl
+ << " generated '#include' directives." << ::std::endl;
+
+ os << "--include-prefix <prefix> Add <prefix> to generated '#include' directive" << ::std::endl
+ << " paths." << ::std::endl;
+
+ os << "--include-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to transform '#include' directive paths." << ::std::endl;
+
+ os << "--include-regex-trace Trace the process of applying regular expressions" << ::std::endl
+ << " specified with the '--include-regex' option." << ::std::endl;
+
+ os << "--guard-prefix <prefix> Add <prefix> to generated header inclusion guards." << ::std::endl;
+
+ os << "--hxx-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '.hxx' to construct the name of the header file." << ::std::endl;
+
+ os << "--ixx-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '.ixx' to construct the name of the inline file." << ::std::endl;
+
+ os << "--cxx-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '.cxx' to construct the name of the source file." << ::std::endl;
+
+ os << "--fwd-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '-fwd.hxx' to construct the name of the forward" << ::std::endl
+ << " declaration file." << ::std::endl;
+
+ os << "--hxx-regex <regex> Use the provided expression to construct the name" << ::std::endl
+ << " of the header file." << ::std::endl;
+
+ os << "--ixx-regex <regex> Use the provided expression to construct the name" << ::std::endl
+ << " of the inline file." << ::std::endl;
+
+ os << "--cxx-regex <regex> Use the provided expression to construct the name" << ::std::endl
+ << " of the source file." << ::std::endl;
+
+ os << "--fwd-regex <regex> Use the provided expression to construct the name" << ::std::endl
+ << " of the forward declaration file." << ::std::endl;
+
+ os << "--hxx-prologue <text> Insert <text> at the beginning of the header file." << ::std::endl;
+
+ os << "--ixx-prologue <text> Insert <text> at the beginning of the inline file." << ::std::endl;
+
+ os << "--cxx-prologue <text> Insert <text> at the beginning of the source file." << ::std::endl;
+
+ os << "--fwd-prologue <text> Insert <text> at the beginning of the forward" << ::std::endl
+ << " declaration file." << ::std::endl;
+
+ os << "--prologue <text> Insert <text> at the beginning of each generated" << ::std::endl
+ << " file for which there is no file-specific prologue." << ::std::endl;
+
+ os << "--hxx-epilogue <text> Insert <text> at the end of the header file." << ::std::endl;
+
+ os << "--ixx-epilogue <text> Insert <text> at the end of the inline file." << ::std::endl;
+
+ os << "--cxx-epilogue <text> Insert <text> at the end of the source file." << ::std::endl;
+
+ os << "--fwd-epilogue <text> Insert <text> at the end of the forward" << ::std::endl
+ << " declaration file." << ::std::endl;
+
+ os << "--epilogue <text> Insert <text> at the end of each generated file" << ::std::endl
+ << " for which there is no file-specific epilogue." << ::std::endl;
+
+ os << "--hxx-prologue-file <file> Insert the content of the <file> at the beginning" << ::std::endl
+ << " of the header file." << ::std::endl;
+
+ os << "--ixx-prologue-file <file> Insert the content of the <file> at the beginning" << ::std::endl
+ << " of the inline file." << ::std::endl;
+
+ os << "--cxx-prologue-file <file> Insert the content of the <file> at the beginning" << ::std::endl
+ << " of the source file." << ::std::endl;
+
+ os << "--fwd-prologue-file <file> Insert the content of the <file> at the beginning" << ::std::endl
+ << " of the forward declaration file." << ::std::endl;
+
+ os << "--prologue-file <file> Insert the content of the <file> at the beginning" << ::std::endl
+ << " of each generated file for which there is no" << ::std::endl
+ << " file-specific prologue file." << ::std::endl;
+
+ os << "--hxx-epilogue-file <file> Insert the content of the <file> at the end of the" << ::std::endl
+ << " header file." << ::std::endl;
+
+ os << "--ixx-epilogue-file <file> Insert the content of the <file> at the end of the" << ::std::endl
+ << " inline file." << ::std::endl;
+
+ os << "--cxx-epilogue-file <file> Insert the content of the <file> at the end of the" << ::std::endl
+ << " source file." << ::std::endl;
+
+ os << "--fwd-epilogue-file <file> Insert the content of the <file> at the end of the" << ::std::endl
+ << " forward declaration file." << ::std::endl;
+
+ os << "--epilogue-file <file> Insert the content of the <file> at the end of" << ::std::endl
+ << " each generated file for which there is no" << ::std::endl
+ << " file-specific epilogue file." << ::std::endl;
+
+ os << "--export-symbol <symbol> Insert <symbol> in places where DLL export/import" << ::std::endl
+ << " control statements" << ::std::endl
+ << " ('__declspec(dllexport/dllimport)') are necessary." << ::std::endl;
+
+ os << "--export-xml-schema Export/import types in the XML Schema namespace" << ::std::endl
+ << " using the export symbol provided with the" << ::std::endl
+ << " '--export-symbol' option." << ::std::endl;
+
+ os << "--export-maps Export polymorphism support maps from a Win32 DLL" << ::std::endl
+ << " into which this generated code is placed." << ::std::endl;
+
+ os << "--import-maps Import polymorphism support maps to a Win32 DLL or" << ::std::endl
+ << " executable into which this generated code is" << ::std::endl
+ << " linked." << ::std::endl;
+
+ os << "--generate-dep Generate 'make' dependency information." << ::std::endl;
+
+ os << "--generate-dep-only Generate 'make' dependency information only." << ::std::endl;
+
+ os << "--dep-phony Generate phony targets for included/imported" << ::std::endl
+ << " schema files, causing each to depend on nothing." << ::std::endl;
+
+ os << "--dep-target <target> Change the target of the dependency rule." << ::std::endl;
+
+ os << "--dep-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '.d' to construct the name of the dependency file." << ::std::endl;
+
+ os << "--dep-regex <regex> Use the provided expression to construct the name" << ::std::endl
+ << " of the dependency file." << ::std::endl;
+ }
+
+ typedef
+ std::map<std::string, void (*) (options&, ::cli::scanner&)>
+ _cli_options_map;
+
+ static _cli_options_map _cli_options_map_;
+
+ struct _cli_options_map_init
+ {
+ _cli_options_map_init ()
+ {
+ _cli_options_map_["--std"] =
+ &::cli::thunk< options, cxx_version, &options::std_,
+ &options::std_specified_ >;
+ _cli_options_map_["--char-type"] =
+ &::cli::thunk< options, NarrowString, &options::char_type_,
+ &options::char_type_specified_ >;
+ _cli_options_map_["--char-encoding"] =
+ &::cli::thunk< options, NarrowString, &options::char_encoding_,
+ &options::char_encoding_specified_ >;
+ _cli_options_map_["--output-dir"] =
+ &::cli::thunk< options, NarrowString, &options::output_dir_,
+ &options::output_dir_specified_ >;
+ _cli_options_map_["--generate-inline"] =
+ &::cli::thunk< options, bool, &options::generate_inline_ >;
+ _cli_options_map_["--generate-xml-schema"] =
+ &::cli::thunk< options, bool, &options::generate_xml_schema_ >;
+ _cli_options_map_["--extern-xml-schema"] =
+ &::cli::thunk< options, NarrowString, &options::extern_xml_schema_,
+ &options::extern_xml_schema_specified_ >;
+ _cli_options_map_["--namespace-map"] =
+ &::cli::thunk< options, NarrowStrings, &options::namespace_map_,
+ &options::namespace_map_specified_ >;
+ _cli_options_map_["--namespace-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::namespace_regex_,
+ &options::namespace_regex_specified_ >;
+ _cli_options_map_["--namespace-regex-trace"] =
+ &::cli::thunk< options, bool, &options::namespace_regex_trace_ >;
+ _cli_options_map_["--reserved-name"] =
+ &::cli::thunk< options, NarrowStrings, &options::reserved_name_,
+ &options::reserved_name_specified_ >;
+ _cli_options_map_["--include-with-brackets"] =
+ &::cli::thunk< options, bool, &options::include_with_brackets_ >;
+ _cli_options_map_["--include-prefix"] =
+ &::cli::thunk< options, NarrowString, &options::include_prefix_,
+ &options::include_prefix_specified_ >;
+ _cli_options_map_["--include-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::include_regex_,
+ &options::include_regex_specified_ >;
+ _cli_options_map_["--include-regex-trace"] =
+ &::cli::thunk< options, bool, &options::include_regex_trace_ >;
+ _cli_options_map_["--guard-prefix"] =
+ &::cli::thunk< options, NarrowString, &options::guard_prefix_,
+ &options::guard_prefix_specified_ >;
+ _cli_options_map_["--hxx-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::hxx_suffix_,
+ &options::hxx_suffix_specified_ >;
+ _cli_options_map_["--ixx-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::ixx_suffix_,
+ &options::ixx_suffix_specified_ >;
+ _cli_options_map_["--cxx-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::cxx_suffix_,
+ &options::cxx_suffix_specified_ >;
+ _cli_options_map_["--fwd-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::fwd_suffix_,
+ &options::fwd_suffix_specified_ >;
+ _cli_options_map_["--hxx-regex"] =
+ &::cli::thunk< options, NarrowString, &options::hxx_regex_,
+ &options::hxx_regex_specified_ >;
+ _cli_options_map_["--ixx-regex"] =
+ &::cli::thunk< options, NarrowString, &options::ixx_regex_,
+ &options::ixx_regex_specified_ >;
+ _cli_options_map_["--cxx-regex"] =
+ &::cli::thunk< options, NarrowString, &options::cxx_regex_,
+ &options::cxx_regex_specified_ >;
+ _cli_options_map_["--fwd-regex"] =
+ &::cli::thunk< options, NarrowString, &options::fwd_regex_,
+ &options::fwd_regex_specified_ >;
+ _cli_options_map_["--hxx-prologue"] =
+ &::cli::thunk< options, NarrowStrings, &options::hxx_prologue_,
+ &options::hxx_prologue_specified_ >;
+ _cli_options_map_["--ixx-prologue"] =
+ &::cli::thunk< options, NarrowStrings, &options::ixx_prologue_,
+ &options::ixx_prologue_specified_ >;
+ _cli_options_map_["--cxx-prologue"] =
+ &::cli::thunk< options, NarrowStrings, &options::cxx_prologue_,
+ &options::cxx_prologue_specified_ >;
+ _cli_options_map_["--fwd-prologue"] =
+ &::cli::thunk< options, NarrowStrings, &options::fwd_prologue_,
+ &options::fwd_prologue_specified_ >;
+ _cli_options_map_["--prologue"] =
+ &::cli::thunk< options, NarrowStrings, &options::prologue_,
+ &options::prologue_specified_ >;
+ _cli_options_map_["--hxx-epilogue"] =
+ &::cli::thunk< options, NarrowStrings, &options::hxx_epilogue_,
+ &options::hxx_epilogue_specified_ >;
+ _cli_options_map_["--ixx-epilogue"] =
+ &::cli::thunk< options, NarrowStrings, &options::ixx_epilogue_,
+ &options::ixx_epilogue_specified_ >;
+ _cli_options_map_["--cxx-epilogue"] =
+ &::cli::thunk< options, NarrowStrings, &options::cxx_epilogue_,
+ &options::cxx_epilogue_specified_ >;
+ _cli_options_map_["--fwd-epilogue"] =
+ &::cli::thunk< options, NarrowStrings, &options::fwd_epilogue_,
+ &options::fwd_epilogue_specified_ >;
+ _cli_options_map_["--epilogue"] =
+ &::cli::thunk< options, NarrowStrings, &options::epilogue_,
+ &options::epilogue_specified_ >;
+ _cli_options_map_["--hxx-prologue-file"] =
+ &::cli::thunk< options, NarrowString, &options::hxx_prologue_file_,
+ &options::hxx_prologue_file_specified_ >;
+ _cli_options_map_["--ixx-prologue-file"] =
+ &::cli::thunk< options, NarrowString, &options::ixx_prologue_file_,
+ &options::ixx_prologue_file_specified_ >;
+ _cli_options_map_["--cxx-prologue-file"] =
+ &::cli::thunk< options, NarrowString, &options::cxx_prologue_file_,
+ &options::cxx_prologue_file_specified_ >;
+ _cli_options_map_["--fwd-prologue-file"] =
+ &::cli::thunk< options, NarrowString, &options::fwd_prologue_file_,
+ &options::fwd_prologue_file_specified_ >;
+ _cli_options_map_["--prologue-file"] =
+ &::cli::thunk< options, NarrowString, &options::prologue_file_,
+ &options::prologue_file_specified_ >;
+ _cli_options_map_["--hxx-epilogue-file"] =
+ &::cli::thunk< options, NarrowString, &options::hxx_epilogue_file_,
+ &options::hxx_epilogue_file_specified_ >;
+ _cli_options_map_["--ixx-epilogue-file"] =
+ &::cli::thunk< options, NarrowString, &options::ixx_epilogue_file_,
+ &options::ixx_epilogue_file_specified_ >;
+ _cli_options_map_["--cxx-epilogue-file"] =
+ &::cli::thunk< options, NarrowString, &options::cxx_epilogue_file_,
+ &options::cxx_epilogue_file_specified_ >;
+ _cli_options_map_["--fwd-epilogue-file"] =
+ &::cli::thunk< options, NarrowString, &options::fwd_epilogue_file_,
+ &options::fwd_epilogue_file_specified_ >;
+ _cli_options_map_["--epilogue-file"] =
+ &::cli::thunk< options, NarrowString, &options::epilogue_file_,
+ &options::epilogue_file_specified_ >;
+ _cli_options_map_["--export-symbol"] =
+ &::cli::thunk< options, NarrowString, &options::export_symbol_,
+ &options::export_symbol_specified_ >;
+ _cli_options_map_["--export-xml-schema"] =
+ &::cli::thunk< options, bool, &options::export_xml_schema_ >;
+ _cli_options_map_["--export-maps"] =
+ &::cli::thunk< options, bool, &options::export_maps_ >;
+ _cli_options_map_["--import-maps"] =
+ &::cli::thunk< options, bool, &options::import_maps_ >;
+ _cli_options_map_["--generate-dep"] =
+ &::cli::thunk< options, bool, &options::generate_dep_ >;
+ _cli_options_map_["--generate-dep-only"] =
+ &::cli::thunk< options, bool, &options::generate_dep_only_ >;
+ _cli_options_map_["--dep-phony"] =
+ &::cli::thunk< options, bool, &options::dep_phony_ >;
+ _cli_options_map_["--dep-target"] =
+ &::cli::thunk< options, NarrowStrings, &options::dep_target_,
+ &options::dep_target_specified_ >;
+ _cli_options_map_["--dep-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::dep_suffix_,
+ &options::dep_suffix_specified_ >;
+ _cli_options_map_["--dep-regex"] =
+ &::cli::thunk< options, NarrowString, &options::dep_regex_,
+ &options::dep_regex_specified_ >;
+ }
+ };
+
+ static _cli_options_map_init _cli_options_map_init_;
+
+ bool options::
+ _parse (const char* o, ::cli::scanner& s)
+ {
+ _cli_options_map::const_iterator i (_cli_options_map_.find (o));
+
+ if (i != _cli_options_map_.end ())
+ {
+ (*(i->second)) (*this, s);
+ return true;
+ }
+
+ // options base
+ //
+ if (::options::_parse (o, s))
+ return true;
+
+ return false;
+ }
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
diff --git a/xsd/xsd/cxx/options.hxx b/xsd/xsd/cxx/options.hxx
new file mode 100644
index 0000000..dea93a0
--- /dev/null
+++ b/xsd/xsd/cxx/options.hxx
@@ -0,0 +1,440 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+#ifndef CXX_OPTIONS_HXX
+#define CXX_OPTIONS_HXX
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+#include <cstddef>
+
+#include <types.hxx>
+
+#include <cxx/option-types.hxx>
+
+#include <options.hxx>
+
+namespace CXX
+{
+ class options: public ::options
+ {
+ public:
+ // Option accessors.
+ //
+ const cxx_version&
+ std () const;
+
+ bool
+ std_specified () const;
+
+ const NarrowString&
+ char_type () const;
+
+ bool
+ char_type_specified () const;
+
+ const NarrowString&
+ char_encoding () const;
+
+ bool
+ char_encoding_specified () const;
+
+ const NarrowString&
+ output_dir () const;
+
+ bool
+ output_dir_specified () const;
+
+ const bool&
+ generate_inline () const;
+
+ const bool&
+ generate_xml_schema () const;
+
+ const NarrowString&
+ extern_xml_schema () const;
+
+ bool
+ extern_xml_schema_specified () const;
+
+ const NarrowStrings&
+ namespace_map () const;
+
+ bool
+ namespace_map_specified () const;
+
+ const NarrowStrings&
+ namespace_regex () const;
+
+ bool
+ namespace_regex_specified () const;
+
+ const bool&
+ namespace_regex_trace () const;
+
+ const NarrowStrings&
+ reserved_name () const;
+
+ bool
+ reserved_name_specified () const;
+
+ const bool&
+ include_with_brackets () const;
+
+ const NarrowString&
+ include_prefix () const;
+
+ bool
+ include_prefix_specified () const;
+
+ const NarrowStrings&
+ include_regex () const;
+
+ bool
+ include_regex_specified () const;
+
+ const bool&
+ include_regex_trace () const;
+
+ const NarrowString&
+ guard_prefix () const;
+
+ bool
+ guard_prefix_specified () const;
+
+ const NarrowString&
+ hxx_suffix () const;
+
+ bool
+ hxx_suffix_specified () const;
+
+ const NarrowString&
+ ixx_suffix () const;
+
+ bool
+ ixx_suffix_specified () const;
+
+ const NarrowString&
+ cxx_suffix () const;
+
+ bool
+ cxx_suffix_specified () const;
+
+ const NarrowString&
+ fwd_suffix () const;
+
+ bool
+ fwd_suffix_specified () const;
+
+ const NarrowString&
+ hxx_regex () const;
+
+ bool
+ hxx_regex_specified () const;
+
+ const NarrowString&
+ ixx_regex () const;
+
+ bool
+ ixx_regex_specified () const;
+
+ const NarrowString&
+ cxx_regex () const;
+
+ bool
+ cxx_regex_specified () const;
+
+ const NarrowString&
+ fwd_regex () const;
+
+ bool
+ fwd_regex_specified () const;
+
+ const NarrowStrings&
+ hxx_prologue () const;
+
+ bool
+ hxx_prologue_specified () const;
+
+ const NarrowStrings&
+ ixx_prologue () const;
+
+ bool
+ ixx_prologue_specified () const;
+
+ const NarrowStrings&
+ cxx_prologue () const;
+
+ bool
+ cxx_prologue_specified () const;
+
+ const NarrowStrings&
+ fwd_prologue () const;
+
+ bool
+ fwd_prologue_specified () const;
+
+ const NarrowStrings&
+ prologue () const;
+
+ bool
+ prologue_specified () const;
+
+ const NarrowStrings&
+ hxx_epilogue () const;
+
+ bool
+ hxx_epilogue_specified () const;
+
+ const NarrowStrings&
+ ixx_epilogue () const;
+
+ bool
+ ixx_epilogue_specified () const;
+
+ const NarrowStrings&
+ cxx_epilogue () const;
+
+ bool
+ cxx_epilogue_specified () const;
+
+ const NarrowStrings&
+ fwd_epilogue () const;
+
+ bool
+ fwd_epilogue_specified () const;
+
+ const NarrowStrings&
+ epilogue () const;
+
+ bool
+ epilogue_specified () const;
+
+ const NarrowString&
+ hxx_prologue_file () const;
+
+ bool
+ hxx_prologue_file_specified () const;
+
+ const NarrowString&
+ ixx_prologue_file () const;
+
+ bool
+ ixx_prologue_file_specified () const;
+
+ const NarrowString&
+ cxx_prologue_file () const;
+
+ bool
+ cxx_prologue_file_specified () const;
+
+ const NarrowString&
+ fwd_prologue_file () const;
+
+ bool
+ fwd_prologue_file_specified () const;
+
+ const NarrowString&
+ prologue_file () const;
+
+ bool
+ prologue_file_specified () const;
+
+ const NarrowString&
+ hxx_epilogue_file () const;
+
+ bool
+ hxx_epilogue_file_specified () const;
+
+ const NarrowString&
+ ixx_epilogue_file () const;
+
+ bool
+ ixx_epilogue_file_specified () const;
+
+ const NarrowString&
+ cxx_epilogue_file () const;
+
+ bool
+ cxx_epilogue_file_specified () const;
+
+ const NarrowString&
+ fwd_epilogue_file () const;
+
+ bool
+ fwd_epilogue_file_specified () const;
+
+ const NarrowString&
+ epilogue_file () const;
+
+ bool
+ epilogue_file_specified () const;
+
+ const NarrowString&
+ export_symbol () const;
+
+ bool
+ export_symbol_specified () const;
+
+ const bool&
+ export_xml_schema () const;
+
+ const bool&
+ export_maps () const;
+
+ const bool&
+ import_maps () const;
+
+ const bool&
+ generate_dep () const;
+
+ const bool&
+ generate_dep_only () const;
+
+ const bool&
+ dep_phony () const;
+
+ const NarrowStrings&
+ dep_target () const;
+
+ bool
+ dep_target_specified () const;
+
+ const NarrowString&
+ dep_suffix () const;
+
+ bool
+ dep_suffix_specified () const;
+
+ const NarrowString&
+ dep_regex () const;
+
+ bool
+ dep_regex_specified () const;
+
+ // Print usage information.
+ //
+ static void
+ print_usage (::std::wostream&);
+
+ // Implementation details.
+ //
+ protected:
+ options ();
+
+ bool
+ _parse (const char*, ::cli::scanner&);
+
+ public:
+ cxx_version std_;
+ bool std_specified_;
+ NarrowString char_type_;
+ bool char_type_specified_;
+ NarrowString char_encoding_;
+ bool char_encoding_specified_;
+ NarrowString output_dir_;
+ bool output_dir_specified_;
+ bool generate_inline_;
+ bool generate_xml_schema_;
+ NarrowString extern_xml_schema_;
+ bool extern_xml_schema_specified_;
+ NarrowStrings namespace_map_;
+ bool namespace_map_specified_;
+ NarrowStrings namespace_regex_;
+ bool namespace_regex_specified_;
+ bool namespace_regex_trace_;
+ NarrowStrings reserved_name_;
+ bool reserved_name_specified_;
+ bool include_with_brackets_;
+ NarrowString include_prefix_;
+ bool include_prefix_specified_;
+ NarrowStrings include_regex_;
+ bool include_regex_specified_;
+ bool include_regex_trace_;
+ NarrowString guard_prefix_;
+ bool guard_prefix_specified_;
+ NarrowString hxx_suffix_;
+ bool hxx_suffix_specified_;
+ NarrowString ixx_suffix_;
+ bool ixx_suffix_specified_;
+ NarrowString cxx_suffix_;
+ bool cxx_suffix_specified_;
+ NarrowString fwd_suffix_;
+ bool fwd_suffix_specified_;
+ NarrowString hxx_regex_;
+ bool hxx_regex_specified_;
+ NarrowString ixx_regex_;
+ bool ixx_regex_specified_;
+ NarrowString cxx_regex_;
+ bool cxx_regex_specified_;
+ NarrowString fwd_regex_;
+ bool fwd_regex_specified_;
+ NarrowStrings hxx_prologue_;
+ bool hxx_prologue_specified_;
+ NarrowStrings ixx_prologue_;
+ bool ixx_prologue_specified_;
+ NarrowStrings cxx_prologue_;
+ bool cxx_prologue_specified_;
+ NarrowStrings fwd_prologue_;
+ bool fwd_prologue_specified_;
+ NarrowStrings prologue_;
+ bool prologue_specified_;
+ NarrowStrings hxx_epilogue_;
+ bool hxx_epilogue_specified_;
+ NarrowStrings ixx_epilogue_;
+ bool ixx_epilogue_specified_;
+ NarrowStrings cxx_epilogue_;
+ bool cxx_epilogue_specified_;
+ NarrowStrings fwd_epilogue_;
+ bool fwd_epilogue_specified_;
+ NarrowStrings epilogue_;
+ bool epilogue_specified_;
+ NarrowString hxx_prologue_file_;
+ bool hxx_prologue_file_specified_;
+ NarrowString ixx_prologue_file_;
+ bool ixx_prologue_file_specified_;
+ NarrowString cxx_prologue_file_;
+ bool cxx_prologue_file_specified_;
+ NarrowString fwd_prologue_file_;
+ bool fwd_prologue_file_specified_;
+ NarrowString prologue_file_;
+ bool prologue_file_specified_;
+ NarrowString hxx_epilogue_file_;
+ bool hxx_epilogue_file_specified_;
+ NarrowString ixx_epilogue_file_;
+ bool ixx_epilogue_file_specified_;
+ NarrowString cxx_epilogue_file_;
+ bool cxx_epilogue_file_specified_;
+ NarrowString fwd_epilogue_file_;
+ bool fwd_epilogue_file_specified_;
+ NarrowString epilogue_file_;
+ bool epilogue_file_specified_;
+ NarrowString export_symbol_;
+ bool export_symbol_specified_;
+ bool export_xml_schema_;
+ bool export_maps_;
+ bool import_maps_;
+ bool generate_dep_;
+ bool generate_dep_only_;
+ bool dep_phony_;
+ NarrowStrings dep_target_;
+ bool dep_target_specified_;
+ NarrowString dep_suffix_;
+ bool dep_suffix_specified_;
+ NarrowString dep_regex_;
+ bool dep_regex_specified_;
+ };
+}
+
+#include <cxx/options.ixx>
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
+#endif // CXX_OPTIONS_HXX
diff --git a/xsd/xsd/cxx/options.ixx b/xsd/xsd/cxx/options.ixx
new file mode 100644
index 0000000..0a8cafa
--- /dev/null
+++ b/xsd/xsd/cxx/options.ixx
@@ -0,0 +1,601 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+namespace CXX
+{
+ // options
+ //
+
+ inline const cxx_version& options::
+ std () const
+ {
+ return this->std_;
+ }
+
+ inline bool options::
+ std_specified () const
+ {
+ return this->std_specified_;
+ }
+
+ inline const NarrowString& options::
+ char_type () const
+ {
+ return this->char_type_;
+ }
+
+ inline bool options::
+ char_type_specified () const
+ {
+ return this->char_type_specified_;
+ }
+
+ inline const NarrowString& options::
+ char_encoding () const
+ {
+ return this->char_encoding_;
+ }
+
+ inline bool options::
+ char_encoding_specified () const
+ {
+ return this->char_encoding_specified_;
+ }
+
+ inline const NarrowString& options::
+ output_dir () const
+ {
+ return this->output_dir_;
+ }
+
+ inline bool options::
+ output_dir_specified () const
+ {
+ return this->output_dir_specified_;
+ }
+
+ inline const bool& options::
+ generate_inline () const
+ {
+ return this->generate_inline_;
+ }
+
+ inline const bool& options::
+ generate_xml_schema () const
+ {
+ return this->generate_xml_schema_;
+ }
+
+ inline const NarrowString& options::
+ extern_xml_schema () const
+ {
+ return this->extern_xml_schema_;
+ }
+
+ inline bool options::
+ extern_xml_schema_specified () const
+ {
+ return this->extern_xml_schema_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ namespace_map () const
+ {
+ return this->namespace_map_;
+ }
+
+ inline bool options::
+ namespace_map_specified () const
+ {
+ return this->namespace_map_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ namespace_regex () const
+ {
+ return this->namespace_regex_;
+ }
+
+ inline bool options::
+ namespace_regex_specified () const
+ {
+ return this->namespace_regex_specified_;
+ }
+
+ inline const bool& options::
+ namespace_regex_trace () const
+ {
+ return this->namespace_regex_trace_;
+ }
+
+ inline const NarrowStrings& options::
+ reserved_name () const
+ {
+ return this->reserved_name_;
+ }
+
+ inline bool options::
+ reserved_name_specified () const
+ {
+ return this->reserved_name_specified_;
+ }
+
+ inline const bool& options::
+ include_with_brackets () const
+ {
+ return this->include_with_brackets_;
+ }
+
+ inline const NarrowString& options::
+ include_prefix () const
+ {
+ return this->include_prefix_;
+ }
+
+ inline bool options::
+ include_prefix_specified () const
+ {
+ return this->include_prefix_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ include_regex () const
+ {
+ return this->include_regex_;
+ }
+
+ inline bool options::
+ include_regex_specified () const
+ {
+ return this->include_regex_specified_;
+ }
+
+ inline const bool& options::
+ include_regex_trace () const
+ {
+ return this->include_regex_trace_;
+ }
+
+ inline const NarrowString& options::
+ guard_prefix () const
+ {
+ return this->guard_prefix_;
+ }
+
+ inline bool options::
+ guard_prefix_specified () const
+ {
+ return this->guard_prefix_specified_;
+ }
+
+ inline const NarrowString& options::
+ hxx_suffix () const
+ {
+ return this->hxx_suffix_;
+ }
+
+ inline bool options::
+ hxx_suffix_specified () const
+ {
+ return this->hxx_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ ixx_suffix () const
+ {
+ return this->ixx_suffix_;
+ }
+
+ inline bool options::
+ ixx_suffix_specified () const
+ {
+ return this->ixx_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ cxx_suffix () const
+ {
+ return this->cxx_suffix_;
+ }
+
+ inline bool options::
+ cxx_suffix_specified () const
+ {
+ return this->cxx_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ fwd_suffix () const
+ {
+ return this->fwd_suffix_;
+ }
+
+ inline bool options::
+ fwd_suffix_specified () const
+ {
+ return this->fwd_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ hxx_regex () const
+ {
+ return this->hxx_regex_;
+ }
+
+ inline bool options::
+ hxx_regex_specified () const
+ {
+ return this->hxx_regex_specified_;
+ }
+
+ inline const NarrowString& options::
+ ixx_regex () const
+ {
+ return this->ixx_regex_;
+ }
+
+ inline bool options::
+ ixx_regex_specified () const
+ {
+ return this->ixx_regex_specified_;
+ }
+
+ inline const NarrowString& options::
+ cxx_regex () const
+ {
+ return this->cxx_regex_;
+ }
+
+ inline bool options::
+ cxx_regex_specified () const
+ {
+ return this->cxx_regex_specified_;
+ }
+
+ inline const NarrowString& options::
+ fwd_regex () const
+ {
+ return this->fwd_regex_;
+ }
+
+ inline bool options::
+ fwd_regex_specified () const
+ {
+ return this->fwd_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ hxx_prologue () const
+ {
+ return this->hxx_prologue_;
+ }
+
+ inline bool options::
+ hxx_prologue_specified () const
+ {
+ return this->hxx_prologue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ ixx_prologue () const
+ {
+ return this->ixx_prologue_;
+ }
+
+ inline bool options::
+ ixx_prologue_specified () const
+ {
+ return this->ixx_prologue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ cxx_prologue () const
+ {
+ return this->cxx_prologue_;
+ }
+
+ inline bool options::
+ cxx_prologue_specified () const
+ {
+ return this->cxx_prologue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ fwd_prologue () const
+ {
+ return this->fwd_prologue_;
+ }
+
+ inline bool options::
+ fwd_prologue_specified () const
+ {
+ return this->fwd_prologue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ prologue () const
+ {
+ return this->prologue_;
+ }
+
+ inline bool options::
+ prologue_specified () const
+ {
+ return this->prologue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ hxx_epilogue () const
+ {
+ return this->hxx_epilogue_;
+ }
+
+ inline bool options::
+ hxx_epilogue_specified () const
+ {
+ return this->hxx_epilogue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ ixx_epilogue () const
+ {
+ return this->ixx_epilogue_;
+ }
+
+ inline bool options::
+ ixx_epilogue_specified () const
+ {
+ return this->ixx_epilogue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ cxx_epilogue () const
+ {
+ return this->cxx_epilogue_;
+ }
+
+ inline bool options::
+ cxx_epilogue_specified () const
+ {
+ return this->cxx_epilogue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ fwd_epilogue () const
+ {
+ return this->fwd_epilogue_;
+ }
+
+ inline bool options::
+ fwd_epilogue_specified () const
+ {
+ return this->fwd_epilogue_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ epilogue () const
+ {
+ return this->epilogue_;
+ }
+
+ inline bool options::
+ epilogue_specified () const
+ {
+ return this->epilogue_specified_;
+ }
+
+ inline const NarrowString& options::
+ hxx_prologue_file () const
+ {
+ return this->hxx_prologue_file_;
+ }
+
+ inline bool options::
+ hxx_prologue_file_specified () const
+ {
+ return this->hxx_prologue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ ixx_prologue_file () const
+ {
+ return this->ixx_prologue_file_;
+ }
+
+ inline bool options::
+ ixx_prologue_file_specified () const
+ {
+ return this->ixx_prologue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ cxx_prologue_file () const
+ {
+ return this->cxx_prologue_file_;
+ }
+
+ inline bool options::
+ cxx_prologue_file_specified () const
+ {
+ return this->cxx_prologue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ fwd_prologue_file () const
+ {
+ return this->fwd_prologue_file_;
+ }
+
+ inline bool options::
+ fwd_prologue_file_specified () const
+ {
+ return this->fwd_prologue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ prologue_file () const
+ {
+ return this->prologue_file_;
+ }
+
+ inline bool options::
+ prologue_file_specified () const
+ {
+ return this->prologue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ hxx_epilogue_file () const
+ {
+ return this->hxx_epilogue_file_;
+ }
+
+ inline bool options::
+ hxx_epilogue_file_specified () const
+ {
+ return this->hxx_epilogue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ ixx_epilogue_file () const
+ {
+ return this->ixx_epilogue_file_;
+ }
+
+ inline bool options::
+ ixx_epilogue_file_specified () const
+ {
+ return this->ixx_epilogue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ cxx_epilogue_file () const
+ {
+ return this->cxx_epilogue_file_;
+ }
+
+ inline bool options::
+ cxx_epilogue_file_specified () const
+ {
+ return this->cxx_epilogue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ fwd_epilogue_file () const
+ {
+ return this->fwd_epilogue_file_;
+ }
+
+ inline bool options::
+ fwd_epilogue_file_specified () const
+ {
+ return this->fwd_epilogue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ epilogue_file () const
+ {
+ return this->epilogue_file_;
+ }
+
+ inline bool options::
+ epilogue_file_specified () const
+ {
+ return this->epilogue_file_specified_;
+ }
+
+ inline const NarrowString& options::
+ export_symbol () const
+ {
+ return this->export_symbol_;
+ }
+
+ inline bool options::
+ export_symbol_specified () const
+ {
+ return this->export_symbol_specified_;
+ }
+
+ inline const bool& options::
+ export_xml_schema () const
+ {
+ return this->export_xml_schema_;
+ }
+
+ inline const bool& options::
+ export_maps () const
+ {
+ return this->export_maps_;
+ }
+
+ inline const bool& options::
+ import_maps () const
+ {
+ return this->import_maps_;
+ }
+
+ inline const bool& options::
+ generate_dep () const
+ {
+ return this->generate_dep_;
+ }
+
+ inline const bool& options::
+ generate_dep_only () const
+ {
+ return this->generate_dep_only_;
+ }
+
+ inline const bool& options::
+ dep_phony () const
+ {
+ return this->dep_phony_;
+ }
+
+ inline const NarrowStrings& options::
+ dep_target () const
+ {
+ return this->dep_target_;
+ }
+
+ inline bool options::
+ dep_target_specified () const
+ {
+ return this->dep_target_specified_;
+ }
+
+ inline const NarrowString& options::
+ dep_suffix () const
+ {
+ return this->dep_suffix_;
+ }
+
+ inline bool options::
+ dep_suffix_specified () const
+ {
+ return this->dep_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ dep_regex () const
+ {
+ return this->dep_regex_;
+ }
+
+ inline bool options::
+ dep_regex_specified () const
+ {
+ return this->dep_regex_specified_;
+ }
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
diff --git a/xsd/xsd/cxx/parser/attribute-validation-source.cxx b/xsd/xsd/cxx/parser/attribute-validation-source.cxx
index 536e2da..7ed54e4 100644
--- a/xsd/xsd/cxx/parser/attribute-validation-source.cxx
+++ b/xsd/xsd/cxx/parser/attribute-validation-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/attribute-validation-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/attribute-validation-source.hxx>
@@ -23,7 +22,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
String const& name (a.name ());
@@ -39,7 +38,7 @@ namespace CXX
os << "n == " << strlit (name) << " && ns.empty ()";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& ns (a.definition_namespace ().name ());
@@ -93,7 +92,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& name (ename (a));
@@ -120,10 +119,20 @@ namespace CXX
os << "this->" << inst << "->" << post << " ();"
<< "this->" << name << " ();";
else
- os << arg_type (type) << " tmp (this->" << inst << "->" <<
- post << " ());"
- << "this->" << name << " (tmp);"
- << endl;
+ {
+ // Don't create an lvalue in C++11 (think std::unique_ptr).
+ // In C++98 we do it for compatibility with older/broken
+ // compilers (e.g., IBM xlC that needs an lvalue to pass
+ // std::auto_ptr).
+ //
+ if (std == cxx_version::cxx98)
+ os << arg_type (type) << " tmp (this->" << inst << "->" <<
+ post << " ());"
+ << "this->" << name << " (tmp);";
+ else
+ os << "this->" << name << " (this->" << inst << "->" <<
+ post << " ());";
+ }
os << "}";
@@ -149,7 +158,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
os << "if (";
@@ -177,7 +186,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
if (!a.optional_p ())
@@ -195,7 +204,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
if (!a.optional_p ())
@@ -227,16 +236,16 @@ namespace CXX
names_attribute_state_check_ >> attribute_state_check_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
- Boolean has_att (has<Traversal::Attribute> (c));
- Boolean has_any (has<Traversal::AnyAttribute> (c));
+ bool has_att (has<Traversal::Attribute> (c));
+ bool has_any (has<Traversal::AnyAttribute> (c));
if (!has_att && !has_any)
return;
- Boolean has_req_att (false);
+ bool has_req_att (false);
if (has_att)
{
RequiredAttributeTest test (has_req_att);
@@ -380,12 +389,12 @@ namespace CXX
};
}
- Void
+ void
generate_attribute_validation_source (Context& ctx)
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/parser/attribute-validation-source.hxx b/xsd/xsd/cxx/parser/attribute-validation-source.hxx
index a11f434..10438fd 100644
--- a/xsd/xsd/cxx/parser/attribute-validation-source.hxx
+++ b/xsd/xsd/cxx/parser/attribute-validation-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/attribute-validation-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_ATTRIBUTE_VALIDATION_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_attribute_validation_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/characters-validation-source.cxx b/xsd/xsd/cxx/parser/characters-validation-source.cxx
index 236f2f5..ddecc70 100644
--- a/xsd/xsd/cxx/parser/characters-validation-source.cxx
+++ b/xsd/xsd/cxx/parser/characters-validation-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/characters-validation-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/characters-validation-source.hxx>
@@ -23,7 +22,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
if (!c.mixed_p ())
@@ -46,7 +45,7 @@ namespace CXX
};
}
- Void
+ void
generate_characters_validation_source (Context& ctx)
{
//@@ Most of the time there is no mixed content type so
@@ -56,7 +55,7 @@ namespace CXX
//
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/parser/characters-validation-source.hxx b/xsd/xsd/cxx/parser/characters-validation-source.hxx
index 2c1a1b1..219df3e 100644
--- a/xsd/xsd/cxx/parser/characters-validation-source.hxx
+++ b/xsd/xsd/cxx/parser/characters-validation-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/characters-validation-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_CHARACTERS_VALIDATION_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_characters_validation_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/cli.hxx b/xsd/xsd/cxx/parser/cli.hxx
deleted file mode 100644
index bc7ca1a..0000000
--- a/xsd/xsd/cxx/parser/cli.hxx
+++ /dev/null
@@ -1,154 +0,0 @@
-// file : xsd/cxx/parser/cli.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-#ifndef CXX_PARSER_CLI_HXX
-#define CXX_PARSER_CLI_HXX
-
-#include <cult/types.hxx>
-
-#include <cult/containers/vector.hxx>
-
-#include <cult/cli/options.hxx>
-#include <cult/cli/options-spec.hxx>
-
-namespace CXX
-{
- namespace Parser
- {
- namespace CLI
- {
- using namespace Cult::Types;
-
- typedef Char const Key[];
-
- extern Key type_map;
- extern Key char_encoding;
- extern Key char_type;
- extern Key output_dir;
- extern Key xml_parser;
- extern Key generate_inline;
- extern Key generate_validation;
- extern Key suppress_validation;
- extern Key generate_polymorphic;
- extern Key generate_noop_impl;
- extern Key generate_print_impl;
- extern Key generate_test_driver;
- extern Key force_overwrite;
- extern Key root_element_first;
- extern Key root_element_last;
- extern Key root_element;
- extern Key generate_xml_schema;
- extern Key extern_xml_schema;
- extern Key skel_type_suffix;
- extern Key skel_file_suffix;
- extern Key impl_type_suffix;
- extern Key impl_file_suffix;
- extern Key namespace_map;
- extern Key namespace_regex;
- extern Key namespace_regex_trace;
- extern Key reserved_name;
- extern Key include_with_brackets;
- extern Key include_prefix;
- extern Key include_regex;
- extern Key include_regex_trace;
- extern Key guard_prefix;
- extern Key hxx_suffix;
- extern Key ixx_suffix;
- extern Key cxx_suffix;
- extern Key hxx_regex;
- extern Key ixx_regex;
- extern Key cxx_regex;
- extern Key hxx_prologue;
- extern Key ixx_prologue;
- extern Key cxx_prologue;
- extern Key prologue;
- extern Key hxx_epilogue;
- extern Key ixx_epilogue;
- extern Key cxx_epilogue;
- extern Key epilogue;
- extern Key hxx_prologue_file;
- extern Key ixx_prologue_file;
- extern Key cxx_prologue_file;
- extern Key prologue_file;
- extern Key hxx_epilogue_file;
- extern Key ixx_epilogue_file;
- extern Key cxx_epilogue_file;
- extern Key epilogue_file;
- extern Key export_symbol;
- extern Key export_maps;
- extern Key import_maps;
- extern Key show_anonymous;
- extern Key show_sloc;
- extern Key proprietary_license;
-
- typedef Cult::CLI::Options<
- type_map, Cult::Containers::Vector<NarrowString>,
- char_type, NarrowString,
- char_encoding, NarrowString,
- output_dir, NarrowString,
- xml_parser, NarrowString,
- generate_inline, Boolean,
- generate_validation, Boolean,
- suppress_validation, Boolean,
- generate_polymorphic, Boolean,
- generate_noop_impl, Boolean,
- generate_print_impl, Boolean,
- generate_test_driver, Boolean,
- force_overwrite, Boolean,
- root_element_first, Boolean,
- root_element_last, Boolean,
- root_element, NarrowString,
- generate_xml_schema, Boolean,
- extern_xml_schema, NarrowString,
- skel_type_suffix, NarrowString,
- skel_file_suffix, NarrowString,
- impl_type_suffix, NarrowString,
- impl_file_suffix, NarrowString,
- namespace_map, Cult::Containers::Vector<NarrowString>,
- namespace_regex, Cult::Containers::Vector<NarrowString>,
- namespace_regex_trace, Boolean,
- reserved_name, Cult::Containers::Vector<NarrowString>,
- include_with_brackets, Boolean,
- include_prefix, NarrowString,
- include_regex, Cult::Containers::Vector<NarrowString>,
- include_regex_trace, Boolean,
- guard_prefix, NarrowString,
- hxx_suffix, NarrowString,
- ixx_suffix, NarrowString,
- cxx_suffix, NarrowString,
- hxx_regex, NarrowString,
- ixx_regex, NarrowString,
- cxx_regex, NarrowString,
- hxx_prologue, Cult::Containers::Vector<NarrowString>,
- ixx_prologue, Cult::Containers::Vector<NarrowString>,
- cxx_prologue, Cult::Containers::Vector<NarrowString>,
- prologue, Cult::Containers::Vector<NarrowString>,
- hxx_epilogue, Cult::Containers::Vector<NarrowString>,
- ixx_epilogue, Cult::Containers::Vector<NarrowString>,
- cxx_epilogue, Cult::Containers::Vector<NarrowString>,
- epilogue, Cult::Containers::Vector<NarrowString>,
- hxx_prologue_file, NarrowString,
- ixx_prologue_file, NarrowString,
- cxx_prologue_file, NarrowString,
- prologue_file, NarrowString,
- hxx_epilogue_file, NarrowString,
- ixx_epilogue_file, NarrowString,
- cxx_epilogue_file, NarrowString,
- epilogue_file, NarrowString,
- export_symbol, NarrowString,
- export_maps, Boolean,
- import_maps, Boolean,
- show_anonymous, Boolean,
- show_sloc, Boolean,
- proprietary_license, Boolean
-
- > Options;
-
- struct OptionsSpec: Cult::CLI::OptionsSpec<Options> {};
- }
- }
-}
-
-#endif // CXX_PARSER_CLI_HXX
diff --git a/xsd/xsd/cxx/parser/driver-source.cxx b/xsd/xsd/cxx/parser/driver-source.cxx
index b48b0e0..510c965 100644
--- a/xsd/xsd/cxx/parser/driver-source.cxx
+++ b/xsd/xsd/cxx/parser/driver-source.cxx
@@ -1,18 +1,18 @@
// file : xsd/cxx/parser/driver-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <set>
+#include <map>
+#include <sstream>
+
#include <cxx/parser/driver-source.hxx>
#include <cxx/parser/print-impl-common.hxx>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-#include <cult/containers/map.hxx>
-#include <cult/containers/set.hxx>
-
-#include <sstream>
+using namespace std;
namespace CXX
{
@@ -20,23 +20,22 @@ namespace CXX
{
namespace
{
- typedef
- Cult::Containers::Map<SemanticGraph::Type*, String>
- TypeInstanceMap;
-
- typedef Cult::Containers::Set<String> InstanceSet;
+ typedef map<SemanticGraph::Type*, String> TypeInstanceMap;
+ typedef set<String> InstanceSet;
// For base types we only want member's types, but not the
// base itself.
//
- struct BaseType: Traversal::Complex, Context
+ struct BaseType: Traversal::Complex,
+ Traversal::List,
+ Context
{
- BaseType (Context& c)
- : Context (c)
+ BaseType (Context& c, Traversal::NodeBase& def)
+ : Context (c), def_ (def)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
inherits (c);
@@ -44,6 +43,15 @@ namespace CXX
if (!restriction_p (c))
names (c);
}
+
+ virtual void
+ traverse (SemanticGraph::List& l)
+ {
+ def_.dispatch (l.argumented ().type ());
+ }
+
+ private:
+ Traversal::NodeBase& def_;
};
struct ParserDef: Traversal::Type,
@@ -109,7 +117,7 @@ namespace CXX
Context
{
ParserDef (Context& c, TypeInstanceMap& map, InstanceSet& set)
- : Context (c), map_ (map), set_ (set), base_ (c)
+ : Context (c), map_ (map), set_ (set), base_ (c, *this)
{
*this >> inherits_ >> base_ >> inherits_;
@@ -119,7 +127,7 @@ namespace CXX
names_ >> member_ >> belongs_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
if (map_.find (&t) == map_.end ())
@@ -131,7 +139,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List& l)
{
if (map_.find (&l) == map_.end ())
@@ -145,7 +153,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
if (map_.find (&c) == map_.end ())
@@ -164,13 +172,13 @@ namespace CXX
// anyType & anySimpleType.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType& t)
{
fund_type (t, "any_type");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType& t)
{
fund_type (t, "any_simple_type");
@@ -178,7 +186,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
fund_type (t, "boolean");
@@ -186,79 +194,79 @@ namespace CXX
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
fund_type (t, "byte");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
fund_type (t, "unsigned_byte");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
fund_type (t, "short");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
fund_type (t, "unsigned_short");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
fund_type (t, "int");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
fund_type (t, "unsigned_int");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
fund_type (t, "long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
fund_type (t, "unsigned_long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
fund_type (t, "integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
fund_type (t, "non_positive_integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
fund_type (t, "non_negative_integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
fund_type (t, "positive_integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
fund_type (t, "negative_integer");
@@ -266,19 +274,19 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
fund_type (t, "float");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
fund_type (t, "double");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
fund_type (t, "decimal");
@@ -286,49 +294,49 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
fund_type (t, "string");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
fund_type (t, "normalized_string");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
fund_type (t, "token");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
fund_type (t, "nmtoken");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
fund_type (t, "nmtokens");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
fund_type (t, "name");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
fund_type (t, "ncname");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
fund_type (t, "language");
@@ -337,7 +345,7 @@ namespace CXX
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
fund_type (t, "qname");
@@ -346,19 +354,19 @@ namespace CXX
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
fund_type (t, "id");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
fund_type (t, "idref");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
fund_type (t, "idrefs");
@@ -366,7 +374,7 @@ namespace CXX
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
fund_type (t, "uri");
@@ -374,13 +382,13 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
fund_type (t, "base64_binary");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
fund_type (t, "hex_binary");
@@ -389,55 +397,55 @@ namespace CXX
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
fund_type (t, "date");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
fund_type (t, "date_time");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
fund_type (t, "duration");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
fund_type (t, "day");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
fund_type (t, "month");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
fund_type (t, "month_day");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
fund_type (t, "year");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
fund_type (t, "year_month");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
fund_type (t, "time");
@@ -445,20 +453,20 @@ namespace CXX
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity& t)
{
fund_type (t, "entity");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities& t)
{
fund_type (t, "entities");
}
private:
- virtual Void
+ virtual void
fund_type (SemanticGraph::Type& t, String const& name)
{
if (map_.find (&t) == map_.end ())
@@ -476,7 +484,7 @@ namespace CXX
String base_name (escape (raw_name + L"_p"));
String name (base_name);
- for (UnsignedLong i (1); set_.find (name) != set_.end (); ++i)
+ for (size_t i (1); set_.find (name) != set_.end (); ++i)
{
std::wostringstream os;
os << i;
@@ -516,7 +524,7 @@ namespace CXX
names_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
inherits (c, inherits_);
@@ -525,7 +533,7 @@ namespace CXX
names (c, names_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List& l)
{
if (!first_)
@@ -536,7 +544,7 @@ namespace CXX
os << map_[&l.argumented ().type ()];
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Member& m)
{
if (skip (m))
@@ -556,7 +564,7 @@ namespace CXX
Traversal::Inherits inherits_;
Traversal::Names names_;
- Boolean first_;
+ bool first_;
};
struct ParserConnect: Traversal::List,
@@ -564,7 +572,7 @@ namespace CXX
Context
{
ParserConnect (Context& c, TypeInstanceMap& map)
- : Context (c), map_ (map), base_ (c)
+ : Context (c), map_ (map), base_ (c, *this)
{
*this >> inherits_ >> base_ >> inherits_;
@@ -574,7 +582,7 @@ namespace CXX
names_ >> member_ >> belongs_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List& l)
{
if (type_set_.find (&l) == type_set_.end ())
@@ -587,7 +595,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
if (type_set_.find (&c) == type_set_.end ())
@@ -613,7 +621,7 @@ namespace CXX
}
private:
- Boolean
+ bool
has_members (SemanticGraph::Complex& c)
{
using SemanticGraph::Complex;
@@ -636,7 +644,7 @@ namespace CXX
private:
TypeInstanceMap& map_;
- Cult::Containers::Set<SemanticGraph::Type*> type_set_;
+ set<SemanticGraph::Type*> type_set_;
BaseType base_;
Traversal::Inherits inherits_;
@@ -647,7 +655,7 @@ namespace CXX
};
}
- Void
+ void
generate_driver_source (Context& ctx)
{
// Figure out the root element. Validator should have made sure
@@ -656,7 +664,7 @@ namespace CXX
SemanticGraph::Element* root (0);
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
schema >> sources >> schema;
@@ -740,7 +748,7 @@ namespace CXX
root_p << "." << post << " ());"
<< endl;
- if (ctx.options.value<CLI::generate_print_impl> ())
+ if (ctx.options.generate_print_impl ())
{
PrintCall t (ctx, root->name (), "v");
t.dispatch (root_type);
diff --git a/xsd/xsd/cxx/parser/driver-source.hxx b/xsd/xsd/cxx/parser/driver-source.hxx
index 9b5a8b1..53e19d8 100644
--- a/xsd/xsd/cxx/parser/driver-source.hxx
+++ b/xsd/xsd/cxx/parser/driver-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/driver-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_DRIVER_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_driver_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/element-validation-source.cxx b/xsd/xsd/cxx/parser/element-validation-source.cxx
index 211a0d3..b2c244e 100644
--- a/xsd/xsd/cxx/parser/element-validation-source.cxx
+++ b/xsd/xsd/cxx/parser/element-validation-source.cxx
@@ -1,14 +1,15 @@
// file : xsd/cxx/parser/element-validation-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <vector>
+
#include <cxx/parser/element-validation-source.hxx>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-#include <cult/containers/vector.hxx>
+using namespace std;
namespace CXX
{
@@ -16,8 +17,7 @@ namespace CXX
{
namespace
{
- typedef Cult::Containers::Vector<SemanticGraph::Particle*> Particles;
-
+ typedef vector<SemanticGraph::Particle*> Particles;
//
//
@@ -31,7 +31,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
String const& name (e.name ());
@@ -62,7 +62,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& ns (a.definition_namespace ().name ());
@@ -109,7 +109,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor& c)
{
// This compositor should already have been tested for
@@ -117,9 +117,9 @@ namespace CXX
//
Particles const& p (c.context ().get<Particles> ("prefixes"));
- Boolean paren (p.size () != 1);
+ bool paren (p.size () != 1);
- for (Particles::ConstIterator i (p.begin ()), e (p.end ());
+ for (Particles::const_iterator i (p.begin ()), e (p.end ());
i != e;)
{
if (paren)
@@ -150,21 +150,21 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
String ns (e.qualified_p () ? e.namespace_ ().name () : String ());
os << strlit (ns) << ", " << strlit (e.name ());
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& ns (*a.namespace_begin ());
os << strlit (ns) << ", " << L << "\"*\"";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor& c)
{
Particles const& p (c.context ().get<Particles> ("prefixes"));
@@ -187,7 +187,7 @@ namespace CXX
// Generate sub-parser setup code as well as the pre/post calls.
//
- Void
+ void
pre_post_calls (SemanticGraph::Particle& p)
{
using SemanticGraph::Element;
@@ -196,20 +196,23 @@ namespace CXX
if (Element* e = dynamic_cast<Element*> (&p))
{
SemanticGraph::Type& type (e->type ());
- Boolean poly (polymorphic && !anonymous (type));
+ String const& fq_type (fq_name (type));
+ bool poly (polymorphic && !anonymous (type));
String name, inst, def_parser, map;
if (e->context ().count("name"))
{
name = ename (*e);
- inst = poly ? emember_cache (*e) : emember (*e);
if (poly)
{
def_parser = emember (*e);
map = emember_map (*e);
+ inst = "p";
}
+ else
+ inst = L"this->" + emember (*e);
}
else
{
@@ -222,13 +225,15 @@ namespace CXX
Element& fe (dynamic_cast<Element&>(ip.first->named ()));
name = ename (fe);
- inst = poly ? emember_cache (fe) : emember (fe);
if (poly)
{
def_parser = emember (fe);
map = emember_map (fe);
+ inst = "p";
}
+ else
+ inst = L"this->" + emember (fe);
}
if (poly)
@@ -243,8 +248,10 @@ namespace CXX
type_id += type_ns;
}
- os << "if (t == 0 && this->" << def_parser << " != 0)" << endl
- << "this->" << inst << " = this->" << def_parser << ";"
+ os << fq_type << "* p = 0;"
+ << endl
+ << "if (t == 0 && this->" << def_parser << " != 0)" << endl
+ << inst << " = this->" << def_parser << ";"
<< "else"
<< "{"
<< string_type << " ts (" << fq_name (type) <<
@@ -254,7 +261,7 @@ namespace CXX
<< "t = &ts;"
<< endl
<< "if (this->" << def_parser << " != 0 && *t == ts)" << endl
- << "this->" << inst << " = this->" << def_parser << ";"
+ << inst << " = this->" << def_parser << ";"
<< "else"
<< "{";
@@ -269,36 +276,51 @@ namespace CXX
" > (*t);"
<< endl
<< "if (this->" << map << " != 0)" << endl
- << "this->" << inst << " = dynamic_cast< " <<
- fq_name (type) << "* > (" << endl
+ << inst << " = dynamic_cast< " << fq_type << "* > (" << endl
<< "this->" << map << "->find (*t));"
- << "else" << endl
- << "this->" << inst << " = 0;"
<< "}"
<< "}";
}
os << "this->" << complex_base << "::context_.top ()." <<
- "parser_ = this->" << inst << ";"
+ "parser_ = " << inst << ";"
<< endl
- << "if (this->" << inst << ")" << endl
- << "this->" << inst << "->pre ();"
+ << "if (" << inst << ")" << endl
+ << inst << "->pre ();"
<< "}"
<< "else" // start
- << "{"
- << "if (this->" << inst << ")"
+ << "{";
+
+ if (poly)
+ os << fq_type << "* p =" << endl
+ << "dynamic_cast< " << fq_type << "* > (" << endl
+ << "this->" << complex_base << "::context_.top ().parser_);"
+ << endl;
+
+ os << "if (" << inst << ")"
<< "{";
String const& ret (ret_type (type));
String const& post (post_name (type));
if (ret == L"void")
- os << "this->" << inst << "->" << post << " ();"
+ os << inst << "->" << post << " ();"
<< "this->" << name << " ();";
else
- os << arg_type (type) << " tmp (this->" << inst << "->" <<
- post << " ());"
- << "this->" << name << " (tmp);";
+ {
+ // Don't create an lvalue in C++11 (think std::unique_ptr).
+ // In C++98 we do it for compatibility with older/broken
+ // compilers (e.g., IBM xlC that needs an lvalue to pass
+ // std::auto_ptr).
+ //
+ if (std == cxx_version::cxx98)
+ os << arg_type (type) << " tmp (" << inst << "->" <<
+ post << " ());"
+ << "this->" << name << " (tmp);";
+ else
+ os << "this->" << name << " (" << inst << "->" <<
+ post << " ());";
+ }
os << "}";
}
@@ -331,10 +353,10 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
- UnsignedLong state (e.context ().get<UnsignedLong> ("state"));
+ size_t state (e.context ().get<size_t> ("state"));
if (state != 0)
os << "else ";
@@ -382,14 +404,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Particle& p)
{
using SemanticGraph::Element;
- UnsignedLong state (p.context ().get<UnsignedLong> ("state"));
+ size_t state (p.context ().get<size_t> ("state"));
- UnsignedLong min (p.min ()), max (p.max ());
+ size_t min (p.min ()), max (p.max ());
os << "case " << state << "UL:" << endl
<< "{";
@@ -465,15 +487,15 @@ namespace CXX
<< "}"; // case
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor& c)
{
using SemanticGraph::Compositor;
- UnsignedLong max (c.max ());
- UnsignedLong min (c.context ().get<UnsignedLong> ("effective-min"));
- UnsignedLong n (c.context ().get<UnsignedLong> ("comp-number"));
- UnsignedLong state (c.context ().get<UnsignedLong> ("state"));
+ size_t max (c.max ());
+ size_t min (c.context ().get<size_t> ("effective-min"));
+ size_t n (c.context ().get<size_t> ("comp-number"));
+ size_t state (c.context ().get<size_t> ("state"));
String func (c.is_a<SemanticGraph::Choice> () ?
"choice_" : "sequence_");
@@ -483,7 +505,7 @@ namespace CXX
<< "unsigned long s (~0UL);"
<< endl;
- Boolean first (true);
+ bool first (true);
for (Compositor::ContainsIterator ci (c.contains_begin ());
ci != c.contains_end (); ++ci)
@@ -496,7 +518,7 @@ namespace CXX
if (!p.context ().count ("prefix"))
break;
- UnsignedLong state (p.context ().get<UnsignedLong> ("state"));
+ size_t state (p.context ().get<size_t> ("state"));
if (first)
first = false;
@@ -599,8 +621,8 @@ namespace CXX
ParticleInCompositor
{
ParticleInSequence (Context& c,
- UnsignedLong state,
- UnsignedLong next_state,
+ size_t state,
+ size_t next_state,
SemanticGraph::Complex& type)
: ParticleInCompositor (c, type),
state_ (state), particle_name_ (c)
@@ -617,10 +639,10 @@ namespace CXX
next_state_ = L"~0";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Particle& p)
{
- UnsignedLong min (p.min ()), max (p.max ());
+ size_t min (p.min ()), max (p.max ());
os << "case " << state_ << "UL:" << endl
<< "{"
@@ -694,14 +716,14 @@ namespace CXX
<< "}"; // case
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor& c)
{
using SemanticGraph::Compositor;
- UnsignedLong max (c.max ());
- UnsignedLong min (c.context ().get<UnsignedLong> ("effective-min"));
- UnsignedLong n (c.context ().get<UnsignedLong> ("comp-number"));
+ size_t max (c.max ());
+ size_t min (c.context ().get<size_t> ("effective-min"));
+ size_t n (c.context ().get<size_t> ("comp-number"));
String func (c.is_a<SemanticGraph::Choice> () ?
"choice_" : "sequence_");
@@ -711,7 +733,7 @@ namespace CXX
<< "unsigned long s (~0UL);"
<< endl;
- Boolean first (true);
+ bool first (true);
for (Compositor::ContainsIterator ci (c.contains_begin ());
ci != c.contains_end (); ++ci)
@@ -724,7 +746,7 @@ namespace CXX
if (!p.context ().count ("prefix"))
break;
- UnsignedLong state (p.context ().get<UnsignedLong> ("state"));
+ size_t state (p.context ().get<size_t> ("state"));
if (first)
first = false;
@@ -816,7 +838,7 @@ namespace CXX
}
private:
- UnsignedLong state_;
+ size_t state_;
String next_state_;
ParticleName particle_name_;
@@ -837,7 +859,7 @@ namespace CXX
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All& a)
{
if (!a.context().count ("comp-number")) // Empty compositor.
@@ -878,7 +900,7 @@ namespace CXX
Element& e (dynamic_cast<Element&> (ci->particle ()));
String ns (e.qualified_p () ? e.namespace_ ().name () : String ());
- UnsignedLong state (e.context ().get<UnsignedLong> ("state"));
+ size_t state (e.context ().get<size_t> ("state"));
os << "if (count[" << state << "UL] == 0)" << endl
<< "this->_expected_element (" << endl
@@ -894,7 +916,7 @@ namespace CXX
<< "}";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Choice& c)
{
if (!c.context().count ("comp-number")) // Empty compositor.
@@ -902,7 +924,7 @@ namespace CXX
using SemanticGraph::Compositor;
- UnsignedLong n (c.context ().get<UnsignedLong> ("comp-number"));
+ size_t n (c.context ().get<size_t> ("comp-number"));
os << "void " << ename (type_) << "::" << endl
<< "choice_" << n << " (unsigned long& state," << endl
@@ -940,7 +962,7 @@ namespace CXX
Traversal::Choice::traverse (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Sequence& s)
{
if (!s.context().count ("comp-number")) // Empty compositor.
@@ -948,7 +970,7 @@ namespace CXX
using SemanticGraph::Compositor;
- UnsignedLong n (s.context ().get<UnsignedLong> ("comp-number"));
+ size_t n (s.context ().get<size_t> ("comp-number"));
os << "void " << ename (type_) << "::" << endl
<< "sequence_" << n << " (unsigned long& state," << endl
@@ -963,7 +985,7 @@ namespace CXX
<< "switch (state)"
<< "{";
- UnsignedLong state (0);
+ size_t state (0);
for (Compositor::ContainsIterator ci (s.contains_begin ()),
ce (s.contains_end ()); ci != ce;)
@@ -986,7 +1008,7 @@ namespace CXX
ci->particle ().is_a<Compositor> () &&
!ci->particle ().context().count ("comp-number"));
- UnsignedLong next (ci == ce ? 0 : state + 1);
+ size_t next (ci == ce ? 0 : state + 1);
ParticleInSequence t (*this, state++, next, type_);
t.dispatch (p);
@@ -1014,12 +1036,12 @@ namespace CXX
Traversal::Compositor,
Context
{
- CompositorPre (Context& c, SemanticGraph::Complex& type)
- : Context (c), type_ (type)
+ CompositorPre (Context& c)
+ : Context (c)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All& a)
{
// Clear the counts and push the initial state.
@@ -1031,7 +1053,7 @@ namespace CXX
traverse (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor&) // Choice and sequence.
{
os << "v_state_& vs = *static_cast< v_state_* > (" <<
@@ -1042,9 +1064,6 @@ namespace CXX
<< "vd.state = 0;"
<< "vd.count = 0;";
}
-
- private:
- SemanticGraph::Complex& type_;
};
@@ -1060,7 +1079,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All&)
{
// The 'all' state machine reaches the final state only
@@ -1078,14 +1097,14 @@ namespace CXX
<< endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor& c) // Choice and sequence.
{
using SemanticGraph::Compositor;
- UnsignedLong max (c.max ());
- UnsignedLong min (c.context ().get<UnsignedLong> ("effective-min"));
- UnsignedLong n (c.context ().get<UnsignedLong> ("comp-number"));
+ size_t max (c.max ());
+ size_t min (c.context ().get<size_t> ("effective-min"));
+ size_t n (c.context ().get<size_t> ("comp-number"));
String func (c.is_a<SemanticGraph::Choice> () ?
"choice_" : "sequence_");
@@ -1117,7 +1136,7 @@ namespace CXX
<< "unsigned long s = ~0UL;"
<< endl;
- Boolean first (true);
+ bool first (true);
// Note that we don't need to worry about the compositor
// being empty - this case is handled by our caller.
@@ -1133,7 +1152,7 @@ namespace CXX
if (!p.context ().count ("prefix"))
break;
- UnsignedLong state (p.context ().get<UnsignedLong> ("state"));
+ size_t state (p.context ().get<size_t> ("state"));
if (first)
first = false;
@@ -1230,12 +1249,12 @@ namespace CXX
Traversal::Compositor,
Context
{
- CompositorEndElement (Context& c, SemanticGraph::Complex& type)
- : Context (c), type_ (type)
+ CompositorEndElement (Context& c)
+ : Context (c)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All&)
{
os << "all_0 (vd.state, v_all_count_.top (), " <<
@@ -1243,7 +1262,7 @@ namespace CXX
<< endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor&) // Choice and sequence.
{
os << "assert (vd.func != 0);"
@@ -1253,9 +1272,6 @@ namespace CXX
<< "vs.size--;" // pop
<< endl;
}
-
- private:
- SemanticGraph::Complex& type_;
};
@@ -1265,12 +1281,12 @@ namespace CXX
Traversal::Compositor,
Context
{
- CompositorPost (Context& c, SemanticGraph::Complex& type)
- : Context (c), type_ (type), particle_name_ (c)
+ CompositorPost (Context& c)
+ : Context (c), particle_name_ (c)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All& a)
{
using SemanticGraph::Element;
@@ -1289,7 +1305,7 @@ namespace CXX
<< "all_0 (vd.state, v_all_count_.top (), empty, empty, 0, true);"
<< "}";
- if (a.context ().get<UnsignedLong> ("effective-min") != 0)
+ if (a.context ().get<size_t> ("effective-min") != 0)
{
os << "else" << endl
<< "this->_expected_element (" << endl;
@@ -1304,10 +1320,10 @@ namespace CXX
<< "v_all_count_.pop ();";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Compositor& c) // Choice and sequence.
{
- UnsignedLong min (c.context ().get<UnsignedLong> ("effective-min"));
+ size_t min (c.context ().get<size_t> ("effective-min"));
os << "v_state_& vs = *static_cast< v_state_* > (" <<
"this->v_state_stack_.top ());"
@@ -1343,7 +1359,6 @@ namespace CXX
}
private:
- SemanticGraph::Complex& type_;
ParticleName particle_name_;
};
@@ -1357,7 +1372,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
// Nothing to generate if we don't have any elements and wildcards.
@@ -1374,7 +1389,7 @@ namespace CXX
// Don't use restriction_p here since we don't want special
// treatment of anyType.
//
- Boolean restriction (
+ bool restriction (
c.inherits_p () &&
c.inherits ().is_a<SemanticGraph::Restricts> ());
@@ -1476,7 +1491,7 @@ namespace CXX
}
{
- CompositorEndElement t (*this, c);
+ CompositorEndElement t (*this);
t.dispatch (comp);
}
@@ -1495,7 +1510,7 @@ namespace CXX
<< endl;
{
- CompositorPre t (*this, c);
+ CompositorPre t (*this);
t.dispatch (comp);
}
@@ -1543,7 +1558,7 @@ namespace CXX
}
{
- CompositorPost t (*this, c);
+ CompositorPost t (*this);
t.dispatch (c.contains_compositor ().compositor ());
}
@@ -1559,7 +1574,7 @@ namespace CXX
};
}
- Void
+ void
generate_element_validation_source (Context& ctx)
{
ctx.os << "#include <cassert>" << endl
@@ -1567,7 +1582,7 @@ namespace CXX
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/parser/element-validation-source.hxx b/xsd/xsd/cxx/parser/element-validation-source.hxx
index 544b8f1..b9bd70b 100644
--- a/xsd/xsd/cxx/parser/element-validation-source.hxx
+++ b/xsd/xsd/cxx/parser/element-validation-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/element-validation-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_ELEMENT_VALIDATION_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_element_validation_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/elements.cxx b/xsd/xsd/cxx/parser/elements.cxx
index b3458c7..889eea4 100644
--- a/xsd/xsd/cxx/parser/elements.cxx
+++ b/xsd/xsd/cxx/parser/elements.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/elements.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/elements.hxx>
@@ -9,60 +8,16 @@ namespace CXX
{
namespace Parser
{
- // Keep this symbol first to help HP-UX linker (long symbols?).
- //
- Content::Value Context::
- content (SemanticGraph::Complex& c)
- {
- using namespace SemanticGraph;
-
- if (c.mixed_p ())
- return Content::mixed;
-
- if (c.inherits_p ())
- {
- Type& base (c.inherits ().base ());
-
- if (Complex* cb = dynamic_cast<Complex*> (&base))
- return content (*cb);
-
- if (base.is_a<AnyType> ())
- return Content::complex;
-
- // Everyhting else (built-in type and AnySimpleType) is simple
- // content.
- //
- return Content::simple;
- }
- else
- return Content::complex;
- }
-
Context::
Context (std::wostream& o,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- CLI::Options const& ops,
+ options_type const& ops,
StringLiteralMap const* map,
Regex const* he,
Regex const* ie,
Regex const* hie)
- : CXX::Context (o,
- root,
- path,
- map,
- ops.value<CLI::char_type> (),
- ops.value<CLI::char_encoding> (),
- ops.value<CLI::include_with_brackets> (),
- ops.value<CLI::include_prefix> (),
- ops.value<CLI::export_symbol> (),
- ops.value<CLI::namespace_map> (),
- ops.value<CLI::namespace_regex> (),
- ops.value<CLI::namespace_regex_trace> (),
- ops.value<CLI::include_regex> (),
- ops.value<CLI::include_regex_trace> (),
- ops.value<CLI::generate_inline> (),
- ops.value<CLI::reserved_name> ()),
+ : CXX::Context (o, root, path, ops, map),
options (ops),
xml_parser (xml_parser_),
simple_base (simple_base_),
@@ -77,11 +32,11 @@ namespace CXX
hxx_expr (he),
ixx_expr (ie),
hxx_impl_expr (hie),
- xml_parser_ (ops.value<CLI::xml_parser> ()),
- validation_ ((ops.value<CLI::xml_parser> () == "expat" ||
- ops.value<CLI::generate_validation> ()) &&
- !ops.value<CLI::suppress_validation> ()),
- polymorphic_ (ops.value<CLI::generate_polymorphic> ())
+ xml_parser_ (ops.xml_parser ()),
+ validation_ ((ops.xml_parser () == "expat" ||
+ ops.generate_validation ()) &&
+ !ops.suppress_validation ()),
+ polymorphic_ (ops.generate_polymorphic ())
{
if (char_type == L"char")
std_string_type = L"::std::string";
@@ -144,7 +99,34 @@ namespace CXX
{
}
- Boolean Context::
+ Content::Value Context::
+ content (SemanticGraph::Complex& c)
+ {
+ using namespace SemanticGraph;
+
+ if (c.mixed_p ())
+ return Content::mixed;
+
+ if (c.inherits_p ())
+ {
+ Type& base (c.inherits ().base ());
+
+ if (Complex* cb = dynamic_cast<Complex*> (&base))
+ return content (*cb);
+
+ if (base.is_a<AnyType> ())
+ return Content::complex;
+
+ // Everyhting else (built-in type and AnySimpleType) is simple
+ // content.
+ //
+ return Content::simple;
+ }
+ else
+ return Content::complex;
+ }
+
+ bool Context::
anonymous (SemanticGraph::Type& t)
{
return t.context ().count ("anonymous");
@@ -181,12 +163,6 @@ namespace CXX
}
String const& Context::
- emember_cache (SemanticGraph::Member& m)
- {
- return m.context ().get<String> ("member-cache");
- }
-
- String const& Context::
emember_map (SemanticGraph::Member& m)
{
return m.context ().get<String> ("member-map");
@@ -200,20 +176,20 @@ namespace CXX
// Includes
//
- Void TypeForward::
+ void TypeForward::
traverse (SemanticGraph::Type& t)
{
os << "class " << t.context ().get<String> (name_key_) << ";";
}
- Void Includes::
+ void Includes::
traverse_ (SemanticGraph::Uses& u)
{
// Support for weak (forward) inclusion used in the file-per-type
// compilation model.
//
SemanticGraph::Schema& s (u.schema ());
- Boolean weak (u.context ().count ("weak"));
+ bool weak (u.context ().count ("weak"));
if (weak && (type_ == header || type_ == impl_header))
{
@@ -233,6 +209,7 @@ namespace CXX
s.context ().count ("renamed")
? s.context ().get<SemanticGraph::Path> ("renamed")
: u.path ());
+ path.normalize ();
// Try to use the portable representation of the path. If that
// fails, fall back to the native representation.
@@ -240,15 +217,11 @@ namespace CXX
NarrowString path_str;
try
{
- path_str = path.string ();
+ path_str = path.posix_string ();
}
catch (SemanticGraph::InvalidPath const&)
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- path_str = path.native_file_string ();
-#else
path_str = path.string ();
-#endif
}
String inc_path;
@@ -258,12 +231,12 @@ namespace CXX
case header:
case source:
{
- inc_path = ctx_.hxx_expr->merge (path_str);
+ inc_path = ctx_.hxx_expr->replace (path_str);
break;
}
case impl_header:
{
- inc_path = ctx_.hxx_impl_expr->merge (path_str);
+ inc_path = ctx_.hxx_impl_expr->replace (path_str);
break;
}
}
diff --git a/xsd/xsd/cxx/parser/elements.hxx b/xsd/xsd/cxx/parser/elements.hxx
index ee5ca86..31f5d87 100644
--- a/xsd/xsd/cxx/parser/elements.hxx
+++ b/xsd/xsd/cxx/parser/elements.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_ELEMENTS_HXX
@@ -8,11 +7,13 @@
#include <sstream>
-#include <backend-elements/regex.hxx>
+#include <cutl/re.hxx>
+
+#include <types.hxx>
#include <cxx/elements.hxx>
-#include <cxx/parser/cli.hxx>
+#include <cxx/parser/options.hxx>
namespace CXX
{
@@ -33,13 +34,15 @@ namespace CXX
class Context: public CXX::Context
{
public:
- typedef BackendElements::Regex::Expression<Char> Regex;
+ typedef cutl::re::regexsub Regex;
+
+ typedef Parser::options options_type;
public:
Context (std::wostream&,
SemanticGraph::Schema&,
SemanticGraph::Path const& path,
- CLI::Options const&,
+ options_type const&,
StringLiteralMap const*,
Regex const* hxx_expr,
Regex const* ixx_expr,
@@ -50,7 +53,7 @@ namespace CXX
Context (Context& c, std::wostream& o);
public:
- Boolean
+ bool
restriction_p (SemanticGraph::Complex& c) const
{
if (c.inherits_p () &&
@@ -69,7 +72,7 @@ namespace CXX
content (SemanticGraph::Complex&);
public:
- static Boolean
+ static bool
anonymous (SemanticGraph::Type&);
public:
@@ -90,9 +93,6 @@ namespace CXX
emember (SemanticGraph::Member&);
static String const&
- emember_cache (SemanticGraph::Member&);
-
- static String const&
emember_map (SemanticGraph::Member&);
public:
@@ -100,7 +100,7 @@ namespace CXX
eimpl (SemanticGraph::Type&);
public:
- CLI::Options const& options;
+ options_type const& options;
String& xml_parser;
String& simple_base;
String& complex_base;
@@ -109,8 +109,8 @@ namespace CXX
String& cerr_inst;
String& parser_map;
String& std_string_type;
- Boolean& validation;
- Boolean& polymorphic;
+ bool& validation;
+ bool& polymorphic;
Regex const* hxx_expr;
Regex const* ixx_expr;
@@ -125,20 +125,20 @@ namespace CXX
String cerr_inst_;
String parser_map_;
String std_string_type_;
- Boolean validation_;
- Boolean polymorphic_;
+ bool validation_;
+ bool polymorphic_;
};
//
//
struct RequiredAttributeTest: Traversal::Attribute
{
- RequiredAttributeTest (Boolean& result)
+ RequiredAttributeTest (bool& result)
: result_ (result)
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
if (!result_ && !a.optional_p ())
@@ -146,7 +146,7 @@ namespace CXX
}
private:
- Boolean& result_;
+ bool& result_;
};
//
@@ -156,14 +156,14 @@ namespace CXX
Traversal::Member,
Context
{
- ParserParamDecl (Context& c, Boolean name_arg)
+ ParserParamDecl (Context& c, bool name_arg)
: Context (c), first_ (true), name_arg_ (name_arg)
{
inherits_ >> *this;
names_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
inherits (c, inherits_);
@@ -172,7 +172,7 @@ namespace CXX
names (c, names_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List& l)
{
if (!first_)
@@ -188,7 +188,7 @@ namespace CXX
os << " /* " << comment (l.name ()) << " item */";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Member& m)
{
if (skip (m)) return;
@@ -210,8 +210,8 @@ namespace CXX
Traversal::Inherits inherits_;
Traversal::Names names_;
- Boolean first_;
- Boolean name_arg_;
+ bool first_;
+ bool name_arg_;
};
@@ -219,16 +219,16 @@ namespace CXX
//
struct TypeForward: Traversal::Type, Context
{
- TypeForward (Context& c, Char const* name_key)
+ TypeForward (Context& c, char const* name_key)
: Context (c), name_key_ (name_key)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t);
private:
- Char const* name_key_;
+ char const* name_key_;
};
struct Includes: Traversal::Imports,
@@ -250,20 +250,20 @@ namespace CXX
schema_ >> schema_names_ >> namespace_ >> names_ >> type_forward_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Imports& i)
{
traverse_ (i);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Includes& i)
{
traverse_ (i);
}
private:
- Void
+ void
traverse_ (SemanticGraph::Uses&);
private:
@@ -281,21 +281,23 @@ namespace CXX
//
struct RootElement: Traversal::Element
{
- RootElement (CLI::Options const& options,
+ typedef Parser::options options_type;
+
+ RootElement (options_type const& options,
SemanticGraph::Element*& element)
: options_ (options), element_ (element)
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
- if (options_.value<CLI::root_element_first> ())
+ if (options_.root_element_first ())
{
if (element_ == 0)
element_ = &e;
}
- else if (String name = options_.value<CLI::root_element> ())
+ else if (String name = options_.root_element ())
{
if (e.name () == name)
element_ = &e;
@@ -305,7 +307,7 @@ namespace CXX
}
private:
- CLI::Options const& options_;
+ options_type const& options_;
SemanticGraph::Element*& element_;
};
}
diff --git a/xsd/xsd/cxx/parser/generator.cxx b/xsd/xsd/cxx/parser/generator.cxx
index b3aee76..e17986b 100644
--- a/xsd/xsd/cxx/parser/generator.cxx
+++ b/xsd/xsd/cxx/parser/generator.cxx
@@ -1,8 +1,19 @@
// file : xsd/cxx/parser/generator.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <algorithm>
+#include <iostream>
+#include <fstream>
+
+#include <cutl/re.hxx>
+
+#include <cutl/compiler/code-stream.hxx>
+#include <cutl/compiler/cxx-indenter.hxx>
+#include <cutl/compiler/sloc-counter.hxx>
+
+#include <xsd-frontend/semantic-graph.hxx>
+
#include <type-map/lexer.hxx>
#include <type-map/parser.hxx>
#include <type-map/type-map.hxx>
@@ -28,49 +39,28 @@
#include <cxx/parser/attribute-validation-source.hxx>
#include <cxx/parser/characters-validation-source.hxx>
-#include <xsd-frontend/semantic-graph.hxx>
-
-#include <backend-elements/regex.hxx>
-#include <backend-elements/indentation/cxx.hxx>
-#include <backend-elements/indentation/sloc.hxx>
-#include <backend-elements/indentation/clip.hxx>
-
-#include <cult/containers/set.hxx>
-#include <cult/containers/vector.hxx>
-
-#include <boost/filesystem/fstream.hpp>
-
-#include <iostream>
-
-#include <usage.hxx>
+#include <cxx/parser/options.hxx>
#include "../../../libxsd/xsd/cxx/version.hxx"
using std::endl;
using std::wcerr;
+using std::wcout;
using namespace XSDFrontend::SemanticGraph;
//
//
-typedef
-boost::filesystem::wifstream
-WideInputFileStream;
-
-typedef
-boost::filesystem::wofstream
-WideOutputFileStream;
-
-typedef
-boost::filesystem::ifstream
-NarrowInputFileStream;
+typedef std::wifstream WideInputFileStream;
+typedef std::wofstream WideOutputFileStream;
+typedef std::ifstream NarrowInputFileStream;
namespace CXX
{
namespace
{
- Char const copyright_gpl[] =
- "// Copyright (C) 2005-2010 Code Synthesis Tools CC\n"
+ char const copyright_gpl[] =
+ "// Copyright (c) 2005-2014 Code Synthesis Tools CC\n"
"//\n"
"// This program was generated by CodeSynthesis XSD, an XML Schema to\n"
"// C++ data binding compiler.\n"
@@ -103,8 +93,8 @@ namespace CXX
"// in the accompanying FLOSSE file.\n"
"//\n\n";
- Char const copyright_proprietary[] =
- "// Copyright (C) 2005-2010 Code Synthesis Tools CC\n"
+ char const copyright_proprietary[] =
+ "// Copyright (c) 2005-2014 Code Synthesis Tools CC\n"
"//\n"
"// This program was generated by CodeSynthesis XSD, an XML Schema\n"
"// to C++ data binding compiler, in the Proprietary License mode.\n"
@@ -113,7 +103,7 @@ namespace CXX
"// conditions.\n"
"//\n\n";
- Char const copyright_impl[] =
+ char const copyright_impl[] =
"// Not copyrighted - public domain.\n"
"//\n"
"// This sample parser implementation was generated by CodeSynthesis XSD,\n"
@@ -122,442 +112,24 @@ namespace CXX
"//\n\n";
}
- namespace Parser
- {
- namespace CLI
- {
- extern Key type_map = "type-map";
- extern Key char_type = "char-type";
- extern Key char_encoding = "char-encoding";
- extern Key output_dir = "output-dir";
- extern Key xml_parser = "xml-parser";
- extern Key generate_inline = "generate-inline";
- extern Key generate_validation = "generate-validation";
- extern Key suppress_validation = "suppress-validation";
- extern Key generate_polymorphic = "generate-polymorphic";
- extern Key generate_noop_impl = "generate-noop-impl";
- extern Key generate_print_impl = "generate-print-impl";
- extern Key generate_test_driver = "generate-test-driver";
- extern Key force_overwrite = "force-overwrite";
- extern Key root_element_first = "root-element-first";
- extern Key root_element_last = "root-element-last";
- extern Key root_element = "root-element";
- extern Key generate_xml_schema = "generate-xml-schema";
- extern Key extern_xml_schema = "extern-xml-schema";
- extern Key skel_type_suffix = "skel-type-suffix";
- extern Key skel_file_suffix = "skel-file-suffix";
- extern Key impl_type_suffix = "impl-type-suffix";
- extern Key impl_file_suffix = "impl-file-suffix";
- extern Key namespace_map = "namespace-map";
- extern Key namespace_regex = "namespace-regex";
- extern Key namespace_regex_trace = "namespace-regex-trace";
- extern Key reserved_name = "reserved-name";
- extern Key include_with_brackets = "include-with-brackets";
- extern Key include_prefix = "include-prefix";
- extern Key include_regex = "include-regex";
- extern Key include_regex_trace = "include-regex-trace";
- extern Key guard_prefix = "guard-prefix";
- extern Key hxx_suffix = "hxx-suffix";
- extern Key ixx_suffix = "ixx-suffix";
- extern Key cxx_suffix = "cxx-suffix";
- extern Key hxx_regex = "hxx-regex";
- extern Key ixx_regex = "ixx-regex";
- extern Key cxx_regex = "cxx-regex";
- extern Key hxx_prologue = "hxx-prologue";
- extern Key ixx_prologue = "ixx-prologue";
- extern Key cxx_prologue = "cxx-prologue";
- extern Key prologue = "prologue";
- extern Key hxx_epilogue = "hxx-epilogue";
- extern Key ixx_epilogue = "ixx-epilogue";
- extern Key cxx_epilogue = "cxx-epilogue";
- extern Key epilogue = "epilogue";
- extern Key hxx_prologue_file = "hxx-prologue-file";
- extern Key ixx_prologue_file = "ixx-prologue-file";
- extern Key cxx_prologue_file = "cxx-prologue-file";
- extern Key prologue_file = "prologue-file";
- extern Key hxx_epilogue_file = "hxx-epilogue-file";
- extern Key ixx_epilogue_file = "ixx-epilogue-file";
- extern Key cxx_epilogue_file = "cxx-epilogue-file";
- extern Key epilogue_file = "epilogue-file";
- extern Key export_symbol = "export-symbol";
- extern Key export_maps = "export-maps";
- extern Key import_maps = "import-maps";
- extern Key show_anonymous = "show-anonymous";
- extern Key show_sloc = "show-sloc";
- extern Key proprietary_license = "proprietary-license";
- }
- }
-
- Void Parser::Generator::
+ void Parser::Generator::
usage ()
{
- std::wostream& e (wcerr);
- ::CLI::Indent::Clip< ::CLI::OptionsUsage, WideChar> clip (e);
-
- e << "--type-map <mapfile>" << endl
- << " Read XML Schema to C++ type mapping information\n"
- << " from <mapfile>. Repeat this option to specify\n"
- << " several type maps. Type maps are considered in\n"
- << " order of appearance and the first match is used."
- << endl;
-
- e << "--char-type <type>" << endl
- << " Use <type> as the base character type. Valid\n"
- << " values are 'char' (default) and 'wchar_t'."
- << endl;
-
- e << "--char-encoding <enc>" << endl
- << " Specify the character encoding that should be used\n"
- << " in the object model. Valid values for the 'char'\n"
- << " character type are 'utf8' (default), 'iso8859-1',\n"
- << " 'lcp', and 'custom'. For the 'wchar_t' character\n"
- << " type the only valid value is 'auto'."
- << endl;
-
- e << "--output-dir <dir>" << endl
- << " Write generated files to <dir> instead of current\n"
- << " directory."
- << endl;
-
- e << "--xml-parser <parser>" << endl
- << " Use <parser> as the underlying XML parser. Valid\n"
- << " values are 'xerces' (default) and 'expat'."
- << endl;
-
- e << "--generate-inline" << endl
- << " Generate certain functions inline."
- << endl;
-
- e << "--generate-validation" << endl
- << " Generate validation code."
- << endl;
-
- e << "--suppress-validation" << endl
- << " Suppress the generation of validation code."
- << endl;
-
- e << "--generate-polymorphic" << endl
- << " Generate polymorphism-aware code. Specify this\n"
- << " option if you use substitution groups or xsi:type."
- << endl;
-
- e << "--generate-noop-impl" << endl
- << " Generate a sample parser implementation that\n"
- << " does nothing (no operation)."
- << endl;
-
- e << "--generate-print-impl" << endl
- << " Generate a sample parser implementation that\n"
- << " prints the XML data to STDOUT."
- << endl;
-
- e << "--generate-test-driver" << endl
- << " Generate a test driver for the sample parser\n"
- << " implementation."
- << endl;
-
- e << "--force-overwrite" << endl
- << " Force overwriting of the existing implementation\n"
- << " and test driver files."
- << endl;
-
- e << "--root-element-first" << endl
- << " Indicate that the first global element is the\n"
- << " document root."
- << endl;
-
- e << "--root-element-last" << endl
- << " Indicate that the last global element is the\n"
- << " document root."
- << endl;
-
- e << "--root-element <element>" << endl
- << " Indicate that <element> is the document root."
- << endl;
-
- e << "--generate-xml-schema" << endl
- << " Generate a C++ header file as if the schema being\n"
- << " compiled defines the XML Schema namespace."
- << endl;
-
- e << "--extern-xml-schema <file>" << endl
- << " Generate code as if the XML Schema namespace was\n"
- << " defined in <file> and xsd:included in the schema\n"
- << " being compiled."
- << endl;
-
- e << "--skel-type-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '_pskel' to\n"
- << " construct the names of generated parser skeletons."
- << endl;
-
- e << "--skel-file-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '-pskel' to\n"
- << " construct the names of generated parser skeleton\n"
- << " files."
- << endl;
-
- e << "--impl-type-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '_pimpl' to\n"
- << " construct the names of parser implementations for\n"
- << " the built-in XML Schema types and sample parser\n"
- << " implementations."
- << endl;
-
- e << "--impl-file-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '-pimpl' to\n"
- << " construct the names of generated sample parser\n"
- << " implementation files."
- << endl;
-
- e << "--namespace-map <xns>=<cns>" << endl
- << " Map XML Schema namespace <xns> to C++ namespace\n"
- << " <cns>. Repeat this option to specify mapping for\n"
- << " more than one XML Schema namespace."
- << endl;
-
- e << "--namespace-regex <regex>" << endl
- << " Add <regex> to the list of regular expressions\n"
- << " used to translate XML Schema namespace names to\n"
- << " C++ namespace names."
- << endl;
-
- e << "--namespace-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --namespace-regex option."
- << endl;
-
- e << "--reserved-name <name>" << endl
- << " Add <name> to the list of names that should not\n"
- << " be used as identifiers. The name can optionally\n"
- << " be followed by '=' and the replacement name that\n"
- << " should be used instead."
- << endl;
-
- e << "--include-with-brackets" << endl
- << " Use angle brackets (<>) instead of quotes (\"\") in\n"
- << " generated #include directives."
- << endl;
-
- e << "--include-prefix <prefix>" << endl
- << " Add <prefix> to generated #include directive\n"
- << " paths."
- << endl;
-
- e << "--include-regex <regex>" << endl
- << " Add <regex> to the list of regular expressions\n"
- << " used to transform #include directive paths."
- << endl;
-
- e << "--include-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --include-regex option."
- << endl;
-
- e << "--guard-prefix <prefix>" << endl
- << " Add <prefix> to generated header inclusion guards."
- << endl;
-
- e << "--hxx-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '.hxx' to\n"
- << " construct the name of the header file."
- << endl;
-
- e << "--ixx-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '.ixx' to\n"
- << " construct the name of the inline file."
- << endl;
-
- e << "--cxx-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '.cxx' to\n"
- << " construct the name of the source file."
- << endl;
-
- e << "--hxx-regex <regex>" << endl
- << " Use <regex> to construct the name of the header\n"
- << " file."
- << endl;
-
- e << "--ixx-regex <regex>" << endl
- << " Use <regex> to construct the name of the inline\n"
- << " file."
- << endl;
-
- e << "--cxx-regex <regex>" << endl
- << " Use <regex> to construct the name of the source\n"
- << " file."
- << endl;
-
-
- // Prologues.
- //
- e << "--hxx-prologue <text>" << endl
- << " Insert <text> at the beginning of the header file."
- << endl;
-
- e << "--ixx-prologue <text>" << endl
- << " Insert <text> at the beginning of the inline file."
- << endl;
-
- e << "--cxx-prologue <text>" << endl
- << " Insert <text> at the beginning of the source file."
- << endl;
-
- e << "--prologue <text>" << endl
- << " Insert <text> at the beginning of each generated\n"
- << " file for which there is no file-specific prologue."
- << endl;
-
-
- // Epilogues.
- //
- e << "--hxx-epilogue <text>" << endl
- << " Insert <text> at the end of the header file."
- << endl;
-
- e << "--ixx-epilogue <text>" << endl
- << " Insert <text> at the end of the inline file."
- << endl;
-
- e << "--cxx-epilogue <text>" << endl
- << " Insert <text> at the end of the source file."
- << endl;
-
- e << "--epilogue <text>" << endl
- << " Insert <text> at the end of each generated file\n"
- << " for which there is no file-specific epilogue."
- << endl;
-
-
- // Prologue files.
- //
- e << "--hxx-prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of the header file."
- << endl;
-
- e << "--ixx-prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of the inline file."
- << endl;
-
- e << "--cxx-prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of the source file."
- << endl;
-
- e << "--prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of each generated file for which there is no file-\n"
- << " specific prologue file."
- << endl;
-
-
- // Epilogue files.
- //
- e << "--hxx-epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " the header file."
- << endl;
-
- e << "--ixx-epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " the inline file."
- << endl;
-
- e << "--cxx-epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " the source file."
- << endl;
-
- e << "--epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " each generated file for which there is no file-\n"
- << " specific epilogue file."
- << endl;
-
-
- // Misc.
- //
- e << "--custom-literals <file>" << endl
- << " Load custom XML string to C++ literal mappings\n"
- << " from <file>."
- << endl;
-
- e << "--export-symbol <symbol>" << endl
- << " Export symbol for Win32 DLL export/import control."
- << endl;
-
- e << "--export-maps" << endl
- << " Export polymorphism support maps from Win32 DLL."
- << endl;
-
- e << "--import-maps" << endl
- << " Import polymorphism support maps from Win32 DLL."
- << endl;
-
- e << "--show-anonymous" << endl
- << " Show elements and attributes that are of anonymous\n"
- << " types."
- << endl;
-
- e << "--show-sloc" << endl
- << " Show the number of generated physical source lines\n"
- << " of code (SLOC)."
- << endl;
-
- e << "--sloc-limit <num>" << endl
- << " Check that the number of generated physical source\n"
- << " lines of code (SLOC) does not exceed <num>."
- << endl;
-
- e << "--options-file <file>" << endl
- << " Read additional options from <file>. Each option\n"
- << " should appear on a separate line optionally\n"
- << " followed by space and an argument."
- << endl;
-
- e << "--proprietary-license" << endl
- << " Indicate that the generated code is licensed under\n"
- << " a proprietary license instead of the GPL."
- << endl;
+ CXX::Parser::options::print_usage (wcout);
+ CXX::options::print_usage (wcout);
}
- Parser::CLI::OptionsSpec Parser::Generator::
- options_spec ()
- {
- CLI::OptionsSpec spec;
-
- spec.option<CLI::char_type> ().default_value ("char");
- spec.option<CLI::xml_parser> ().default_value ("xerces");
-
- spec.option<CLI::skel_file_suffix> ().default_value ("-pskel");
- spec.option<CLI::skel_type_suffix> ().default_value ("_pskel");
- spec.option<CLI::impl_file_suffix> ().default_value ("-pimpl");
- spec.option<CLI::impl_type_suffix> ().default_value ("_pimpl");
-
- spec.option<CLI::hxx_suffix> ().default_value (".hxx");
- spec.option<CLI::ixx_suffix> ().default_value (".ixx");
- spec.option<CLI::cxx_suffix> ().default_value (".cxx");
-
- return spec;
- }
-
-
namespace
{
template <typename S>
- Void
+ void
open (S& ifs, NarrowString const& path)
{
try
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- Path fs_path (path, boost::filesystem::native);
-#else
- Path fs_path (path.c_str());
-#endif
- ifs.open (fs_path, std::ios_base::in | std::ios_base::binary);
+ Path fs_path (path);
+ ifs.open (fs_path.string ().c_str (),
+ std::ios_base::in | std::ios_base::binary);
if (!ifs.is_open ())
{
@@ -576,7 +148,7 @@ namespace CXX
}
}
- Void
+ void
append (WideOutputFileStream& os,
NarrowString const& path,
WideInputFileStream& default_is)
@@ -596,16 +168,15 @@ namespace CXX
}
}
- Void
+ void
append (WideOutputFileStream& os,
- Cult::Containers::Vector<NarrowString> const& primary,
- Cult::Containers::Vector<NarrowString> const& def)
+ NarrowStrings const& primary,
+ NarrowStrings const& def)
{
- Cult::Containers::Vector<NarrowString> const& v (
- primary.empty () ? def : primary);
+ NarrowStrings const& v (primary.empty () ? def : primary);
- for (Containers::Vector<NarrowString>::ConstIterator
- i (v.begin ()), e (v.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (v.begin ()), e (v.end ());
+ i != e; ++i)
{
os << i->c_str () << endl;
}
@@ -613,25 +184,24 @@ namespace CXX
}
- UnsignedLong Parser::Generator::
- generate (Parser::CLI::Options const& ops,
+ size_t Parser::Generator::
+ generate (Parser::options const& ops,
Schema& schema,
Path const& file_path,
- Boolean fpt,
+ bool fpt,
StringLiteralMap const& string_literal_map,
- Boolean gen_driver,
+ bool gen_driver,
const WarningSet& disabled_warnings,
FileList& file_list,
AutoUnlinks& unlinks)
{
using std::ios_base;
- namespace Indentation = BackendElements::Indentation;
- typedef BackendElements::Regex::Expression<Char> Regex;
+ typedef cutl::re::regexsub Regex;
try
{
- Boolean generate_xml_schema (ops.value<CLI::generate_xml_schema> ());
+ bool generate_xml_schema (ops.generate_xml_schema ());
// We could be compiling several schemas at once in which case
// handling of the --generate-xml-schema option gets tricky: we
@@ -640,23 +210,19 @@ namespace CXX
//
if (generate_xml_schema)
{
- if (NarrowString name = ops.value<CLI::extern_xml_schema> ())
+ if (NarrowString name = ops.extern_xml_schema ())
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- if (file_path.native_file_string () != name)
-#else
if (file_path.string () != name)
-#endif
generate_xml_schema = false;
}
}
- Boolean impl (!generate_xml_schema &&
- (ops.value<CLI::generate_noop_impl> () ||
- ops.value<CLI::generate_print_impl> ()));
+ bool impl (!generate_xml_schema &&
+ (ops.generate_noop_impl () ||
+ ops.generate_print_impl ()));
- Boolean driver (gen_driver && !generate_xml_schema &&
- ops.value<CLI::generate_test_driver> ());
+ bool driver (gen_driver && !generate_xml_schema &&
+ ops.generate_test_driver ());
// Evaluate the graph for possibility of generating something useful.
//
@@ -674,9 +240,9 @@ namespace CXX
proc.process (ops, schema, file_path, string_literal_map);
}
- Boolean validation ((ops.value<CLI::xml_parser> () == "expat" ||
- ops.value<CLI::generate_validation> ()) &&
- !ops.value<CLI::suppress_validation> ());
+ bool validation ((ops.xml_parser () == "expat" ||
+ ops.generate_validation ()) &&
+ !ops.suppress_validation ());
// Compute state machine info.
//
@@ -691,11 +257,11 @@ namespace CXX
TypeMap::Namespaces type_map;
{
using namespace TypeMap;
- typedef Containers::Vector<NarrowString> Files;
- Files const& files (ops.value<CLI::type_map> ());
+ NarrowStrings const& files (ops.type_map ());
- for (Files::ConstIterator f (files.begin ()); f != files.end (); ++f )
+ for (NarrowStrings::const_iterator f (files.begin ());
+ f != files.end (); ++f )
{
NarrowInputFileStream ifs;
open (ifs, *f);
@@ -712,7 +278,7 @@ namespace CXX
// String-based types.
//
- String char_type (ops.value<CLI::char_type> ());
+ String char_type (ops.char_type ());
String string_type;
if (char_type == L"char")
@@ -723,12 +289,14 @@ namespace CXX
string_type = L"::std::basic_string< " + char_type + L" >";
String xns;
+ String auto_ptr;
{
Context ctx (std::wcerr, schema, file_path, ops, 0, 0, 0, 0);
xns = ctx.xs_ns_name ();
+ auto_ptr = ctx.auto_ptr;
}
- String buffer (L"::std::auto_ptr< " + xns + L"::buffer >");
+ String buffer (auto_ptr + L"< " + xns + L"::buffer >");
TypeMap::Namespace xsd ("http://www\\.w3\\.org/2001/XMLSchema");
xsd.types_push_back ("string", string_type);
@@ -800,7 +368,7 @@ namespace CXX
type_map.push_back (xsd);
- // Everyhting else maps to void.
+ // Everything else maps to void.
//
TypeMap::Namespace rest (".*");
rest.types_push_back (".*", "void", "void");
@@ -816,39 +384,33 @@ namespace CXX
//
//
- Boolean inline_ (ops.value<CLI::generate_inline> () &&
- !generate_xml_schema);
-
- Boolean source (!generate_xml_schema);
+ bool inline_ (ops.generate_inline () && !generate_xml_schema);
+ bool source (!generate_xml_schema);
// Generate code.
//
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- NarrowString name (file_path.leaf ());
-#else
- NarrowString name (file_path.filename().string());
-#endif
- NarrowString skel_suffix (ops.value <CLI::skel_file_suffix> ());
- NarrowString impl_suffix (ops.value <CLI::impl_file_suffix> ());
-
- NarrowString hxx_suffix (ops.value <CLI::hxx_suffix> ());
- NarrowString ixx_suffix (ops.value <CLI::ixx_suffix> ());
- NarrowString cxx_suffix (ops.value <CLI::cxx_suffix> ());
+ NarrowString name (file_path.leaf ().string ());
+ NarrowString skel_suffix (ops.skel_file_suffix ());
+ NarrowString impl_suffix (ops.impl_file_suffix ());
+
+ NarrowString hxx_suffix (ops.hxx_suffix ());
+ NarrowString ixx_suffix (ops.ixx_suffix ());
+ NarrowString cxx_suffix (ops.cxx_suffix ());
Regex hxx_expr (
- ops.value <CLI::hxx_regex> ().empty ()
+ ops.hxx_regex ().empty ()
? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + skel_suffix + hxx_suffix + "#"
- : ops.value <CLI::hxx_regex> ());
+ : ops.hxx_regex ());
Regex ixx_expr (
- ops.value <CLI::ixx_regex> ().empty ()
+ ops.ixx_regex ().empty ()
? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + skel_suffix + ixx_suffix + "#"
- : ops.value <CLI::ixx_regex> ());
+ : ops.ixx_regex ());
Regex cxx_expr (
- ops.value <CLI::cxx_regex> ().empty ()
+ ops.cxx_regex ().empty ()
? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + skel_suffix + cxx_suffix + "#"
- : ops.value <CLI::cxx_regex> ());
+ : ops.cxx_regex ());
Regex hxx_impl_expr;
@@ -870,7 +432,7 @@ namespace CXX
if (!hxx_expr.match (name))
{
wcerr << "error: header expression '" <<
- hxx_expr.pattern () << "' does not match '" <<
+ hxx_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -878,7 +440,7 @@ namespace CXX
if (inline_ && !ixx_expr.match (name))
{
wcerr << "error: inline expression '" <<
- ixx_expr.pattern () << "' does not match '" <<
+ ixx_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -886,7 +448,7 @@ namespace CXX
if (source && !cxx_expr.match (name))
{
wcerr << "error: source expression '" <<
- cxx_expr.pattern () << "' does not match '" <<
+ cxx_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -896,7 +458,7 @@ namespace CXX
if (!hxx_impl_expr.match (name))
{
wcerr << "error: implementation header expression '" <<
- hxx_impl_expr.pattern () << "' does not match '" <<
+ hxx_impl_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -904,7 +466,7 @@ namespace CXX
if (!cxx_impl_expr.match (name))
{
wcerr << "error: implementation source expression '" <<
- cxx_impl_expr.pattern () << "' does not match '" <<
+ cxx_impl_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -912,15 +474,15 @@ namespace CXX
if (!cxx_driver_expr.match (name))
{
wcerr << "error: driver source expression '" <<
- cxx_driver_expr.pattern () << "' does not match '" <<
+ cxx_driver_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
}
- NarrowString hxx_name (hxx_expr.merge (name));
- NarrowString ixx_name (inline_ ? ixx_expr.merge (name) : NarrowString ());
- NarrowString cxx_name (source ? cxx_expr.merge (name) : NarrowString ());
+ NarrowString hxx_name (hxx_expr.replace (name));
+ NarrowString ixx_name (inline_ ? ixx_expr.replace (name) : NarrowString ());
+ NarrowString cxx_name (source ? cxx_expr.replace (name) : NarrowString ());
NarrowString hxx_impl_name;
NarrowString cxx_impl_name;
@@ -928,20 +490,14 @@ namespace CXX
if (impl || driver)
{
- hxx_impl_name = hxx_impl_expr.merge (name);
- cxx_impl_name = cxx_impl_expr.merge (name);
- cxx_driver_name = cxx_driver_expr.merge (name);
+ hxx_impl_name = hxx_impl_expr.replace (name);
+ cxx_impl_name = cxx_impl_expr.replace (name);
+ cxx_driver_name = cxx_driver_expr.replace (name);
}
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- Path hxx_path (hxx_name, boost::filesystem::native);
- Path ixx_path (ixx_name, boost::filesystem::native);
- Path cxx_path (cxx_name, boost::filesystem::native);
-#else
- Path hxx_path (hxx_name.c_str());
- Path ixx_path (ixx_name.c_str());
- Path cxx_path (cxx_name.c_str());
-#endif
+ Path hxx_path (hxx_name);
+ Path ixx_path (ixx_name);
+ Path cxx_path (cxx_name);
Path hxx_impl_path;
Path cxx_impl_path;
@@ -949,28 +505,18 @@ namespace CXX
if (impl || driver)
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- hxx_impl_path = Path (hxx_impl_name, boost::filesystem::native);
- cxx_impl_path = Path (cxx_impl_name, boost::filesystem::native);
- cxx_driver_path = Path (cxx_driver_name, boost::filesystem::native);
-#else
- hxx_impl_path = Path (hxx_impl_name.c_str());
- cxx_impl_path = Path (cxx_impl_name.c_str());
- cxx_driver_path = Path (cxx_driver_name.c_str());
-#endif
+ hxx_impl_path = Path (hxx_impl_name);
+ cxx_impl_path = Path (cxx_impl_name);
+ cxx_driver_path = Path (cxx_driver_name);
}
Path out_dir;
- if (NarrowString dir = ops.value<CLI::output_dir> ())
+ if (NarrowString dir = ops.output_dir ())
{
try
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- out_dir = Path (dir, boost::filesystem::native);
-#else
- out_dir = Path (dir.c_str());
-#endif
+ out_dir = Path (dir);
}
catch (InvalidPath const&)
{
@@ -985,7 +531,7 @@ namespace CXX
// unless the user added the directory so that we propagate this
// to the output files.
//
- Path fpt_dir (file_path.branch_path ());
+ Path fpt_dir (file_path.directory ());
if (!fpt_dir.empty ())
out_dir /= fpt_dir;
@@ -1014,9 +560,10 @@ namespace CXX
if (impl)
{
- if (!ops.value<CLI::force_overwrite> ())
+ if (!ops.force_overwrite ())
{
- WideInputFileStream tmp (hxx_impl_path, ios_base::in);
+ WideInputFileStream tmp (
+ hxx_impl_path.string ().c_str (), ios_base::in);
if (tmp.is_open ())
{
@@ -1028,7 +575,7 @@ namespace CXX
tmp.close ();
}
- hxx_impl.open (hxx_impl_path, ios_base::out);
+ hxx_impl.open (hxx_impl_path.string ().c_str (), ios_base::out);
if (!hxx_impl.is_open ())
{
@@ -1038,15 +585,12 @@ namespace CXX
}
unlinks.add (hxx_impl_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (hxx_impl_path.native_file_string ());
-#else
file_list.push_back (hxx_impl_path.string ());
-#endif
- if (!ops.value<CLI::force_overwrite> ())
+ if (!ops.force_overwrite ())
{
- WideInputFileStream tmp (cxx_impl_path, ios_base::in);
+ WideInputFileStream tmp (
+ cxx_impl_path.string ().c_str (), ios_base::in);
if (tmp.is_open ())
{
@@ -1058,7 +602,7 @@ namespace CXX
tmp.close ();
}
- cxx_impl.open (cxx_impl_path, ios_base::out);
+ cxx_impl.open (cxx_impl_path.string ().c_str (), ios_base::out);
if (!cxx_impl.is_open ())
{
@@ -1068,18 +612,15 @@ namespace CXX
}
unlinks.add (cxx_impl_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (cxx_impl_path.native_file_string ());
-#else
file_list.push_back (cxx_impl_path.string ());
-#endif
}
if (driver)
{
- if (!ops.value<CLI::force_overwrite> ())
+ if (!ops.force_overwrite ())
{
- WideInputFileStream tmp (cxx_driver_path, ios_base::in);
+ WideInputFileStream tmp (
+ cxx_driver_path.string ().c_str (), ios_base::in);
if (tmp.is_open ())
{
@@ -1091,7 +632,7 @@ namespace CXX
tmp.close ();
}
- cxx_driver.open (cxx_driver_path, ios_base::out);
+ cxx_driver.open (cxx_driver_path.string ().c_str (), ios_base::out);
if (!cxx_driver.is_open ())
{
@@ -1101,16 +642,12 @@ namespace CXX
}
unlinks.add (cxx_driver_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (cxx_driver_path.native_file_string ());
-#else
file_list.push_back (cxx_driver_path.string ());
-#endif
}
// Open the skel files.
//
- WideOutputFileStream hxx (hxx_path, ios_base::out);
+ WideOutputFileStream hxx (hxx_path.string ().c_str (), ios_base::out);
WideOutputFileStream ixx;
WideOutputFileStream cxx;
@@ -1121,15 +658,11 @@ namespace CXX
}
unlinks.add (hxx_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (hxx_path.native_file_string ());
-#else
file_list.push_back (hxx_path.string ());
-#endif
if (inline_)
{
- ixx.open (ixx_path, ios_base::out);
+ ixx.open (ixx_path.string ().c_str (), ios_base::out);
if (!ixx.is_open ())
{
@@ -1138,17 +671,13 @@ namespace CXX
}
unlinks.add (ixx_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (ixx_path.native_file_string ());
-#else
file_list.push_back (ixx_path.string ());
-#endif
}
if (source)
{
- cxx.open (cxx_path, ios_base::out);
+ cxx.open (cxx_path.string ().c_str (), ios_base::out);
if (!cxx.is_open ())
{
@@ -1157,19 +686,13 @@ namespace CXX
}
unlinks.add (cxx_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (cxx_path.native_file_string ());
-#else
file_list.push_back (cxx_path.string ());
-#endif
}
// Print copyright and license.
//
- Char const* copyright (
- ops.value<CLI::proprietary_license> ()
- ? copyright_proprietary
- : copyright_gpl);
+ char const* copyright (
+ ops.proprietary_license () ? copyright_proprietary : copyright_gpl);
hxx << copyright;
@@ -1192,7 +715,7 @@ namespace CXX
//
WideInputFileStream prologue;
{
- NarrowString name (ops.value<CLI::prologue_file> ());
+ NarrowString name (ops.prologue_file ());
if (name)
open (prologue, name);
@@ -1202,7 +725,7 @@ namespace CXX
//
WideInputFileStream epilogue;
{
- NarrowString name (ops.value<CLI::epilogue_file> ());
+ NarrowString name (ops.epilogue_file ());
if (name)
open (epilogue, name);
@@ -1210,21 +733,25 @@ namespace CXX
// SLOC counter.
//
- UnsignedLong sloc (0);
- Boolean show_sloc (ops.value<CLI::show_sloc> ());
+ size_t sloc_total (0);
+ bool show_sloc (ops.show_sloc ());
+
+ typedef
+ compiler::ostream_filter<compiler::cxx_indenter, wchar_t>
+ ind_filter;
+
+ typedef
+ compiler::ostream_filter<compiler::sloc_counter, wchar_t>
+ sloc_filter;
//
//
Regex guard_expr ("/([a-z])([A-Z])/$1_$2/"); // Split words.
- NarrowString guard_prefix (ops.value<CLI::guard_prefix> ());
+ NarrowString guard_prefix (ops.guard_prefix ());
if (!guard_prefix)
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- guard_prefix = file_path.branch_path ().native_directory_string ();
-#else
- guard_prefix = file_path.branch_path ().string ();
-#endif
+ guard_prefix = file_path.directory ().string ();
if (guard_prefix)
guard_prefix += '_';
@@ -1241,9 +768,9 @@ namespace CXX
&ixx_expr,
&hxx_impl_expr);
- Indentation::Clip<Indentation::SLOC, WideChar> hxx_sloc (hxx);
+ sloc_filter sloc (hxx);
- String guard (guard_expr.merge (guard_prefix + hxx_name));
+ String guard (guard_expr.replace (guard_prefix + hxx_name));
guard = ctx.escape (guard); // Make it a C++ id.
std::transform (guard.begin (), guard.end(), guard.begin (), upcase);
@@ -1251,14 +778,21 @@ namespace CXX
<< "#define " << guard << endl
<< endl;
+ if (ctx.std >= cxx_version::cxx11)
+ {
+ hxx << "#ifndef XSD_CXX11" << endl
+ << "#define XSD_CXX11" << endl
+ << "#endif" << endl
+ << endl;
+ }
+
// Copy prologue.
//
hxx << "// Begin prologue." << endl
<< "//" << endl;
- append (
- hxx, ops.value<CLI::hxx_prologue> (), ops.value<CLI::prologue> ());
- append (hxx, ops.value<CLI::hxx_prologue_file> (), prologue);
+ append (hxx, ops.hxx_prologue (), ops.prologue ());
+ append (hxx, ops.hxx_prologue_file (), prologue);
hxx << "//" << endl
<< "// End prologue." << endl
@@ -1273,38 +807,33 @@ namespace CXX
<< "#endif" << endl
<< endl;
- {
- hxx << "#include <xsd/cxx/pre.hxx>" << endl
- << endl;
-
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> hxx_clip (hxx);
+ hxx << "#include <xsd/cxx/pre.hxx>" << endl
+ << endl;
+ // Generate.
+ //
+ {
+ ind_filter ind (hxx); // We don't want to indent prologues/epilogues.
- // Generate.
- //
if (!generate_xml_schema)
generate_parser_forward (ctx);
generate_parser_header (ctx, generate_xml_schema);
+ }
+ if (inline_)
+ hxx << "#include " << ctx.process_include_path (ixx_name) << endl;
- if (inline_)
- hxx << "#include " << ctx.process_include_path (ixx_name) << endl;
-
- hxx << "#include <xsd/cxx/post.hxx>" << endl
- << endl;
- }
+ hxx << "#include <xsd/cxx/post.hxx>" << endl
+ << endl;
// Copy epilogue.
//
hxx << "// Begin epilogue." << endl
<< "//" << endl;
- append (hxx, ops.value<CLI::hxx_epilogue_file> (), epilogue);
- append (
- hxx, ops.value<CLI::hxx_epilogue> (), ops.value<CLI::epilogue> ());
+ append (hxx, ops.hxx_epilogue_file (), epilogue);
+ append (hxx, ops.hxx_epilogue (), ops.epilogue ());
hxx << "//" << endl
<< "// End epilogue." << endl
@@ -1313,12 +842,9 @@ namespace CXX
hxx << "#endif // " << guard << endl;
if (show_sloc)
- {
- wcerr << hxx_path << ": "
- << hxx_sloc.buffer ().count () << endl;
+ wcerr << hxx_path << ": " << sloc.stream ().count () << endl;
- sloc += hxx_sloc.buffer ().count ();
- }
+ sloc_total += sloc.stream ().count ();
}
@@ -1335,30 +861,24 @@ namespace CXX
&ixx_expr,
&hxx_impl_expr);
- Indentation::Clip<Indentation::SLOC, WideChar> ixx_sloc (ixx);
-
+ sloc_filter sloc (ixx);
// Copy prologue.
//
ixx << "// Begin prologue." << endl
<< "//" << endl;
- append (
- ixx, ops.value<CLI::ixx_prologue> (), ops.value<CLI::prologue> ());
- append (ixx, ops.value<CLI::ixx_prologue_file> (), prologue);
+ append (ixx, ops.ixx_prologue (), ops.prologue ());
+ append (ixx, ops.ixx_prologue_file (), prologue);
ixx << "//" << endl
<< "// End prologue." << endl
<< endl;
+ // Generate.
+ //
{
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> ixx_clip (ixx);
-
-
- // Generate.
- //
+ ind_filter ind (ixx); // We don't want to indent prologues/epilogues.
generate_parser_inline (ctx);
}
@@ -1367,21 +887,17 @@ namespace CXX
ixx << "// Begin epilogue." << endl
<< "//" << endl;
- append (ixx, ops.value<CLI::ixx_epilogue_file> (), epilogue);
- append (
- ixx, ops.value<CLI::ixx_epilogue> (), ops.value<CLI::epilogue> ());
+ append (ixx, ops.ixx_epilogue_file (), epilogue);
+ append (ixx, ops.ixx_epilogue (), ops.epilogue ());
ixx << "//" << endl
<< "// End epilogue." << endl
<< endl;
if (show_sloc)
- {
- wcerr << ixx_path << ": "
- << ixx_sloc.buffer ().count () << endl;
+ wcerr << ixx_path << ": " << sloc.stream ().count () << endl;
- sloc += ixx_sloc.buffer ().count ();
- }
+ sloc_total += sloc.stream ().count ();
}
@@ -1398,28 +914,30 @@ namespace CXX
&ixx_expr,
&hxx_impl_expr);
- Indentation::Clip<Indentation::SLOC, WideChar> cxx_sloc (cxx);
+ sloc_filter sloc (cxx);
// Copy prologue.
//
cxx << "// Begin prologue." << endl
<< "//" << endl;
- append (
- cxx, ops.value<CLI::cxx_prologue> (), ops.value<CLI::prologue> ());
- append (cxx, ops.value<CLI::cxx_prologue_file> (), prologue);
+ append (cxx, ops.cxx_prologue (), ops.prologue ());
+ append (cxx, ops.cxx_prologue_file (), prologue);
cxx << "//" << endl
<< "// End prologue." << endl
<< endl;
- {
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> cxx_clip (cxx);
+ cxx << "#include <xsd/cxx/pre.hxx>" << endl
+ << endl;
- cxx << "#include " << ctx.process_include_path (hxx_name) << endl
- << endl;
+ cxx << "#include " << ctx.process_include_path (hxx_name) << endl
+ << endl;
+
+ // Generate.
+ //
+ {
+ ind_filter ind (cxx); // We don't want to indent prologues/epilogues.
if (!inline_)
generate_parser_inline (ctx);
@@ -1434,26 +952,25 @@ namespace CXX
}
}
+ cxx << "#include <xsd/cxx/post.hxx>" << endl
+ << endl;
+
// Copy epilogue.
//
cxx << "// Begin epilogue." << endl
<< "//" << endl;
- append (cxx, ops.value<CLI::cxx_epilogue_file> (), epilogue);
- append (
- cxx, ops.value<CLI::cxx_epilogue> (), ops.value<CLI::epilogue> ());
+ append (cxx, ops.cxx_epilogue_file (), epilogue);
+ append (cxx, ops.cxx_epilogue (), ops.epilogue ());
cxx << "//" << endl
<< "// End epilogue." << endl
<< endl;
if (show_sloc)
- {
- wcerr << cxx_path << ": "
- << cxx_sloc.buffer ().count () << endl;
+ wcerr << cxx_path << ": " << sloc.stream ().count () << endl;
- sloc += cxx_sloc.buffer ().count ();
- }
+ sloc_total += sloc.stream ().count ();
}
// HXX impl
@@ -1469,7 +986,7 @@ namespace CXX
&ixx_expr,
&hxx_impl_expr);
- String guard (guard_expr.merge (guard_prefix + hxx_impl_name));
+ String guard (guard_expr.replace (guard_prefix + hxx_impl_name));
guard = ctx.escape (guard); // Make it a C++ id.
std::transform (guard.begin (), guard.end(), guard.begin (), upcase);
@@ -1477,14 +994,11 @@ namespace CXX
<< "#define " << guard << endl
<< endl;
- {
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> clip (hxx_impl);
-
- hxx_impl << "#include " << ctx.process_include_path (hxx_name)
- << endl << endl;
+ hxx_impl << "#include " << ctx.process_include_path (hxx_name)
+ << endl << endl;
+ {
+ ind_filter ind (hxx_impl);
generate_impl_header (ctx);
}
@@ -1504,14 +1018,13 @@ namespace CXX
&ixx_expr,
&hxx_impl_expr);
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> clip (cxx_impl);
-
cxx_impl << "#include " << ctx.process_include_path (hxx_impl_name)
<< endl << endl;
- generate_impl_source (ctx);
+ {
+ ind_filter ind (cxx_impl);
+ generate_impl_source (ctx);
+ }
}
// CXX driver
@@ -1527,17 +1040,16 @@ namespace CXX
&ixx_expr,
&hxx_impl_expr);
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> clip (cxx_driver);
-
cxx_driver << "#include " << ctx.process_include_path (hxx_impl_name)
<< endl << endl;
- generate_driver_source (ctx);
+ {
+ ind_filter ind (cxx_driver);
+ generate_driver_source (ctx);
+ }
}
- return sloc;
+ return sloc_total;
}
catch (UnrepresentableCharacter const& e)
{
@@ -1569,18 +1081,18 @@ namespace CXX
throw Failed ();
}
- catch (BackendElements::Regex::Format<Char> const& e)
+ catch (cutl::re::format const& e)
{
wcerr << "error: invalid regex: '" <<
- e.expression ().c_str () << "': " <<
+ e.regex ().c_str () << "': " <<
e.description ().c_str () << endl;
throw Failed ();
}
- catch (BackendElements::Regex::Format<WideChar> const& e)
+ catch (cutl::re::wformat const& e)
{
wcerr << "error: invalid regex: '" <<
- e.expression () << "': " << e.description () << endl;
+ e.regex () << "': " << e.description ().c_str () << endl;
throw Failed ();
}
diff --git a/xsd/xsd/cxx/parser/generator.hxx b/xsd/xsd/cxx/parser/generator.hxx
index eaa1ecd..784ca9d 100644
--- a/xsd/xsd/cxx/parser/generator.hxx
+++ b/xsd/xsd/cxx/parser/generator.hxx
@@ -1,50 +1,38 @@
// file : xsd/cxx/parser/generator.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_GENERATOR_HXX
#define CXX_PARSER_GENERATOR_HXX
-#include <cult/types.hxx>
-
-#include <cult/containers/vector.hxx>
-
-#include <cult/cli/options.hxx>
-#include <cult/cli/options-spec.hxx>
-
#include <xsd-frontend/semantic-graph/elements.hxx> // Path
#include <xsd-frontend/semantic-graph/schema.hxx>
#include <xsd.hxx>
+#include <types.hxx>
#include <cxx/literal-map.hxx>
-#include <cxx/parser/cli.hxx>
+#include <cxx/parser/options.hxx>
namespace CXX
{
namespace Parser
{
- using namespace Cult::Types;
-
class Generator
{
public:
- static Void
+ static void
usage ();
- static CLI::OptionsSpec
- options_spec ();
-
struct Failed {};
- static UnsignedLong
- generate (CLI::Options const& options,
+ static size_t
+ generate (options const&,
XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file,
- Boolean file_per_type,
+ bool file_per_type,
StringLiteralMap const&,
- Boolean gen_driver,
+ bool gen_driver,
const WarningSet& disabled_warnings,
FileList& file_list,
AutoUnlinks& unlinks);
diff --git a/xsd/xsd/cxx/parser/impl-header.cxx b/xsd/xsd/cxx/parser/impl-header.cxx
index ff635f1..a3d47a4 100644
--- a/xsd/xsd/cxx/parser/impl-header.cxx
+++ b/xsd/xsd/cxx/parser/impl-header.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/impl-header.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/impl-header.hxx>
@@ -21,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String const& name (eimpl (e));
@@ -51,7 +50,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String const& name (eimpl (l));
@@ -98,7 +97,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String const& name (eimpl (u));
@@ -130,7 +129,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -161,7 +160,7 @@ namespace CXX
names_parser_callback_ >> parser_callback_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String const& name (eimpl (c));
@@ -202,12 +201,12 @@ namespace CXX
};
}
- Void
+ void
generate_impl_header (Context& ctx)
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Includes includes (ctx, Includes::impl_header);
Traversal::Names schema_names;
diff --git a/xsd/xsd/cxx/parser/impl-header.hxx b/xsd/xsd/cxx/parser/impl-header.hxx
index dd63e52..273201b 100644
--- a/xsd/xsd/cxx/parser/impl-header.hxx
+++ b/xsd/xsd/cxx/parser/impl-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/impl-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_IMPL_HEADER_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_impl_header (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/impl-source.cxx b/xsd/xsd/cxx/parser/impl-source.cxx
index b951f6a..ad85f81 100644
--- a/xsd/xsd/cxx/parser/impl-source.cxx
+++ b/xsd/xsd/cxx/parser/impl-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/impl-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/impl-source.hxx>
@@ -22,7 +21,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String const& name (eimpl (e));
@@ -57,7 +56,7 @@ namespace CXX
os << arg_type (base) << " v (" << post_name (base) << " ());"
<< endl;
- if (options.value<CLI::generate_print_impl> ())
+ if (options.generate_print_impl ())
{
PrintCall t (*this, e.name (), "v");
t.dispatch (base);
@@ -91,7 +90,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String const& name (eimpl (l));
@@ -126,7 +125,7 @@ namespace CXX
if (arg != L"void")
{
- if (options.value<CLI::generate_print_impl> ())
+ if (options.generate_print_impl ())
{
PrintCall t (*this, type.name (), item);
t.dispatch (type);
@@ -164,7 +163,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String const& name (eimpl (u));
@@ -186,7 +185,7 @@ namespace CXX
<< "_characters (const " << string_type << "& s)"
<< "{";
- if (options.value<CLI::generate_print_impl> ())
+ if (options.generate_print_impl ())
os << cout_inst << " << " << strlit (u.name () + L": ") <<
" << s << std::endl;";
else
@@ -221,7 +220,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -244,7 +243,7 @@ namespace CXX
if (arg != L"void")
{
- if (options.value<CLI::generate_print_impl> ())
+ if (options.generate_print_impl ())
{
PrintCall t (*this, m.name (), name);
t.dispatch (m.type ());
@@ -268,12 +267,12 @@ namespace CXX
names_parser_callback_ >> parser_callback_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String const& name (eimpl (c));
- Boolean restriction (restriction_p (c));
+ bool restriction (restriction_p (c));
os << "// " << name << endl
<< "//" << endl
@@ -314,7 +313,7 @@ namespace CXX
os << arg_type (base) << " v (" << post_name (base) << " ());"
<< endl;
- if (options.value<CLI::generate_print_impl> ())
+ if (options.generate_print_impl ())
{
PrintCall t (*this, c.name (), "v");
t.dispatch (base);
@@ -354,15 +353,15 @@ namespace CXX
};
}
- Void
+ void
generate_impl_source (Context& ctx)
{
- if (ctx.options.value<CLI::generate_print_impl> ())
+ if (ctx.options.generate_print_impl ())
ctx.os << "#include <iostream>" << endl
<< endl;
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Namespace ns (ctx);
Traversal::Names names;
diff --git a/xsd/xsd/cxx/parser/impl-source.hxx b/xsd/xsd/cxx/parser/impl-source.hxx
index 0d60162..b6f9b3d 100644
--- a/xsd/xsd/cxx/parser/impl-source.hxx
+++ b/xsd/xsd/cxx/parser/impl-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/impl-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_IMPL_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_impl_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/name-processor.cxx b/xsd/xsd/cxx/parser/name-processor.cxx
index d323187..219a3c9 100644
--- a/xsd/xsd/cxx/parser/name-processor.cxx
+++ b/xsd/xsd/cxx/parser/name-processor.cxx
@@ -1,66 +1,47 @@
// file : xsd/cxx/parser/name-processor.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <set>
+#include <map>
+#include <sstream>
+#include <iostream>
+
#include <cxx/parser/name-processor.hxx>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-#include <cult/containers/set.hxx>
-#include <sstream>
-#include <iostream>
+using namespace std;
namespace CXX
{
namespace Parser
{
- NameProcessor::
- NameProcessor ()
- {
- // Dummy ctor, helps with long symbols on HP-UX.
- }
-
namespace
{
//
//
- typedef Cult::Containers::Set<String> NameSet;
+ typedef set<String> NameSet;
class Context: public CXX::Context
{
public:
- Context (CLI::Options const& ops,
+ Context (Parser::options const& ops,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
StringLiteralMap const* map)
- : CXX::Context (std::wcerr,
- root,
- path,
- map,
- ops.value<CLI::char_type> (),
- ops.value<CLI::char_encoding> (),
- ops.value<CLI::include_with_brackets> (),
- ops.value<CLI::include_prefix> (),
- ops.value<CLI::export_symbol> (),
- ops.value<CLI::namespace_map> (),
- ops.value<CLI::namespace_regex> (),
- ops.value<CLI::namespace_regex_trace> (),
- ops.value<CLI::include_regex> (),
- ops.value<CLI::include_regex_trace> (),
- ops.value<CLI::generate_inline> (),
- ops.value<CLI::reserved_name> ()),
- skel_suffix_ (ops.value<CLI::skel_type_suffix> ()),
- impl_suffix_ (ops.value<CLI::impl_type_suffix> ()),
- impl (ops.value<CLI::generate_noop_impl> () ||
- ops.value<CLI::generate_print_impl> () ||
- ops.value<CLI::generate_test_driver> ()),
+ : CXX::Context (std::wcerr, root, path, ops, map),
+ skel_suffix_ (ops.skel_type_suffix ()),
+ impl_suffix_ (ops.impl_type_suffix ()),
+ impl (ops.generate_noop_impl () ||
+ ops.generate_print_impl () ||
+ ops.generate_test_driver ()),
skel_suffix (skel_suffix_),
impl_suffix (impl_suffix_),
global_type_names (global_type_names_),
- polymorphic (ops.value<CLI::generate_polymorphic> ())
+ polymorphic (ops.generate_polymorphic ())
{
}
@@ -82,7 +63,7 @@ namespace CXX
String base_name (escape (n));
String name (base_name);
- for (UnsignedLong i (1); set.find (name) != set.end (); ++i)
+ for (size_t i (1); set.find (name) != set.end (); ++i)
{
std::wostringstream os;
os << i;
@@ -97,16 +78,16 @@ namespace CXX
String const skel_suffix_;
String const impl_suffix_;
- Cult::Containers::Map<String, NameSet> global_type_names_;
+ map<String, NameSet> global_type_names_;
public:
- Boolean const impl;
+ bool const impl;
String const& skel_suffix;
String const& impl_suffix;
- Cult::Containers::Map<String, NameSet>& global_type_names;
+ map<String, NameSet>& global_type_names;
- Boolean polymorphic;
+ bool polymorphic;
};
@@ -119,7 +100,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (Parser::Context::skip (m))
@@ -139,7 +120,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (Parser::Context::skip (m))
@@ -156,9 +137,6 @@ namespace CXX
!m.type ().context ().count ("anonymous"))
{
m.context ().set (
- "member-cache", find_name (base + L"_parser_cache_", set_));
-
- m.context ().set (
"member-map", find_name (base + L"_parser_map_", set_));
m.context ().set (
@@ -245,7 +223,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (Parser::Context::skip (m))
@@ -282,17 +260,17 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (Parser::Context::skip (m))
return;
- Boolean poly (polymorphic &&
+ bool poly (polymorphic &&
m.is_a<SemanticGraph::Element> () &&
!m.type ().context ().count ("anonymous"));
- String parser, member, member_cache, member_map, member_map_impl;
+ String parser, member, member_map, member_map_impl;
try
{
@@ -306,7 +284,6 @@ namespace CXX
if (poly)
{
- member_cache = bm.context ().get<String> ("member-cache");
member_map = bm.context ().get<String> ("member-map");
member_map_impl = bm.context ().get<String> ("member-map-impl");
}
@@ -322,7 +299,6 @@ namespace CXX
if (poly)
{
- member_cache = find_name (base + L"_parser_cache_", set_);
member_map = find_name (base + L"_parser_map_", set_);
member_map_impl = find_name (base + L"_parser_map_impl_", set_);
}
@@ -333,7 +309,6 @@ namespace CXX
if (poly)
{
- m.context ().set ("member-cache", member_cache);
m.context ().set ("member-map", member_map);
m.context ().set ("member-map-impl", member_map_impl);
}
@@ -349,7 +324,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
SemanticGraph::Context& cc (c.context ());
@@ -371,7 +346,7 @@ namespace CXX
// inheriting by restriction in which case we need to have
// the same names as our base.
//
- Boolean restriction (false);
+ bool restriction (false);
if (c.inherits_p ())
{
@@ -464,7 +439,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
SemanticGraph::Context& c (t.context ());
@@ -533,7 +508,7 @@ namespace CXX
String base_name (escape (L"post_" + n));
String post (base_name);
- for (UnsignedLong i (1); set.find (post) != set.end (); ++i)
+ for (size_t i (1); set.find (post) != set.end (); ++i)
{
std::wostringstream os;
os << i;
@@ -556,7 +531,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& ns)
{
NameSet& type_set (global_type_names[ns.name ()]);
@@ -634,7 +609,7 @@ namespace CXX
// anyType & anySimpleType.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType& t)
{
t.context ().set ("name", make_skel_name ("any_type"));
@@ -642,7 +617,7 @@ namespace CXX
t.context ().set ("post", String ("post_any_type"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType& t)
{
t.context ().set ("name", make_skel_name ("any_simple_type"));
@@ -652,7 +627,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
t.context ().set ("name", make_skel_name ("boolean"));
@@ -662,7 +637,7 @@ namespace CXX
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
t.context ().set ("name", make_skel_name ("byte"));
@@ -670,7 +645,7 @@ namespace CXX
t.context ().set ("post", String ("post_byte"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
t.context ().set ("name", make_skel_name ("unsigned_byte"));
@@ -678,7 +653,7 @@ namespace CXX
t.context ().set ("post", String ("post_unsigned_byte"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
t.context ().set ("name", make_skel_name ("short"));
@@ -686,7 +661,7 @@ namespace CXX
t.context ().set ("post", String ("post_short"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
t.context ().set ("name", make_skel_name ("unsigned_short"));
@@ -694,7 +669,7 @@ namespace CXX
t.context ().set ("post", String ("post_unsigned_short"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
t.context ().set ("name", make_skel_name ("int"));
@@ -702,7 +677,7 @@ namespace CXX
t.context ().set ("post", String ("post_int"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
t.context ().set ("name", make_skel_name ("unsigned_int"));
@@ -710,7 +685,7 @@ namespace CXX
t.context ().set ("post", String ("post_unsigned_int"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
t.context ().set ("name", make_skel_name ("long"));
@@ -718,7 +693,7 @@ namespace CXX
t.context ().set ("post", String ("post_long"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
t.context ().set ("name", make_skel_name ("unsigned_long"));
@@ -726,7 +701,7 @@ namespace CXX
t.context ().set ("post", String ("post_unsigned_long"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
t.context ().set ("name", make_skel_name ("integer"));
@@ -734,7 +709,7 @@ namespace CXX
t.context ().set ("post", String ("post_integer"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
t.context ().set ("name", make_skel_name ("non_positive_integer"));
@@ -742,7 +717,7 @@ namespace CXX
t.context ().set ("post", String ("post_non_positive_integer"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
t.context ().set ("name", make_skel_name ("non_negative_integer"));
@@ -750,7 +725,7 @@ namespace CXX
t.context ().set ("post", String ("post_non_negative_integer"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
t.context ().set ("name", make_skel_name ("positive_integer"));
@@ -758,7 +733,7 @@ namespace CXX
t.context ().set ("post", String ("post_positive_integer"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
t.context ().set ("name", make_skel_name ("negative_integer"));
@@ -768,7 +743,7 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
t.context ().set ("name", make_skel_name ("float"));
@@ -776,7 +751,7 @@ namespace CXX
t.context ().set ("post", String ("post_float"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
t.context ().set ("name", make_skel_name ("double"));
@@ -784,7 +759,7 @@ namespace CXX
t.context ().set ("post", String ("post_double"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
t.context ().set ("name", make_skel_name ("decimal"));
@@ -794,7 +769,7 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
t.context ().set ("name", make_skel_name ("string"));
@@ -802,7 +777,7 @@ namespace CXX
t.context ().set ("post", String ("post_string"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
t.context ().set ("name", make_skel_name ("normalized_string"));
@@ -810,7 +785,7 @@ namespace CXX
t.context ().set ("post", String ("post_normalized_string"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
t.context ().set ("name", make_skel_name ("token"));
@@ -818,7 +793,7 @@ namespace CXX
t.context ().set ("post", String ("post_token"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
t.context ().set ("name", make_skel_name ("nmtoken"));
@@ -826,7 +801,7 @@ namespace CXX
t.context ().set ("post", String ("post_nmtoken"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
t.context ().set ("name", make_skel_name ("nmtokens"));
@@ -834,7 +809,7 @@ namespace CXX
t.context ().set ("post", String ("post_nmtokens"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
t.context ().set ("name", make_skel_name ("name"));
@@ -842,7 +817,7 @@ namespace CXX
t.context ().set ("post", String ("post_name"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
t.context ().set ("name", make_skel_name ("ncname"));
@@ -850,7 +825,7 @@ namespace CXX
t.context ().set ("post", String ("post_ncname"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
t.context ().set ("name", make_skel_name ("language"));
@@ -861,7 +836,7 @@ namespace CXX
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
t.context ().set ("name", make_skel_name ("qname"));
@@ -872,7 +847,7 @@ namespace CXX
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
t.context ().set ("name", make_skel_name ("id"));
@@ -880,7 +855,7 @@ namespace CXX
t.context ().set ("post", String ("post_id"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
t.context ().set ("name", make_skel_name ("idref"));
@@ -888,7 +863,7 @@ namespace CXX
t.context ().set ("post", String ("post_idref"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
t.context ().set ("name", make_skel_name ("idrefs"));
@@ -898,7 +873,7 @@ namespace CXX
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
t.context ().set ("name", make_skel_name ("uri"));
@@ -908,7 +883,7 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
t.context ().set ("name", make_skel_name ("base64_binary"));
@@ -916,7 +891,7 @@ namespace CXX
t.context ().set ("post", String ("post_base64_binary"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
t.context ().set ("name", make_skel_name ("hex_binary"));
@@ -927,7 +902,7 @@ namespace CXX
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
t.context ().set ("name", make_skel_name ("date"));
@@ -935,7 +910,7 @@ namespace CXX
t.context ().set ("post", String ("post_date"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
t.context ().set ("name", make_skel_name ("date_time"));
@@ -943,7 +918,7 @@ namespace CXX
t.context ().set ("post", String ("post_date_time"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
t.context ().set ("name", make_skel_name ("duration"));
@@ -951,7 +926,7 @@ namespace CXX
t.context ().set ("post", String ("post_duration"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
t.context ().set ("name", make_skel_name ("gday"));
@@ -959,7 +934,7 @@ namespace CXX
t.context ().set ("post", String ("post_gday"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
t.context ().set ("name", make_skel_name ("gmonth"));
@@ -967,7 +942,7 @@ namespace CXX
t.context ().set ("post", String ("post_gmonth"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
t.context ().set ("name", make_skel_name ("gmonth_day"));
@@ -975,7 +950,7 @@ namespace CXX
t.context ().set ("post", String ("post_gmonth_day"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
t.context ().set ("name", make_skel_name ("gyear"));
@@ -983,7 +958,7 @@ namespace CXX
t.context ().set ("post", String ("post_gyear"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
t.context ().set ("name", make_skel_name ("gyear_month"));
@@ -991,7 +966,7 @@ namespace CXX
t.context ().set ("post", String ("post_gyear_month"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
t.context ().set ("name", make_skel_name ("time"));
@@ -1001,7 +976,7 @@ namespace CXX
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity& t)
{
t.context ().set ("name", make_skel_name ("entity"));
@@ -1009,7 +984,7 @@ namespace CXX
t.context ().set ("post", String ("post_entity"));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities& t)
{
t.context ().set ("name", make_skel_name ("entities"));
@@ -1038,7 +1013,7 @@ namespace CXX
Traversal::Includes,
Traversal::Imports
{
- virtual Void
+ virtual void
traverse (SemanticGraph::Sources& sr)
{
SemanticGraph::Schema& s (sr.schema ());
@@ -1050,7 +1025,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Includes& i)
{
SemanticGraph::Schema& s (i.schema ());
@@ -1062,7 +1037,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Imports& i)
{
SemanticGraph::Schema& s (i.schema ());
@@ -1080,7 +1055,7 @@ namespace CXX
//
struct Implies: Traversal::Implies
{
- virtual Void
+ virtual void
traverse (SemanticGraph::Implies& i)
{
SemanticGraph::Schema& s (i.schema ());
@@ -1093,8 +1068,8 @@ namespace CXX
}
};
- Void
- process_impl (CLI::Options const& ops,
+ void
+ process_impl (options const& ops,
SemanticGraph::Schema& tu,
SemanticGraph::Path const& file,
StringLiteralMap const& map)
@@ -1169,7 +1144,7 @@ namespace CXX
//
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
schema >> sources >> schema;
@@ -1189,8 +1164,8 @@ namespace CXX
}
}
- Void NameProcessor::
- process (CLI::Options const& ops,
+ void NameProcessor::
+ process (options const& ops,
SemanticGraph::Schema& tu,
SemanticGraph::Path const& file,
StringLiteralMap const& map)
diff --git a/xsd/xsd/cxx/parser/name-processor.hxx b/xsd/xsd/cxx/parser/name-processor.hxx
index 5c28371..0460ea4 100644
--- a/xsd/xsd/cxx/parser/name-processor.hxx
+++ b/xsd/xsd/cxx/parser/name-processor.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/name-processor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_NAME_PROCESSOR_HXX
@@ -8,22 +7,20 @@
#include <xsd-frontend/semantic-graph.hxx>
+#include <types.hxx>
+
#include <cxx/elements.hxx>
-#include <cxx/parser/cli.hxx>
+#include <cxx/parser/options.hxx>
namespace CXX
{
namespace Parser
{
- using namespace Cult::Types;
-
class NameProcessor
{
public:
- NameProcessor (); // Dummy ctor, helps with long symbols on HP-UX.
-
- Void
- process (CLI::Options const& ops,
+ void
+ process (options const&,
XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file,
StringLiteralMap const& map);
diff --git a/xsd/xsd/cxx/parser/options.cli b/xsd/xsd/cxx/parser/options.cli
new file mode 100644
index 0000000..227bb51
--- /dev/null
+++ b/xsd/xsd/cxx/parser/options.cli
@@ -0,0 +1,148 @@
+// file : xsd/cxx/parser/options.cli
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include <cstddef>; // std::size_t
+
+include <types.hxx>; // NarrowString, NarrowStrings
+
+include <cxx/options.cli>;
+
+namespace CXX
+{
+ namespace Parser
+ {
+ class options: CXX::options
+ {
+ NarrowStrings --type-map
+ {
+ "<mapfile>",
+ "Read XML Schema to C++ type mapping information from <mapfile>.
+ Repeat this option to specify several type maps. Type maps are
+ considered in order of appearance and the first match is used. By
+ default all user-defined types are mapped to \cb{void}. See the
+ TYPE MAP section below for more information."
+ };
+
+ NarrowString --xml-parser = "xerces"
+ {
+ "<parser>",
+ "Use <parser> as the underlying XML parser. Valid values are
+ \cb{xerces} for Xerces-C++ (default) and \cb{expat} for Expat."
+ };
+
+ // Features.
+ //
+ bool --generate-validation
+ {
+ "Generate validation code. The validation code (\"perfect parser\")
+ ensures that instance documents conform to the schema. Validation
+ code is generated by default when the selected underlying XML parser
+ is non-validating (\cb{expat})."
+ };
+
+ bool --suppress-validation
+ {
+ "Suppress the generation of validation code. Validation is suppressed
+ by default when the selected underlying XML parser is validating
+ (\cb{xerces})."
+ };
+
+ bool --generate-polymorphic
+ {
+ "Generate polymorphism-aware code. Specify this option if you use
+ substitution groups or \cb{xsi:type}."
+ };
+
+ bool --generate-noop-impl
+ {
+ "Generate a sample parser implementation that does nothing (no
+ operation). The sample implementation can then be filled with
+ the application-specific code. For an input file in the form
+ \cb{name.xsd} this option triggers the generation of two
+ additional C++ files in the form: \cb{name-pimpl.hxx} (parser
+ implementation header file) and \cb{name-pimpl.cxx} (parser
+ implementation source file)."
+ };
+
+ bool --generate-print-impl
+ {
+ "Generate a sample parser implementation that prints the XML data
+ to \c{STDOUT}. For an input file in the form \cb{name.xsd} this
+ option triggers the generation of two additional C++ files in the
+ form: \cb{name-pimpl.hxx} (parser implementation header file) and
+ \cb{name-pimpl.cxx} (parser implementation source file)."
+ };
+
+ bool --generate-test-driver
+ {
+ "Generate a test driver for the sample parser implementation. For an
+ input file in the form \cb{name.xsd} this option triggers the
+ generation of an additional C++ file in the form
+ \cb{name-driver.cxx}."
+ };
+
+ bool --force-overwrite
+ {
+ "Force overwriting of the existing implementation and test driver
+ files. Use this option only if you do not mind loosing the changes
+ you have made in the sample implementation or test driver files."
+ };
+
+ // Root element.
+ //
+ bool --root-element-first
+ {
+ "Indicate that the first global element is the document root. This
+ information is used to generate the test driver for the sample
+ implementation."
+ };
+
+ bool --root-element-last
+ {
+ "Indicate that the last global element is the document root. This
+ information is used to generate the test driver for the sample
+ implementation."
+ };
+
+ NarrowString --root-element
+ {
+ "<element>",
+ "Indicate that <element> is the document root. This information is
+ used to generate the test driver for the sample implementation."
+ };
+
+ // Suffixes.
+ //
+ NarrowString --skel-type-suffix = "_pskel"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{_pskel} to
+ construct the names of the generated parser skeletons."
+ };
+
+ NarrowString --skel-file-suffix = "-pskel"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{-pskel} to
+ construct the names of the generated parser skeleton files."
+ };
+
+ NarrowString --impl-type-suffix = "_pimpl"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{_pimpl} to
+ construct the names of the parser implementations for the built-in
+ XML Schema types as well as sample parser implementations."
+ };
+
+ NarrowString --impl-file-suffix = "-pimpl"
+ {
+ "<suffix>",
+ "Use the provided <suffix> instead of the default \cb{-pimpl} to
+ construct the names of the generated sample parser implementation
+ files."
+ };
+ };
+ }
+}
diff --git a/xsd/xsd/cxx/parser/options.cxx b/xsd/xsd/cxx/parser/options.cxx
new file mode 100644
index 0000000..6f18446
--- /dev/null
+++ b/xsd/xsd/cxx/parser/options.cxx
@@ -0,0 +1,581 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+#include <options-parser.hxx>
+//
+// End prologue.
+
+#include <cxx/parser/options.hxx>
+
+#include <map>
+#include <set>
+#include <string>
+#include <vector>
+#include <ostream>
+#include <sstream>
+
+namespace cli
+{
+ template <typename X>
+ struct parser
+ {
+ static void
+ parse (X& x, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string v (s.next ());
+ std::istringstream is (v);
+ if (!(is >> x && is.eof ()))
+ throw invalid_value (o, v);
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <>
+ struct parser<bool>
+ {
+ static void
+ parse (bool& x, scanner& s)
+ {
+ s.next ();
+ x = true;
+ }
+ };
+
+ template <>
+ struct parser<std::string>
+ {
+ static void
+ parse (std::string& x, bool& xs, scanner& s)
+ {
+ const char* o (s.next ());
+
+ if (s.more ())
+ x = s.next ();
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::vector<X> >
+ {
+ static void
+ parse (std::vector<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.push_back (x);
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::set<X> >
+ {
+ static void
+ parse (std::set<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.insert (x);
+ xs = true;
+ }
+ };
+
+ template <typename K, typename V>
+ struct parser<std::map<K, V> >
+ {
+ static void
+ parse (std::map<K, V>& m, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string ov (s.next ());
+ std::string::size_type p = ov.find ('=');
+
+ if (p == std::string::npos)
+ {
+ K k = K ();
+
+ if (!ov.empty ())
+ {
+ std::istringstream ks (ov);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = V ();
+ }
+ else
+ {
+ K k = K ();
+ V v = V ();
+ std::string kstr (ov, 0, p);
+ std::string vstr (ov, p + 1);
+
+ if (!kstr.empty ())
+ {
+ std::istringstream ks (kstr);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ if (!vstr.empty ())
+ {
+ std::istringstream vs (vstr);
+
+ if (!(vs >> v && vs.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = v;
+ }
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X, typename T, T X::*M>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, s);
+ }
+
+ template <typename X, typename T, T X::*M, bool X::*S>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, x.*S, s);
+ }
+}
+
+#include <map>
+#include <cstring>
+
+namespace CXX
+{
+ namespace Parser
+ {
+ // options
+ //
+
+ options::
+ options ()
+ : type_map_ (),
+ type_map_specified_ (false),
+ xml_parser_ ("xerces"),
+ xml_parser_specified_ (false),
+ generate_validation_ (),
+ suppress_validation_ (),
+ generate_polymorphic_ (),
+ generate_noop_impl_ (),
+ generate_print_impl_ (),
+ generate_test_driver_ (),
+ force_overwrite_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ skel_type_suffix_ ("_pskel"),
+ skel_type_suffix_specified_ (false),
+ skel_file_suffix_ ("-pskel"),
+ skel_file_suffix_specified_ (false),
+ impl_type_suffix_ ("_pimpl"),
+ impl_type_suffix_specified_ (false),
+ impl_file_suffix_ ("-pimpl"),
+ impl_file_suffix_specified_ (false)
+ {
+ }
+
+ options::
+ options (int& argc,
+ char** argv,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : type_map_ (),
+ type_map_specified_ (false),
+ xml_parser_ ("xerces"),
+ xml_parser_specified_ (false),
+ generate_validation_ (),
+ suppress_validation_ (),
+ generate_polymorphic_ (),
+ generate_noop_impl_ (),
+ generate_print_impl_ (),
+ generate_test_driver_ (),
+ force_overwrite_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ skel_type_suffix_ ("_pskel"),
+ skel_type_suffix_specified_ (false),
+ skel_file_suffix_ ("-pskel"),
+ skel_file_suffix_specified_ (false),
+ impl_type_suffix_ ("_pimpl"),
+ impl_type_suffix_specified_ (false),
+ impl_file_suffix_ ("-pimpl"),
+ impl_file_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (argc, argv, erase);
+ _parse (s, opt, arg);
+ }
+
+ options::
+ options (int start,
+ int& argc,
+ char** argv,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : type_map_ (),
+ type_map_specified_ (false),
+ xml_parser_ ("xerces"),
+ xml_parser_specified_ (false),
+ generate_validation_ (),
+ suppress_validation_ (),
+ generate_polymorphic_ (),
+ generate_noop_impl_ (),
+ generate_print_impl_ (),
+ generate_test_driver_ (),
+ force_overwrite_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ skel_type_suffix_ ("_pskel"),
+ skel_type_suffix_specified_ (false),
+ skel_file_suffix_ ("-pskel"),
+ skel_file_suffix_specified_ (false),
+ impl_type_suffix_ ("_pimpl"),
+ impl_type_suffix_specified_ (false),
+ impl_file_suffix_ ("-pimpl"),
+ impl_file_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (start, argc, argv, erase);
+ _parse (s, opt, arg);
+ }
+
+ options::
+ options (int& argc,
+ char** argv,
+ int& end,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : type_map_ (),
+ type_map_specified_ (false),
+ xml_parser_ ("xerces"),
+ xml_parser_specified_ (false),
+ generate_validation_ (),
+ suppress_validation_ (),
+ generate_polymorphic_ (),
+ generate_noop_impl_ (),
+ generate_print_impl_ (),
+ generate_test_driver_ (),
+ force_overwrite_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ skel_type_suffix_ ("_pskel"),
+ skel_type_suffix_specified_ (false),
+ skel_file_suffix_ ("-pskel"),
+ skel_file_suffix_specified_ (false),
+ impl_type_suffix_ ("_pimpl"),
+ impl_type_suffix_specified_ (false),
+ impl_file_suffix_ ("-pimpl"),
+ impl_file_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (argc, argv, erase);
+ _parse (s, opt, arg);
+ end = s.end ();
+ }
+
+ options::
+ options (int start,
+ int& argc,
+ char** argv,
+ int& end,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : type_map_ (),
+ type_map_specified_ (false),
+ xml_parser_ ("xerces"),
+ xml_parser_specified_ (false),
+ generate_validation_ (),
+ suppress_validation_ (),
+ generate_polymorphic_ (),
+ generate_noop_impl_ (),
+ generate_print_impl_ (),
+ generate_test_driver_ (),
+ force_overwrite_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ skel_type_suffix_ ("_pskel"),
+ skel_type_suffix_specified_ (false),
+ skel_file_suffix_ ("-pskel"),
+ skel_file_suffix_specified_ (false),
+ impl_type_suffix_ ("_pimpl"),
+ impl_type_suffix_specified_ (false),
+ impl_file_suffix_ ("-pimpl"),
+ impl_file_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (start, argc, argv, erase);
+ _parse (s, opt, arg);
+ end = s.end ();
+ }
+
+ options::
+ options (::cli::scanner& s,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : type_map_ (),
+ type_map_specified_ (false),
+ xml_parser_ ("xerces"),
+ xml_parser_specified_ (false),
+ generate_validation_ (),
+ suppress_validation_ (),
+ generate_polymorphic_ (),
+ generate_noop_impl_ (),
+ generate_print_impl_ (),
+ generate_test_driver_ (),
+ force_overwrite_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ skel_type_suffix_ ("_pskel"),
+ skel_type_suffix_specified_ (false),
+ skel_file_suffix_ ("-pskel"),
+ skel_file_suffix_specified_ (false),
+ impl_type_suffix_ ("_pimpl"),
+ impl_type_suffix_specified_ (false),
+ impl_file_suffix_ ("-pimpl"),
+ impl_file_suffix_specified_ (false)
+ {
+ _parse (s, opt, arg);
+ }
+
+ void options::
+ print_usage (::std::wostream& os)
+ {
+ os << "--type-map <mapfile> Read XML Schema to C++ type mapping information" << ::std::endl
+ << " from <mapfile>." << ::std::endl;
+
+ os << "--xml-parser <parser> Use <parser> as the underlying XML parser." << ::std::endl;
+
+ os << "--generate-validation Generate validation code." << ::std::endl;
+
+ os << "--suppress-validation Suppress the generation of validation code." << ::std::endl;
+
+ os << "--generate-polymorphic Generate polymorphism-aware code." << ::std::endl;
+
+ os << "--generate-noop-impl Generate a sample parser implementation that does" << ::std::endl
+ << " nothing (no operation)." << ::std::endl;
+
+ os << "--generate-print-impl Generate a sample parser implementation that" << ::std::endl
+ << " prints the XML data to 'STDOUT'." << ::std::endl;
+
+ os << "--generate-test-driver Generate a test driver for the sample parser" << ::std::endl
+ << " implementation." << ::std::endl;
+
+ os << "--force-overwrite Force overwriting of the existing implementation" << ::std::endl
+ << " and test driver files." << ::std::endl;
+
+ os << "--root-element-first Indicate that the first global element is the" << ::std::endl
+ << " document root." << ::std::endl;
+
+ os << "--root-element-last Indicate that the last global element is the" << ::std::endl
+ << " document root." << ::std::endl;
+
+ os << "--root-element <element> Indicate that <element> is the document root." << ::std::endl;
+
+ os << "--skel-type-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '_pskel' to construct the names of the generated" << ::std::endl
+ << " parser skeletons." << ::std::endl;
+
+ os << "--skel-file-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '-pskel' to construct the names of the generated" << ::std::endl
+ << " parser skeleton files." << ::std::endl;
+
+ os << "--impl-type-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '_pimpl' to construct the names of the parser" << ::std::endl
+ << " implementations for the built-in XML Schema types" << ::std::endl
+ << " as well as sample parser implementations." << ::std::endl;
+
+ os << "--impl-file-suffix <suffix> Use the provided <suffix> instead of the default" << ::std::endl
+ << " '-pimpl' to construct the names of the generated" << ::std::endl
+ << " sample parser implementation files." << ::std::endl;
+ }
+
+ typedef
+ std::map<std::string, void (*) (options&, ::cli::scanner&)>
+ _cli_options_map;
+
+ static _cli_options_map _cli_options_map_;
+
+ struct _cli_options_map_init
+ {
+ _cli_options_map_init ()
+ {
+ _cli_options_map_["--type-map"] =
+ &::cli::thunk< options, NarrowStrings, &options::type_map_,
+ &options::type_map_specified_ >;
+ _cli_options_map_["--xml-parser"] =
+ &::cli::thunk< options, NarrowString, &options::xml_parser_,
+ &options::xml_parser_specified_ >;
+ _cli_options_map_["--generate-validation"] =
+ &::cli::thunk< options, bool, &options::generate_validation_ >;
+ _cli_options_map_["--suppress-validation"] =
+ &::cli::thunk< options, bool, &options::suppress_validation_ >;
+ _cli_options_map_["--generate-polymorphic"] =
+ &::cli::thunk< options, bool, &options::generate_polymorphic_ >;
+ _cli_options_map_["--generate-noop-impl"] =
+ &::cli::thunk< options, bool, &options::generate_noop_impl_ >;
+ _cli_options_map_["--generate-print-impl"] =
+ &::cli::thunk< options, bool, &options::generate_print_impl_ >;
+ _cli_options_map_["--generate-test-driver"] =
+ &::cli::thunk< options, bool, &options::generate_test_driver_ >;
+ _cli_options_map_["--force-overwrite"] =
+ &::cli::thunk< options, bool, &options::force_overwrite_ >;
+ _cli_options_map_["--root-element-first"] =
+ &::cli::thunk< options, bool, &options::root_element_first_ >;
+ _cli_options_map_["--root-element-last"] =
+ &::cli::thunk< options, bool, &options::root_element_last_ >;
+ _cli_options_map_["--root-element"] =
+ &::cli::thunk< options, NarrowString, &options::root_element_,
+ &options::root_element_specified_ >;
+ _cli_options_map_["--skel-type-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::skel_type_suffix_,
+ &options::skel_type_suffix_specified_ >;
+ _cli_options_map_["--skel-file-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::skel_file_suffix_,
+ &options::skel_file_suffix_specified_ >;
+ _cli_options_map_["--impl-type-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::impl_type_suffix_,
+ &options::impl_type_suffix_specified_ >;
+ _cli_options_map_["--impl-file-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::impl_file_suffix_,
+ &options::impl_file_suffix_specified_ >;
+ }
+ };
+
+ static _cli_options_map_init _cli_options_map_init_;
+
+ bool options::
+ _parse (const char* o, ::cli::scanner& s)
+ {
+ _cli_options_map::const_iterator i (_cli_options_map_.find (o));
+
+ if (i != _cli_options_map_.end ())
+ {
+ (*(i->second)) (*this, s);
+ return true;
+ }
+
+ // options base
+ //
+ if (::CXX::options::_parse (o, s))
+ return true;
+
+ return false;
+ }
+
+ void options::
+ _parse (::cli::scanner& s,
+ ::cli::unknown_mode opt_mode,
+ ::cli::unknown_mode arg_mode)
+ {
+ bool opt = true;
+
+ while (s.more ())
+ {
+ const char* o = s.peek ();
+
+ if (std::strcmp (o, "--") == 0)
+ {
+ s.skip ();
+ opt = false;
+ continue;
+ }
+
+ if (opt && _parse (o, s));
+ else if (opt && std::strncmp (o, "-", 1) == 0 && o[1] != '\0')
+ {
+ switch (opt_mode)
+ {
+ case ::cli::unknown_mode::skip:
+ {
+ s.skip ();
+ continue;
+ }
+ case ::cli::unknown_mode::stop:
+ {
+ break;
+ }
+ case ::cli::unknown_mode::fail:
+ {
+ throw ::cli::unknown_option (o);
+ }
+ }
+
+ break;
+ }
+ else
+ {
+ switch (arg_mode)
+ {
+ case ::cli::unknown_mode::skip:
+ {
+ s.skip ();
+ continue;
+ }
+ case ::cli::unknown_mode::stop:
+ {
+ break;
+ }
+ case ::cli::unknown_mode::fail:
+ {
+ throw ::cli::unknown_argument (o);
+ }
+ }
+
+ break;
+ }
+ }
+ }
+ }
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
diff --git a/xsd/xsd/cxx/parser/options.hxx b/xsd/xsd/cxx/parser/options.hxx
new file mode 100644
index 0000000..976f93b
--- /dev/null
+++ b/xsd/xsd/cxx/parser/options.hxx
@@ -0,0 +1,183 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+#ifndef CXX_PARSER_OPTIONS_HXX
+#define CXX_PARSER_OPTIONS_HXX
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+#include <cstddef>
+
+#include <types.hxx>
+
+#include <cxx/options.hxx>
+
+namespace CXX
+{
+ namespace Parser
+ {
+ class options: public ::CXX::options
+ {
+ public:
+ options (int& argc,
+ char** argv,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (int start,
+ int& argc,
+ char** argv,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (int& argc,
+ char** argv,
+ int& end,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (int start,
+ int& argc,
+ char** argv,
+ int& end,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (::cli::scanner&,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options ();
+
+ // Option accessors.
+ //
+ const NarrowStrings&
+ type_map () const;
+
+ bool
+ type_map_specified () const;
+
+ const NarrowString&
+ xml_parser () const;
+
+ bool
+ xml_parser_specified () const;
+
+ const bool&
+ generate_validation () const;
+
+ const bool&
+ suppress_validation () const;
+
+ const bool&
+ generate_polymorphic () const;
+
+ const bool&
+ generate_noop_impl () const;
+
+ const bool&
+ generate_print_impl () const;
+
+ const bool&
+ generate_test_driver () const;
+
+ const bool&
+ force_overwrite () const;
+
+ const bool&
+ root_element_first () const;
+
+ const bool&
+ root_element_last () const;
+
+ const NarrowString&
+ root_element () const;
+
+ bool
+ root_element_specified () const;
+
+ const NarrowString&
+ skel_type_suffix () const;
+
+ bool
+ skel_type_suffix_specified () const;
+
+ const NarrowString&
+ skel_file_suffix () const;
+
+ bool
+ skel_file_suffix_specified () const;
+
+ const NarrowString&
+ impl_type_suffix () const;
+
+ bool
+ impl_type_suffix_specified () const;
+
+ const NarrowString&
+ impl_file_suffix () const;
+
+ bool
+ impl_file_suffix_specified () const;
+
+ // Print usage information.
+ //
+ static void
+ print_usage (::std::wostream&);
+
+ // Implementation details.
+ //
+ protected:
+ bool
+ _parse (const char*, ::cli::scanner&);
+
+ private:
+ void
+ _parse (::cli::scanner&,
+ ::cli::unknown_mode option,
+ ::cli::unknown_mode argument);
+
+ public:
+ NarrowStrings type_map_;
+ bool type_map_specified_;
+ NarrowString xml_parser_;
+ bool xml_parser_specified_;
+ bool generate_validation_;
+ bool suppress_validation_;
+ bool generate_polymorphic_;
+ bool generate_noop_impl_;
+ bool generate_print_impl_;
+ bool generate_test_driver_;
+ bool force_overwrite_;
+ bool root_element_first_;
+ bool root_element_last_;
+ NarrowString root_element_;
+ bool root_element_specified_;
+ NarrowString skel_type_suffix_;
+ bool skel_type_suffix_specified_;
+ NarrowString skel_file_suffix_;
+ bool skel_file_suffix_specified_;
+ NarrowString impl_type_suffix_;
+ bool impl_type_suffix_specified_;
+ NarrowString impl_file_suffix_;
+ bool impl_file_suffix_specified_;
+ };
+ }
+}
+
+#include <cxx/parser/options.ixx>
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
+#endif // CXX_PARSER_OPTIONS_HXX
diff --git a/xsd/xsd/cxx/parser/options.ixx b/xsd/xsd/cxx/parser/options.ixx
new file mode 100644
index 0000000..22ab11d
--- /dev/null
+++ b/xsd/xsd/cxx/parser/options.ixx
@@ -0,0 +1,160 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+namespace CXX
+{
+ namespace Parser
+ {
+ // options
+ //
+
+ inline const NarrowStrings& options::
+ type_map () const
+ {
+ return this->type_map_;
+ }
+
+ inline bool options::
+ type_map_specified () const
+ {
+ return this->type_map_specified_;
+ }
+
+ inline const NarrowString& options::
+ xml_parser () const
+ {
+ return this->xml_parser_;
+ }
+
+ inline bool options::
+ xml_parser_specified () const
+ {
+ return this->xml_parser_specified_;
+ }
+
+ inline const bool& options::
+ generate_validation () const
+ {
+ return this->generate_validation_;
+ }
+
+ inline const bool& options::
+ suppress_validation () const
+ {
+ return this->suppress_validation_;
+ }
+
+ inline const bool& options::
+ generate_polymorphic () const
+ {
+ return this->generate_polymorphic_;
+ }
+
+ inline const bool& options::
+ generate_noop_impl () const
+ {
+ return this->generate_noop_impl_;
+ }
+
+ inline const bool& options::
+ generate_print_impl () const
+ {
+ return this->generate_print_impl_;
+ }
+
+ inline const bool& options::
+ generate_test_driver () const
+ {
+ return this->generate_test_driver_;
+ }
+
+ inline const bool& options::
+ force_overwrite () const
+ {
+ return this->force_overwrite_;
+ }
+
+ inline const bool& options::
+ root_element_first () const
+ {
+ return this->root_element_first_;
+ }
+
+ inline const bool& options::
+ root_element_last () const
+ {
+ return this->root_element_last_;
+ }
+
+ inline const NarrowString& options::
+ root_element () const
+ {
+ return this->root_element_;
+ }
+
+ inline bool options::
+ root_element_specified () const
+ {
+ return this->root_element_specified_;
+ }
+
+ inline const NarrowString& options::
+ skel_type_suffix () const
+ {
+ return this->skel_type_suffix_;
+ }
+
+ inline bool options::
+ skel_type_suffix_specified () const
+ {
+ return this->skel_type_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ skel_file_suffix () const
+ {
+ return this->skel_file_suffix_;
+ }
+
+ inline bool options::
+ skel_file_suffix_specified () const
+ {
+ return this->skel_file_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ impl_type_suffix () const
+ {
+ return this->impl_type_suffix_;
+ }
+
+ inline bool options::
+ impl_type_suffix_specified () const
+ {
+ return this->impl_type_suffix_specified_;
+ }
+
+ inline const NarrowString& options::
+ impl_file_suffix () const
+ {
+ return this->impl_file_suffix_;
+ }
+
+ inline bool options::
+ impl_file_suffix_specified () const
+ {
+ return this->impl_file_suffix_specified_;
+ }
+ }
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
diff --git a/xsd/xsd/cxx/parser/parser-forward.cxx b/xsd/xsd/cxx/parser/parser-forward.cxx
index a4e8ae7..faf427a 100644
--- a/xsd/xsd/cxx/parser/parser-forward.cxx
+++ b/xsd/xsd/cxx/parser/parser-forward.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/parser-forward.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/parser-forward.hxx>
@@ -21,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
os << "class " << ename (e) << ";";
@@ -37,7 +36,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
os << "class " << ename (l) << ";";
@@ -53,7 +52,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
os << "class " << ename (u) << ";";
@@ -69,7 +68,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
os << "class " << ename (c) << ";";
@@ -77,7 +76,7 @@ namespace CXX
};
}
- Void
+ void
generate_parser_forward (Context& ctx)
{
ctx.os << "// Forward declarations" << endl
@@ -85,7 +84,7 @@ namespace CXX
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/parser/parser-forward.hxx b/xsd/xsd/cxx/parser/parser-forward.hxx
index a8a17f1..53c7049 100644
--- a/xsd/xsd/cxx/parser/parser-forward.hxx
+++ b/xsd/xsd/cxx/parser/parser-forward.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/parser-forward.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_PARSER_FORWARD_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_parser_forward (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/parser-header.cxx b/xsd/xsd/cxx/parser/parser-header.cxx
index aade743..800a4b9 100644
--- a/xsd/xsd/cxx/parser/parser-header.cxx
+++ b/xsd/xsd/cxx/parser/parser-header.cxx
@@ -1,13 +1,16 @@
// file : xsd/cxx/parser/parser-header.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <set>
+
#include <cxx/parser/parser-header.hxx>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
+using namespace std;
+
namespace CXX
{
namespace Parser
@@ -21,7 +24,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String const& name (ename (e));
@@ -41,7 +44,7 @@ namespace CXX
String const& ret (ret_type (e));
- Boolean same (ret == ret_type (base));
+ bool same (ret == ret_type (base));
os << "virtual " << ret << endl
<< post_name (e) << " ()" <<
@@ -71,7 +74,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String const& name (ename (l));
@@ -173,7 +176,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String const& name (ename (u));
@@ -222,7 +225,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m)) return;
@@ -251,7 +254,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -281,7 +284,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -295,8 +298,7 @@ namespace CXX
m.is_a<SemanticGraph::Element> () &&
!anonymous (m.type ()))
{
- os << type << "* " << emember_cache (m) << ";"
- << "const " << parser_map << "* " << emember_map (m) << ";"
+ os << "const " << parser_map << "* " << emember_map (m) << ";"
<< endl;
}
}
@@ -316,14 +318,13 @@ namespace CXX
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All& a)
{
if (!a.context().count ("comp-number"))
return;
- UnsignedLong state_count (
- a.context().get<UnsignedLong> ("state-count"));
+ size_t state_count (a.context().get<size_t> ("state-count"));
os << "void" << endl
<< "all_0 (unsigned long& state," << endl
@@ -338,13 +339,13 @@ namespace CXX
<< endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Choice& c)
{
if (!c.context().count ("comp-number"))
return;
- UnsignedLong n (c.context ().get<UnsignedLong> ("comp-number"));
+ size_t n (c.context ().get<size_t> ("comp-number"));
os << "void" << endl
<< "choice_" << n << " (unsigned long& state," << endl
@@ -358,13 +359,13 @@ namespace CXX
Traversal::Choice::traverse (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Sequence& s)
{
if (!s.context().count ("comp-number"))
return;
- UnsignedLong n (s.context ().get<UnsignedLong> ("comp-number"));
+ size_t n (s.context ().get<size_t> ("comp-number"));
os << "void" << endl
<< "sequence_" << n << " (unsigned long& state," << endl
@@ -392,7 +393,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
if (!a.optional_p ())
@@ -419,7 +420,7 @@ namespace CXX
names_attribute_validation_state_ >> attribute_validation_state_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String const& name (ename (c));
@@ -428,15 +429,15 @@ namespace CXX
// generate parser callbacks, etc. since they are the same as in
// the base. We only need the parsing/validation code.
//
- Boolean restriction (restriction_p (c));
+ bool restriction (restriction_p (c));
- Boolean he (has<Traversal::Element> (c));
- Boolean ha (has<Traversal::Attribute> (c));
+ bool he (has<Traversal::Element> (c));
+ bool ha (has<Traversal::Attribute> (c));
- Boolean hae (has_particle<Traversal::Any> (c));
- Boolean haa (has<Traversal::AnyAttribute> (c));
+ bool hae (has_particle<Traversal::Any> (c));
+ bool haa (has<Traversal::AnyAttribute> (c));
- Boolean hra (false); // Has required attribute.
+ bool hra (false); // Has required attribute.
if (ha)
{
RequiredAttributeTest test (hra);
@@ -472,7 +473,7 @@ namespace CXX
String const& ret (ret_type (c));
- Boolean same (c.inherits_p () &&
+ bool same (c.inherits_p () &&
ret == ret_type (c.inherits ().base ()));
os << "virtual " << ret << endl
@@ -606,7 +607,7 @@ namespace CXX
if (validation && (he || hae))
{
- UnsignedLong depth (c.context ().get<UnsignedLong> ("depth"));
+ size_t depth (c.context ().get<size_t> ("depth"));
os << "protected:" << endl;
@@ -770,13 +771,13 @@ namespace CXX
// anyType & anySimpleType.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType& t)
{
gen_typedef (t, "void", "any_type_pskel", "any_type_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType& t)
{
gen_typedef (t, "void",
@@ -785,7 +786,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
gen_typedef (t, "bool", "boolean_pskel", "boolean_pimpl");
@@ -793,72 +794,72 @@ namespace CXX
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
gen_typedef (t, "signed char", "byte_pskel", "byte_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
gen_typedef (t, "unsigned char",
"unsigned_byte_pskel", "unsigned_byte_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
gen_typedef (t, "short", "short_pskel", "short_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
gen_typedef (t, "unsigned short",
"unsigned_short_pskel", "unsigned_short_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
gen_typedef (t, "int", "int_pskel", "int_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
gen_typedef (t, "unsigned int",
"unsigned_int_pskel", "unsigned_int_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
gen_typedef (t, "long long", "long_pskel", "long_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
gen_typedef (t, "unsigned long long",
"unsigned_long_pskel", "unsigned_long_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
gen_typedef (t, "long long", "integer_pskel", "integer_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
gen_typedef (t, "long long",
"negative_integer_pskel", "negative_integer_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
gen_typedef (t, "long long",
@@ -866,14 +867,14 @@ namespace CXX
"non_positive_integer_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
gen_typedef (t, "unsigned long long",
"positive_integer_pskel", "positive_integer_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
gen_typedef (t, "unsigned long long",
@@ -883,19 +884,19 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
gen_typedef (t, "float", "float_pskel", "float_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
gen_typedef (t, "double", "double_pskel", "double_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
gen_typedef (t, "double", "decimal_pskel", "decimal_pimpl");
@@ -903,33 +904,33 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
gen_typedef (t, string_type_, "string_pskel", "string_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
gen_typedef (t, string_type_,
"normalized_string_pskel", "normalized_string_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
gen_typedef (t, string_type_, "token_pskel", "token_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
nmtoken_ = gen_typedef (t, string_type_,
"nmtoken_pskel", "nmtoken_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
// NMTOKENS uses NMTOKEN implementation to parse individual items.
@@ -941,19 +942,19 @@ namespace CXX
"nmtokens_pskel", "nmtokens_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
gen_typedef (t, string_type_, "name_pskel", "name_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
gen_typedef (t, string_type_, "ncname_pskel", "ncname_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
gen_typedef (t, string_type_, "language_pskel", "language_pimpl");
@@ -961,7 +962,7 @@ namespace CXX
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
gen_typedef (t, xs_ns_ + L"::qname", "qname_pskel", "qname_pimpl");
@@ -969,19 +970,19 @@ namespace CXX
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
gen_typedef (t, string_type_, "id_pskel", "id_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
idref_ = gen_typedef (t, string_type_, "idref_pskel", "idref_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
// IDREFS uses IDREF implementation to parse individual items.
@@ -995,7 +996,7 @@ namespace CXX
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
gen_typedef (t, string_type_, "uri_pskel", "uri_pimpl");
@@ -1003,78 +1004,78 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
- String buffer (L"::std::auto_ptr< " + xs_ns_ + L"::buffer >");
+ String buffer (auto_ptr + L"< " + xs_ns_ + L"::buffer >");
gen_typedef (t, buffer,
"base64_binary_pskel", "base64_binary_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
- String buffer (L"::std::auto_ptr< " + xs_ns_ + L"::buffer >");
+ String buffer (auto_ptr + L"< " + xs_ns_ + L"::buffer >");
gen_typedef (t, buffer, "hex_binary_pskel", "hex_binary_pimpl");
}
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
gen_typedef (t, xs_ns_ + L"::date", "date_pskel", "date_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
gen_typedef (t, xs_ns_ + L"::date_time",
"date_time_pskel", "date_time_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
gen_typedef (t, xs_ns_ + L"::duration",
"duration_pskel", "duration_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
gen_typedef (t, xs_ns_ + L"::gday", "gday_pskel", "gday_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
gen_typedef (t, xs_ns_ + L"::gmonth",
"gmonth_pskel", "gmonth_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
gen_typedef (t, xs_ns_ + L"::gmonth_day",
"gmonth_day_pskel", "gmonth_day_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
gen_typedef (t, xs_ns_ + L"::gyear", "gyear_pskel", "gyear_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
gen_typedef (t, xs_ns_ + L"::gyear_month",
"gyear_month_pskel", "gyear_month_pimpl");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
gen_typedef (t, xs_ns_ + L"::time", "time_pskel", "time_pimpl");
@@ -1082,18 +1083,18 @@ namespace CXX
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity&)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities&)
{
}
private:
- Boolean
+ bool
gen_typedef (SemanticGraph::Type& t,
String const& type,
String const& pskel,
@@ -1120,8 +1121,8 @@ namespace CXX
String impl_ns_;
String string_type_;
- Boolean idref_;
- Boolean nmtoken_;
+ bool idref_;
+ bool nmtoken_;
};
struct FundNamespace: Namespace, Context
@@ -1258,8 +1259,8 @@ namespace CXX
};
}
- Void
- generate_parser_header (Context& ctx, Boolean generate_xml_schema)
+ void
+ generate_parser_header (Context& ctx, bool generate_xml_schema)
{
String c (ctx.char_type);
@@ -1295,11 +1296,11 @@ namespace CXX
NarrowString extern_xml_schema;
if (!generate_xml_schema)
- extern_xml_schema = ctx.options.value<CLI::extern_xml_schema> ();
+ extern_xml_schema = ctx.options.extern_xml_schema ();
if (extern_xml_schema)
{
- String name (ctx.hxx_expr->merge (extern_xml_schema));
+ String name (ctx.hxx_expr->replace (extern_xml_schema));
ctx.os << "#include " << ctx.process_include_path (name) << endl
<< endl;
@@ -1308,12 +1309,12 @@ namespace CXX
//
if (ctx.schema_root.context ().count ("includes"))
{
- typedef Cult::Containers::Set<String> Includes;
+ typedef set<String> Includes;
Includes const& is (
ctx.schema_root.context ().get<Includes> ("includes"));
- for (Includes::ConstReverseIterator i (is.rbegin ());
+ for (Includes::const_reverse_iterator i (is.rbegin ());
i != is.rend (); ++i)
{
ctx.os << "#include " << *i << endl;
@@ -1357,12 +1358,12 @@ namespace CXX
//
if (ctx.schema_root.context ().count ("includes"))
{
- typedef Cult::Containers::Set<String> Includes;
+ typedef set<String> Includes;
Includes const& is (
ctx.schema_root.context ().get<Includes> ("includes"));
- for (Includes::ConstReverseIterator i (is.rbegin ());
+ for (Includes::const_reverse_iterator i (is.rbegin ());
i != is.rend (); ++i)
{
ctx.os << "#include " << *i << endl;
@@ -1412,7 +1413,7 @@ namespace CXX
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Includes includes (ctx, Includes::header);
Traversal::Names schema_names;
diff --git a/xsd/xsd/cxx/parser/parser-header.hxx b/xsd/xsd/cxx/parser/parser-header.hxx
index c4e114d..467dcb5 100644
--- a/xsd/xsd/cxx/parser/parser-header.hxx
+++ b/xsd/xsd/cxx/parser/parser-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/parser-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_PARSER_HEADER_HXX
@@ -12,8 +11,8 @@ namespace CXX
{
namespace Parser
{
- Void
- generate_parser_header (Context&, Boolean generate_xml_schema);
+ void
+ generate_parser_header (Context&, bool generate_xml_schema);
}
}
diff --git a/xsd/xsd/cxx/parser/parser-inline.cxx b/xsd/xsd/cxx/parser/parser-inline.cxx
index b491b72..87ba92c 100644
--- a/xsd/xsd/cxx/parser/parser-inline.cxx
+++ b/xsd/xsd/cxx/parser/parser-inline.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/parser-inline.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/parser-inline.hxx>
@@ -23,7 +22,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String const& name (ename (l));
@@ -75,7 +74,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -84,7 +83,7 @@ namespace CXX
String const& scope (ename (m.scope ()));
String const& parser (eparser (m));
- Boolean poly (polymorphic &&
+ bool poly (polymorphic &&
m.is_a<SemanticGraph::Element> () &&
!anonymous (m.type ()));
@@ -117,7 +116,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m)) return;
@@ -138,7 +137,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m)) return;
@@ -159,14 +158,14 @@ namespace CXX
}
}
- Boolean
+ bool
comma () const
{
return !first_;
}
private:
- Boolean first_;
+ bool first_;
};
struct ParserBaseSet: Traversal::Complex,
@@ -180,7 +179,7 @@ namespace CXX
names_ >> member_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
inherits (c, inherits_);
@@ -189,7 +188,7 @@ namespace CXX
names (c, names_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List& l)
{
String const& name (ename (l));
@@ -212,14 +211,13 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All& a)
{
if (!a.context().count ("comp-number"))
return;
- UnsignedLong state_count (
- a.context().get<UnsignedLong> ("state-count"));
+ size_t state_count (a.context().get<size_t> ("state-count"));
os << "," << endl
<< " v_all_count_ (" << state_count << "UL, v_all_first_)";
@@ -242,15 +240,15 @@ namespace CXX
names_parser_member_set_ >> parser_member_set_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
- Boolean he (has<Traversal::Element> (c));
- Boolean ha (has<Traversal::Attribute> (c));
+ bool he (has<Traversal::Element> (c));
+ bool ha (has<Traversal::Attribute> (c));
- Boolean hae (has_particle<Traversal::Any> (c));
+ bool hae (has_particle<Traversal::Any> (c));
- Boolean hra (false); // Has required attribute.
+ bool hra (false); // Has required attribute.
if (ha)
{
RequiredAttributeTest test (hra);
@@ -258,7 +256,7 @@ namespace CXX
names (c, names_test);
}
- Boolean restriction (restriction_p (c));
+ bool restriction (restriction_p (c));
if (!((!restriction && (he || ha)) ||
(validation && (he || hae || hra))))
@@ -305,7 +303,7 @@ namespace CXX
<< name << " ()" << endl
<< ": ";
- Boolean comma (false);
+ bool comma (false);
if (!restriction && (he || ha))
{
@@ -364,13 +362,13 @@ namespace CXX
};
}
- Void
+ void
generate_parser_inline (Context& ctx)
{
// Emit "weak" header includes that are used in the file-per-type
// compilation model.
//
- if (!ctx.options.value<CLI::generate_inline> ())
+ if (!ctx.options.generate_inline ())
{
Traversal::Schema schema;
Includes includes (ctx, Includes::source);
@@ -381,7 +379,7 @@ namespace CXX
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/parser/parser-inline.hxx b/xsd/xsd/cxx/parser/parser-inline.hxx
index 51f5b93..aff2ad2 100644
--- a/xsd/xsd/cxx/parser/parser-inline.hxx
+++ b/xsd/xsd/cxx/parser/parser-inline.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/parser-inline.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_PARSER_INLINE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_parser_inline (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/parser-source.cxx b/xsd/xsd/cxx/parser/parser-source.cxx
index 99bc566..2ee5273 100644
--- a/xsd/xsd/cxx/parser/parser-source.cxx
+++ b/xsd/xsd/cxx/parser/parser-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/parser-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/parser/parser-source.hxx>
@@ -21,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String const& name (ename (e));
@@ -29,7 +28,7 @@ namespace CXX
SemanticGraph::Type& base (e.inherits ().base ());
- Boolean same (ret == ret_type (base));
+ bool same (ret == ret_type (base));
if (same || ret == L"void" || polymorphic)
{
@@ -79,7 +78,7 @@ namespace CXX
if (validation)
{
- Boolean gen (!anonymous (e));
+ bool gen (!anonymous (e));
// We normally don't need to enter anonymous types into
// the inheritance map. The only exception is when an
@@ -89,16 +88,21 @@ namespace CXX
if (!gen)
{
// The first instance that this anonymous type classifies
- // is the prototype for others if any.
+ // is the prototype for others if any. If this type does
+ // not classify anything (e.g., it is a base), then we
+ // don't need to do anything.
//
- SemanticGraph::Instance& i (
- e.classifies_begin ()->instance ());
-
- if (SemanticGraph::Element* e =
- dynamic_cast<SemanticGraph::Element*> (&i))
+ if (e.classifies_begin () != e.classifies_end ())
{
- if (e->substitutes_p ())
- gen = true;
+ SemanticGraph::Instance& i (
+ e.classifies_begin ()->instance ());
+
+ if (SemanticGraph::Element* e =
+ dynamic_cast<SemanticGraph::Element*> (&i))
+ {
+ if (e->substitutes_p ())
+ gen = true;
+ }
}
}
@@ -126,7 +130,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String const& name (ename (l));
@@ -222,7 +226,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String const& name (ename (u));
@@ -277,15 +281,13 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e))
return;
- Boolean poly (polymorphic && !anonymous (e.type ()));
-
- String const& inst (poly ? emember_cache (e) : emember (e));
+ bool poly (polymorphic && !anonymous (e.type ()));
os << "if (";
@@ -316,9 +318,12 @@ namespace CXX
os << ")"
<< "{";
+ String inst;
+
if (poly)
{
SemanticGraph::Type& t (e.type ());
+ inst = "p";
// For pre-computing length.
//
@@ -334,8 +339,10 @@ namespace CXX
String const& member (emember (e));
String const& member_map (emember_map (e));
- os << "if (t == 0 && this->" << member << " != 0)" << endl
- << "this->" << inst << " = this->" << member << ";"
+ os << fq_type << "* p = 0;"
+ << endl
+ << "if (t == 0 && this->" << member << " != 0)" << endl
+ << inst << " = this->" << member << ";"
<< "else"
<< "{"
<< string_type << " ts (" << fq_type <<
@@ -345,21 +352,21 @@ namespace CXX
<< "t = &ts;"
<< endl
<< "if (this->" << member << " != 0 && *t == ts)" << endl
- << "this->" << inst << " = this->" << member << ";"
+ << inst << " = this->" << member << ";"
<< "else if (this->" << member_map << " != 0)" << endl
- << "this->" << inst << " = dynamic_cast< " << fq_type <<
+ << inst << " = dynamic_cast< " << fq_type <<
"* > (" << endl
<< "this->" << member_map << "->find (*t));"
- << "else" << endl
- << "this->" << inst << " = 0;"
<< "}";
}
+ else
+ inst = L"this->" + emember (e);
os << "this->" << complex_base << "::context_.top ().parser_ = " <<
- "this->" << inst << ";"
+ inst << ";"
<< endl
- << "if (this->" << inst << ")" << endl
- << "this->" << inst << "->pre ();" // _start_element calls _pre
+ << "if (" << inst << ")" << endl
+ << inst << "->pre ();" // _start_element calls _pre
<< endl
<< "return true;"
<< "}";
@@ -376,16 +383,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e))
return;
- Boolean poly (polymorphic && !anonymous (e.type ()));
-
+ bool poly (polymorphic && !anonymous (e.type ()));
String const& name (ename (e));
- String const& inst (poly ? emember_cache (e) : emember (e));
os << "if (";
@@ -421,18 +426,31 @@ namespace CXX
SemanticGraph::Type& type (e.type ());
String const& post (post_name (type));
+ String inst;
+
+ if (poly)
+ {
+ String const& fq_type (fq_name (type));
+ inst = "p";
- os << "if (this->" << inst << ")";
+ os << fq_type << "* p =" << endl
+ << "dynamic_cast< " << fq_type << "* > (" << endl
+ << "this->" << complex_base << "::context_.top ().parser_);"
+ << endl;
+ }
+ else
+ inst = L"this->" + emember (e);
+
+ os << "if (" << inst << ")";
if (ret_type (type) == L"void")
os << "{"
- << "this->" << inst << "->" << post << " ();"
+ << inst << "->" << post << " ();"
<< "this->" << name << " ();"
<< "}";
else
os << endl
- << "this->" << name << " (this->" << inst << "->" <<
- post << " ());"
+ << "this->" << name << " (" << inst << "->" << post << " ());"
<< endl;
os << "return true;"
@@ -449,7 +467,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& name (ename (a));
@@ -500,7 +518,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -538,14 +556,14 @@ namespace CXX
names_attribute_ >> attribute_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
- Boolean he (has<Traversal::Element> (c));
- Boolean ha (has<Traversal::Attribute> (c));
+ bool he (has<Traversal::Element> (c));
+ bool ha (has<Traversal::Attribute> (c));
String const& ret (ret_type (c));
- Boolean same (c.inherits_p () &&
+ bool same (c.inherits_p () &&
ret == ret_type (c.inherits ().base ()));
String const& name (ename (c));
@@ -581,7 +599,7 @@ namespace CXX
if (c.inherits_p () && validation)
{
- Boolean gen (!anonymous (c));
+ bool gen (!anonymous (c));
// We normally don't need to enter anonymous types into
// the inheritance map. The only exception is when an
@@ -591,16 +609,21 @@ namespace CXX
if (!gen)
{
// The first instance that this anonymous type classifies
- // is the prototype for others if any.
+ // is the prototype for others if any. If this type does
+ // not classify anything (e.g., it is a base), then we
+ // don't need to do anything.
//
- SemanticGraph::Instance& i (
- c.classifies_begin ()->instance ());
-
- if (SemanticGraph::Element* e =
- dynamic_cast<SemanticGraph::Element*> (&i))
+ if (c.classifies_begin () != c.classifies_end ())
{
- if (e->substitutes_p ())
- gen = true;
+ SemanticGraph::Instance& i (
+ c.classifies_begin ()->instance ());
+
+ if (SemanticGraph::Element* e =
+ dynamic_cast<SemanticGraph::Element*> (&i))
+ {
+ if (e->substitutes_p ())
+ gen = true;
+ }
}
}
@@ -655,7 +678,7 @@ namespace CXX
// Don't use restriction_p here since we don't want special
// treatment of anyType.
//
- Boolean restriction (
+ bool restriction (
c.inherits_p () &&
c.inherits ().is_a<SemanticGraph::Restricts> ());
@@ -782,7 +805,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (e.substitutes_p ())
@@ -809,7 +832,7 @@ namespace CXX
};
}
- Void
+ void
generate_parser_source (Context& ctx)
{
if (ctx.polymorphic)
@@ -822,8 +845,8 @@ namespace CXX
else
ctx.os << endl;
- Boolean import_maps (ctx.options.value<CLI::import_maps> ());
- Boolean export_maps (ctx.options.value<CLI::export_maps> ());
+ bool import_maps (ctx.options.import_maps ());
+ bool export_maps (ctx.options.export_maps ());
if (import_maps || export_maps)
{
@@ -896,7 +919,7 @@ namespace CXX
// Emit "weak" header includes that are used in the file-per-type
// compilation model.
//
- if (ctx.options.value<CLI::generate_inline> ())
+ if (ctx.options.generate_inline ())
{
Traversal::Schema schema;
Includes includes (ctx, Includes::source);
@@ -906,7 +929,7 @@ namespace CXX
}
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/parser/parser-source.hxx b/xsd/xsd/cxx/parser/parser-source.hxx
index f6496ea..6e206b4 100644
--- a/xsd/xsd/cxx/parser/parser-source.hxx
+++ b/xsd/xsd/cxx/parser/parser-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/parser-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_PARSER_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Parser
{
- Void
+ void
generate_parser_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/parser/print-impl-common.hxx b/xsd/xsd/cxx/parser/print-impl-common.hxx
index 5a91931..516273a 100644
--- a/xsd/xsd/cxx/parser/print-impl-common.hxx
+++ b/xsd/xsd/cxx/parser/print-impl-common.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/parser/print-impl-common.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_PRINT_IMPL_COMMON_HXX
@@ -74,7 +73,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type&)
{
gen_user_type ();
@@ -82,7 +81,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
if (default_type (t, "bool"))
@@ -96,7 +95,7 @@ namespace CXX
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
if (default_type (t, "signed char"))
@@ -108,7 +107,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
if (default_type (t, "unsigned char"))
@@ -120,7 +119,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
if (default_type (t, "short"))
@@ -132,7 +131,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
if (default_type (t, "unsigned short"))
@@ -144,7 +143,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
if (default_type (t, "int"))
@@ -156,7 +155,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
if (default_type (t, "unsigned int"))
@@ -168,7 +167,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
if (default_type (t, "long long"))
@@ -180,7 +179,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
if (default_type (t, "unsigned long long"))
@@ -192,7 +191,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
if (default_type (t, "long long"))
@@ -204,7 +203,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
if (default_type (t, "long long"))
@@ -216,7 +215,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
if (default_type (t, "long long"))
@@ -228,7 +227,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
if (default_type (t, "unsigned long long"))
@@ -240,7 +239,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
if (default_type (t, "unsigned long long"))
@@ -254,7 +253,7 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
if (default_type (t, "float"))
@@ -266,7 +265,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
if (default_type (t, "double"))
@@ -278,7 +277,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
if (default_type (t, "double"))
@@ -292,61 +291,61 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
gen_string (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
gen_string (t);
@@ -355,13 +354,13 @@ namespace CXX
// String sequences.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
gen_sequence (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
gen_sequence (t);
@@ -370,7 +369,7 @@ namespace CXX
// QName
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
if (default_type (t, xs_ns_name () + L"::qname"))
@@ -391,13 +390,13 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
gen_buffer (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
gen_buffer (t);
@@ -405,7 +404,7 @@ namespace CXX
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
if (default_type (t, xs_ns_name () + L"::date"))
@@ -421,7 +420,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
if (default_type (t, xs_ns_name () + L"::date_time"))
@@ -440,7 +439,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
if (default_type (t, xs_ns_name () + L"::duration"))
@@ -463,7 +462,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
if (default_type (t, xs_ns_name () + L"::gday"))
@@ -477,7 +476,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
if (default_type (t, xs_ns_name () + L"::gmonth"))
@@ -491,7 +490,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
if (default_type (t, xs_ns_name () + L"::gmonth_day"))
@@ -506,7 +505,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
if (default_type (t, xs_ns_name () + L"::gyear"))
@@ -520,7 +519,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
if (default_type (t, xs_ns_name () + L"::gyear_month"))
@@ -535,7 +534,7 @@ namespace CXX
gen_user_type ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
if (default_type (t, xs_ns_name () + L"::time"))
@@ -605,7 +604,7 @@ namespace CXX
void
gen_buffer (SemanticGraph::Type& t)
{
- String type (L"::std::auto_ptr< " + xs_ns_name () + L"::buffer >");
+ String type (auto_ptr + L"< " + xs_ns_name () + L"::buffer >");
if (default_type (t, type))
{
diff --git a/xsd/xsd/cxx/parser/state-processor.cxx b/xsd/xsd/cxx/parser/state-processor.cxx
index 7fe3ff6..86f97ce 100644
--- a/xsd/xsd/cxx/parser/state-processor.cxx
+++ b/xsd/xsd/cxx/parser/state-processor.cxx
@@ -1,8 +1,10 @@
// file : xsd/cxx/parser/state-processor.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <vector>
+#include <iostream>
+
#include <cxx/parser/state-processor.hxx>
#include <cxx/parser/elements.hxx>
@@ -10,9 +12,7 @@
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-#include <cult/containers/vector.hxx>
-
-#include <iostream>
+using namespace std;
namespace CXX
{
@@ -20,8 +20,9 @@ namespace CXX
{
namespace
{
- typedef Cult::Containers::Vector<SemanticGraph::Particle*> Particles;
+ typedef vector<SemanticGraph::Particle*> Particles;
+ /*
void
print (Particles const& p)
{
@@ -30,7 +31,7 @@ namespace CXX
wcerr << "prefixes: " << endl;
- for (Particles::ConstIterator i (p.begin ()); i != p.end (); ++i)
+ for (Particles::const_iterator i (p.begin ()); i != p.end (); ++i)
{
if (SemanticGraph::Element* e =
dynamic_cast<SemanticGraph::Element*> (*i))
@@ -45,6 +46,7 @@ namespace CXX
wcerr << endl;
}
+ */
//
//
@@ -52,10 +54,10 @@ namespace CXX
Traversal::Choice,
Traversal::Sequence
{
- Particle (UnsignedLong& all,
- UnsignedLong& choice,
- UnsignedLong& sequence,
- UnsignedLong& depth)
+ Particle (size_t& all,
+ size_t& choice,
+ size_t& sequence,
+ size_t& depth)
: all_ (all),
choice_ (choice),
sequence_ (sequence),
@@ -63,7 +65,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::All& a)
{
using SemanticGraph::Compositor;
@@ -78,8 +80,8 @@ namespace CXX
// compositor cannot contain any nested compositors.
//
- UnsignedLong state (0);
- UnsignedLong min (0);
+ size_t state (0);
+ size_t min (0);
for (Compositor::ContainsIterator ci (a.contains_begin ());
ci != a.contains_end (); ++ci)
@@ -101,7 +103,7 @@ namespace CXX
{
a.context ().set ("comp-number", choice_++);
a.context ().set ("prefixes", prefixes_);
- a.context ().set ("state-count", UnsignedLong (prefixes_.size ()));
+ a.context ().set ("state-count", size_t (prefixes_.size ()));
// effective-min = min * actual-min
//
@@ -114,7 +116,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Choice& c)
{
using SemanticGraph::Compositor;
@@ -126,8 +128,8 @@ namespace CXX
// the actual value specified in the schema.
//
- UnsignedLong state (0);
- UnsignedLong min (1);
+ size_t state (0);
+ size_t min (1);
for (Compositor::ContainsIterator ci (c.contains_begin ());
ci != c.contains_end (); ++ci)
@@ -144,7 +146,7 @@ namespace CXX
}
else
{
- UnsignedLong depth (0);
+ size_t depth (0);
Particle t (all_, choice_, sequence_, depth);
t.dispatch (p);
@@ -159,7 +161,7 @@ namespace CXX
t.prefixes_.end ().base ());
if (min == 1 &&
- p.context ().get<UnsignedLong> ("effective-min") == 0)
+ p.context ().get<size_t> ("effective-min") == 0)
min = 0;
}
@@ -183,7 +185,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Sequence& s)
{
using SemanticGraph::Compositor;
@@ -195,9 +197,9 @@ namespace CXX
// of the actual value specified in the schema.
//
- Boolean prefix (true);
- UnsignedLong state (0);
- UnsignedLong min (0);
+ bool prefix (true);
+ size_t state (0);
+ size_t min (0);
for (Compositor::ContainsIterator ci (s.contains_begin ());
ci != s.contains_end (); ++ci)
@@ -217,7 +219,7 @@ namespace CXX
}
else
{
- UnsignedLong depth (0);
+ size_t depth (0);
Particle t (all_, choice_, sequence_, depth);
t.dispatch (p);
@@ -233,7 +235,7 @@ namespace CXX
t.prefixes_.begin ().base (),
t.prefixes_.end ().base ());
- if (p.context ().get<UnsignedLong> ("effective-min") != 0)
+ if (p.context ().get<size_t> ("effective-min") != 0)
min = 1;
}
}
@@ -266,11 +268,11 @@ namespace CXX
private:
Particles prefixes_;
- UnsignedLong& all_;
- UnsignedLong& choice_;
- UnsignedLong& sequence_;
+ size_t& all_;
+ size_t& choice_;
+ size_t& sequence_;
- UnsignedLong& depth_;
+ size_t& depth_;
};
@@ -278,12 +280,12 @@ namespace CXX
//
struct Complex: Traversal::Complex
{
- virtual Void
+ virtual void
traverse (Type& c)
{
if (c.contains_compositor_p ())
{
- UnsignedLong all (0), choice (0), sequence (0), depth (0);
+ size_t all (0), choice (0), sequence (0), depth (0);
Particle t (all, choice, sequence, depth);
t.dispatch (c.contains_compositor ().compositor ());
@@ -296,11 +298,11 @@ namespace CXX
};
}
- Void StateProcessor::
+ void StateProcessor::
process (SemanticGraph::Schema& tu, SemanticGraph::Path const&)
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names schema_names;
Traversal::Namespace ns;
Traversal::Names ns_names;
diff --git a/xsd/xsd/cxx/parser/state-processor.hxx b/xsd/xsd/cxx/parser/state-processor.hxx
index 630ac13..de5af69 100644
--- a/xsd/xsd/cxx/parser/state-processor.hxx
+++ b/xsd/xsd/cxx/parser/state-processor.hxx
@@ -1,24 +1,22 @@
// file : xsd/cxx/parser/state-processor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_STATE_PROCESSOR_HXX
#define CXX_PARSER_STATE_PROCESSOR_HXX
-#include <cult/types.hxx>
#include <xsd-frontend/semantic-graph.hxx>
+#include <types.hxx>
+
namespace CXX
{
namespace Parser
{
- using namespace Cult::Types;
-
class StateProcessor
{
public:
- Void
+ void
process (XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file);
};
diff --git a/xsd/xsd/cxx/parser/type-processor.cxx b/xsd/xsd/cxx/parser/type-processor.cxx
index 4744c0a..2f1132c 100644
--- a/xsd/xsd/cxx/parser/type-processor.cxx
+++ b/xsd/xsd/cxx/parser/type-processor.cxx
@@ -1,9 +1,8 @@
// file : xsd/cxx/parser/type-processor.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#include <cult/containers/set.hxx>
+#include <set>
#include <cxx/parser/elements.hxx>
#include <cxx/parser/type-processor.hxx>
@@ -11,16 +10,12 @@
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
+using namespace std;
+
namespace CXX
{
namespace Parser
{
- TypeProcessor::
- TypeProcessor ()
- {
- // Dummy ctor, helps with long symbols on HP-UX.
- }
-
namespace
{
//
@@ -29,14 +24,14 @@ namespace CXX
{
Type (SemanticGraph::Schema& schema,
TypeMap::Namespaces& type_map,
- Boolean add_includes)
+ bool add_includes)
: schema_ (schema),
type_map_ (type_map),
add_includes_ (add_includes)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& type)
{
using TypeMap::Namespace;
@@ -54,7 +49,7 @@ namespace CXX
// match the type in order to add include directives to the
// new root schema.
//
- Boolean set (true);
+ bool set (true);
if (tc.count ("ret-type"))
{
@@ -73,14 +68,14 @@ namespace CXX
String ns_name (ns.name ());
String t_name (type.name ());
- // std::wcerr << "traversing: " << ns_name << "#" << t_name << endl;
+ //std::wcerr << "traversing: " << ns_name << "#" << t_name << endl;
- for (Namespaces::ConstIterator n (type_map_.begin ());
+ for (Namespaces::const_iterator n (type_map_.begin ());
n != type_map_.end (); ++n)
{
// Check if the namespace matches.
//
- Boolean ns_match;
+ bool ns_match;
if (!n->xsd_name ().empty ())
{
@@ -89,7 +84,9 @@ namespace CXX
else
ns_match = ns_name.empty ();
- // std::wcerr << "considering ns expr: " << n->xsd_name () << endl;
+ //std::wcerr << "considering ns expr: " << n->xsd_name ()
+ // << " for " << ns_name
+ // << ": " << (ns_match ? "+" : "-") << endl;
if (ns_match)
{
@@ -111,8 +108,8 @@ namespace CXX
{
if (!n->xsd_name ().empty ())
{
- cxx_ns = n->xsd_name ().merge (
- n->cxx_name (), ns_name, true);
+ cxx_ns = n->xsd_name ().replace (
+ ns_name, n->cxx_name (), true);
}
else
cxx_ns = n->cxx_name ();
@@ -124,16 +121,16 @@ namespace CXX
//
String ret_type (cxx_ns);
- ret_type += t->xsd_name ().merge (
- t->cxx_ret_name (), t_name, true);
+ ret_type += t->xsd_name ().replace (
+ t_name, t->cxx_ret_name (), true);
String arg_type;
if (t->cxx_arg_name ())
{
arg_type = cxx_ns;
- arg_type += t->xsd_name ().merge (
- t->cxx_arg_name (), t_name, true);
+ arg_type += t->xsd_name ().replace (
+ t_name, t->cxx_arg_name (), true);
}
else
{
@@ -141,7 +138,7 @@ namespace CXX
arg_type = ret_type;
else
{
- WideChar last (ret_type[ret_type.size () - 1]);
+ wchar_t last (ret_type[ret_type.size () - 1]);
// If it is already a pointer or reference then use
// it as is.
@@ -155,12 +152,12 @@ namespace CXX
tc.set ("ret-type", ret_type);
tc.set ("arg-type", arg_type);
+
+ //std::wcerr << t_name << " -> " << ret_type << endl;
}
tc.set ("root-schema", &schema_);
- //std::wcerr << t_name << " -> " << ret_type << endl;
-
// See of we need to add any includes to the translations
// unit.
//
@@ -168,7 +165,7 @@ namespace CXX
{
if (n->includes_begin () != n->includes_end ())
{
- typedef Cult::Containers::Set<String> Includes;
+ typedef std::set<String> Includes;
if (!schema_.context ().count ("includes"))
schema_.context ().set ("includes", Includes ());
@@ -194,7 +191,7 @@ namespace CXX
private:
SemanticGraph::Schema& schema_;
TypeMap::Namespaces& type_map_;
- Boolean add_includes_;
+ bool add_includes_;
};
@@ -207,7 +204,7 @@ namespace CXX
{
GlobalType (SemanticGraph::Schema& schema,
TypeMap::Namespaces& type_map,
- Boolean add_includes)
+ bool add_includes)
: type_ (schema, type_map, add_includes)
{
inherits_ >> type_;
@@ -215,20 +212,20 @@ namespace CXX
argumented_ >> type_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
type_.traverse (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List& l)
{
type_.traverse (l);
Traversal::List::argumented (l, argumented_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
type_.traverse (c);
@@ -236,7 +233,7 @@ namespace CXX
Complex::names (c, names_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration& e)
{
type_.traverse (e);
@@ -252,10 +249,10 @@ namespace CXX
Traversal::Argumented argumented_;
};
- Void
- process_impl (CLI::Options const& options,
+ void
+ process_impl (options const& ops,
XSDFrontend::SemanticGraph::Schema& tu,
- Boolean gen_driver,
+ bool gen_driver,
TypeMap::Namespaces& type_map)
{
if (tu.names_begin ()->named ().name () ==
@@ -279,14 +276,13 @@ namespace CXX
// If --extern-xml-schema is specified, then we don't want
// includes from the XML Schema type map.
//
- Boolean extern_xml_schema (
- options.value<CLI::extern_xml_schema> ());
+ bool extern_xml_schema (ops.extern_xml_schema ());
//
//
Traversal::Schema schema;
Traversal::Schema xs_schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Implies implies;
schema >> sources >> schema;
@@ -312,7 +308,7 @@ namespace CXX
// If we are generating the test driver, make sure the root
// element type is processed.
//
- if (gen_driver && options.value<CLI::generate_test_driver> ())
+ if (gen_driver && ops.generate_test_driver ())
{
// Figure out the root element. Validator should have made sure
// it is unique.
@@ -320,14 +316,14 @@ namespace CXX
SemanticGraph::Element* root (0);
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
schema >> sources >> schema;
Traversal::Names schema_names;
Traversal::Namespace ns;
Traversal::Names ns_names;
- RootElement root_element (options, root);
+ RootElement root_element (ops, root);
schema >> schema_names >> ns >> ns_names >> root_element;
@@ -340,13 +336,13 @@ namespace CXX
}
}
- Void TypeProcessor::
- process (CLI::Options const& options,
+ void TypeProcessor::
+ process (options const& ops,
XSDFrontend::SemanticGraph::Schema& s,
- Boolean gen_driver,
+ bool gen_driver,
TypeMap::Namespaces& tm)
{
- process_impl (options, s, gen_driver, tm);
+ process_impl (ops, s, gen_driver, tm);
}
}
}
diff --git a/xsd/xsd/cxx/parser/type-processor.hxx b/xsd/xsd/cxx/parser/type-processor.hxx
index 02a090f..634bc14 100644
--- a/xsd/xsd/cxx/parser/type-processor.hxx
+++ b/xsd/xsd/cxx/parser/type-processor.hxx
@@ -1,34 +1,29 @@
// file : xsd/cxx/parser/type-processor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_TYPE_PROCESSOR_HXX
#define CXX_PARSER_TYPE_PROCESSOR_HXX
-#include <cult/types.hxx>
-
#include <xsd-frontend/semantic-graph.hxx>
+#include <types.hxx>
+
#include <type-map/type-map.hxx>
-#include <cxx/parser/cli.hxx>
+#include <cxx/parser/options.hxx>
namespace CXX
{
namespace Parser
{
- using namespace Cult::Types;
-
class TypeProcessor
{
public:
- TypeProcessor (); // Dummy ctor, helps with long symbols on HP-UX.
-
- Void
- process (CLI::Options const& options,
+ void
+ process (options const&,
XSDFrontend::SemanticGraph::Schema&,
- Boolean gen_driver,
+ bool gen_driver,
TypeMap::Namespaces&);
};
}
diff --git a/xsd/xsd/cxx/parser/validator.cxx b/xsd/xsd/cxx/parser/validator.cxx
index 19b15c6..da9f8b0 100644
--- a/xsd/xsd/cxx/parser/validator.cxx
+++ b/xsd/xsd/cxx/parser/validator.cxx
@@ -1,8 +1,10 @@
// file : xsd/cxx/parser/validator.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <set>
+#include <iostream>
+
#include <cxx/parser/validator.hxx>
#include <xsd-frontend/semantic-graph.hxx>
@@ -10,9 +12,7 @@
#include <cxx/parser/elements.hxx>
-#include <iostream>
-
-using std::wcerr;
+using namespace std;
namespace CXX
{
@@ -25,10 +25,10 @@ namespace CXX
public:
ValidationContext (SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- CLI::Options const& options,
+ Parser::options const& ops,
const WarningSet& disabled_warnings,
- Boolean& valid_)
- : Context (std::wcerr, root, path, options, 0, 0, 0, 0),
+ bool& valid_)
+ : Context (std::wcerr, root, path, ops, 0, 0, 0, 0),
disabled_warnings_ (disabled_warnings),
disabled_warnings_all_ (false),
valid (valid_),
@@ -38,8 +38,8 @@ namespace CXX
}
public:
- Boolean
- is_disabled (Char const* w)
+ bool
+ is_disabled (char const* w)
{
return disabled_warnings_all_ ||
disabled_warnings_.find (w) != disabled_warnings_.end ();
@@ -74,10 +74,10 @@ namespace CXX
protected:
const WarningSet& disabled_warnings_;
- Boolean disabled_warnings_all_;
- Boolean& valid;
- Boolean& subst_group_warning_issued;
- Boolean subst_group_warning_issued_;
+ bool disabled_warnings_all_;
+ bool& valid;
+ bool& subst_group_warning_issued;
+ bool subst_group_warning_issued_;
};
//
@@ -98,20 +98,20 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (skip (e)) return;
using SemanticGraph::Any;
- Boolean q (e.qualified_p ());
+ bool q (e.qualified_p ());
String ns (q ? e.namespace_ ().name () : "");
for (Any::NamespaceIterator i (any_.namespace_begin ());
i != any_.namespace_end (); ++i)
{
- Boolean failed (false);
+ bool failed (false);
if (*i == L"##any")
{
@@ -184,14 +184,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
post (Type& c)
{
// Go down the inheritance hierarchy.
//
if (down_)
{
- Boolean up = up_;
+ bool up = up_;
up_ = false;
if (c.inherits_p ())
@@ -204,7 +204,7 @@ namespace CXX
//
if (up_)
{
- Boolean down = down_;
+ bool down = down_;
down_ = false;
for (Type::BegetsIterator i (c.begets_begin ());
@@ -218,10 +218,10 @@ namespace CXX
}
private:
- Boolean up_, down_;
+ bool up_, down_;
};
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
using SemanticGraph::Compositor;
@@ -273,7 +273,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
using SemanticGraph::Schema;
@@ -319,7 +319,7 @@ namespace CXX
Complex::traverse (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
if (t.named_p ())
@@ -328,14 +328,14 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (is_disabled ("P002"))
return;
if (e.substitutes_p () &&
- !options.value<CLI::generate_polymorphic> () &&
+ !options.generate_polymorphic () &&
!subst_group_warning_issued)
{
subst_group_warning_issued = true;
@@ -352,7 +352,7 @@ namespace CXX
// Return true if root sources s.
//
- Boolean
+ bool
sources_p (SemanticGraph::Schema& root, SemanticGraph::Schema& s)
{
using SemanticGraph::Schema;
@@ -372,9 +372,9 @@ namespace CXX
}
private:
- Containers::Set<String> types_;
+ set<String> types_;
- Traversal::Sources sources_;
+ Sources sources_;
Traversal::Names schema_names_;
Traversal::Namespace ns_;
@@ -405,7 +405,7 @@ namespace CXX
*this >> names_;
}
- Boolean
+ bool
traverse_common (SemanticGraph::Member& m)
{
SemanticGraph::Type& t (m.type ());
@@ -434,7 +434,7 @@ namespace CXX
<< "automatically name them"
<< endl;
- if (!options.value<CLI::show_anonymous> ())
+ if (!options.show_anonymous ())
wcerr << t.file ()
<< ": info: use --show-anonymous option to see these "
<< "types" << endl;
@@ -446,14 +446,14 @@ namespace CXX
return false;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (skip (e)) return;
if (traverse_common (e))
{
- if (options.value<CLI::show_anonymous> ())
+ if (options.show_anonymous ())
{
wcerr << e.file () << ":" << e.line () << ":" << e.column ()
<< ": error: element '" << xpath (e) << "' "
@@ -464,12 +464,12 @@ namespace CXX
Traversal::Element::traverse (e);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
if (traverse_common (a))
{
- if (options.value<CLI::show_anonymous> ())
+ if (options.show_anonymous ())
{
wcerr << a.file () << ":" << a.line () << ":" << a.column ()
<< ": error: attribute '" << xpath (a) << "' "
@@ -481,11 +481,11 @@ namespace CXX
}
private:
- Boolean anonymous_error_issued_;
+ bool anonymous_error_issued_;
- Containers::Set<String> types_;
+ set<String> types_;
- Traversal::Sources sources_;
+ Sources sources_;
Traversal::Names schema_names_;
Traversal::Namespace ns_;
@@ -500,22 +500,22 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (!valid)
return;
- if (options.value<CLI::root_element_first> ())
+ if (options.root_element_first ())
{
if (element_ == 0)
element_ = &e;
}
- else if (options.value<CLI::root_element_last> ())
+ else if (options.root_element_last ())
{
element_ = &e;
}
- else if (String name = options.value<CLI::root_element> ())
+ else if (String name = options.root_element ())
{
if (e.name () == name)
element_ = &e;
@@ -544,46 +544,40 @@ namespace CXX
}
- Validator::
- Validator ()
- {
- // Dummy ctor, helps with long symbols on HP-UX.
- }
-
- Boolean Validator::
- validate (CLI::Options const& options,
+ bool Validator::
+ validate (options const& ops,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- Boolean gen_driver,
+ bool gen_driver,
const WarningSet& disabled_warnings)
{
- Boolean valid (true);
- ValidationContext ctx (root, path, options, disabled_warnings, valid);
+ bool valid (true);
+ ValidationContext ctx (root, path, ops, disabled_warnings, valid);
//
//
- if (options.value<CLI::char_type> () != "char" &&
- options.value<CLI::char_type> () != "wchar_t" &&
+ if (ops.char_type () != "char" &&
+ ops.char_type () != "wchar_t" &&
!ctx.is_disabled ("P003"))
{
wcerr << "warning P003: unknown base character type '" <<
- options.value<CLI::char_type> ().c_str () << "'" << endl;
+ ops.char_type ().c_str () << "'" << endl;
}
//
//
- if (options.value<CLI::xml_parser> () != "xerces" &&
- options.value<CLI::xml_parser> () != "expat" &&
+ if (ops.xml_parser () != "xerces" &&
+ ops.xml_parser () != "expat" &&
!ctx.is_disabled ("P004"))
{
wcerr << "warning P004: unknown underlying XML parser '" <<
- options.value<CLI::xml_parser> ().c_str () << "'" << endl;
+ ops.xml_parser ().c_str () << "'" << endl;
}
//
//
- if (options.value<CLI::xml_parser> () == "expat" &&
- options.value<CLI::char_type> () == "wchar_t")
+ if (ops.xml_parser () == "expat" &&
+ ops.char_type () == "wchar_t")
{
wcerr << "error: using expat with wchar_t is not supported"
<< endl;
@@ -593,9 +587,9 @@ namespace CXX
//
//
- if (options.value<CLI::xml_parser> () == "expat" &&
- !options.value<CLI::char_encoding> ().empty () &&
- options.value<CLI::char_encoding> () != "utf8")
+ if (ops.xml_parser () == "expat" &&
+ !ops.char_encoding ().empty () &&
+ ops.char_encoding () != "utf8")
{
wcerr << "error: using expat with character encoding other than "
<< "utf8 is not supported"
@@ -606,8 +600,7 @@ namespace CXX
//
//
- if (options.value<CLI::generate_validation> () &&
- options.value<CLI::suppress_validation> ())
+ if (ops.generate_validation () && ops.suppress_validation ())
{
wcerr << "error: mutually exclusive options specified: "
<< "--generate-validation and --suppress-validation"
@@ -618,8 +611,7 @@ namespace CXX
//
//
- if (options.value<CLI::generate_noop_impl> () &&
- options.value<CLI::generate_print_impl> ())
+ if (ops.generate_noop_impl () && ops.generate_print_impl ())
{
wcerr << "error: mutually exclusive options specified: "
<< "--generate-noop-impl and --generate-print-impl"
@@ -631,9 +623,9 @@ namespace CXX
//
//
{
- Boolean ref (options.value<CLI::root_element_first> ());
- Boolean rel (options.value<CLI::root_element_last> ());
- Boolean re (options.value<CLI::root_element> ());
+ bool ref (ops.root_element_first ());
+ bool rel (ops.root_element_last ());
+ bool re (ops.root_element ());
if ((ref && rel) || (ref && re) || (rel && re))
{
@@ -648,8 +640,8 @@ namespace CXX
//
//
- Boolean import_maps (options.value<CLI::import_maps> ());
- Boolean export_maps (options.value<CLI::export_maps> ());
+ bool import_maps (ops.import_maps ());
+ bool export_maps (ops.export_maps ());
if (import_maps && export_maps)
{
@@ -698,7 +690,7 @@ namespace CXX
SemanticGraph::Element* element (0);
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
schema >> sources >> schema;
diff --git a/xsd/xsd/cxx/parser/validator.hxx b/xsd/xsd/cxx/parser/validator.hxx
index f519b05..c67cced 100644
--- a/xsd/xsd/cxx/parser/validator.hxx
+++ b/xsd/xsd/cxx/parser/validator.hxx
@@ -1,32 +1,28 @@
// file : xsd/cxx/parser/validator.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_PARSER_VALIDATOR_HXX
#define CXX_PARSER_VALIDATOR_HXX
-#include <cxx/parser/elements.hxx>
-#include <cxx/parser/cli.hxx>
-
#include <xsd.hxx>
+#include <types.hxx>
+
+#include <cxx/parser/elements.hxx>
+#include <cxx/parser/options.hxx>
namespace CXX
{
namespace Parser
{
- using namespace Cult::Types;
-
class Validator
{
public:
- Validator (); // Dummy ctor, helps with long symbols on HP-UX.
-
- Boolean
- validate (CLI::Options const& options,
+ bool
+ validate (options const&,
SemanticGraph::Schema&,
SemanticGraph::Path const& tu,
- Boolean gen_driver,
+ bool gen_driver,
const WarningSet& disabled_warnings);
};
}
diff --git a/xsd/xsd/cxx/tree/cli.hxx b/xsd/xsd/cxx/tree/cli.hxx
deleted file mode 100644
index 171711d..0000000
--- a/xsd/xsd/cxx/tree/cli.hxx
+++ /dev/null
@@ -1,228 +0,0 @@
-// file : xsd/cxx/tree/cli.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-#ifndef CXX_TREE_CLI_HXX
-#define CXX_TREE_CLI_HXX
-
-#include <cult/types.hxx>
-
-#include <cult/containers/vector.hxx>
-
-#include <cult/cli/options.hxx>
-#include <cult/cli/options-spec.hxx>
-
-namespace CXX
-{
- namespace Tree
- {
- namespace CLI
- {
- using namespace Cult::Types;
-
- typedef Char const Key[];
-
- extern Key char_type;
- extern Key char_encoding;
- extern Key output_dir;
- extern Key generate_polymorphic;
- extern Key polymorphic_type;
- extern Key polymorphic_type_all;
- extern Key generate_serialization;
- extern Key generate_inline;
- extern Key generate_ostream;
- extern Key generate_doxygen;
- extern Key generate_comparison;
- extern Key generate_default_ctor;
- extern Key generate_from_base_ctor;
- extern Key generate_detach;
- extern Key generate_wildcard;
- extern Key generate_insertion;
- extern Key generate_extraction;
- extern Key generate_forward;
- extern Key generate_xml_schema;
- extern Key extern_xml_schema;
- extern Key suppress_parsing;
- extern Key generate_element_type;
- extern Key generate_element_map;
- extern Key generate_intellisense;
- extern Key omit_default_attributes;
- extern Key namespace_map;
- extern Key namespace_regex;
- extern Key namespace_regex_trace;
- extern Key reserved_name;
- extern Key type_naming;
- extern Key function_naming;
- extern Key type_regex;
- extern Key accessor_regex;
- extern Key one_accessor_regex;
- extern Key opt_accessor_regex;
- extern Key seq_accessor_regex;
- extern Key modifier_regex;
- extern Key one_modifier_regex;
- extern Key opt_modifier_regex;
- extern Key seq_modifier_regex;
- extern Key parser_regex;
- extern Key serializer_regex;
- extern Key enumerator_regex;
- extern Key element_type_regex;
- extern Key name_regex_trace;
- extern Key include_with_brackets;
- extern Key include_prefix;
- extern Key include_regex;
- extern Key include_regex_trace;
- extern Key guard_prefix;
- extern Key root_element_first;
- extern Key root_element_last;
- extern Key root_element_all;
- extern Key root_element_none;
- extern Key root_element;
- extern Key custom_type;
- extern Key custom_type_regex;
- extern Key hxx_suffix;
- extern Key ixx_suffix;
- extern Key cxx_suffix;
- extern Key fwd_suffix;
- extern Key hxx_regex;
- extern Key ixx_regex;
- extern Key cxx_regex;
- extern Key fwd_regex;
- extern Key hxx_prologue;
- extern Key ixx_prologue;
- extern Key cxx_prologue;
- extern Key fwd_prologue;
- extern Key prologue;
- extern Key hxx_epilogue;
- extern Key ixx_epilogue;
- extern Key cxx_epilogue;
- extern Key fwd_epilogue;
- extern Key epilogue;
- extern Key hxx_prologue_file;
- extern Key ixx_prologue_file;
- extern Key cxx_prologue_file;
- extern Key fwd_prologue_file;
- extern Key prologue_file;
- extern Key hxx_epilogue_file;
- extern Key ixx_epilogue_file;
- extern Key cxx_epilogue_file;
- extern Key fwd_epilogue_file;
- extern Key epilogue_file;
- extern Key parts;
- extern Key parts_suffix;
- extern Key export_symbol;
- extern Key export_xml_schema;
- extern Key export_maps;
- extern Key import_maps;
- extern Key show_anonymous;
- extern Key show_sloc;
- extern Key proprietary_license;
- extern Key disable_multi_import; // Undocumented.
-
-
- typedef Cult::CLI::Options<
-
- char_type, NarrowString,
- char_encoding, NarrowString,
- output_dir, NarrowString,
- generate_polymorphic, Boolean,
- polymorphic_type, Cult::Containers::Vector<NarrowString>,
- polymorphic_type_all, Boolean,
- generate_serialization, Boolean,
- generate_inline, Boolean,
- generate_ostream, Boolean,
- generate_doxygen, Boolean,
- generate_comparison, Boolean,
- generate_default_ctor, Boolean,
- generate_from_base_ctor, Boolean,
- generate_detach, Boolean,
- generate_wildcard, Boolean,
- generate_insertion, Cult::Containers::Vector<NarrowString>,
- generate_extraction, Cult::Containers::Vector<NarrowString>,
- generate_forward, Boolean,
- generate_xml_schema, Boolean,
- extern_xml_schema, NarrowString,
- suppress_parsing, Boolean,
- generate_element_type, Boolean,
- generate_element_map, Boolean,
- generate_intellisense, Boolean,
- omit_default_attributes, Boolean,
- namespace_map, Cult::Containers::Vector<NarrowString>,
- namespace_regex, Cult::Containers::Vector<NarrowString>,
- namespace_regex_trace, Boolean,
- reserved_name, Cult::Containers::Vector<NarrowString>,
- type_naming, NarrowString,
- function_naming, NarrowString,
- type_regex, Cult::Containers::Vector<NarrowString>,
- accessor_regex, Cult::Containers::Vector<NarrowString>,
- one_accessor_regex, Cult::Containers::Vector<NarrowString>,
- opt_accessor_regex, Cult::Containers::Vector<NarrowString>,
- seq_accessor_regex, Cult::Containers::Vector<NarrowString>,
- modifier_regex, Cult::Containers::Vector<NarrowString>,
- one_modifier_regex, Cult::Containers::Vector<NarrowString>,
- opt_modifier_regex, Cult::Containers::Vector<NarrowString>,
- seq_modifier_regex, Cult::Containers::Vector<NarrowString>,
- parser_regex, Cult::Containers::Vector<NarrowString>,
- serializer_regex, Cult::Containers::Vector<NarrowString>,
- enumerator_regex, Cult::Containers::Vector<NarrowString>,
- element_type_regex, Cult::Containers::Vector<NarrowString>,
- name_regex_trace, Boolean,
- include_with_brackets, Boolean,
- include_prefix, NarrowString,
- include_regex, Cult::Containers::Vector<NarrowString>,
- include_regex_trace, Boolean,
- guard_prefix, NarrowString,
- root_element_first, Boolean,
- root_element_last, Boolean,
- root_element_all, Boolean,
- root_element_none, Boolean,
- root_element, Cult::Containers::Vector<NarrowString>,
- custom_type, Cult::Containers::Vector<NarrowString>,
- custom_type_regex, Cult::Containers::Vector<NarrowString>,
- hxx_suffix, NarrowString,
- ixx_suffix, NarrowString,
- cxx_suffix, NarrowString,
- fwd_suffix, NarrowString,
- hxx_regex, NarrowString,
- ixx_regex, NarrowString,
- cxx_regex, NarrowString,
- fwd_regex, NarrowString,
- hxx_prologue, Cult::Containers::Vector<NarrowString>,
- ixx_prologue, Cult::Containers::Vector<NarrowString>,
- cxx_prologue, Cult::Containers::Vector<NarrowString>,
- fwd_prologue, Cult::Containers::Vector<NarrowString>,
- prologue, Cult::Containers::Vector<NarrowString>,
- hxx_epilogue, Cult::Containers::Vector<NarrowString>,
- ixx_epilogue, Cult::Containers::Vector<NarrowString>,
- cxx_epilogue, Cult::Containers::Vector<NarrowString>,
- fwd_epilogue, Cult::Containers::Vector<NarrowString>,
- epilogue, Cult::Containers::Vector<NarrowString>,
- hxx_prologue_file, NarrowString,
- ixx_prologue_file, NarrowString,
- cxx_prologue_file, NarrowString,
- fwd_prologue_file, NarrowString,
- prologue_file, NarrowString,
- hxx_epilogue_file, NarrowString,
- ixx_epilogue_file, NarrowString,
- cxx_epilogue_file, NarrowString,
- fwd_epilogue_file, NarrowString,
- epilogue_file, NarrowString,
- parts, UnsignedLong,
- parts_suffix, NarrowString,
- export_symbol, NarrowString,
- export_xml_schema, Boolean,
- export_maps, Boolean,
- import_maps, Boolean,
- show_anonymous, Boolean,
- show_sloc, Boolean,
- proprietary_license, Boolean,
- disable_multi_import, Boolean
-
- > Options;
-
- struct OptionsSpec: Cult::CLI::OptionsSpec<Options> {};
- }
- }
-}
-
-#endif // CXX_TREE_CLI_HXX
diff --git a/xsd/xsd/cxx/tree/counter.cxx b/xsd/xsd/cxx/tree/counter.cxx
index 9254226..23fc221 100644
--- a/xsd/xsd/cxx/tree/counter.cxx
+++ b/xsd/xsd/cxx/tree/counter.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/counter.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/counter.hxx>
@@ -15,40 +14,40 @@ namespace CXX
{
struct Member: Traversal::Member
{
- Member (UnsignedLong& complexity)
+ Member (size_t& complexity)
: complexity_ (complexity)
{
}
- virtual Void
+ virtual void
traverse (Type&)
{
complexity_++;
}
- UnsignedLong& complexity_;
+ size_t& complexity_;
};
struct Any: Traversal::Any, Traversal::AnyAttribute
{
- Any (UnsignedLong& complexity)
+ Any (size_t& complexity)
: complexity_ (complexity)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&)
{
complexity_++;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute&)
{
complexity_++;
}
- UnsignedLong& complexity_;
+ size_t& complexity_;
};
struct TypeBase: Traversal::List,
@@ -57,27 +56,27 @@ namespace CXX
Traversal::Complex,
Context
{
- TypeBase (Context& c, UnsignedLong& complexity)
+ TypeBase (Context& c, size_t& complexity)
: Context (c), complexity_ (complexity)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List&)
{
complexity_++;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Union&)
{
complexity_++;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration& e)
{
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (e);
@@ -86,7 +85,7 @@ namespace CXX
complexity_ += (string_based ? 1 : 2);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
complexity_++; // One for the type itself.
@@ -99,14 +98,14 @@ namespace CXX
names >> member;
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
names >> any;
Complex::names (c, names);
}
private:
- UnsignedLong& complexity_;
+ size_t& complexity_;
};
@@ -120,12 +119,12 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
counts_.global_types++;
- UnsignedLong complexity (0);
+ size_t complexity (0);
TypeBase type (*this, complexity);
type.dispatch (t);
@@ -160,7 +159,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (Type& e)
{
// Check if the previous element we saw needs to be generated.
@@ -177,33 +176,33 @@ namespace CXX
}
private:
- Void
+ void
count_last ()
{
if (generate_p (*last_))
{
counts_.generated_global_elements++;
- UnsignedLong complexity (0);
+ size_t complexity (0);
if (doc_root_p (*last_))
{
- if (options.value<CLI::generate_element_type> ())
+ if (options.generate_element_type ())
{
complexity += 1; // For c-tors and d-tor.
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
complexity += 1;
- if (options.value<CLI::generate_serialization> ())
+ if (options.generate_serialization ())
complexity += 1;
}
else
{
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
complexity += 6; // 13 parsing functions.
- if (options.value<CLI::generate_serialization> ())
+ if (options.generate_serialization ())
complexity += 4; // 8 serialization functions.
}
}
@@ -230,21 +229,16 @@ namespace CXX
};
}
- Counter::
- Counter ()
- {
- }
-
Counts Counter::
- count (CLI::Options const& options,
+ count (options const& ops,
SemanticGraph::Schema& tu,
SemanticGraph::Path const& path)
{
Counts counts;
- Context ctx (std::wcerr, tu, path, options, counts, false, 0, 0, 0, 0);
+ Context ctx (std::wcerr, tu, path, ops, counts, false, 0, 0, 0, 0);
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
schema >> sources >> schema;
diff --git a/xsd/xsd/cxx/tree/counter.hxx b/xsd/xsd/cxx/tree/counter.hxx
index 726de47..ea1a3c3 100644
--- a/xsd/xsd/cxx/tree/counter.hxx
+++ b/xsd/xsd/cxx/tree/counter.hxx
@@ -1,13 +1,12 @@
// file : xsd/cxx/tree/counter.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_COUNTER_HXX
#define CXX_TREE_COUNTER_HXX
#include <cxx/tree/elements.hxx>
-#include <cxx/tree/cli.hxx>
+#include <cxx/tree/options.hxx>
namespace CXX
{
@@ -16,10 +15,8 @@ namespace CXX
class Counter
{
public:
- Counter (); // Dummy ctor, helps with long symbols on HP-UX.
-
Counts
- count (CLI::Options const&,
+ count (options const&,
SemanticGraph::Schema&,
SemanticGraph::Path const&);
};
diff --git a/xsd/xsd/cxx/tree/default-value.cxx b/xsd/xsd/cxx/tree/default-value.cxx
index ff964d3..4f27d7f 100644
--- a/xsd/xsd/cxx/tree/default-value.cxx
+++ b/xsd/xsd/cxx/tree/default-value.cxx
@@ -1,11 +1,11 @@
// file : xsd/cxx/tree/default-value.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/default-value.hxx>
using std::hex;
+using std::dec;
namespace CXX
{
@@ -13,14 +13,14 @@ namespace CXX
{
namespace
{
- Void
+ void
normalize (String& s)
{
- Size n (s.size ());
+ size_t n (s.size ());
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
- WideChar& c (s[i]);
+ wchar_t& c (s[i]);
if (c == 0x0D || // carriage return
c == 0x09 || // tab
@@ -29,15 +29,15 @@ namespace CXX
}
}
- Void
+ void
collapse (String& s)
{
- Size n (s.size ()), j (0);
- Boolean subs (false), trim (true);
+ size_t n (s.size ()), j (0);
+ bool subs (false), trim (true);
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
- WideChar c (s[i]);
+ wchar_t c (s[i]);
if (c == 0x20 || c == 0x09 || c == 0x0A)
subs = true;
@@ -61,21 +61,21 @@ namespace CXX
s.resize (j);
}
- Void
+ void
strip_zeros (String& s)
{
- Size n (s.size ()), i (0);
+ size_t n (s.size ()), i (0);
if (n > 0 && (s[i] == '-' || s[i] == '+'))
i++;
- Size j (i);
+ size_t j (i);
- Boolean strip (true);
+ bool strip (true);
for (; i < n; ++i)
{
- WideChar c (s[i]);
+ wchar_t c (s[i]);
if (c == '0')
{
@@ -97,7 +97,7 @@ namespace CXX
s.resize (j);
}
- Void
+ void
make_float (String& s)
{
if (s.find ('.') == String::npos &&
@@ -112,13 +112,13 @@ namespace CXX
//
IsLiteralValue::
- IsLiteralValue (Boolean& r)
+ IsLiteralValue (bool& r)
: IsFundamentalType (r)
{
*this >> inherits_ >> *this;
}
- Void IsLiteralValue::
+ void IsLiteralValue::
traverse (SemanticGraph::Complex& c)
{
inherits (c);
@@ -144,7 +144,7 @@ namespace CXX
return literal_;
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Complex& c)
{
inherits (c);
@@ -152,7 +152,7 @@ namespace CXX
// Boolean.
//
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Boolean&)
{
collapse (value_);
@@ -161,7 +161,7 @@ namespace CXX
// Integral types.
//
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Byte&)
{
collapse (value_);
@@ -169,15 +169,15 @@ namespace CXX
literal_ = value_;
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::UnsignedByte&)
{
collapse (value_);
strip_zeros (value_);
- literal_ = value_;
+ literal_ = value_ + L"U";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Short&)
{
collapse (value_);
@@ -185,15 +185,15 @@ namespace CXX
literal_ = value_;
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::UnsignedShort&)
{
collapse (value_);
strip_zeros (value_);
- literal_ = value_;
+ literal_ = value_ + L"U";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Int&)
{
collapse (value_);
@@ -201,15 +201,15 @@ namespace CXX
literal_ = value_;
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::UnsignedInt&)
{
collapse (value_);
strip_zeros (value_);
- literal_ = value_;
+ literal_ = value_ + L"U";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Long&)
{
collapse (value_);
@@ -218,7 +218,7 @@ namespace CXX
literal_ += L"LL";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::UnsignedLong&)
{
collapse (value_);
@@ -227,7 +227,7 @@ namespace CXX
literal_ += L"ULL";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Integer&)
{
collapse (value_);
@@ -235,7 +235,7 @@ namespace CXX
literal_ = value_ + L"LL";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::NonPositiveInteger&)
{
collapse (value_);
@@ -243,7 +243,7 @@ namespace CXX
literal_ = value_ + L"LL";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::NonNegativeInteger&)
{
collapse (value_);
@@ -251,7 +251,7 @@ namespace CXX
literal_ = value_ + L"ULL";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::PositiveInteger&)
{
collapse (value_);
@@ -259,7 +259,7 @@ namespace CXX
literal_ = value_ + L"ULL";
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::NegativeInteger&)
{
collapse (value_);
@@ -269,7 +269,7 @@ namespace CXX
// Floats.
//
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Float& t)
{
collapse (value_);
@@ -297,7 +297,7 @@ namespace CXX
}
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Double& t)
{
collapse (value_);
@@ -325,7 +325,7 @@ namespace CXX
}
}
- Void LiteralValue::
+ void LiteralValue::
traverse (SemanticGraph::Fundamental::Decimal&)
{
collapse (value_);
@@ -345,43 +345,43 @@ namespace CXX
*this >> inherits_ >> *this;
}
- Void InitKind::
+ void InitKind::
traverse (SemanticGraph::List&)
{
r_ = function;
}
- Void InitKind::
+ void InitKind::
traverse (SemanticGraph::Complex& c)
{
inherits (c);
}
- Void InitKind::
+ void InitKind::
traverse (SemanticGraph::Fundamental::Base64Binary&)
{
r_ = data;
}
- Void InitKind::
+ void InitKind::
traverse (SemanticGraph::Fundamental::HexBinary&)
{
r_ = data;
}
- Void InitKind::
+ void InitKind::
traverse (SemanticGraph::Fundamental::NameTokens&)
{
r_ = function;
}
- Void InitKind::
+ void InitKind::
traverse (SemanticGraph::Fundamental::IdRefs&)
{
r_ = function;
}
- Void InitKind::
+ void InitKind::
traverse (SemanticGraph::Fundamental::Entities&)
{
r_ = function;
@@ -397,14 +397,14 @@ namespace CXX
{
}
- Void InitValue::
+ void InitValue::
dispatch (SemanticGraph::Node& type, String const& value)
{
value_ = value;
Traversal::NodeBase::dispatch (type);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::List& l)
{
collapse (value_);
@@ -415,9 +415,9 @@ namespace CXX
SemanticGraph::Type& t (l.argumented ().type ());
String ov (value_);
- Size b (0);
+ size_t b (0);
- for (Size e (ov.find (' ')); ; e = ov.find (' ', b))
+ for (size_t e (ov.find (' ')); ; e = ov.find (' ', b))
{
String v (ov, b, e != String::npos ? e - b : e);
@@ -448,21 +448,27 @@ namespace CXX
value_ = ov;
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Union&)
{
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Complex& c)
{
Traversal::NodeBase::dispatch (ultimate_base (c));
}
- // anySimpleType.
+ // anyType & anySimpleType.
//
- Void InitValue::
+ void InitValue::
+ traverse (SemanticGraph::AnyType& t)
+ {
+ os << fq_name (t) << " (" << strlit (value_) << ")";
+ }
+
+ void InitValue::
traverse (SemanticGraph::AnySimpleType& t)
{
os << fq_name (t) << " (" << strlit (value_) << ")";
@@ -470,34 +476,34 @@ namespace CXX
// Strings.
//
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::String&)
{
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::NormalizedString&)
{
normalize (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Token&)
{
collapse (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::NameToken&)
{
collapse (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::NameTokens&)
{
string_sequence_type (
@@ -505,21 +511,21 @@ namespace CXX
xs_ns ().find ("NMTOKEN").first->named ()));
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Name&)
{
collapse (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::NCName&)
{
collapse (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Language&)
{
collapse (value_);
@@ -528,10 +534,10 @@ namespace CXX
// Qualified name.
//
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::QName& t)
{
- Size p (value_.rfind ('#'));
+ size_t p (value_.rfind ('#'));
if (p != String::npos)
{
@@ -563,21 +569,21 @@ namespace CXX
// ID/IDREF.
//
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Id&)
{
collapse (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::IdRef&)
{
collapse (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::IdRefs&)
{
string_sequence_type (
@@ -587,7 +593,7 @@ namespace CXX
// URI.
//
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::AnyURI&)
{
collapse (value_);
@@ -615,7 +621,7 @@ namespace CXX
return r;
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
collapse (value_);
@@ -628,17 +634,17 @@ namespace CXX
// Decode.
//
- Size size (value_.size ());
+ size_t size (value_.size ());
// Remove all whitespaces.
//
{
- Size j (0);
- Boolean subs (false);
+ size_t j (0);
+ bool subs (false);
- for (Size i (0); i < size; ++i)
+ for (size_t i (0); i < size; ++i)
{
- WideChar c (value_[i]);
+ wchar_t c (value_[i]);
if (c == 0x20 || c == 0x0A || c == 0x0D || c == 0x09)
subs = true;
@@ -657,20 +663,20 @@ namespace CXX
// Our length should be a multiple of four.
//
- Size quad_count (size / 4);
+ size_t quad_count (size / 4);
// Source and destination indexes.
//
- Size si (0), di (0);
+ size_t si (0), di (0);
// Process all quads except the last one.
//
unsigned short v;
unsigned char b1, b2, b3, b4;
- WideChar prev_fill (os.fill ('0'));
+ wchar_t prev_fill (os.fill ('0'));
- for (Size q (0); q < quad_count - 1; ++q)
+ for (size_t q (0); q < quad_count - 1; ++q)
{
b1 = base64_decode (value_[si++]);
b2 = base64_decode (value_[si++]);
@@ -683,17 +689,21 @@ namespace CXX
if (di % 9 == 0)
os << endl;
+ os << hex;
+
v = static_cast<unsigned char> ((b1 << 2) | (b2 >> 4));
os.width (2);
- os << "0x" << hex << v;
+ os << "0x" << v;
v = static_cast<unsigned char> ((b2 << 4) | (b3 >> 2));
os.width (2);
- os << ", 0x" << hex << v;
+ os << ", 0x" << v;
v = static_cast<unsigned char> ((b3 << 6) | b4);
os.width (2);
- os << ", 0x" << hex << v;
+ os << ", 0x" << v;
+
+ os << dec;
di += 3;
}
@@ -703,7 +713,7 @@ namespace CXX
b1 = base64_decode (value_[si++]);
b2 = base64_decode (value_[si++]);
- WideChar e3 (value_[si++]), e4 (value_[si++]);
+ wchar_t e3 (value_[si++]), e4 (value_[si++]);
if (quad_count != 1)
os << ", ";
@@ -718,7 +728,7 @@ namespace CXX
// Two pads. Last 4 bits in b2 should be zero.
//
v = static_cast<unsigned char> ((b1 << 2) | (b2 >> 4));
- os << "0x" << hex << v;
+ os << "0x" << hex << v << dec;
di++;
}
else
@@ -727,13 +737,17 @@ namespace CXX
//
b3 = base64_decode (e3);
+ os << hex;
+
v = static_cast<unsigned char> ((b1 << 2) | (b2 >> 4));
os.width (2);
- os << "0x" << hex << v;
+ os << "0x" << v;
v = static_cast<unsigned char> ((b2 << 4) | (b3 >> 2));
os.width (2);
- os << ", 0x" << hex << v;
+ os << ", 0x" << v;
+
+ os << dec;
di += 2;
}
@@ -745,17 +759,21 @@ namespace CXX
b3 = base64_decode (e3);
b4 = base64_decode (e4);
+ os << hex;
+
v = static_cast<unsigned char> ((b1 << 2) | (b2 >> 4));
os.width (2);
- os << "0x" << hex << v;
+ os << "0x" << v;
v = static_cast<unsigned char> ((b2 << 4) | (b3 >> 2));
os.width (2);
- os << ", 0x" << hex << v;
+ os << ", 0x" << v;
v = static_cast<unsigned char> ((b3 << 6) | b4);
os.width (2);
- os << ", 0x" << hex << v;
+ os << ", 0x" << v;
+
+ os << dec;
di += 3;
}
@@ -797,7 +815,7 @@ namespace CXX
return r;
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
collapse (value_);
@@ -810,10 +828,10 @@ namespace CXX
// Decode.
//
- Size n (value_.size () / 2);
- WideChar prev_fill (os.fill ('0'));
+ size_t n (value_.size () / 2);
+ wchar_t prev_fill (os.fill ('0'));
- for (Size i (0); i < n; ++i)
+ for (size_t i (0); i < n; ++i)
{
unsigned char h (hex_decode (value_[2 * i]));
unsigned char l (hex_decode (value_[2 * i + 1]));
@@ -829,7 +847,7 @@ namespace CXX
unsigned short v = static_cast<unsigned char> ((h << 4) | l);
os.width (2);
- os << "0x" << hex << v;
+ os << "0x" << hex << v << dec;
}
os.fill (prev_fill);
@@ -856,15 +874,15 @@ namespace CXX
// Date/time.
//
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Date& t)
{
// date := [-]CCYY[N]*-MM-DD[Z|(+|-)HH:MM]
//
collapse (value_);
- Size b (0);
- Size e (value_.find ('-', value_[0] == '-' ? 5 : 4));
+ size_t b (0);
+ size_t e (value_.find ('-', value_[0] == '-' ? 5 : 4));
String year (value_, 0, e);
b = e + 1;
@@ -882,15 +900,15 @@ namespace CXX
os << ")";
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::DateTime& t)
{
// date_time := [-]CCYY[N]*-MM-DDTHH:MM:SS[.S+][Z|(+|-)HH:MM]
//
collapse (value_);
- Size b (0);
- Size e (value_.find ('-', value_[0] == '-' ? 5 : 4));
+ size_t b (0);
+ size_t e (value_.find ('-', value_[0] == '-' ? 5 : 4));
String year (value_, 0, e);
b = e + 1;
@@ -909,7 +927,7 @@ namespace CXX
e = b + 2;
for (; e < value_.size (); ++e)
{
- WideChar c (value_[e]);
+ wchar_t c (value_[e]);
if (c == 'Z' || c == '+' || c == '-')
break;
@@ -934,12 +952,12 @@ namespace CXX
namespace
{
- Size
- find_delim (String const& s, Size pos)
+ size_t
+ find_delim (String const& s, size_t pos)
{
for (; pos < s.size (); ++pos)
{
- WideChar c (s[pos]);
+ wchar_t c (s[pos]);
if (c == 'Y' || c == 'D' || c == 'M' || c == 'H' ||
c == 'M' || c == 'S' || c == 'T')
@@ -950,14 +968,14 @@ namespace CXX
}
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Duration& t)
{
// duration := [-]P[nY][nM][nD][TnHnMn[.n+]S]
//
collapse (value_);
- Size b (1), e, n (value_.size ());
+ size_t b (1), e, n (value_.size ());
os << fq_name (t) << " (";
@@ -1053,7 +1071,7 @@ namespace CXX
os << ")";
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Day& t)
{
// gday := ---DD[Z|(+|-)HH:MM]
@@ -1068,7 +1086,7 @@ namespace CXX
os << ")";
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Month& t)
{
// gmonth := --MM[Z|(+|-)HH:MM]
@@ -1083,7 +1101,7 @@ namespace CXX
os << ")";
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
// gmonth_day := --MM-DD[Z|(+|-)HH:MM]
@@ -1101,17 +1119,17 @@ namespace CXX
os << ")";
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Year& t)
{
// gyear := [-]CCYY[N]*[Z|(+|-)HH:MM]
//
collapse (value_);
- Size pos (value_[0] == '-' ? 5 : 4);
+ size_t pos (value_[0] == '-' ? 5 : 4);
for (; pos < value_.size (); ++pos)
{
- WideChar c (value_[pos]);
+ wchar_t c (value_[pos]);
if (c == 'Z' || c == '+' || c == '-')
break;
@@ -1125,14 +1143,14 @@ namespace CXX
os << ")";
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
// gyear_month := [-]CCYY[N]*-MM[Z|(+|-)HH:MM]
//
collapse (value_);
- Size pos (value_.find ('-', value_[0] == '-' ? 5 : 4));
+ size_t pos (value_.find ('-', value_[0] == '-' ? 5 : 4));
String year (value_, 0, pos);
String month (value_, pos + 1, 2);
@@ -1145,7 +1163,7 @@ namespace CXX
os << ")";
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Time& t)
{
// time := HH:MM:SS[.S+][Z|(+|-)HH:MM]
@@ -1155,10 +1173,10 @@ namespace CXX
String hours (value_, 0, 2);
String minutes (value_, 3, 2);
- Size e (8);
+ size_t e (8);
for (; e < value_.size (); ++e)
{
- WideChar c (value_[e]);
+ wchar_t c (value_[e]);
if (c == 'Z' || c == '+' || c == '-')
break;
@@ -1176,8 +1194,8 @@ namespace CXX
os << ")";
}
- Void InitValue::
- time_zone (Size pos)
+ void InitValue::
+ time_zone (size_t pos)
{
// time_zone := Z|(+|-)HH:MM
//
@@ -1211,14 +1229,14 @@ namespace CXX
// Entity.
//
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Entity&)
{
collapse (value_);
os << strlit (value_);
}
- Void InitValue::
+ void InitValue::
traverse (SemanticGraph::Fundamental::Entities&)
{
string_sequence_type (
@@ -1226,7 +1244,7 @@ namespace CXX
xs_ns ().find ("ENTITY").first->named ()));
}
- Void InitValue::
+ void InitValue::
string_sequence_type (SemanticGraph::Type& t)
{
collapse (value_);
@@ -1234,9 +1252,9 @@ namespace CXX
if (!value_)
return;
- Size b (0);
+ size_t b (0);
- for (Size e (value_.find (' ')); ; e = value_.find (' ', b))
+ for (size_t e (value_.find (' ')); ; e = value_.find (' ', b))
{
String v (value_, b, e != String::npos ? e - b : e);
diff --git a/xsd/xsd/cxx/tree/default-value.hxx b/xsd/xsd/cxx/tree/default-value.hxx
index c80132e..eb91a8c 100644
--- a/xsd/xsd/cxx/tree/default-value.hxx
+++ b/xsd/xsd/cxx/tree/default-value.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/default-value.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_DEFAULT_VALUE_HXX
@@ -17,9 +16,9 @@ namespace CXX
{
struct IsLiteralValue: IsFundamentalType, Traversal::Complex
{
- IsLiteralValue (Boolean& r);
+ IsLiteralValue (bool& r);
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex&);
private:
@@ -57,64 +56,64 @@ namespace CXX
// Handle inheritance.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex&);
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean&);
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger&);
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal&);
private:
@@ -148,25 +147,25 @@ namespace CXX
//
InitKind (Kind& r);
- virtual Void
+ virtual void
traverse (SemanticGraph::List&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities&);
private:
@@ -178,6 +177,7 @@ namespace CXX
Traversal::Union,
Traversal::Complex,
+ Traversal::AnyType,
Traversal::AnySimpleType,
Traversal::Fundamental::String,
@@ -217,133 +217,136 @@ namespace CXX
{
InitValue (Context&);
- Void
+ void
data (String const& data)
{
data_ = data;
dispatch_count_ = 0;
}
- Void
+ void
dispatch (SemanticGraph::Node& type, String const& value);
- virtual Void
+ virtual void
traverse (SemanticGraph::List&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Union&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex&);
- // anySimpleType.
+ // anyType & anySimpleType.
//
- virtual Void
+ virtual void
+ traverse (SemanticGraph::AnyType&);
+
+ virtual void
traverse (SemanticGraph::AnySimpleType&);
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language&);
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName&);
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs&);
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI&);
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary&);
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time&);
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities&);
private:
- Void
+ void
string_sequence_type (SemanticGraph::Type& element_type);
- Void
- time_zone (Size pos);
+ void
+ time_zone (size_t pos);
private:
String value_;
String data_;
- Size dispatch_count_;
+ size_t dispatch_count_;
MemberTypeName type_name_;
LiteralValue literal_value_;
};
diff --git a/xsd/xsd/cxx/tree/elements.cxx b/xsd/xsd/cxx/tree/elements.cxx
index cad5a33..202ab62 100644
--- a/xsd/xsd/cxx/tree/elements.cxx
+++ b/xsd/xsd/cxx/tree/elements.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/elements.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/elements.hxx>
@@ -11,55 +10,18 @@ namespace CXX
{
// Context
//
- Void Context::
- update_ns_scope () // Keeping this function first helps HP-UX
- { // (long symbols).
- ns_scope.clear ();
-
- Boolean first (true);
-
- for (NamespaceStack::Iterator i (ns_scope_stack.begin ());
- i != ns_scope_stack.end ();
- ++i)
- {
- // We only qualify names until the namespace level.
- //
- if (first)
- first = false;
- else
- ns_scope += L"::";
-
- ns_scope += *i;
- }
- }
-
Context::
Context (std::wostream& o,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- CLI::Options const& ops,
+ options_type const& ops,
Counts const& counts_,
- Boolean generate_xml_schema__,
+ bool generate_xml_schema__,
StringLiteralMap const* map,
Regex const* fe,
Regex const* he,
Regex const* ie)
- : CXX::Context (o,
- root,
- path,
- map,
- ops.value<CLI::char_type> (),
- ops.value<CLI::char_encoding> (),
- ops.value<CLI::include_with_brackets> (),
- ops.value<CLI::include_prefix> (),
- ops.value<CLI::export_symbol> (),
- ops.value<CLI::namespace_map> (),
- ops.value<CLI::namespace_regex> (),
- ops.value<CLI::namespace_regex_trace> (),
- ops.value<CLI::include_regex> (),
- ops.value<CLI::include_regex_trace> (),
- ops.value<CLI::generate_inline> (),
- ops.value<CLI::reserved_name> ()),
+ : CXX::Context (o, root, path, ops, map),
options (ops),
counts (counts_),
any_type (any_type_),
@@ -84,9 +46,10 @@ namespace CXX
as_decimal_type (as_decimal_type_),
generate_xml_schema (generate_xml_schema_),
doxygen (doxygen_),
- polymorphic (ops.value<CLI::generate_polymorphic> ()),
- polymorphic_all (ops.value<CLI::polymorphic_type_all> ()),
- detach (ops.value<CLI::generate_detach> ()),
+ polymorphic (ops.generate_polymorphic ()),
+ polymorphic_all (ops.polymorphic_type_all ()),
+ poly_plate (ops.polymorphic_plate ()),
+ detach (ops.generate_detach ()),
fwd_expr (fe),
hxx_expr (he),
ixx_expr (ie),
@@ -96,7 +59,7 @@ namespace CXX
qname_type_ (L"::xsd::cxx::xml::qualified_name< " + char_type + L" >"),
parser_type_ (L"::xsd::cxx::xml::dom::parser< " + char_type + L" >"),
generate_xml_schema_ (generate_xml_schema__),
- doxygen_ (ops.value<CLI::generate_doxygen> ()),
+ doxygen_ (ops.generate_doxygen ()),
ns_scope_stack (ns_scope_stack_),
cxx_uq_id_expr_ (L"^[a-zA-Z_]\\w*$"),
cxx_uq_id_expr (cxx_uq_id_expr_)
@@ -118,23 +81,25 @@ namespace CXX
container = xs_name + L"::" + xsc.get<String> ("container");
flags_type = xs_name + L"::" + xsc.get<String> ("flags");
- if (ops.value<CLI::generate_element_type> ())
+ if (ops.generate_element_type ())
element_type = xs_name + L"::" + xsc.get<String> ("element-type");
properties_type = xs_name + L"::" + xsc.get<String> ("properties");
- if (!ops.value<CLI::suppress_parsing> () ||
- ops.value<CLI::generate_serialization> ())
+ if (!ops.suppress_parsing () || ops.generate_serialization ())
{
error_handler_type = xs_name + L"::" +
xsc.get<String> ("error-handler");
}
- dom_auto_ptr_ = xs_name + L"::dom::auto_ptr";
+ dom_auto_ptr_ = xs_name + (std >= cxx_version::cxx11
+ ? L"::dom::unique_ptr"
+ : L"::dom::auto_ptr");
+
dom_node_key_ = xs_name + L"::dom::" +
xsc.get<String> ("tree-node-key");
- if (ops.value<CLI::generate_serialization> ())
+ if (ops.generate_serialization ())
{
as_double_type_ = xs_name + L"::" +
xsc.get<String> ("as-double");
@@ -152,17 +117,17 @@ namespace CXX
// istream and ostream are templates and for now use the same
// names regardless of the naming convention.
//
- if (!ops.value<CLI::generate_extraction> ().empty ())
+ if (!ops.generate_extraction ().empty ())
istream_type = xs_name + L"::istream";
- if (!ops.value<CLI::generate_insertion> ().empty ())
+ if (!ops.generate_insertion ().empty ())
ostream_type = xs_name + L"::ostream";
}
// Xerces-C++ namespace. IntelliSense for some reason does not like
// it fully-qualified (maybe because it's a namespace alias).
//
- if (ops.value<CLI::generate_intellisense> ())
+ if (ops.generate_intellisense ())
xerces_ns = "xercesc";
else
xerces_ns = "::xercesc";
@@ -178,14 +143,14 @@ namespace CXX
// Custom type mapping.
//
- typedef Containers::Vector<NarrowString> Vector;
// Direct custom type mapping.
//
{
- Vector const& v (ops.value<CLI::custom_type> ());
+ NarrowStrings const& v (ops.custom_type ());
- for (Vector::ConstIterator i (v.begin ()), e (v.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (v.begin ()),
+ e (v.end ()); i != e; ++i)
{
String s (*i);
@@ -194,7 +159,7 @@ namespace CXX
// Split the string in two parts at the last '='.
//
- Size pos (s.rfind ('='));
+ size_t pos (s.rfind ('='));
// If no delimiter found then both type and base are empty.
//
@@ -237,20 +202,21 @@ namespace CXX
// Regex custom type mapping.
//
{
- Vector const& v (ops.value<CLI::custom_type_regex> ());
+ NarrowStrings const& v (ops.custom_type_regex ());
- for (Vector::ConstIterator i (v.begin ()), e (v.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (v.begin ()),
+ e (v.end ()); i != e; ++i)
{
String s (*i);
if (s.empty ())
throw InvalidCustomTypeMapping (s, "mapping string is empty");
- WideChar delimiter (s[0]);
+ wchar_t delimiter (s[0]);
// First get pattern.
//
- Size pos (s.find (delimiter, 1));
+ size_t pos (s.find (delimiter, 1));
if (pos == String::npos)
throw InvalidCustomTypeMapping (
@@ -291,7 +257,7 @@ namespace CXX
}
regex_custom_type_map.push_back (
- RegexCustomTypeMapInfo (pat, type, base));
+ RegexCustomTypeMapInfo (WideRegexPat (pat), type, base));
}
}
}
@@ -325,6 +291,7 @@ namespace CXX
doxygen (c.doxygen),
polymorphic (c.polymorphic),
polymorphic_all (c.polymorphic_all),
+ poly_plate (c.poly_plate),
detach (c.detach),
fwd_expr (c.fwd_expr),
hxx_expr (c.hxx_expr),
@@ -366,6 +333,7 @@ namespace CXX
doxygen (c.doxygen),
polymorphic (c.polymorphic),
polymorphic_all (c.polymorphic_all),
+ poly_plate (c.poly_plate),
detach (c.detach),
fwd_expr (c.fwd_expr),
hxx_expr (c.hxx_expr),
@@ -378,7 +346,29 @@ namespace CXX
{
}
- Boolean Context::
+ void Context::
+ update_ns_scope ()
+ {
+ ns_scope.clear ();
+
+ bool first (true);
+
+ for (NamespaceStack::iterator i (ns_scope_stack.begin ());
+ i != ns_scope_stack.end ();
+ ++i)
+ {
+ // We only qualify names until the namespace level.
+ //
+ if (first)
+ first = false;
+ else
+ ns_scope += L"::";
+
+ ns_scope += *i;
+ }
+ }
+
+ bool Context::
custom_type (SemanticGraph::Type const& t, String& r) const
{
String const& name (t.name ());
@@ -386,7 +376,7 @@ namespace CXX
// First search the direct mapping.
//
{
- DirectCustomTypeMap::ConstIterator i (
+ DirectCustomTypeMap::const_iterator i (
direct_custom_type_map.find (name));
if (i != direct_custom_type_map.end ())
@@ -399,7 +389,7 @@ namespace CXX
// Second search the regex mapping.
//
- for (RegexCustomTypeMap::ConstIterator
+ for (RegexCustomTypeMap::const_iterator
i (regex_custom_type_map.begin ()),
e (regex_custom_type_map.end ());
i != e; ++i)
@@ -414,7 +404,7 @@ namespace CXX
return true;
}
- r = i->pat.merge (i->type_sub, name);
+ r = i->pat.replace (name, i->type_sub);
return true;
}
}
@@ -437,7 +427,7 @@ namespace CXX
return r;
}
- Boolean Context::
+ bool Context::
renamed_type (SemanticGraph::Type const& t, String& r) const
{
String const& name (t.name ());
@@ -445,7 +435,7 @@ namespace CXX
// First search the direct mapping.
//
{
- DirectCustomTypeMap::ConstIterator i (
+ DirectCustomTypeMap::const_iterator i (
direct_custom_type_map.find (name));
if (i != direct_custom_type_map.end ())
@@ -458,7 +448,7 @@ namespace CXX
// Second search the regex mapping.
//
- for (RegexCustomTypeMap::ConstIterator
+ for (RegexCustomTypeMap::const_iterator
i (regex_custom_type_map.begin ()),
e (regex_custom_type_map.end ());
i != e; ++i)
@@ -467,7 +457,7 @@ namespace CXX
{
if (!i->base_sub.empty ())
{
- r = i->pat.merge (i->base_sub, name);
+ r = i->pat.replace (name, i->base_sub);
}
else
r.clear ();
@@ -479,17 +469,17 @@ namespace CXX
return false;
}
- Void Context::
+ void Context::
write_annotation (SemanticGraph::Annotation& a)
{
String const& doc (a.documentation ());
- WideChar const* s (doc.c_str ());
- Size size (doc.size ());
+ wchar_t const* s (doc.c_str ());
+ size_t size (doc.size ());
// Remove leading and trailing whitespaces.
//
- while (*s == WideChar (0x20) || *s == WideChar (0x0A) ||
- *s == WideChar (0x0D) || *s == WideChar (0x09))
+ while (*s == wchar_t (0x20) || *s == wchar_t (0x0A) ||
+ *s == wchar_t (0x0D) || *s == wchar_t (0x09))
{
s++;
size--;
@@ -497,11 +487,11 @@ namespace CXX
if (size != 0)
{
- WideChar const* e (s + size - 1);
+ wchar_t const* e (s + size - 1);
while (e > s &&
- (*e == WideChar (0x20) || *e == WideChar (0x0A) ||
- *e == WideChar (0x0D) || *e == WideChar (0x09)))
+ (*e == wchar_t (0x20) || *e == wchar_t (0x0A) ||
+ *e == wchar_t (0x0D) || *e == wchar_t (0x09)))
--e;
size = s <= e ? e - s + 1 : 0;
@@ -514,15 +504,15 @@ namespace CXX
// Go over the data, forcing newline after 80 chars and adding
// ' * ' after each new line.
//
- WideChar const* last_space (0);
- WideChar const* b (s);
- WideChar const* e (s);
- Boolean after_newline (false);
- Boolean rogue (false);
+ wchar_t const* last_space (0);
+ wchar_t const* b (s);
+ wchar_t const* e (s);
+ bool after_newline (false);
+ bool rogue (false);
for (; e < s + size; ++e)
{
- UnsignedLong u (unicode_char (e)); // May advance e.
+ unsigned int u (unicode_char (e)); // May advance e.
// We are going to treat \v and \f as rogue here even though
// they can be present in C++ source code.
@@ -579,16 +569,16 @@ namespace CXX
}
}
- Void Context::
- write_rogue_text (WideChar const* s, Size size, Boolean rogue)
+ void Context::
+ write_rogue_text (wchar_t const* s, size_t size, bool rogue)
{
if (!rogue)
os.write (s, size);
else
{
- for (WideChar const* p (s); p < s + size; ++p)
+ for (wchar_t const* p (s); p < s + size; ++p)
{
- UnsignedLong u (unicode_char (p)); // May advance p.
+ unsigned int u (unicode_char (p)); // May advance p.
// We are going to treat \v and \f as rogue here even though
// they can be present in C++ source code.
@@ -596,36 +586,69 @@ namespace CXX
if (u > 127 || (u < 32 && u != '\t' && u != '\n'))
os.put ('?');
else
- os.put (static_cast<WideChar> (u));
+ os.put (static_cast<wchar_t> (u));
}
}
}
- Boolean Context::
+ bool Context::
polymorphic_p (SemanticGraph::Type& t)
{
+ // IDREF templates cannot be polymorphic.
+ //
+ if (!t.named_p () &&
+ (t.is_a<SemanticGraph::Fundamental::IdRef> () ||
+ t.is_a<SemanticGraph::Fundamental::IdRefs> ()))
+ return false;
+
if (polymorphic_all)
{
- Boolean fund (false);
+ bool fund (false);
IsFundamentalType test (fund);
test.dispatch (t);
return !fund;
}
else
- return t.context ().get<Boolean> ("polymorphic");
+ return t.context ().get<bool> ("polymorphic");
+ }
+
+ bool Context::
+ anonymous_substitutes_p (SemanticGraph::Type& t)
+ {
+ // IDREF templates cannot match.
+ //
+ if (!t.named_p () &&
+ (t.is_a<SemanticGraph::Fundamental::IdRef> () ||
+ t.is_a<SemanticGraph::Fundamental::IdRefs> ()))
+ return false;
+
+ // See which elements this type classifies.
+ //
+ for (SemanticGraph::Type::ClassifiesIterator i (t.classifies_begin ()),
+ e (t.classifies_end ()); i != e; ++i)
+ {
+ if (SemanticGraph::Element* e =
+ dynamic_cast<SemanticGraph::Element*> (&i->instance ()))
+ {
+ if (e->substitutes_p ())
+ return true;
+ }
+ }
+
+ return false;
}
// GenerateDefautCtor
//
GenerateDefaultCtor::
- GenerateDefaultCtor (Context& c, Boolean& generate, Boolean no_base)
+ GenerateDefaultCtor (Context& c, bool& generate, bool no_base)
: Context (c), generate_ (generate), no_base_ (no_base)
{
*this >> inherits_ >> *this;
*this >> names_ >> *this;
}
- Void GenerateDefaultCtor::
+ void GenerateDefaultCtor::
traverse (SemanticGraph::Complex& c)
{
// Make sure we figure out if we have any required members before
@@ -637,38 +660,38 @@ namespace CXX
Complex::inherits (c, inherits_);
}
- Void GenerateDefaultCtor::
+ void GenerateDefaultCtor::
traverse (SemanticGraph::Type&)
{
if (!no_base_)
generate_ = true;
}
- Void GenerateDefaultCtor::
+ void GenerateDefaultCtor::
traverse (SemanticGraph::Enumeration&)
{
if (!no_base_)
generate_ = true;
}
- Void GenerateDefaultCtor::
+ void GenerateDefaultCtor::
traverse (SemanticGraph::Element& e)
{
if (!skip (e) && min (e) == 1 && max (e) == 1)
generate_ = true;
}
- Void GenerateDefaultCtor::
+ void GenerateDefaultCtor::
traverse (SemanticGraph::Attribute& a)
{
if (min (a) == 1 && !a.fixed_p ())
generate_ = true;
}
- Void GenerateDefaultCtor::
+ void GenerateDefaultCtor::
traverse (SemanticGraph::Any& a)
{
- if (options.value<CLI::generate_wildcard> () &&
+ if (options.generate_wildcard () &&
min (a) == 1 && max (a) == 1)
generate_ = true;
}
@@ -677,7 +700,7 @@ namespace CXX
// GenerateFromBaseCtor
//
GenerateFromBaseCtor::
- GenerateFromBaseCtor (Context& c, Boolean& generate)
+ GenerateFromBaseCtor (Context& c, bool& generate)
: generate_ (generate),
custom_ (false),
traverser_ (c, generate, custom_)
@@ -685,7 +708,7 @@ namespace CXX
inherits_ >> traverser_;
}
- Void GenerateFromBaseCtor::
+ void GenerateFromBaseCtor::
traverse (SemanticGraph::Complex& c)
{
inherits (c, inherits_);
@@ -703,14 +726,14 @@ namespace CXX
}
GenerateFromBaseCtor::Traverser::
- Traverser (Context& c, Boolean& generate, Boolean& custom)
+ Traverser (Context& c, bool& generate, bool& custom)
: Context (c), generate_ (generate), custom_ (custom)
{
*this >> inherits_ >> *this;
*this >> names_ >> *this;
}
- Void GenerateFromBaseCtor::Traverser::
+ void GenerateFromBaseCtor::Traverser::
traverse (SemanticGraph::Type& t)
{
if (!custom_)
@@ -720,7 +743,7 @@ namespace CXX
}
}
- Void GenerateFromBaseCtor::Traverser::
+ void GenerateFromBaseCtor::Traverser::
traverse (SemanticGraph::Complex& c)
{
names (c, names_);
@@ -732,24 +755,24 @@ namespace CXX
traverse (static_cast<SemanticGraph::Type&> (c));
}
- Void GenerateFromBaseCtor::Traverser::
+ void GenerateFromBaseCtor::Traverser::
traverse (SemanticGraph::Element& e)
{
if (!skip (e) && min (e) == 1 && max (e) == 1)
generate_ = true;
}
- Void GenerateFromBaseCtor::Traverser::
+ void GenerateFromBaseCtor::Traverser::
traverse (SemanticGraph::Attribute& a)
{
if (min (a) == 1 && !a.fixed_p ())
generate_ = true;
}
- Void GenerateFromBaseCtor::Traverser::
+ void GenerateFromBaseCtor::Traverser::
traverse (SemanticGraph::Any& a)
{
- if (options.value<CLI::generate_wildcard> () &&
+ if (options.generate_wildcard () &&
min (a) == 1 && max (a) == 1)
generate_ = true;
}
@@ -758,10 +781,10 @@ namespace CXX
//
HasComplexPolyNonOptArgs::
HasComplexPolyNonOptArgs (Context& c,
- Boolean base,
- Boolean& complex,
- Boolean& poly,
- Boolean& clash)
+ bool base,
+ bool& complex,
+ bool& poly,
+ bool& clash)
: Context (c),
complex_ (complex),
poly_ (poly),
@@ -773,7 +796,7 @@ namespace CXX
*this >> names_ >> *this;
}
- Void HasComplexPolyNonOptArgs::
+ void HasComplexPolyNonOptArgs::
traverse (SemanticGraph::Complex& c)
{
// No optimizations: need to check every arg for clashes.
@@ -782,14 +805,14 @@ namespace CXX
names (c, names_);
}
- Void HasComplexPolyNonOptArgs::
+ void HasComplexPolyNonOptArgs::
traverse (SemanticGraph::Element& e)
{
if (!skip (e) && min (e) == 1 && max (e) == 1)
{
- Boolean poly (polymorphic && polymorphic_p (e.type ()));
+ bool poly (polymorphic && polymorphic_p (e.type ()));
- Boolean simple (true);
+ bool simple (true);
IsSimpleType t (simple);
t.dispatch (e.type ());
@@ -807,15 +830,15 @@ namespace CXX
// FromBaseCtorArg
//
FromBaseCtorArg::
- FromBaseCtorArg (Context& c, ArgType at, Boolean arg)
+ FromBaseCtorArg (Context& c, CtorArgType at, bool arg)
: Context (c), arg_type_ (at), arg_ (arg)
{
}
- Void FromBaseCtorArg::
+ void FromBaseCtorArg::
traverse (SemanticGraph::Any& a)
{
- if (!options.value<CLI::generate_wildcard> ())
+ if (!options.generate_wildcard ())
return;
if (min (a) == 1 && max (a) == 1)
@@ -830,7 +853,7 @@ namespace CXX
}
}
- Void FromBaseCtorArg::
+ void FromBaseCtorArg::
traverse (SemanticGraph::Element& e)
{
if (skip (e))
@@ -842,29 +865,29 @@ namespace CXX
os << "," << endl;
- Boolean auto_ptr (false);
+ bool ptr (false);
switch (arg_type_)
{
- case arg_complex_auto_ptr:
+ case CtorArgType::complex_auto_ptr:
{
- Boolean simple (true);
+ bool simple (true);
IsSimpleType t (simple);
t.dispatch (e.type ());
- auto_ptr = !simple;
+ ptr = !simple;
break;
}
- case arg_poly_auto_ptr:
+ case CtorArgType::poly_auto_ptr:
{
- auto_ptr = polymorphic && polymorphic_p (e.type ());
+ ptr = polymorphic && polymorphic_p (e.type ());
break;
}
- case arg_type:
+ case CtorArgType::type:
break;
}
- if (auto_ptr)
- os << "::std::auto_ptr< " << etype (e) << " >&";
+ if (ptr)
+ os << auto_ptr << "< " << etype (e) << " >";
else
os << "const " << etype (e) << "&";
@@ -873,7 +896,7 @@ namespace CXX
}
}
- Void FromBaseCtorArg::
+ void FromBaseCtorArg::
traverse (SemanticGraph::Attribute& a)
{
// Note that we are not going to include attributes with
@@ -895,7 +918,7 @@ namespace CXX
// CtorArgs
//
CtorArgs::
- CtorArgs (Context& c, ArgType at)
+ CtorArgs (Context& c, CtorArgType at)
: Context (c),
arg_type_ (at),
base_arg_ (0),
@@ -907,7 +930,7 @@ namespace CXX
}
CtorArgs::
- CtorArgs (Context& c, ArgType at, String& base_arg)
+ CtorArgs (Context& c, CtorArgType at, String& base_arg)
: Context (c),
arg_type_ (at),
base_arg_ (&base_arg),
@@ -918,7 +941,7 @@ namespace CXX
*this >> names_ >> *this;
}
- Void CtorArgs::
+ void CtorArgs::
traverse (SemanticGraph::Type& t)
{
os << comma () << "const ";
@@ -929,13 +952,17 @@ namespace CXX
if (base_arg_ != 0)
{
- *base_arg_ = L"_xsd_" + ename (t) + L"_base";
+ // IDREF templates don't have a name.
+ //
+ *base_arg_ = t.named_p ()
+ ? (L"_xsd_" + ename (t) + L"_base")
+ : L"_xsd_base";
os << " " << *base_arg_;
}
}
- Void CtorArgs::
+ void CtorArgs::
traverse (SemanticGraph::Enumeration& e)
{
os << comma () << "const ";
@@ -952,10 +979,10 @@ namespace CXX
}
}
- Void CtorArgs::
+ void CtorArgs::
traverse (SemanticGraph::Any& a)
{
- if (!options.value<CLI::generate_wildcard> ())
+ if (!options.generate_wildcard ())
return;
if (min (a) == 1 && max (a) == 1)
@@ -967,7 +994,7 @@ namespace CXX
}
}
- Void CtorArgs::
+ void CtorArgs::
traverse (SemanticGraph::Element& e)
{
if (skip (e))
@@ -975,29 +1002,29 @@ namespace CXX
if (min (e) == 1 && max (e) == 1)
{
- Boolean auto_ptr (false);
+ bool ptr (false);
switch (arg_type_)
{
- case arg_complex_auto_ptr:
+ case CtorArgType::complex_auto_ptr:
{
- Boolean simple (true);
+ bool simple (true);
IsSimpleType t (simple);
t.dispatch (e.type ());
- auto_ptr = !simple;
+ ptr = !simple;
break;
}
- case arg_poly_auto_ptr:
+ case CtorArgType::poly_auto_ptr:
{
- auto_ptr = polymorphic && polymorphic_p (e.type ());
+ ptr = polymorphic && polymorphic_p (e.type ());
break;
}
- case arg_type:
+ case CtorArgType::type:
break;
}
- if (auto_ptr)
- os << comma () << "::std::auto_ptr< " << etype (e) << " >&";
+ if (ptr)
+ os << comma () << auto_ptr << "< " << etype (e) << " >";
else
os << comma () << "const " << etype (e) << "&";
@@ -1006,7 +1033,7 @@ namespace CXX
}
}
- Void CtorArgs::
+ void CtorArgs::
traverse (SemanticGraph::Attribute& a)
{
// Note that we are not going to include attributes with
@@ -1025,7 +1052,7 @@ namespace CXX
String CtorArgs::
comma ()
{
- Boolean tmp (first_);
+ bool tmp (first_);
first_ = false;
return tmp ? "" : ",\n";
}
@@ -1034,17 +1061,17 @@ namespace CXX
// CtorArgsWithoutBase
//
CtorArgsWithoutBase::
- CtorArgsWithoutBase (Context& c, ArgType at, Boolean arg, Boolean first)
+ CtorArgsWithoutBase (Context& c, CtorArgType at, bool arg, bool first)
: Context (c), arg_type_ (at), arg_ (arg), first_ (first)
{
*this >> inherits_ >> *this;
*this >> names_ >> *this;
}
- Void CtorArgsWithoutBase::
+ void CtorArgsWithoutBase::
traverse (SemanticGraph::Any& a)
{
- if (!options.value<CLI::generate_wildcard> ())
+ if (!options.generate_wildcard ())
return;
if (min (a) == 1 && max (a) == 1)
@@ -1056,7 +1083,7 @@ namespace CXX
}
}
- Void CtorArgsWithoutBase::
+ void CtorArgsWithoutBase::
traverse (SemanticGraph::Element& e)
{
if (skip (e))
@@ -1064,29 +1091,29 @@ namespace CXX
if (min (e) == 1 && max (e) == 1)
{
- Boolean auto_ptr (false);
+ bool ptr (false);
switch (arg_type_)
{
- case arg_complex_auto_ptr:
+ case CtorArgType::complex_auto_ptr:
{
- Boolean simple (true);
+ bool simple (true);
IsSimpleType t (simple);
t.dispatch (e.type ());
- auto_ptr = !simple;
+ ptr = !simple;
break;
}
- case arg_poly_auto_ptr:
+ case CtorArgType::poly_auto_ptr:
{
- auto_ptr = polymorphic && polymorphic_p (e.type ());
+ ptr = polymorphic && polymorphic_p (e.type ());
break;
}
- case arg_type:
+ case CtorArgType::type:
break;
}
- if (auto_ptr)
- os << comma () << "::std::auto_ptr< " << etype (e) << " >&";
+ if (ptr)
+ os << comma () << auto_ptr << "< " << etype (e) << " >";
else
os << comma () << "const " << etype (e) << "&";
@@ -1095,7 +1122,7 @@ namespace CXX
}
}
- Void CtorArgsWithoutBase::
+ void CtorArgsWithoutBase::
traverse (SemanticGraph::Attribute& a)
{
// Note that we are not going to include attributes with
@@ -1114,14 +1141,14 @@ namespace CXX
String CtorArgsWithoutBase::
comma ()
{
- Boolean tmp (first_);
+ bool tmp (first_);
first_ = false;
return tmp ? "" : ",\n";
}
// GlobalElementBase
//
- Boolean GlobalElementBase::
+ bool GlobalElementBase::
generate_p (SemanticGraph::Element& e)
{
if (e.substitutes_p () && ctx_.polymorphic)
@@ -1133,44 +1160,44 @@ namespace CXX
// If we are not generating element types nor parsing/serialization
// code then we won't generate anything from it.
//
- if (!ctx_.options.value<CLI::generate_element_type> () &&
- ctx_.options.value<CLI::suppress_parsing> () &&
- !ctx_.options.value<CLI::generate_serialization> ())
+ if (!ctx_.options.generate_element_type () &&
+ ctx_.options.suppress_parsing () &&
+ !ctx_.options.generate_serialization ())
return false;
return true;
}
- Boolean GlobalElementBase::
+ bool GlobalElementBase::
doc_root_p (SemanticGraph::Element& e)
{
- if (!ctx_.options.value<CLI::root_element_first> () &&
- !ctx_.options.value<CLI::root_element_last> () &&
- !ctx_.options.value<CLI::root_element_all> () &&
- !ctx_.options.value<CLI::root_element_none> () &&
- ctx_.options.value<CLI::root_element> ().empty ())
+ if (!ctx_.options.root_element_first () &&
+ !ctx_.options.root_element_last () &&
+ !ctx_.options.root_element_all () &&
+ !ctx_.options.root_element_none () &&
+ ctx_.options.root_element ().empty ())
return true; // By default treat them all.
- if (ctx_.options.value<CLI::root_element_none> ())
+ if (ctx_.options.root_element_none ())
return false;
- if (ctx_.options.value<CLI::root_element_all> ())
+ if (ctx_.options.root_element_all ())
return true;
- if (ctx_.options.value<CLI::root_element_first> () &&
+ if (ctx_.options.root_element_first () &&
e.context ().count ("first") != 0)
return true;
- if (ctx_.options.value<CLI::root_element_last> () &&
+ if (ctx_.options.root_element_last () &&
e.context ().count ("last") != 0)
return true;
- typedef Cult::Containers::Vector<NarrowString> Names;
- Names const& names (ctx_.options.value<CLI::root_element> ());
+ NarrowStrings const& names (ctx_.options.root_element ());
// Hopefully nobody will specify more than a handful of names ;-).
//
- for (Names::ConstIterator i (names.begin ()); i != names.end (); ++i)
+ for (NarrowStrings::const_iterator i (names.begin ());
+ i != names.end (); ++i)
{
String name (*i);
@@ -1185,8 +1212,8 @@ namespace CXX
//
Namespace::
Namespace (Context& c,
- UnsignedLong first,
- UnsignedLong last)
+ size_t first,
+ size_t last)
: CXX::Namespace (c, *this),
GlobalElementBase (c),
ctx_ (c),
@@ -1196,7 +1223,7 @@ namespace CXX
{
}
- Void Namespace::
+ void Namespace::
traverse (Type& ns)
{
using SemanticGraph::Element;
@@ -1205,7 +1232,7 @@ namespace CXX
CXX::Namespace::traverse (ns);
else
{
- Boolean opened (false);
+ bool opened (false);
for (Type::NamesIterator i (ns.names_begin ());
i != ns.names_end (); ++i)
@@ -1235,13 +1262,13 @@ namespace CXX
}
}
- Void Namespace::
- enter (Type&, String const& name, Boolean)
+ void Namespace::
+ enter (Type&, String const& name, bool)
{
ctx_.enter_ns_scope (name);
}
- Void Namespace::
+ void Namespace::
leave ()
{
ctx_.leave_ns_scope ();
@@ -1249,7 +1276,7 @@ namespace CXX
// Includes
//
- Void TypeForward::
+ void TypeForward::
traverse (SemanticGraph::Type& t)
{
String const& name (ename (t));
@@ -1271,14 +1298,14 @@ namespace CXX
os << "class " << name << ";";
}
- Void Includes::
+ void Includes::
traverse_ (SemanticGraph::Uses& u)
{
// Support for weak (forward) inclusion used in the file-per-type
// compilation model.
//
Type t (type_);
- Boolean weak (u.context ().count ("weak"));
+ bool weak (u.context ().count ("weak"));
SemanticGraph::Schema& s (u.schema ());
if (weak && t == header)
@@ -1301,6 +1328,7 @@ namespace CXX
s.context ().count ("renamed")
? s.context ().get<SemanticGraph::Path> ("renamed")
: u.path ());
+ path.normalize ();
// Try to use the portable representation of the path. If that
// fails, fall back to the native representation.
@@ -1308,15 +1336,11 @@ namespace CXX
NarrowString path_str;
try
{
- path_str = path.string ();
+ path_str = path.posix_string ();
}
catch (SemanticGraph::InvalidPath const&)
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- path_str = path.native_file_string ();
-#else
path_str = path.string ();
-#endif
}
String inc_path;
@@ -1325,25 +1349,25 @@ namespace CXX
{
case forward:
{
- inc_path = ctx_.fwd_expr->merge (path_str);
+ inc_path = ctx_.fwd_expr->replace (path_str);
break;
}
case header:
case source:
{
- inc_path = ctx_.hxx_expr->merge (path_str);
+ inc_path = ctx_.hxx_expr->replace (path_str);
break;
}
case inline_:
{
if (weak)
{
- inc_path = ctx_.hxx_expr->merge (path_str);
+ inc_path = ctx_.hxx_expr->replace (path_str);
ctx_.os << "#include " << ctx_.process_include_path (inc_path)
<< endl;
}
- inc_path = ctx_.ixx_expr->merge (path_str);
+ inc_path = ctx_.ixx_expr->replace (path_str);
break;
}
}
diff --git a/xsd/xsd/cxx/tree/elements.hxx b/xsd/xsd/cxx/tree/elements.hxx
index afe3951..6874e6a 100644
--- a/xsd/xsd/cxx/tree/elements.hxx
+++ b/xsd/xsd/cxx/tree/elements.hxx
@@ -1,23 +1,23 @@
// file : xsd/cxx/tree/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_ELEMENTS_HXX
#define CXX_TREE_ELEMENTS_HXX
+#include <map>
+#include <set>
+#include <deque>
+#include <vector>
#include <sstream>
-#include <cult/containers/map.hxx>
-#include <cult/containers/deque.hxx>
-#include <cult/containers/vector.hxx>
+#include <cutl/re.hxx>
-#include <backend-elements/regex.hxx>
+#include <types.hxx>
#include <cxx/elements.hxx>
-#include <cxx/tree/cli.hxx>
-
+#include <cxx/tree/options.hxx>
namespace CXX
{
@@ -33,15 +33,15 @@ namespace CXX
{
}
- UnsignedLong global_types;
- UnsignedLong global_elements;
- UnsignedLong generated_global_elements;
+ size_t global_types;
+ size_t global_elements;
+ size_t generated_global_elements;
// Complexity value for each global type and generated global
// element, in order.
//
- Cult::Containers::Vector<UnsignedLong> complexity;
- UnsignedLong complexity_total;
+ std::vector<size_t> complexity;
+ size_t complexity_total;
};
struct InvalidCustomTypeMapping
@@ -69,13 +69,63 @@ namespace CXX
String reason_;
};
+ // A set of potentially qualified XML Schema type names.
+ //
+ struct TypeNameSet
+ {
+ template <typename I>
+ TypeNameSet (I begin, I end)
+ {
+ for (; begin != end; ++begin)
+ insert (*begin);
+ }
+
+ void
+ insert (String const& name)
+ {
+ size_t p (name.rfind ('#'));
+
+ if (p == String::npos)
+ unames_.insert (name);
+ else
+ qnames_.insert (name);
+ }
+
+ bool
+ find (SemanticGraph::Type& t)
+ {
+ if (!unames_.empty ())
+ {
+ if (unames_.find (t.name ()) != unames_.end ())
+ return true;
+ }
+
+ if (!qnames_.empty ())
+ {
+ if (qnames_.find (t.scope ().name () + L"#" + t.name ()) !=
+ qnames_.end ())
+ return true;
+ }
+
+ return false;
+ }
+
+ private:
+ typedef std::set<String> StringSet;
+
+ StringSet unames_;
+ StringSet qnames_;
+ };
+
//
//
class Context: public CXX::Context
{
public:
- typedef BackendElements::Regex::Expression<Char> Regex;
- typedef BackendElements::Regex::Pattern<WideChar> WideRegexPat;
+ typedef cutl::re::regexsub Regex;
+ typedef cutl::re::wregex WideRegexPat;
+
+ typedef Tree::options options_type;
struct DirectCustomTypeMapInfo
{
@@ -103,21 +153,16 @@ namespace CXX
String base_sub;
};
- typedef
- Cult::Containers::Vector<RegexCustomTypeMapInfo>
- RegexCustomTypeMap;
-
- typedef
- Cult::Containers::Map<String, DirectCustomTypeMapInfo>
- DirectCustomTypeMap;
+ typedef std::vector<RegexCustomTypeMapInfo> RegexCustomTypeMap;
+ typedef std::map<String, DirectCustomTypeMapInfo> DirectCustomTypeMap;
public:
Context (std::wostream& o,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- CLI::Options const& ops,
+ options_type const& ops,
Counts const& counts_,
- Boolean generate_xml_schema,
+ bool generate_xml_schema,
StringLiteralMap const*,
Regex const* fwd_expr,
Regex const* hxx_expr,
@@ -139,7 +184,7 @@ namespace CXX
// populated with the custom type name or empty if the
// original name should be used.
//
- Boolean
+ bool
custom_type (SemanticGraph::Type const&, String& name) const;
// Returns true if this type has been renamed as part of the
@@ -147,7 +192,7 @@ namespace CXX
// name string is populated with the new name or empty if
// the type should not be generated at all.
//
- Boolean
+ bool
renamed_type (SemanticGraph::Type const&, String& name) const;
public:
@@ -155,21 +200,43 @@ namespace CXX
// line after 80 characters as well as "commentizing" the text by
// adding '* ' after each newline.
//
- Void
+ void
write_annotation (SemanticGraph::Annotation&);
//
//
public:
- Boolean
+ static bool
+ ordered_p (SemanticGraph::Type const& t)
+ {
+ return t.context ().count ("ordered") &&
+ t.context ().get<bool> ("ordered");
+ }
+
+ // Check if we are generating mixed support for this type. We only
+ // do it for ordered types.
+ //
+ static bool
+ mixed_p (SemanticGraph::Complex const& c)
+ {
+ return c.mixed_p () && ordered_p (c);
+ }
+
+ bool
polymorphic_p (SemanticGraph::Type&);
- Boolean
+ bool
anonymous_p (SemanticGraph::Type const& t)
{
return t.context ().count ("anonymous");
}
+ // Return true if this anonymous type is defined in an element
+ // that belongs to a substitution group.
+ //
+ bool
+ anonymous_substitutes_p (SemanticGraph::Type&);
+
// Escaped names.
//
public:
@@ -329,7 +396,7 @@ namespace CXX
// dom_document
//
- static Boolean
+ static bool
edom_document_p (SemanticGraph::Complex const& c)
{
return c.context ().count ("dom-document");
@@ -341,7 +408,7 @@ namespace CXX
return c.context ().get<String> ("dom-document");
}
- static Boolean
+ static bool
edom_document_member_p (SemanticGraph::Complex const& c)
{
return c.context ().count ("dom-document-member");
@@ -368,14 +435,14 @@ namespace CXX
}
public:
- Void
+ void
enter_ns_scope (String const& name)
{
ns_scope_stack.push_back (name);
update_ns_scope ();
}
- Void
+ void
leave_ns_scope ()
{
ns_scope_stack.pop_back ();
@@ -383,18 +450,18 @@ namespace CXX
}
private:
- Void
+ void
update_ns_scope ();
private:
// Write text that may contain characters that we will have
// to escape (indicated by the rogue flag).
//
- Void
- write_rogue_text (WideChar const* s, Size size, Boolean rogue);
+ void
+ write_rogue_text (wchar_t const* s, size_t size, bool rogue);
public:
- CLI::Options const& options;
+ options_type const& options;
Counts const& counts;
String& any_type;
String& any_simple_type;
@@ -417,11 +484,12 @@ namespace CXX
String& as_double_type;
String& as_decimal_type;
- Boolean& generate_xml_schema;
- Boolean& doxygen;
- Boolean polymorphic;
- Boolean polymorphic_all;
- Boolean detach;
+ bool& generate_xml_schema;
+ bool& doxygen;
+ bool polymorphic;
+ bool polymorphic_all;
+ unsigned long poly_plate;
+ bool detach;
Regex const* fwd_expr;
Regex const* hxx_expr;
@@ -454,16 +522,11 @@ namespace CXX
String as_double_type_;
String as_decimal_type_;
- Boolean generate_xml_schema_;
- Boolean doxygen_;
+ bool generate_xml_schema_;
+ bool doxygen_;
- typedef
- Cult::Containers::Deque<String>
- NamespaceStack;
-
- typedef
- Cult::Containers::Deque<String>
- ScopeStack;
+ typedef std::deque<String> NamespaceStack;
+ typedef std::deque<String> ScopeStack;
String ns_scope_;
@@ -501,86 +564,86 @@ namespace CXX
Traversal::Fundamental::Decimal
{
- IsFundamentalType (Boolean& r)
+ IsFundamentalType (bool& r)
: r_ (r)
{
}
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger&)
{
r_ = true;
@@ -588,7 +651,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean&)
{
r_ = true;
@@ -596,26 +659,26 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal&)
{
r_ = true;
}
private:
- Boolean& r_;
+ bool& r_;
};
// Check whether this is a string-based type.
@@ -630,19 +693,19 @@ namespace CXX
Traversal::Fundamental::NCName,
Traversal::Fundamental::Language
{
- IsStringBasedType (Boolean& r)
+ IsStringBasedType (bool& r)
: r_ (r)
{
*this >> inherits_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
inherits (c, inherits_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Union&)
{
// Current mapping of union is string-based.
@@ -652,50 +715,50 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName&)
{
r_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language&)
{
r_ = true;
}
private:
- Boolean& r_;
+ bool& r_;
Traversal::Inherits inherits_;
};
@@ -713,7 +776,7 @@ namespace CXX
inherits_ >> enum_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
inherits (c, inherits_);
@@ -727,7 +790,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (e_ == 0)
@@ -820,25 +883,25 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type&)
{
abort ();
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List& l)
{
os << fq_name (l);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Union& u)
{
os << fq_name (u);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
os << fq_name (c);
@@ -846,13 +909,13 @@ namespace CXX
// anyType & anySimpleType.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType& t)
{
os << fq_name (t);
@@ -860,79 +923,79 @@ namespace CXX
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
os << fq_name (t);
@@ -940,7 +1003,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
os << fq_name (t);
@@ -948,19 +1011,19 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
os << fq_name (t);
@@ -968,49 +1031,49 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
os << fq_name (t);
@@ -1019,7 +1082,7 @@ namespace CXX
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
os << fq_name (t);
@@ -1028,13 +1091,13 @@ namespace CXX
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
if (t.named_p ())
@@ -1054,7 +1117,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
if (t.named_p ())
@@ -1077,7 +1140,7 @@ namespace CXX
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
os << fq_name (t);
@@ -1085,13 +1148,13 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
os << fq_name (t);
@@ -1100,55 +1163,55 @@ namespace CXX
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
os << fq_name (t);
@@ -1156,13 +1219,13 @@ namespace CXX
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity& t)
{
os << fq_name (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities& t)
{
os << fq_name (t);
@@ -1200,7 +1263,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
fundamental_base (SemanticGraph::Type& t)
{
os << "::xsd::cxx::tree::fundamental_base< " <<
@@ -1210,79 +1273,79 @@ namespace CXX
// Integrals.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
fundamental_base (t);
@@ -1290,7 +1353,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
fundamental_base (t);
@@ -1298,13 +1361,13 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
fundamental_base (t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
os << "::xsd::cxx::tree::fundamental_base< " <<
@@ -1313,7 +1376,7 @@ namespace CXX
"::xsd::cxx::tree::schema_type::double_ >";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
os << "::xsd::cxx::tree::fundamental_base< " <<
@@ -1330,42 +1393,46 @@ namespace CXX
Traversal::Any,
Traversal::AnyAttribute
{
- IsSimpleType (Boolean& v)
+ IsSimpleType (bool& v)
: v_ (v)
{
*this >> names_ >> *this;
*this >> inherits_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
- names (c, names_);
+ if (c.mixed_p ())
+ v_ = false;
+
+ if (v_)
+ names (c, names_);
if (v_)
inherits (c, inherits_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Member&)
{
v_ = false;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&)
{
v_ = false;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute&)
{
v_ = false;
}
private:
- Boolean& v_;
+ bool& v_;
Traversal::Names names_;
Traversal::Inherits inherits_;
};
@@ -1383,29 +1450,29 @@ namespace CXX
{
// generate should initially be false.
//
- GenerateDefaultCtor (Context&, Boolean& generate, Boolean no_base);
+ GenerateDefaultCtor (Context&, bool& generate, bool no_base);
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Type&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Element&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&);
private:
- Boolean& generate_;
- Boolean no_base_;
+ bool& generate_;
+ bool no_base_;
private:
Traversal::Inherits inherits_;
@@ -1418,14 +1485,14 @@ namespace CXX
{
// generate should initially be false.
//
- GenerateFromBaseCtor (Context& c, Boolean& generate);
+ GenerateFromBaseCtor (Context& c, bool& generate);
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c);
private:
- Boolean& generate_;
- Boolean custom_;
+ bool& generate_;
+ bool custom_;
// Note that we are not interested in anyAttribute since it is always
// mapped to a sequence.
@@ -1437,26 +1504,26 @@ namespace CXX
Traversal::Any,
Context
{
- Traverser (Context& c, Boolean& generate, Boolean& custom);
+ Traverser (Context& c, bool& generate, bool& custom);
- virtual Void
+ virtual void
traverse (SemanticGraph::Type&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Element&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&);
private:
- Boolean& generate_;
- Boolean& custom_;
+ bool& generate_;
+ bool& custom_;
private:
Traversal::Inherits inherits_;
@@ -1477,26 +1544,44 @@ namespace CXX
// should initially be true.
//
HasComplexPolyNonOptArgs (Context& c,
- Boolean including_base,
- Boolean& complex,
- Boolean& poly,
- Boolean& clash);
+ bool including_base,
+ bool& complex,
+ bool& poly,
+ bool& clash);
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Element&);
private:
- Boolean& complex_;
- Boolean& poly_;
- Boolean& clash_;
+ bool& complex_;
+ bool& poly_;
+ bool& clash_;
Traversal::Inherits inherits_;
Traversal::Names names_;
};
+ // Contructor argument types.
+ //
+ struct CtorArgType
+ {
+ enum Value
+ {
+ type,
+ complex_auto_ptr,
+ poly_auto_ptr
+ };
+
+ CtorArgType (Value v = Value (0)) : v_ (v) {}
+ operator Value () const {return v_;}
+
+ private:
+ Value v_;
+ };
+
// Immediate non-optional member. Note that AnyAttribute is always
// mapped to a sequence.
//
@@ -1505,27 +1590,20 @@ namespace CXX
Traversal::Attribute,
Context
{
- enum ArgType
- {
- arg_type,
- arg_complex_auto_ptr,
- arg_poly_auto_ptr
- };
+ FromBaseCtorArg (Context& c, CtorArgType, bool arg);
- FromBaseCtorArg (Context& c, ArgType, Boolean arg);
-
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Element&);
private:
- ArgType arg_type_;
- Boolean arg_;
+ CtorArgType arg_type_;
+ bool arg_;
};
// List of all non-optional members and a simple base. Note that
@@ -1539,32 +1617,25 @@ namespace CXX
Traversal::Attribute,
Context
{
- enum ArgType
- {
- arg_type,
- arg_complex_auto_ptr,
- arg_poly_auto_ptr
- };
-
// The second version outputs the argument name and stores
// in in the base_arg string.
//
- CtorArgs (Context&, ArgType);
- CtorArgs (Context&, ArgType, String& base_arg);
+ CtorArgs (Context&, CtorArgType);
+ CtorArgs (Context&, CtorArgType, String& base_arg);
- virtual Void
+ virtual void
traverse (SemanticGraph::Type&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Element&);
private:
@@ -1572,10 +1643,10 @@ namespace CXX
comma ();
private:
- ArgType arg_type_;
+ CtorArgType arg_type_;
String base_;
String* base_arg_;
- Boolean first_;
+ bool first_;
private:
Traversal::Inherits inherits_;
@@ -1607,92 +1678,92 @@ namespace CXX
{
// generate should initially be false.
//
- GenerateWithoutBaseCtor (Boolean& generate)
+ GenerateWithoutBaseCtor (bool& generate)
: generate_ (generate)
{
*this >> inherits_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Union&)
{
// No default initialization.
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
Complex::inherits (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration&)
{
// No default initialization.
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary&)
{
generate_ = true;
}
private:
- Boolean& generate_;
+ bool& generate_;
Traversal::Inherits inherits_;
};
@@ -1706,22 +1777,15 @@ namespace CXX
Traversal::Attribute,
Context
{
- enum ArgType
- {
- arg_type,
- arg_complex_auto_ptr,
- arg_poly_auto_ptr
- };
-
- CtorArgsWithoutBase (Context& c, ArgType, Boolean arg, Boolean first);
+ CtorArgsWithoutBase (Context& c, CtorArgType, bool arg, bool first);
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Element&);
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute&);
private:
@@ -1729,9 +1793,9 @@ namespace CXX
comma ();
private:
- ArgType arg_type_;
- Boolean arg_;
- Boolean first_;
+ CtorArgType arg_type_;
+ bool arg_;
+ bool first_;
private:
Traversal::Inherits inherits_;
@@ -1747,10 +1811,10 @@ namespace CXX
{
}
- Boolean
+ bool
generate_p (SemanticGraph::Element&);
- Boolean
+ bool
doc_root_p (SemanticGraph::Element&);
private:
@@ -1765,26 +1829,26 @@ namespace CXX
CXX::Namespace::ScopeTracker
{
Namespace (Context&,
- UnsignedLong first = 1,
- UnsignedLong last = 0);
+ size_t first = 1,
+ size_t last = 0);
- virtual Void
+ virtual void
traverse (Type&);
protected:
- virtual Void
- enter (Type&, String const& name, Boolean last);
+ virtual void
+ enter (Type&, String const& name, bool last);
- virtual Void
+ virtual void
leave ();
protected:
Context& ctx_;
private:
- UnsignedLong first_;
- UnsignedLong last_;
- UnsignedLong count_;
+ size_t first_;
+ size_t last_;
+ size_t count_;
};
//
@@ -1796,8 +1860,8 @@ namespace CXX
{
}
- virtual Void
- enter (Type& ns, String const& name, Boolean last)
+ virtual void
+ enter (Type& ns, String const& name, bool last)
{
Namespace::enter (ns, name, last);
@@ -1823,7 +1887,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t);
};
@@ -1841,33 +1905,33 @@ namespace CXX
Includes (Context& c, Type type)
: ctx_ (c),
type_ (type),
- forward_ (c.options.value<CLI::generate_forward> ()),
+ forward_ (c.options.generate_forward ()),
namespace_ (c),
type_forward_ (c)
{
schema_ >> schema_names_ >> namespace_ >> names_ >> type_forward_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Imports& i)
{
traverse_ (i);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Includes& i)
{
traverse_ (i);
}
private:
- Void
+ void
traverse_ (SemanticGraph::Uses&);
private:
Context& ctx_;
Type type_;
- Boolean forward_;
+ bool forward_;
Traversal::Schema schema_;
Traversal::Names schema_names_;
@@ -1907,85 +1971,85 @@ namespace CXX
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
gen_include (t, "byte.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
gen_include (t, "unsigned-byte.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
gen_include (t, "short.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
gen_include (t, "unsigned-short.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
gen_include (t, "int.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
gen_include (t, "unsigned-int.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
if (!long_)
long_ = gen_include (t, "long.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
if (!unsigned_long_)
unsigned_long_ = gen_include (t, "unsigned-long.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
if (!long_)
long_ = gen_include (t, "long.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
if (!long_)
long_ = gen_include (t, "long.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
if (!unsigned_long_)
unsigned_long_ = gen_include (t, "unsigned-long.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
if (!unsigned_long_)
unsigned_long_ = gen_include (t, "unsigned-long.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
if (!long_)
@@ -1994,7 +2058,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
gen_include (t, "boolean.hxx");
@@ -2002,26 +2066,26 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
gen_include (t, "float.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
gen_include (t, "double.hxx");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
gen_include (t, "decimal.hxx");
}
private:
- Boolean
+ bool
gen_include (SemanticGraph::Type& t, String const& file)
{
String custom;
@@ -2046,8 +2110,8 @@ namespace CXX
private:
String prefix_;
- Boolean long_;
- Boolean unsigned_long_;
+ bool long_;
+ bool unsigned_long_;
};
}
}
diff --git a/xsd/xsd/cxx/tree/fundamental-header.hxx b/xsd/xsd/cxx/tree/fundamental-header.hxx
index 71cfbea..925d65e 100644
--- a/xsd/xsd/cxx/tree/fundamental-header.hxx
+++ b/xsd/xsd/cxx/tree/fundamental-header.hxx
@@ -1,13 +1,13 @@
// file : xsd/cxx/tree/fundamental-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_FUNDAMENTAL_HEADER_HXX
#define CXX_TREE_FUNDAMENTAL_HEADER_HXX
-#include <cult/containers/set.hxx>
-#include <cult/containers/vector.hxx>
+#include <set>
+#include <vector>
+#include <algorithm>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
@@ -80,7 +80,7 @@ namespace CXX
FundamentalNamespace (Context& c)
: DocumentedNamespace (c),
Context (c),
- export_ (c.options.value<CLI::export_xml_schema> () && type_exp)
+ export_ (c.options.export_xml_schema () && type_exp)
{
*this >> names_ >> *this;
@@ -88,13 +88,13 @@ namespace CXX
xs_ns_ = ns_name (xs_ns ());
}
- Void
+ void
gen_typedef (String const& name,
String const& type,
String const& arg1 = L"",
String const& arg2 = L"",
String const& arg3 = L"",
- Boolean export_type = true)
+ bool export_type = true)
{
os << "typedef " << type;
@@ -225,7 +225,7 @@ namespace CXX
// anyType and anySimpleType
//
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType& t)
{
os << "// anyType and anySimpleType." << endl
@@ -237,11 +237,11 @@ namespace CXX
type_ = built_in_type (t, "::xsd::cxx::tree::type");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType& t)
{
simple_type_ = built_in_type (
- t, L"::xsd::cxx::tree::simple_type< ", type_);
+ t, L"::xsd::cxx::tree::simple_type< " + char_type + L", ", type_);
if (doxygen)
os << "/**" << endl
@@ -259,7 +259,7 @@ namespace CXX
// Integrals.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
os << "// 8-bit" << endl
@@ -271,14 +271,14 @@ namespace CXX
built_in_type (t, "signed char");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
built_in_type (t, "unsigned char");
os << endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
os << "// 16-bit" << endl
@@ -290,14 +290,14 @@ namespace CXX
built_in_type (t, "short");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
built_in_type (t, "unsigned short");
os << endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
os << "// 32-bit" << endl
@@ -309,14 +309,14 @@ namespace CXX
built_in_type (t, "int");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
built_in_type (t, "unsigned int");
os << endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
os << "// 64-bit" << endl
@@ -328,14 +328,14 @@ namespace CXX
built_in_type (t, "long long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
built_in_type (t, "unsigned long long");
os << endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
os << "// Supposed to be arbitrary-length integral types." << endl
@@ -347,25 +347,25 @@ namespace CXX
built_in_type (t, "long long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
built_in_type (t, "long long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
built_in_type (t, "unsigned long long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
built_in_type (t, "unsigned long long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
built_in_type (t, "long long");
@@ -374,7 +374,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
os << "// Boolean." << endl
@@ -390,7 +390,7 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
os << "// Floating-point types." << endl
@@ -402,13 +402,13 @@ namespace CXX
built_in_type (t, "float");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
double_ = built_in_type (t, "double");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
decimal_ = built_in_type (t, "double");
@@ -418,7 +418,7 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
os << "// String types." << endl
@@ -431,7 +431,7 @@ namespace CXX
t, L"::xsd::cxx::tree::string< " + char_type + L", ", simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
norm_string_ = built_in_type (
@@ -440,21 +440,21 @@ namespace CXX
string_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
token_ = built_in_type (
t, L"::xsd::cxx::tree::token< " + char_type + L", ", norm_string_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
nmtoken_ = built_in_type (
t, L"::xsd::cxx::tree::nmtoken< " + char_type + L", ", token_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
built_in_type (
@@ -464,21 +464,21 @@ namespace CXX
nmtoken_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
name_ = built_in_type (
t, L"::xsd::cxx::tree::name< " + char_type + L", ", token_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
ncname_ = built_in_type (
t, L"::xsd::cxx::tree::ncname< " + char_type + L", ", name_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
built_in_type (
@@ -489,7 +489,7 @@ namespace CXX
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
os << "// ID/IDREF." << endl
@@ -502,14 +502,14 @@ namespace CXX
t, L"::xsd::cxx::tree::id< " + char_type + L", ", ncname_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
idref_ = built_in_type (
t, L"::xsd::cxx::tree::idref< " + char_type + L", ", ncname_, type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
built_in_type (
@@ -524,7 +524,7 @@ namespace CXX
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
os << "// URI." << endl
@@ -541,7 +541,7 @@ namespace CXX
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
os << "// Qualified name." << endl
@@ -562,7 +562,7 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
os << "// Binary." << endl
@@ -586,7 +586,7 @@ namespace CXX
simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
built_in_type (
@@ -600,7 +600,7 @@ namespace CXX
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
os << "// Date/time." << endl
@@ -622,7 +622,7 @@ namespace CXX
t, L"::xsd::cxx::tree::date< " + char_type + L", ", simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
built_in_type (
@@ -631,7 +631,7 @@ namespace CXX
simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
built_in_type (
@@ -640,21 +640,21 @@ namespace CXX
simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
built_in_type (
t, L"::xsd::cxx::tree::gday< " + char_type + L", ", simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
built_in_type (
t, L"::xsd::cxx::tree::gmonth< " + char_type + L", ", simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
built_in_type (
@@ -663,14 +663,14 @@ namespace CXX
simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
built_in_type (
t, L"::xsd::cxx::tree::gyear< " + char_type + L", ", simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
built_in_type (
@@ -679,7 +679,7 @@ namespace CXX
simple_type_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
built_in_type (
@@ -690,7 +690,7 @@ namespace CXX
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity& t)
{
os << "// Entity." << endl
@@ -703,7 +703,7 @@ namespace CXX
t, L"::xsd::cxx::tree::entity< " + char_type + L", ", ncname_);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities& t)
{
built_in_type (
@@ -715,16 +715,27 @@ namespace CXX
os << endl;
}
- virtual Void
+ virtual void
post (SemanticGraph::Namespace& n)
{
SemanticGraph::Context& c (xs_ns ().context());
- Boolean parsing (!options.value<CLI::suppress_parsing> ());
- Boolean serialization (options.value<CLI::generate_serialization> ());
- Boolean element_map (options.value<CLI::generate_element_map> ());
+ bool parsing (!options.suppress_parsing ());
+ bool serialization (options.generate_serialization ());
+ bool element_map (options.generate_element_map ());
- if (options.value<CLI::generate_element_type> ())
+ {
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Content order sequence entry." << endl
+ << " */" << endl;
+
+ gen_typedef (c.get<String> ("content-order"),
+ "::xsd::cxx::tree::content_order");
+ }
+
+ if (options.generate_element_type ())
{
if (doxygen)
os << "/**" << endl
@@ -838,7 +849,7 @@ namespace CXX
//@@ Can't change names of ostream/istream since they are
// templates.
//
- if (!options.value<CLI::generate_insertion> ().empty ())
+ if (!options.generate_insertion ().empty ())
{
if (doxygen)
os << "/**" << endl
@@ -852,7 +863,7 @@ namespace CXX
<< endl;
}
- if (!options.value<CLI::generate_extraction> ().empty ())
+ if (!options.generate_extraction ().empty ())
{
if (doxygen)
os << "/**" << endl
@@ -1050,7 +1061,7 @@ namespace CXX
L"::xsd::cxx::tree::no_prefix_mapping< " + char_type + L" >");
}
- if (options.value<CLI::generate_polymorphic> ())
+ if (options.generate_polymorphic ())
{
if (parsing || serialization)
{
@@ -1145,7 +1156,8 @@ namespace CXX
<< "{";
// @@ Disregarding current naming convention by using the
- // fixed name (no template typedef).
+ // fixed name (even in C++11, template alias is not yet
+ // widely supported).
//
if (doxygen)
os << "/**" << endl
@@ -1155,8 +1167,12 @@ namespace CXX
os << "// Automatic pointer for DOMDocument." << endl
<< "//" << endl;
- os << "using ::xsd::cxx::xml::dom::auto_ptr;"
- << endl;
+ if (std >= cxx_version::cxx11)
+ os << "using ::xsd::cxx::xml::dom::unique_ptr;";
+ else
+ os << "using ::xsd::cxx::xml::dom::auto_ptr;";
+
+ os << endl;
if (parsing)
{
@@ -1228,7 +1244,7 @@ namespace CXX
{
StringSet ns_set;
- for (StringList::ConstIterator i (exports_.begin ());
+ for (StringList::const_iterator i (exports_.begin ());
i != exports_.end (); ++i)
{
String const& e (*i);
@@ -1245,14 +1261,14 @@ namespace CXX
<< "namespace cxx"
<< "{";
- for (StringSet::ConstIterator i (ns_set.begin ());
+ for (StringSet::const_iterator i (ns_set.begin ());
i != ns_set.end (); ++i)
{
String const& ns (*i);
String prefix (L"::xsd::cxx::" + ns);
- Size n (1);
- for (Size b (0), e (ns.find (':')); ; n++)
+ size_t n (1);
+ for (size_t b (0), e (ns.find (':')); ; n++)
{
os << "namespace " << String (ns, b, e)
<< "{";
@@ -1264,7 +1280,7 @@ namespace CXX
e = ns.find (':', b);
}
- for (StringList::ConstIterator i (exports_.begin ());
+ for (StringList::const_iterator i (exports_.begin ());
i != exports_.end (); ++i)
{
String const& e (*i);
@@ -1289,10 +1305,10 @@ namespace CXX
}
private:
- typedef Cult::Containers::Set<String> StringSet;
- typedef Cult::Containers::Vector<String> StringList;
+ typedef std::set<String> StringSet;
+ typedef std::vector<String> StringList;
- Boolean export_;
+ bool export_;
StringList exports_;
StringSet exports_set_;
String xs_ns_;
diff --git a/xsd/xsd/cxx/tree/generator.cxx b/xsd/xsd/cxx/tree/generator.cxx
index fe5286a..7a413bd 100644
--- a/xsd/xsd/cxx/tree/generator.cxx
+++ b/xsd/xsd/cxx/tree/generator.cxx
@@ -1,8 +1,22 @@
// file : xsd/cxx/tree/generator.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <vector>
+#include <algorithm>
+#include <iostream>
+#include <fstream>
+
+#include <cutl/re.hxx>
+#include <cutl/shared-ptr.hxx>
+
+#include <cutl/compiler/code-stream.hxx>
+#include <cutl/compiler/cxx-indenter.hxx>
+#include <cutl/compiler/sloc-counter.hxx>
+
+#include <xsd-frontend/semantic-graph.hxx>
+#include <xsd-frontend/generators/dependencies.hxx>
+
#include <cxx/tree/generator.hxx>
#include <cxx/tree/elements.hxx>
@@ -10,6 +24,7 @@
#include <cxx/tree/counter.hxx>
#include <cxx/tree/validator.hxx>
#include <cxx/tree/name-processor.hxx>
+#include <cxx/tree/order-processor.hxx>
#include <cxx/tree/polymorphism-processor.hxx>
#include <cxx/tree/tree-forward.hxx>
@@ -30,45 +45,25 @@
#include <cxx/tree/stream-insertion-source.hxx>
#include <cxx/tree/stream-extraction-source.hxx>
-#include <xsd-frontend/semantic-graph.hxx>
-
-#include <backend-elements/regex.hxx>
-#include <backend-elements/indentation/cxx.hxx>
-#include <backend-elements/indentation/sloc.hxx>
-#include <backend-elements/indentation/clip.hxx>
-
-#include <cult/containers/set.hxx>
-#include <cult/containers/vector.hxx>
-
-#include <boost/filesystem/fstream.hpp>
-
-#include <iostream>
-
-#include <usage.hxx>
+#include <cxx/tree/options.hxx>
#include "../../../libxsd/xsd/cxx/version.hxx"
-using std::endl;
-using std::wcerr;
-
+using namespace std;
+using namespace cutl;
using namespace XSDFrontend::SemanticGraph;
//
//
-typedef
-boost::filesystem::wifstream
-WideInputFileStream;
-
-typedef
-boost::filesystem::wofstream
-WideOutputFileStream;
+typedef std::wifstream WideInputFileStream;
+typedef std::wofstream WideOutputFileStream;
namespace CXX
{
namespace
{
- Char const copyright_gpl[] =
- "// Copyright (C) 2005-2010 Code Synthesis Tools CC\n"
+ char const copyright_gpl[] =
+ "// Copyright (c) 2005-2014 Code Synthesis Tools CC\n"
"//\n"
"// This program was generated by CodeSynthesis XSD, an XML Schema to\n"
"// C++ data binding compiler.\n"
@@ -101,8 +96,8 @@ namespace CXX
"// in the accompanying FLOSSE file.\n"
"//\n\n";
- Char const copyright_proprietary[] =
- "// Copyright (C) 2005-2010 Code Synthesis Tools CC\n"
+ char const copyright_proprietary[] =
+ "// Copyright (c) 2005-2014 Code Synthesis Tools CC\n"
"//\n"
"// This program was generated by CodeSynthesis XSD, an XML Schema\n"
"// to C++ data binding compiler, in the Proprietary License mode.\n"
@@ -112,673 +107,23 @@ namespace CXX
"//\n\n";
}
- namespace Tree
- {
- namespace CLI
- {
- extern Key char_type = "char-type";
- extern Key char_encoding = "char-encoding";
- extern Key output_dir = "output-dir";
- extern Key generate_polymorphic = "generate-polymorphic";
- extern Key polymorphic_type = "polymorphic-type";
- extern Key polymorphic_type_all = "polymorphic-type-all";
- extern Key generate_serialization = "generate-serialization";
- extern Key generate_inline = "generate-inline";
- extern Key generate_ostream = "generate-ostream";
- extern Key generate_doxygen = "generate-doxygen";
- extern Key generate_comparison = "generate-comparison";
- extern Key generate_default_ctor = "generate-default-ctor";
- extern Key generate_from_base_ctor = "generate-from-base-ctor";
- extern Key generate_detach = "generate-detach";
- extern Key generate_wildcard = "generate-wildcard";
- extern Key generate_insertion = "generate-insertion";
- extern Key generate_extraction = "generate-extraction";
- extern Key generate_forward = "generate-forward";
- extern Key generate_xml_schema = "generate-xml-schema";
- extern Key extern_xml_schema = "extern-xml-schema";
- extern Key suppress_parsing = "suppress-parsing";
- extern Key generate_element_type = "generate-element-type";
- extern Key generate_element_map = "generate-element-map";
- extern Key generate_intellisense = "generate-intellisense";
- extern Key omit_default_attributes = "omit-default-attributes";
- extern Key namespace_map = "namespace-map";
- extern Key namespace_regex = "namespace-regex";
- extern Key namespace_regex_trace = "namespace-regex-trace";
- extern Key reserved_name = "reserved-name";
- extern Key type_naming = "type-naming";
- extern Key function_naming = "function-naming";
- extern Key type_regex = "type-regex";
- extern Key accessor_regex = "accessor-regex";
- extern Key one_accessor_regex = "one-accessor-regex";
- extern Key opt_accessor_regex = "opt-accessor-regex";
- extern Key seq_accessor_regex = "seq-accessor-regex";
- extern Key modifier_regex = "modifier-regex";
- extern Key one_modifier_regex = "one-modifier-regex";
- extern Key opt_modifier_regex = "opt-modifier-regex";
- extern Key seq_modifier_regex = "seq-modifier-regex";
- extern Key parser_regex = "parser-regex";
- extern Key serializer_regex = "serializer-regex";
- extern Key enumerator_regex = "enumerator-regex";
- extern Key element_type_regex = "element-type-regex";
- extern Key name_regex_trace = "name-regex-trace";
- extern Key include_with_brackets = "include-with-brackets";
- extern Key include_prefix = "include-prefix";
- extern Key include_regex = "include-regex";
- extern Key include_regex_trace = "include-regex-trace";
- extern Key guard_prefix = "guard-prefix";
- extern Key root_element_first = "root-element-first";
- extern Key root_element_last = "root-element-last";
- extern Key root_element_all = "root-element-all";
- extern Key root_element_none = "root-element-none";
- extern Key root_element = "root-element";
- extern Key custom_type = "custom-type";
- extern Key custom_type_regex = "custom-type-regex";
- extern Key hxx_suffix = "hxx-suffix";
- extern Key ixx_suffix = "ixx-suffix";
- extern Key cxx_suffix = "cxx-suffix";
- extern Key fwd_suffix = "fwd-suffix";
- extern Key hxx_regex = "hxx-regex";
- extern Key ixx_regex = "ixx-regex";
- extern Key cxx_regex = "cxx-regex";
- extern Key fwd_regex = "fwd-regex";
- extern Key hxx_prologue = "hxx-prologue";
- extern Key ixx_prologue = "ixx-prologue";
- extern Key cxx_prologue = "cxx-prologue";
- extern Key fwd_prologue = "fwd-prologue";
- extern Key prologue = "prologue";
- extern Key hxx_epilogue = "hxx-epilogue";
- extern Key ixx_epilogue = "ixx-epilogue";
- extern Key cxx_epilogue = "cxx-epilogue";
- extern Key fwd_epilogue = "fwd-epilogue";
- extern Key epilogue = "epilogue";
- extern Key hxx_prologue_file = "hxx-prologue-file";
- extern Key ixx_prologue_file = "ixx-prologue-file";
- extern Key cxx_prologue_file = "cxx-prologue-file";
- extern Key fwd_prologue_file = "fwd-prologue-file";
- extern Key prologue_file = "prologue-file";
- extern Key hxx_epilogue_file = "hxx-epilogue-file";
- extern Key ixx_epilogue_file = "ixx-epilogue-file";
- extern Key cxx_epilogue_file = "cxx-epilogue-file";
- extern Key fwd_epilogue_file = "fwd-epilogue-file";
- extern Key epilogue_file = "epilogue-file";
- extern Key parts = "parts";
- extern Key parts_suffix = "parts-suffix";
- extern Key export_symbol = "export-symbol";
- extern Key export_xml_schema = "export-xml-schema";
- extern Key export_maps = "export-maps";
- extern Key import_maps = "import-maps";
- extern Key show_anonymous = "show-anonymous";
- extern Key show_sloc = "show-sloc";
- extern Key proprietary_license = "proprietary-license";
- extern Key disable_multi_import = "disable-multi-import";
- }
- }
-
- Void Tree::Generator::
+ void Tree::Generator::
usage ()
{
- std::wostream& e (wcerr);
- ::CLI::Indent::Clip< ::CLI::OptionsUsage, WideChar> clip (e);
-
- e << "--char-type <type>" << endl
- << " Use <type> as the base character type. Valid\n"
- << " values are 'char' (default) and 'wchar_t'."
- << endl;
-
- e << "--char-encoding <enc>" << endl
- << " Specify the character encoding that should be used\n"
- << " in the object model. Valid values for the 'char'\n"
- << " character type are 'utf8' (default), 'iso8859-1',\n"
- << " 'lcp', and 'custom'. For the 'wchar_t' character\n"
- << " type the only valid value is 'auto'."
- << endl;
-
- e << "--output-dir <dir>" << endl
- << " Write generated files to <dir> instead of current\n"
- << " directory."
- << endl;
-
- e << "--generate-polymorphic" << endl
- << " Generate polymorphism-aware code. Specify this\n"
- << " option if you use substitution groups or xsi:type."
- << endl;
-
- e << "--polymorphic-type <type>" << endl
- << " Indicate that <type> is a root of a polymorphic\n"
- << " type hierarchy."
- << endl;
-
- e << "--polymorphic-type-all" << endl
- << " Indicate that all types should be treated as\n"
- << " polymorphic."
- << endl;
-
- e << "--generate-serialization" << endl
- << " Generate serialization functions. They convert an\n"
- << " in-memory representation back to XML."
- << endl;
-
- e << "--generate-inline" << endl
- << " Generate certain functions inline."
- << endl;
-
- e << "--generate-ostream" << endl
- << " Generate ostream insertion operators."
- << endl;
-
- e << "--generate-doxygen" << endl
- << " Generate documentation comments in the Doxygen\n"
- << " format."
- << endl;
-
- e << "--generate-comparison" << endl
- << " Generate comparison operators."
- << endl;
-
- e << "--generate-default-ctor" << endl
- << " Generate default constructors even for types that\n"
- << " have required members."
- << endl;
-
- e << "--generate-from-base-ctor" << endl
- << " Generate from-base constructors."
- << endl;
-
- e << "--generate-detach" << endl
- << " Generate detach functions for required members."
- << endl;
-
- e << "--generate-wildcard" << endl
- << " Generate accessors/modifiers as well as parsing\n"
- << " and serialization code for XML Schema wildcards."
- << endl;
-
- e << "--generate-insertion <os>" << endl
- << " Generate data representation stream insertion\n"
- << " operators for the <os> output stream type."
- << endl;
-
- e << "--generate-extraction <is>" << endl
- << " Generate data representation stream extraction\n"
- << " constructors for the <is> input stream type."
- << endl;
-
- e << "--generate-forward" << endl
- << " Generate forward declaration file."
- << endl;
-
- e << "--generate-xml-schema" << endl
- << " Generate a C++ header file as if the schema being\n"
- << " compiled defines the XML Schema namespace."
- << endl;
-
- e << "--extern-xml-schema <file>" << endl
- << " Generate code as if the XML Schema namespace was\n"
- << " defined in <file> and xsd:included in the schema\n"
- << " being compiled."
- << endl;
-
- e << "--suppress-parsing" << endl
- << " Suppress the generation of parsing functions."
- << endl;
-
- e << "--generate-element-type" << endl
- << " Generate types instead of parsing/serialization\n"
- << " functions for root elements."
- << endl;
-
- e << "--generate-element-map" << endl
- << " Generate a root element map that allows uniform\n"
- << " parsing/serialization of multiple root elements.\n"
- << endl;
-
- e << "--generate-intellisense" << endl
- << " Generate workarounds for IntelliSense bugs in\n"
- << " Visual Studio 2005 (8.0)."
- << endl;
-
- e << "--omit-default-attributes" << endl
- << " Omit attributes with default and fixed values\n"
- << " from serialized XML documents."
- << endl;
-
- e << "--namespace-map <xns>=<cns>" << endl
- << " Map XML Schema namespace <xns> to C++ namespace\n"
- << " <cns>. Repeat this option to specify mapping for\n"
- << " more than one XML Schema namespace."
- << endl;
-
- e << "--namespace-regex <regex>" << endl
- << " Add <regex> to the list of regular expressions\n"
- << " used to translate XML Schema namespace names to\n"
- << " C++ namespace names."
- << endl;
-
- e << "--namespace-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --namespace-regex option."
- << endl;
-
- e << "--reserved-name <name>" << endl
- << " Add <name> to the list of names that should not\n"
- << " be used as identifiers. The name can optionally\n"
- << " be followed by '=' and the replacement name that\n"
- << " should be used instead."
- << endl;
-
- e << "--type-naming <style>" << endl
- << " Specify the type naming convention that should be\n"
- << " used in the generated code. Valid styles are 'knr'\n"
- << " (default), 'ucc', and 'java'."
- << endl;
-
- e << "--function-naming <style>" << endl
- << " Specify the function naming convention that should\n"
- << " be used in the generated code. Valid styles are\n"
- << " 'knr' (default), 'lcc', and 'java'."
- << endl;
-
- e << "--type-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema type names to C++\n"
- << " type names."
- << endl;
-
- e << "--accessor-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements and\n"
- << " attributes to C++ accessor function names."
- << endl;
-
- e << "--one-accessor-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements\n"
- << " and attributes with cardinality one to C++\n"
- << " accessor function names."
- << endl;
-
- e << "--opt-accessor-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements\n"
- << " and attributes with cardinality optional to C++\n"
- << " accessor function names."
- << endl;
-
- e << "--seq-accessor-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements\n"
- << " and attributes with cardinality sequence to C++\n"
- << " accessor function names."
- << endl;
-
- e << "--modifier-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements and\n"
- << " attributes to C++ modifier function names."
- << endl;
-
- e << "--one-modifier-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements\n"
- << " and attributes with cardinality one to C++\n"
- << " modifier function names."
- << endl;
-
- e << "--opt-modifier-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements\n"
- << " and attributes with cardinality optional to C++\n"
- << " modifier function names."
- << endl;
-
- e << "--seq-modifier-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema names of elements\n"
- << " and attributes with cardinality sequence to C++\n"
- << " modifier function names."
- << endl;
-
- e << "--parser-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema element names to\n"
- << " C++ parsing function names."
- << endl;
-
- e << "--serializer-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema element names to\n"
- << " C++ serialization function names."
- << endl;
-
- e << "--enumerator-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema enumeration values\n"
- << " to C++ enumerator names."
- << endl;
-
- e << "--element-type-regex <expr>" << endl
- << " Add <expr> to the list of regular expressions\n"
- << " used to translate XML Schema element names to\n"
- << " C++ element type names."
- << endl;
-
- e << "--name-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the name transformation options."
- << endl;
-
- e << "--include-with-brackets" << endl
- << " Use angle brackets (<>) instead of quotes (\"\") in\n"
- << " generated #include directives."
- << endl;
-
- e << "--include-prefix <prefix>" << endl
- << " Add <prefix> to generated #include directive\n"
- << " paths."
- << endl;
-
- e << "--include-regex <regex>" << endl
- << " Add <regex> to the list of regular expressions\n"
- << " used to transform #include directive paths."
- << endl;
-
- e << "--include-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --include-regex option."
- << endl;
-
- e << "--guard-prefix <prefix>" << endl
- << " Add <prefix> to generated header inclusion guards."
- << endl;
-
- e << "--root-element-first" << endl
- << " Treat only the first global element as a document\n"
- << " root."
- << endl;
-
- e << "--root-element-last" << endl
- << " Treat only the last global element as a document\n"
- << " root."
- << endl;
-
- e << "--root-element-all" << endl
- << " Treat all global elements as document roots."
- << endl;
-
- e << "--root-element-none" << endl
- << " Don't treat any global elements as document roots."
- << endl;
-
- e << "--root-element <element>" << endl
- << " Treat only <element> as a document root. Repeat\n"
- << " this option to specify more than one root element."
- << endl;
-
- e << "--custom-type <map>" << endl
- << " Use a custom C++ type instead of the generated\n"
- << " class. The <map> argument is in the form\n"
- << " name[=type[/base]], where <name> is a type name as\n"
- << " defined in XML Schema, <type> is a C++ type name\n"
- << " that should be used instead, and optional <base>\n"
- << " is a C++ name that should be given to the C++\n"
- << " class generated from the XML Schema definition\n"
- << " which is normally used as a base for the custom\n"
- << " type."
- << endl;
-
- e << "--custom-type-regex <regex>" << endl
- << " Use custom C++ types instead of the generated\n"
- << " classes. The <regex> argument is in the form\n"
- << " /name/[type/[base/]], where <name> is a regex\n"
- << " pattern that will be matched against type names\n"
- << " as defined in XML Schema, <type> is a C++ type\n"
- << " name that should be used instead, and optional\n"
- << " <base> is a C++ name that should be given to\n"
- << " the C++ class generated from the XML Schema\n"
- << " definition."
- << endl;
-
- e << "--hxx-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '.hxx' to\n"
- << " construct the name of the header file."
- << endl;
-
- e << "--ixx-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '.ixx' to\n"
- << " construct the name of the inline file."
- << endl;
-
- e << "--cxx-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '.cxx' to\n"
- << " construct the name of the source file."
- << endl;
-
- e << "--fwd-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '-fwd.hxx'\n"
- << " to construct the name of the forward declaration\n"
- << " file."
- << endl;
-
- e << "--hxx-regex <regex>" << endl
- << " Use <regex> to construct the name of the header\n"
- << " file."
- << endl;
-
- e << "--ixx-regex <regex>" << endl
- << " Use <regex> to construct the name of the inline\n"
- << " file."
- << endl;
-
- e << "--cxx-regex <regex>" << endl
- << " Use <regex> to construct the name of the source\n"
- << " file."
- << endl;
-
- e << "--fwd-regex <regex>" << endl
- << " Use <regex> to construct the name of the forward\n"
- << " declaration file."
- << endl;
-
- // Prologues.
- //
- e << "--hxx-prologue <text>" << endl
- << " Insert <text> at the beginning of the header file."
- << endl;
-
- e << "--ixx-prologue <text>" << endl
- << " Insert <text> at the beginning of the inline file."
- << endl;
-
- e << "--cxx-prologue <text>" << endl
- << " Insert <text> at the beginning of the source file."
- << endl;
-
- e << "--fwd-prologue <text>" << endl
- << " Insert <text> at the beginning of the forward\n"
- << " declaration file."
- << endl;
-
- e << "--prologue <text>" << endl
- << " Insert <text> at the beginning of each generated\n"
- << " file for which there is no file-specific prologue."
- << endl;
-
-
- // Epilogues.
- //
- e << "--hxx-epilogue <text>" << endl
- << " Insert <text> at the end of the header file."
- << endl;
-
- e << "--ixx-epilogue <text>" << endl
- << " Insert <text> at the end of the inline file."
- << endl;
-
- e << "--cxx-epilogue <text>" << endl
- << " Insert <text> at the end of the source file."
- << endl;
-
- e << "--fwd-epilogue <text>" << endl
- << " Insert <text> at the end of the forward\n"
- << " declaration file."
- << endl;
-
- e << "--epilogue <text>" << endl
- << " Insert <text> at the end of each generated file\n"
- << " for which there is no file-specific epilogue."
- << endl;
-
-
- // Prologue files.
- //
- e << "--hxx-prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of the header file."
- << endl;
-
- e << "--ixx-prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of the inline file."
- << endl;
-
- e << "--cxx-prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of the source file."
- << endl;
-
- e << "--fwd-prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of the forward declaration file."
- << endl;
-
- e << "--prologue-file <file>" << endl
- << " Insert the content of the <file> at the beginning\n"
- << " of each generated file for which there is no file-\n"
- << " specific prologue file."
- << endl;
-
- // Epilogue files.
- //
- e << "--hxx-epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " the header file."
- << endl;
-
- e << "--ixx-epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " the inline file."
- << endl;
-
- e << "--cxx-epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " the source file."
- << endl;
-
- e << "--fwd-epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " the forward declaration file."
- << endl;
-
- e << "--epilogue-file <file>" << endl
- << " Insert the content of the <file> at the end of\n"
- << " each generated file for which there is no file-\n"
- << " specific epilogue file."
- << endl;
-
- // Misc.
- //
- e << "--parts <num>" << endl
- << " Split generated source code into <num> parts."
- << endl;
-
- e << "--parts-suffix <suffix>" << endl
- << " Use <suffix> instead of the default '-' to\n"
- << " separate the file name from the part number."
- << endl;
-
- e << "--custom-literals <file>" << endl
- << " Load custom XML string to C++ literal mappings\n"
- << " from <file>."
- << endl;
-
- e << "--export-symbol <symbol>" << endl
- << " Export symbol for Win32 DLL export/import control."
- << endl;
-
- e << "--export-xml-schema" << endl
- << " Export/import types in the XML Schema namespace."
- << endl;
-
- e << "--export-maps" << endl
- << " Export polymorphism support maps from Win32 DLL."
- << endl;
-
- e << "--import-maps" << endl
- << " Import polymorphism support maps from Win32 DLL."
- << endl;
-
- e << "--show-anonymous" << endl
- << " Show elements and attributes that are of anonymous\n"
- << " types."
- << endl;
-
- e << "--show-sloc" << endl
- << " Show the number of generated physical source lines\n"
- << " of code (SLOC)."
- << endl;
-
- e << "--sloc-limit <num>" << endl
- << " Check that the number of generated physical source\n"
- << " lines of code (SLOC) does not exceed <num>."
- << endl;
-
- e << "--options-file <file>" << endl
- << " Read additional options from <file>. Each option\n"
- << " should appear on a separate line optionally\n"
- << " followed by space and an argument."
- << endl;
-
- e << "--proprietary-license" << endl
- << " Indicate that the generated code is licensed under\n"
- << " a proprietary license instead of the GPL."
- << endl;
+ CXX::Tree::options::print_usage (wcout);
+ CXX::options::print_usage (wcout);
}
- Tree::CLI::OptionsSpec Tree::Generator::
- options_spec ()
- {
- CLI::OptionsSpec spec;
-
- spec.option<CLI::char_type> ().default_value ("char");
-
- spec.option<CLI::hxx_suffix> ().default_value (".hxx");
- spec.option<CLI::ixx_suffix> ().default_value (".ixx");
- spec.option<CLI::cxx_suffix> ().default_value (".cxx");
- spec.option<CLI::fwd_suffix> ().default_value ("-fwd.hxx");
-
- spec.option<CLI::type_naming> ().default_value ("knr");
- spec.option<CLI::function_naming> ().default_value ("knr");
-
- spec.option<CLI::parts> ().default_value (1);
- spec.option<CLI::parts_suffix> ().default_value ("-");
-
- return spec;
- }
-
-
namespace
{
- Void
+ void
open (WideInputFileStream& ifs, NarrowString const& path)
{
try
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- Path fs_path (path, boost::filesystem::native);
-#else
- Path fs_path (path.c_str());
-#endif
- ifs.open (fs_path, std::ios_base::in | std::ios_base::binary);
+ Path fs_path (path);
+ ifs.open (fs_path.string ().c_str (),
+ std::ios_base::in | std::ios_base::binary);
if (!ifs.is_open ())
{
@@ -797,7 +142,7 @@ namespace CXX
}
}
- Void
+ void
append (WideOutputFileStream& os,
NarrowString const& path,
WideInputFileStream& default_is)
@@ -817,16 +162,15 @@ namespace CXX
}
}
- Void
+ void
append (WideOutputFileStream& os,
- Cult::Containers::Vector<NarrowString> const& primary,
- Cult::Containers::Vector<NarrowString> const& def)
+ NarrowStrings const& primary,
+ NarrowStrings const& def)
{
- Cult::Containers::Vector<NarrowString> const& v (
- primary.empty () ? def : primary);
+ NarrowStrings const& v (primary.empty () ? def : primary);
- for (Containers::Vector<NarrowString>::ConstIterator
- i (v.begin ()), e (v.end ()); i != e; ++i)
+ for (NarrowStrings::const_iterator i (v.begin ()), e (v.end ());
+ i != e; ++i)
{
os << i->c_str () << endl;
}
@@ -834,34 +178,30 @@ namespace CXX
}
- UnsignedLong Tree::Generator::
- generate (Tree::CLI::Options const& ops,
+ size_t Tree::Generator::
+ generate (Tree::options const& ops,
Schema& schema,
Path const& file_path,
- Boolean fpt,
+ bool fpt,
StringLiteralMap const& string_literal_map,
const WarningSet& disabled_warnings,
FileList& file_list,
AutoUnlinks& unlinks)
{
- using std::ios_base;
- namespace Indentation = BackendElements::Indentation;
-
- typedef BackendElements::Regex::Expression<Char> Regex;
-
- using Cult::Containers::Vector;
+ using cutl::shared_ptr;
+ typedef cutl::re::regexsub Regex;
- typedef Vector<Path> Paths;
- typedef Vector<Evptr<WideOutputFileStream> > WideOutputFileStreams;
+ typedef vector<Path> Paths;
+ typedef vector<shared_ptr<WideOutputFileStream> > WideOutputFileStreams;
try
{
// Do option validation.
//
- if (ops.value<CLI::parts> () < 1)
+ if (ops.parts () < 1)
{
wcerr << "error: invalid value for option --parts: " <<
- ops.value<CLI::parts> () << endl;
+ ops.parts () << endl;
throw Failed ();
}
@@ -893,8 +233,20 @@ namespace CXX
throw Failed ();
}
+ bool gen_cxx (!ops.generate_dep_only ());
+
+ // Process ordered types.
+ //
+ if (gen_cxx)
+ {
+ OrderProcessor proc;
+ if (!proc.process (ops, schema, file_path))
+ throw Failed ();
+ }
+
// Process names.
//
+ if (gen_cxx)
{
NameProcessor proc;
if (!proc.process (ops, schema, file_path, string_literal_map))
@@ -903,8 +255,9 @@ namespace CXX
// Process polymorphic types.
//
- if (ops.value<CLI::generate_polymorphic> () &&
- !ops.value<CLI::polymorphic_type_all> ())
+ if (gen_cxx &&
+ ops.generate_polymorphic () &&
+ !ops.polymorphic_type_all ())
{
PolymorphismProcessor proc;
if (!proc.process (ops, schema, file_path, disabled_warnings))
@@ -913,11 +266,9 @@ namespace CXX
// Parts.
//
- UnsignedLong parts (ops.value<CLI::parts> ());
- UnsignedLong units (
- counts.global_types + counts.generated_global_elements);
-
- UnsignedLong units_per_part (units / parts);
+ size_t parts (ops.parts ());
+ size_t units (counts.global_types + counts.generated_global_elements);
+ size_t units_per_part (units / parts);
if (parts != 1 && units_per_part < 1)
{
@@ -925,14 +276,14 @@ namespace CXX
throw Failed ();
}
- UnsignedLong complexity_per_part (counts.complexity_total / parts);
+ size_t complexity_per_part (counts.complexity_total / parts);
- NarrowString parts_suffix (ops.value<CLI::parts_suffix> ());
+ NarrowString parts_suffix (ops.parts_suffix ());
//
//
- Boolean generate_xml_schema (ops.value<CLI::generate_xml_schema> ());
+ bool generate_xml_schema (ops.generate_xml_schema ());
// We could be compiling several schemas at once in which case
// handling of the --generate-xml-schema option gets tricky: we
@@ -941,58 +292,68 @@ namespace CXX
//
if (generate_xml_schema)
{
- if (NarrowString name = ops.value<CLI::extern_xml_schema> ())
+ if (NarrowString name = ops.extern_xml_schema ())
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- if (file_path.native_file_string () != name)
-#else
if (file_path.string () != name)
-#endif
generate_xml_schema = false;
}
}
- Boolean inline_ (ops.value<CLI::generate_inline> () &&
- !generate_xml_schema);
+ bool header (true);
+ bool inline_ (ops.generate_inline () && !generate_xml_schema);
+ bool forward (ops.generate_forward () && !generate_xml_schema);
+ bool source (!generate_xml_schema);
+ bool gen_dep ((ops.generate_dep () || ops.generate_dep_only ()) &&
+ !generate_xml_schema);
- Boolean forward (ops.value<CLI::generate_forward> () &&
- !generate_xml_schema);
+ if (ops.generate_dep_only () && generate_xml_schema)
+ {
+ wcerr << "error: no dependency information can be generated for "
+ "XML Schema header" << endl;
+ throw Failed ();
+ }
- Boolean source (!generate_xml_schema);
+ if (gen_dep && fpt)
+ {
+ wcerr << "error: dependency generation not support in the " <<
+ "file-per-type mode" << endl;
+ throw Failed ();
+ }
// Generate code.
//
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- NarrowString name (file_path.leaf ());
-#else
- NarrowString name (file_path.filename ().string());
-#endif
-
- NarrowString hxx_suffix (ops.value <CLI::hxx_suffix> ());
- NarrowString ixx_suffix (ops.value <CLI::ixx_suffix> ());
- NarrowString cxx_suffix (ops.value <CLI::cxx_suffix> ());
- NarrowString fwd_suffix (ops.value <CLI::fwd_suffix> ());
-
- Regex hxx_expr (ops.value <CLI::hxx_regex> ().empty ()
+ NarrowString name (file_path.leaf ().string ());
+
+ NarrowString hxx_suffix (ops.hxx_suffix ());
+ NarrowString ixx_suffix (ops.ixx_suffix ());
+ NarrowString cxx_suffix (ops.cxx_suffix ());
+ NarrowString fwd_suffix (ops.fwd_suffix ());
+ NarrowString dep_suffix (ops.dep_suffix ());
+
+ Regex hxx_expr (ops.hxx_regex ().empty ()
? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + hxx_suffix + "#"
- : ops.value <CLI::hxx_regex> ());
+ : ops.hxx_regex ());
- Regex ixx_expr (ops.value <CLI::ixx_regex> ().empty ()
+ Regex ixx_expr (ops.ixx_regex ().empty ()
? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + ixx_suffix + "#"
- : ops.value <CLI::ixx_regex> ());
+ : ops.ixx_regex ());
- Regex cxx_expr (ops.value <CLI::cxx_regex> ().empty ()
+ Regex cxx_expr (ops.cxx_regex ().empty ()
? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + cxx_suffix + "#"
- : ops.value <CLI::cxx_regex> ());
+ : ops.cxx_regex ());
- Regex fwd_expr (ops.value <CLI::fwd_regex> ().empty ()
+ Regex fwd_expr (ops.fwd_regex ().empty ()
? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + fwd_suffix + "#"
- : ops.value <CLI::fwd_regex> ());
+ : ops.fwd_regex ());
+
+ Regex dep_expr (ops.dep_regex ().empty ()
+ ? "#^(.+?)(\\.[^./\\\\]+)?$#$1" + dep_suffix + "#"
+ : ops.dep_regex ());
- if (!hxx_expr.match (name))
+ if (header && !hxx_expr.match (name))
{
wcerr << "error: header expression '" <<
- hxx_expr.pattern () << "' does not match '" <<
+ hxx_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -1000,7 +361,7 @@ namespace CXX
if (inline_ && !ixx_expr.match (name))
{
wcerr << "error: inline expression '" <<
- ixx_expr.pattern () << "' does not match '" <<
+ ixx_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -1008,7 +369,7 @@ namespace CXX
if (source && parts == 1 && !cxx_expr.match (name))
{
wcerr << "error: source expression '" <<
- cxx_expr.pattern () << "' does not match '" <<
+ cxx_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
@@ -1016,31 +377,35 @@ namespace CXX
if (forward && !fwd_expr.match (name))
{
wcerr << "error: forward expression '" <<
- fwd_expr.pattern () << "' does not match '" <<
+ fwd_expr.regex ().str ().c_str () << "' does not match '" <<
name.c_str () << "'" << endl;
throw Failed ();
}
- NarrowString hxx_name (hxx_expr.merge (name));
- NarrowString ixx_name (inline_ ? ixx_expr.merge (name) : NarrowString ());
- NarrowString fwd_name (forward ? fwd_expr.merge (name) : NarrowString ());
-
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- Path hxx_path (hxx_name, boost::filesystem::native);
- Path ixx_path (ixx_name, boost::filesystem::native);
- Path fwd_path (fwd_name, boost::filesystem::native);
-#else
- Path hxx_path (hxx_name.c_str());
- Path ixx_path (ixx_name.c_str());
- Path fwd_path (fwd_name.c_str());
-#endif
+ if (gen_dep && !dep_expr.match (name))
+ {
+ wcerr << "error: dependency expression '" <<
+ dep_expr.regex ().str ().c_str () << "' does not match '" <<
+ name.c_str () << "'" << endl;
+ throw Failed ();
+ }
+
+ NarrowString hxx_name (header ? hxx_expr.replace (name) : NarrowString ());
+ NarrowString ixx_name (inline_ ? ixx_expr.replace (name) : NarrowString ());
+ NarrowString fwd_name (forward ? fwd_expr.replace (name) : NarrowString ());
+ NarrowString dep_name (gen_dep ? dep_expr.replace (name) : NarrowString ());
+
+ Path hxx_path (hxx_name);
+ Path ixx_path (ixx_name);
+ Path fwd_path (fwd_name);
+ Path dep_path (dep_name);
Paths cxx_paths;
if (source)
{
if (parts > 1)
{
- for (UnsignedLong i (0); i < parts; ++i)
+ for (size_t i (0); i < parts; ++i)
{
std::ostringstream os;
os << i;
@@ -1048,44 +413,30 @@ namespace CXX
Regex expr (
"#^(.+?)(\\.[^./\\\\]+)?$#$1" + parts_suffix + os.str () + "$2#");
- NarrowString part_name (expr.merge (name));
+ NarrowString part_name (expr.replace (name));
if (!cxx_expr.match (part_name))
{
wcerr << "error: source expression '" <<
- cxx_expr.pattern () << "' does not match '" <<
+ cxx_expr.regex ().str ().c_str () << "' does not match '" <<
part_name.c_str () << "'" << endl;
throw Failed ();
}
- cxx_paths.push_back (
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- Path (cxx_expr.merge (part_name), boost::filesystem::native));
-#else
- Path (cxx_expr.merge (part_name).c_str()));
-#endif
+ cxx_paths.push_back (Path (cxx_expr.replace (part_name)));
}
}
else
- cxx_paths.push_back (
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- Path (cxx_expr.merge (name), boost::filesystem::native));
-#else
- Path (cxx_expr.merge (name).c_str()));
-#endif
+ cxx_paths.push_back (Path (cxx_expr.replace (name)));
}
Path out_dir;
- if (NarrowString dir = ops.value<CLI::output_dir> ())
+ if (NarrowString dir = ops.output_dir ())
{
try
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- out_dir = Path (dir, boost::filesystem::native);
-#else
- out_dir = Path (dir.c_str());
-#endif
+ out_dir = Path (dir);
}
catch (InvalidPath const&)
{
@@ -1100,7 +451,7 @@ namespace CXX
// unless the user added the directory so that we propagate this
// to the output files.
//
- Path fpt_dir (file_path.branch_path ());
+ Path fpt_dir (file_path.directory ());
if (!fpt_dir.empty ())
out_dir /= fpt_dir;
@@ -1111,25 +462,42 @@ namespace CXX
hxx_path = out_dir / hxx_path;
ixx_path = out_dir / ixx_path;
fwd_path = out_dir / fwd_path;
+ dep_path = out_dir / dep_path;
- for (Paths::Iterator i (cxx_paths.begin ());
+ for (Paths::iterator i (cxx_paths.begin ());
i != cxx_paths.end (); ++i)
*i = out_dir / *i;
}
//
//
- WideOutputFileStream hxx (hxx_path, ios_base::out);
+ WideOutputFileStream hxx;
WideOutputFileStream ixx;
WideOutputFileStream fwd;
+ WideOutputFileStream dep;
WideOutputFileStreams cxx;
+ // DEP
+ //
+ if (gen_dep)
+ {
+ dep.open (dep_path.string ().c_str (), ios_base::out);
+
+ if (!dep.is_open ())
+ {
+ wcerr << dep_path << ": error: unable to open in write mode" << endl;
+ throw Failed ();
+ }
+
+ unlinks.add (dep_path);
+ file_list.push_back (dep_path.string ());
+ }
// FWD
//
- if (forward)
+ if (gen_cxx && forward)
{
- fwd.open (fwd_path, ios_base::out);
+ fwd.open (fwd_path.string ().c_str (), ios_base::out);
if (!fwd.is_open ())
{
@@ -1138,35 +506,30 @@ namespace CXX
}
unlinks.add (fwd_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (fwd_path.native_file_string ());
-#else
file_list.push_back (fwd_path.string ());
-#endif
}
-
// HXX
//
- if (!hxx.is_open ())
+ if (gen_cxx && header)
{
- wcerr << hxx_path << ": error: unable to open in write mode" << endl;
- throw Failed ();
- }
+ hxx.open (hxx_path.string ().c_str (), ios_base::out);
- unlinks.add (hxx_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (hxx_path.native_file_string ());
-#else
- file_list.push_back (hxx_path.string ());
-#endif
+ if (!hxx.is_open ())
+ {
+ wcerr << hxx_path << ": error: unable to open in write mode" << endl;
+ throw Failed ();
+ }
+ unlinks.add (hxx_path);
+ file_list.push_back (hxx_path.string ());
+ }
// IXX
//
- if (inline_)
+ if (gen_cxx && inline_)
{
- ixx.open (ixx_path, ios_base::out);
+ ixx.open (ixx_path.string ().c_str (), ios_base::out);
if (!ixx.is_open ())
{
@@ -1175,23 +538,19 @@ namespace CXX
}
unlinks.add (ixx_path);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (ixx_path.native_file_string ());
-#else
file_list.push_back (ixx_path.string ());
-#endif
}
-
// CXX
//
- if (source)
+ if (gen_cxx && source)
{
- for (Paths::Iterator i (cxx_paths.begin ());
+ for (Paths::iterator i (cxx_paths.begin ());
i != cxx_paths.end (); ++i)
{
- Evptr<WideOutputFileStream> s (
- new WideOutputFileStream (*i, ios_base::out));
+ shared_ptr<WideOutputFileStream> s (
+ new (shared) WideOutputFileStream (
+ i->string ().c_str (), ios_base::out));
if (!s->is_open ())
{
@@ -1200,29 +559,23 @@ namespace CXX
}
unlinks.add (*i);
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- file_list.push_back (i->native_file_string ());
-#else
file_list.push_back (i->string ());
-#endif
cxx.push_back (s);
}
}
-
// Print copyright and license.
//
- Char const* copyright (
- ops.value<CLI::proprietary_license> ()
- ? copyright_proprietary
- : copyright_gpl);
+ char const* copyright (
+ ops.proprietary_license () ? copyright_proprietary : copyright_gpl);
- if (forward)
- fwd << copyright;
+ if (gen_cxx && header)
+ hxx << copyright;
- hxx << copyright;
+ if (gen_cxx && forward)
+ fwd << copyright;
- if (ops.value<CLI::generate_doxygen> ())
+ if (ops.generate_doxygen ())
{
// Use native path format.
//
@@ -1234,12 +587,12 @@ namespace CXX
}
- if (inline_)
+ if (gen_cxx && inline_)
ixx << copyright;
- if (source)
+ if (gen_cxx && source)
{
- for (WideOutputFileStreams::Iterator i (cxx.begin ());
+ for (WideOutputFileStreams::iterator i (cxx.begin ());
i != cxx.end (); ++i)
**i << copyright;
}
@@ -1249,7 +602,7 @@ namespace CXX
//
WideInputFileStream prologue;
{
- NarrowString name (ops.value<CLI::prologue_file> ());
+ NarrowString name (ops.prologue_file ());
if (name)
open (prologue, name);
@@ -1259,7 +612,7 @@ namespace CXX
//
WideInputFileStream epilogue;
{
- NarrowString name (ops.value<CLI::epilogue_file> ());
+ NarrowString name (ops.epilogue_file ());
if (name)
open (epilogue, name);
@@ -1267,27 +620,83 @@ namespace CXX
// SLOC counter.
//
- UnsignedLong sloc (0);
- Boolean show_sloc (ops.value<CLI::show_sloc> ());
+ size_t sloc_total (0);
+ bool show_sloc (ops.show_sloc ());
+
+ typedef
+ compiler::ostream_filter<compiler::cxx_indenter, wchar_t>
+ ind_filter;
+
+ typedef
+ compiler::ostream_filter<compiler::sloc_counter, wchar_t>
+ sloc_filter;
//
//
Regex guard_expr ("/([a-z])([A-Z])/$1_$2/"); // Split words.
- NarrowString guard_prefix (ops.value<CLI::guard_prefix> ());
+ NarrowString guard_prefix (ops.guard_prefix ());
if (!guard_prefix)
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- guard_prefix = file_path.branch_path ().native_directory_string ();
-#else
- guard_prefix = file_path.branch_path ().string ();
-#endif
+ guard_prefix = file_path.directory ().string ();
if (guard_prefix)
guard_prefix += '_';
+ // DEP
+ //
+ if (gen_dep)
+ {
+ NarrowString target;
+ NarrowStrings const& ts (ops.dep_target ());
+
+ if (!ts.empty ())
+ {
+ for (NarrowStrings::const_iterator i (ts.begin ());
+ i != ts.end (); ++i)
+ target += (target.empty () ? "" : " \\\n") + *i;
+ }
+ else
+ {
+ target = hxx_path.string ();
+
+ if (forward)
+ target += " \\\n" + fwd_path.string ();
+
+ if (inline_)
+ target += " \\\n" + ixx_path.string ();
+
+ for (Paths::iterator i (cxx_paths.begin ());
+ i != cxx_paths.end (); ++i)
+ target += " \\\n" + i->string ();
+
+ target += " \\\n" + dep_path.string ();
+ }
+
+ dep << target.c_str () << ':';
+
+ XSDFrontend::Generators::Dependencies gen;
+ Paths prq (gen.generate (schema, file_path));
+
+ for (Paths::iterator i (prq.begin ()); i != prq.end (); ++i)
+ dep << " \\" << endl
+ << " " << *i;
+
+ dep << endl;
+
+ // If requested, generate phony rules for included/imported schemas
+ // but not the main file which is the first in the list.
+ //
+ if (ops.dep_phony () && prq.size () > 1)
+ {
+ for (Paths::iterator i (prq.begin () + 1); i != prq.end (); ++i)
+ dep << endl
+ << *i << ':' << endl;
+ }
+ }
+
// FWD
//
- if (forward)
+ if (gen_cxx && forward)
{
Context ctx (fwd,
schema,
@@ -1300,11 +709,11 @@ namespace CXX
&hxx_expr,
&ixx_expr);
- Indentation::Clip<Indentation::SLOC, WideChar> fwd_sloc (fwd);
+ sloc_filter sloc (fwd);
// Guard
//
- String guard (guard_expr.merge (guard_prefix + fwd_name));
+ String guard (guard_expr.replace (guard_prefix + fwd_name));
guard = ctx.escape (guard); // make a c++ id
std::transform (guard.begin (), guard.end(), guard.begin (), upcase);
@@ -1312,15 +721,46 @@ namespace CXX
<< "#define " << guard << endl
<< endl;
+ if (ctx.std >= cxx_version::cxx11)
+ {
+ fwd << "#ifndef XSD_CXX11" << endl
+ << "#define XSD_CXX11" << endl
+ << "#endif" << endl
+ << endl;
+ }
+
+ if (ctx.char_type == L"char")
+ {
+ fwd << "#ifndef XSD_USE_CHAR" << endl
+ << "#define XSD_USE_CHAR" << endl
+ << "#endif" << endl
+ << endl;
+
+ fwd << "#ifndef XSD_CXX_TREE_USE_CHAR" << endl
+ << "#define XSD_CXX_TREE_USE_CHAR" << endl
+ << "#endif" << endl
+ << endl;
+ }
+ else if (ctx.char_type == L"wchar_t")
+ {
+ fwd << "#ifndef XSD_USE_WCHAR" << endl
+ << "#define XSD_USE_WCHAR" << endl
+ << "#endif" << endl
+ << endl;
+
+ fwd << "#ifndef XSD_CXX_TREE_USE_WCHAR" << endl
+ << "#define XSD_CXX_TREE_USE_WCHAR" << endl
+ << "#endif" << endl
+ << endl;
+ }
+
// Copy prologue.
//
fwd << "// Begin prologue." << endl
<< "//" << endl;
- append (fwd,
- ops.value<CLI::fwd_prologue> (),
- ops.value<CLI::prologue> ());
- append (fwd, ops.value<CLI::fwd_prologue_file> (), prologue);
+ append (fwd, ops.fwd_prologue (), ops.prologue ());
+ append (fwd, ops.fwd_prologue_file (), prologue);
fwd << "//" << endl
<< "// End prologue." << endl
@@ -1333,59 +773,28 @@ namespace CXX
<< "#if (XSD_INT_VERSION != " << XSD_INT_VERSION << "L)" << endl
<< "#error XSD runtime version mismatch" << endl
<< "#endif" << endl
-
<< endl;
- {
- fwd << "#include <xsd/cxx/pre.hxx>" << endl
- << endl;
-
- if (ctx.char_type == L"char")
- {
- fwd << "#ifndef XSD_USE_CHAR" << endl
- << "#define XSD_USE_CHAR" << endl
- << "#endif" << endl
- << endl;
-
- fwd << "#ifndef XSD_CXX_TREE_USE_CHAR" << endl
- << "#define XSD_CXX_TREE_USE_CHAR" << endl
- << "#endif" << endl
- << endl;
- }
- else if (ctx.char_type == L"wchar_t")
- {
- fwd << "#ifndef XSD_USE_WCHAR" << endl
- << "#define XSD_USE_WCHAR" << endl
- << "#endif" << endl
- << endl;
-
- fwd << "#ifndef XSD_CXX_TREE_USE_WCHAR" << endl
- << "#define XSD_CXX_TREE_USE_WCHAR" << endl
- << "#endif" << endl
- << endl;
- }
-
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> fwd_clip (fwd);
+ fwd << "#include <xsd/cxx/pre.hxx>" << endl
+ << endl;
- // Generate.
- //
+ // Generate.
+ //
+ {
+ ind_filter ind (fwd); // We don't want to indent prologues/epilogues.
generate_forward (ctx);
-
- fwd << "#include <xsd/cxx/post.hxx>" << endl
- << endl;
}
+ fwd << "#include <xsd/cxx/post.hxx>" << endl
+ << endl;
+
// Copy epilogue.
//
fwd << "// Begin epilogue." << endl
<< "//" << endl;
- append (fwd, ops.value<CLI::fwd_epilogue_file> (), epilogue);
- append (fwd,
- ops.value<CLI::fwd_epilogue> (),
- ops.value<CLI::epilogue> ());
+ append (fwd, ops.fwd_epilogue_file (), epilogue);
+ append (fwd, ops.fwd_epilogue (), ops.epilogue ());
fwd << "//" << endl
<< "// End epilogue." << endl
@@ -1394,16 +803,14 @@ namespace CXX
fwd << "#endif // " << guard << endl;
if (show_sloc)
- {
- wcerr << fwd_path << ": "
- << fwd_sloc.buffer ().count () << endl;
+ wcerr << fwd_path << ": " << sloc.stream ().count () << endl;
- sloc += fwd_sloc.buffer ().count ();
- }
+ sloc_total += sloc.stream ().count ();
}
// HXX
//
+ if (gen_cxx && header)
{
Context ctx (hxx,
schema,
@@ -1416,11 +823,11 @@ namespace CXX
&hxx_expr,
&ixx_expr);
- Indentation::Clip<Indentation::SLOC, WideChar> hxx_sloc (hxx);
+ sloc_filter sloc (hxx);
// Guard
//
- String guard (guard_expr.merge (guard_prefix + hxx_name));
+ String guard (guard_expr.replace (guard_prefix + hxx_name));
guard = ctx.escape (guard); // make a c++ id
std::transform (guard.begin (), guard.end(), guard.begin (), upcase);
@@ -1428,14 +835,57 @@ namespace CXX
<< "#define " << guard << endl
<< endl;
+ if (!forward)
+ {
+ if (ctx.std >= cxx_version::cxx11)
+ {
+ hxx << "#ifndef XSD_CXX11" << endl
+ << "#define XSD_CXX11" << endl
+ << "#endif" << endl
+ << endl;
+ }
+
+ if (ctx.char_type == L"char")
+ {
+ hxx << "#ifndef XSD_USE_CHAR" << endl
+ << "#define XSD_USE_CHAR" << endl
+ << "#endif" << endl
+ << endl;
+
+ hxx << "#ifndef XSD_CXX_TREE_USE_CHAR" << endl
+ << "#define XSD_CXX_TREE_USE_CHAR" << endl
+ << "#endif" << endl
+ << endl;
+ }
+ else if (ctx.char_type == L"wchar_t")
+ {
+ hxx << "#ifndef XSD_USE_WCHAR" << endl
+ << "#define XSD_USE_WCHAR" << endl
+ << "#endif" << endl
+ << endl;
+
+ hxx << "#ifndef XSD_CXX_TREE_USE_WCHAR" << endl
+ << "#define XSD_CXX_TREE_USE_WCHAR" << endl
+ << "#endif" << endl
+ << endl;
+ }
+ }
+ else if (!generate_xml_schema)
+ {
+ // Generate it before the prologue so that we get the above
+ // defines.
+ //
+ hxx << "#include " << ctx.process_include_path (fwd_name)
+ << endl << endl;
+ }
+
// Copy prologue.
//
hxx << "// Begin prologue." << endl
<< "//" << endl;
- append (
- hxx, ops.value<CLI::hxx_prologue> (), ops.value<CLI::prologue> ());
- append (hxx, ops.value<CLI::hxx_prologue_file> (), prologue);
+ append (hxx, ops.hxx_prologue (), ops.prologue ());
+ append (hxx, ops.hxx_prologue_file (), prologue);
hxx << "//" << endl
<< "// End prologue." << endl
@@ -1450,95 +900,53 @@ namespace CXX
<< "#endif" << endl
<< endl;
- {
- hxx << "#include <xsd/cxx/pre.hxx>" << endl
- << endl;
-
- // Generate character selection defines.
- //
- if (!forward)
- {
- if (ctx.char_type == L"char")
- {
- hxx << "#ifndef XSD_USE_CHAR" << endl
- << "#define XSD_USE_CHAR" << endl
- << "#endif" << endl
- << endl;
-
- hxx << "#ifndef XSD_CXX_TREE_USE_CHAR" << endl
- << "#define XSD_CXX_TREE_USE_CHAR" << endl
- << "#endif" << endl
- << endl;
- }
- else if (ctx.char_type == L"wchar_t")
- {
- hxx << "#ifndef XSD_USE_WCHAR" << endl
- << "#define XSD_USE_WCHAR" << endl
- << "#endif" << endl
- << endl;
-
- hxx << "#ifndef XSD_CXX_TREE_USE_WCHAR" << endl
- << "#define XSD_CXX_TREE_USE_WCHAR" << endl
- << "#endif" << endl
- << endl;
- }
- }
-
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> hxx_clip (hxx);
+ hxx << "#include <xsd/cxx/pre.hxx>" << endl
+ << endl;
+ // Generate.
+ //
+ {
+ ind_filter ind (hxx); // We don't want to indent prologues/epilogues.
- // Generate.
- //
- if (!generate_xml_schema)
- {
- if (forward)
- hxx << "#include " << ctx.process_include_path (fwd_name)
- << endl << endl;
- else
- generate_forward (ctx);
- }
+ if (!generate_xml_schema && !forward)
+ generate_forward (ctx);
generate_tree_header (ctx);
if (!generate_xml_schema)
{
-
- if (ops.value<CLI::generate_ostream> ())
+ if (ops.generate_ostream ())
generate_stream_header (ctx);
- if (!ops.value<CLI::generate_element_type> () &&
- !ops.value<CLI::suppress_parsing> ())
+ if (!ops.generate_element_type () && !ops.suppress_parsing ())
generate_parser_header (ctx);
- if (ops.value<CLI::generate_serialization> ())
+ if (ops.generate_serialization ())
generate_serialization_header (ctx);
- if (!ops.value<CLI::generate_insertion> ().empty ())
+ if (!ops.generate_insertion ().empty ())
generate_stream_insertion_header (ctx);
}
+ }
- if (inline_)
- {
- hxx << "#ifndef XSD_DONT_INCLUDE_INLINE" << endl
- << "#include " << ctx.process_include_path (ixx_name) << endl
- << "#endif // XSD_DONT_INCLUDE_INLINE" << endl
- << endl;
- }
-
- hxx << "#include <xsd/cxx/post.hxx>" << endl
+ if (inline_)
+ {
+ hxx << "#ifndef XSD_DONT_INCLUDE_INLINE" << endl
+ << "#include " << ctx.process_include_path (ixx_name) << endl
+ << "#endif // XSD_DONT_INCLUDE_INLINE" << endl
<< endl;
}
+ hxx << "#include <xsd/cxx/post.hxx>" << endl
+ << endl;
+
// Copy epilogue.
//
hxx << "// Begin epilogue." << endl
<< "//" << endl;
- append (hxx, ops.value<CLI::hxx_epilogue_file> (), epilogue);
- append (
- hxx, ops.value<CLI::hxx_epilogue> (), ops.value<CLI::epilogue> ());
+ append (hxx, ops.hxx_epilogue_file (), epilogue);
+ append (hxx, ops.hxx_epilogue (), ops.epilogue ());
hxx << "//" << endl
<< "// End epilogue." << endl
@@ -1547,18 +955,15 @@ namespace CXX
hxx << "#endif // " << guard << endl;
if (show_sloc)
- {
- wcerr << hxx_path << ": "
- << hxx_sloc.buffer ().count () << endl;
+ wcerr << hxx_path << ": " << sloc.stream ().count () << endl;
- sloc += hxx_sloc.buffer ().count ();
- }
+ sloc_total += sloc.stream ().count ();
}
// IXX
//
- if (inline_)
+ if (gen_cxx && inline_)
{
Context ctx (ixx,
schema,
@@ -1571,11 +976,11 @@ namespace CXX
&hxx_expr,
&ixx_expr);
- Indentation::Clip<Indentation::SLOC, WideChar> ixx_sloc (ixx);
+ sloc_filter sloc (ixx);
// Guard
//
- String guard (guard_expr.merge (guard_prefix + ixx_name));
+ String guard (guard_expr.replace (guard_prefix + ixx_name));
guard = ctx.escape (guard); // make a c++ id
std::transform (guard.begin (), guard.end(), guard.begin (), upcase);
@@ -1588,22 +993,17 @@ namespace CXX
ixx << "// Begin prologue." << endl
<< "//" << endl;
- append (
- ixx, ops.value<CLI::ixx_prologue> (), ops.value<CLI::prologue> ());
- append (ixx, ops.value<CLI::ixx_prologue_file> (), prologue);
+ append (ixx, ops.ixx_prologue (), ops.prologue ());
+ append (ixx, ops.ixx_prologue_file (), prologue);
ixx << "//" << endl
<< "// End prologue." << endl
<< endl;
+ // Generate.
+ //
{
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> ixx_clip (ixx);
-
-
- // Generate.
- //
+ ind_filter ind (ixx); // We don't want to indent prologues/epilogues.
generate_tree_inline (ctx, 1, 0);
}
@@ -1612,9 +1012,8 @@ namespace CXX
ixx << "// Begin epilogue." << endl
<< "//" << endl;
- append (ixx, ops.value<CLI::ixx_epilogue_file> (), epilogue);
- append (
- ixx, ops.value<CLI::ixx_epilogue> (), ops.value<CLI::epilogue> ());
+ append (ixx, ops.ixx_epilogue_file (), epilogue);
+ append (ixx, ops.ixx_epilogue (), ops.epilogue ());
ixx << "//" << endl
<< "// End epilogue." << endl
@@ -1623,31 +1022,26 @@ namespace CXX
ixx << "#endif // " << guard.c_str () << endl;
if (show_sloc)
- {
- wcerr << ixx_path << ": "
- << ixx_sloc.buffer ().count () << endl;
+ wcerr << ixx_path << ": " << sloc.stream ().count () << endl;
- sloc += ixx_sloc.buffer ().count ();
- }
+ sloc_total += sloc.stream ().count ();
}
-
// CXX
//
-
- if (source)
+ if (gen_cxx && source)
{
- UnsignedLong first_unit (0); // First unit in the current part.
+ size_t first_unit (0); // First unit in the current part.
- for (UnsignedLong part (0); part < parts; ++part)
+ for (size_t part (0); part < parts; ++part)
{
// Figure out the range of units for this part.
//
- UnsignedLong last_unit (first_unit);
+ size_t last_unit (first_unit);
if (units != 0)
{
- UnsignedLong complexity (counts.complexity[last_unit]);
+ size_t complexity (counts.complexity[last_unit]);
while (complexity < complexity_per_part)
{
@@ -1660,7 +1054,7 @@ namespace CXX
// Check if the increase in complexity should be kept in this
// part or moved to the next.
//
- UnsignedLong new_complexity (
+ size_t new_complexity (
complexity + counts.complexity[last_unit + 1]);
if (new_complexity > complexity_per_part)
@@ -1684,8 +1078,8 @@ namespace CXX
//
//
- UnsignedLong first (first_unit);
- UnsignedLong last (last_unit);
+ size_t first (first_unit);
+ size_t last (last_unit);
first_unit = last_unit + 1;
@@ -1705,86 +1099,78 @@ namespace CXX
&hxx_expr,
&ixx_expr);
- Indentation::Clip<Indentation::SLOC, WideChar> cxx_sloc (os);
+ sloc_filter sloc (os);
// Copy prologue.
//
os << "// Begin prologue." << endl
<< "//" << endl;
- append (os,
- ops.value<CLI::cxx_prologue> (),
- ops.value<CLI::prologue> ());
- append (os, ops.value<CLI::cxx_prologue_file> (), prologue);
+ append (os, ops.cxx_prologue (), ops.prologue ());
+ append (os, ops.cxx_prologue_file (), prologue);
os << "//" << endl
<< "// End prologue." << endl
<< endl;
- {
- os << "#include <xsd/cxx/pre.hxx>" << endl
- << endl;
-
- // Set auto-indentation.
- //
- Indentation::Clip<Indentation::CXX, WideChar> cxx_clip (os);
+ os << "#include <xsd/cxx/pre.hxx>" << endl
+ << endl;
+ os << "#include " << ctx.process_include_path (hxx_name) << endl
+ << endl;
- // Generate.
+ // Generate.
+ //
+ {
+ // We don't want to indent prologues/epilogues.
//
- os << "#include " << ctx.process_include_path (hxx_name) << endl
- << endl;
+ ind_filter ind (os);
if (!inline_)
generate_tree_inline (ctx, first, last);
generate_tree_source (ctx, first, last);
- if (ops.value<CLI::generate_ostream> ())
+ if (ops.generate_ostream ())
generate_stream_source (ctx, first, last);
- if (!ops.value<CLI::generate_element_type> () &&
- !ops.value<CLI::suppress_parsing> ())
+ if (!ops.generate_element_type () && !ops.suppress_parsing ())
generate_parser_source (ctx, first, last);
- if (ops.value<CLI::generate_serialization> ())
+ if (ops.generate_serialization ())
generate_serialization_source (ctx, first, last);
- if (!ops.value<CLI::generate_extraction> ().empty ())
+ if (!ops.generate_extraction ().empty ())
generate_stream_extraction_source (ctx);
- if (!ops.value<CLI::generate_insertion> ().empty ())
+ if (!ops.generate_insertion ().empty ())
generate_stream_insertion_source (ctx);
-
- os << "#include <xsd/cxx/post.hxx>" << endl
- << endl;
}
+ os << "#include <xsd/cxx/post.hxx>" << endl
+ << endl;
+
// Copy epilogue.
//
os << "// Begin epilogue." << endl
<< "//" << endl;
- append (os, ops.value<CLI::cxx_epilogue_file> (), epilogue);
- append (os,
- ops.value<CLI::cxx_epilogue> (),
- ops.value<CLI::epilogue> ());
+ append (os, ops.cxx_epilogue_file (), epilogue);
+ append (os, ops.cxx_epilogue (), ops.epilogue ());
os << "//" << endl
<< "// End epilogue." << endl
<< endl;
if (show_sloc)
- {
- wcerr << cxx_paths[part] << ": "
- << cxx_sloc.buffer ().count () << endl;
+ wcerr << cxx_paths[part] << ": " << sloc.stream ().count ()
+ << endl;
- sloc += cxx_sloc.buffer ().count ();
- }
+ sloc_total += sloc.stream ().count ();
}
}
- return sloc;
+ return sloc_total;
}
catch (UnrepresentableCharacter const& e)
{
@@ -1823,18 +1209,18 @@ namespace CXX
throw Failed ();
}
- catch (BackendElements::Regex::Format<Char> const& e)
+ catch (cutl::re::format const& e)
{
wcerr << "error: invalid regex: '" <<
- e.expression ().c_str () << "': " <<
+ e.regex ().c_str () << "': " <<
e.description ().c_str () << endl;
throw Failed ();
}
- catch (BackendElements::Regex::Format<WideChar> const& e)
+ catch (cutl::re::wformat const& e)
{
wcerr << "error: invalid regex: '" <<
- e.expression () << "': " << e.description () << endl;
+ e.regex () << "': " << e.description ().c_str () << endl;
throw Failed ();
}
diff --git a/xsd/xsd/cxx/tree/generator.hxx b/xsd/xsd/cxx/tree/generator.hxx
index 2e50392..f81f8e3 100644
--- a/xsd/xsd/cxx/tree/generator.hxx
+++ b/xsd/xsd/cxx/tree/generator.hxx
@@ -1,43 +1,36 @@
// file : xsd/cxx/tree/generator.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_GENERATOR_HXX
#define CXX_TREE_GENERATOR_HXX
-#include <cult/types.hxx>
-
#include <xsd-frontend/semantic-graph/elements.hxx> // Path
#include <xsd-frontend/semantic-graph/schema.hxx>
#include <xsd.hxx>
+#include <types.hxx>
#include <cxx/literal-map.hxx>
-#include <cxx/tree/cli.hxx>
+#include <cxx/tree/options.hxx>
namespace CXX
{
namespace Tree
{
- using namespace Cult::Types;
-
class Generator
{
public:
- static Void
+ static void
usage ();
- static CLI::OptionsSpec
- options_spec ();
-
struct Failed {};
- static UnsignedLong
- generate (CLI::Options const& options,
+ static size_t
+ generate (options const&,
XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file,
- Boolean file_per_type,
+ bool file_per_type,
StringLiteralMap const&,
const WarningSet& disabled_warnings,
FileList& file_list,
diff --git a/xsd/xsd/cxx/tree/name-processor.cxx b/xsd/xsd/cxx/tree/name-processor.cxx
index 4949bed..1f3844b 100644
--- a/xsd/xsd/cxx/tree/name-processor.cxx
+++ b/xsd/xsd/cxx/tree/name-processor.cxx
@@ -1,51 +1,45 @@
// file : xsd/cxx/tree/name-processor.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <set>
+#include <map>
+#include <vector>
#include <sstream>
#include <iostream>
-#include <cult/containers/set.hxx>
-#include <cult/containers/map.hxx>
-#include <cult/containers/vector.hxx>
-
-#include <backend-elements/regex.hxx>
+#include <cutl/re.hxx>
#include <cxx/tree/default-value.hxx>
#include <cxx/tree/name-processor.hxx>
+using namespace std;
+
namespace CXX
{
namespace Tree
{
- NameProcessor::
- NameProcessor ()
- {
- // Dummy ctor, helps with long symbols on HP-UX.
- }
-
namespace
{
//
//
- typedef Cult::Containers::Set<String> NameSet;
+ typedef set<String> NameSet;
class Context: public Tree::Context
{
public:
struct Failed {};
- Context (CLI::Options const& options,
+ Context (Tree::options const& ops,
Counts const& counts,
- Boolean generate_xml_schema,
+ bool generate_xml_schema,
SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
StringLiteralMap const& map)
: Tree::Context (std::wcerr,
root,
path,
- options,
+ ops,
counts,
generate_xml_schema,
&map,
@@ -54,7 +48,7 @@ namespace CXX
0),
global_type_names (global_type_names_),
global_element_names (global_element_names_),
- detach (options.value<CLI::generate_detach> ()),
+ detach (ops.generate_detach ()),
type_regex (type_regex_),
accessor_regex (accessor_regex_),
one_accessor_regex (one_accessor_regex_),
@@ -66,14 +60,12 @@ namespace CXX
seq_modifier_regex (seq_modifier_regex_),
parser_regex (parser_regex_),
serializer_regex (serializer_regex_),
+ const_regex (const_regex_),
enumerator_regex (enumerator_regex_),
element_type_regex (element_type_regex_)
{
- typedef Containers::Vector<NarrowString> Vector;
-
- NarrowString tn (options.value<CLI::type_naming> ());
- NarrowString fn (options.value<CLI::function_naming> ());
-
+ NarrowString tn (options.type_naming ());
+ NarrowString fn (options.function_naming ());
// Type name regex.
//
@@ -116,9 +108,7 @@ namespace CXX
}
- compile_regex (options.value<CLI::type_regex> (),
- type_regex,
- "type");
+ compile_regex (options.type_regex (), type_regex, "type");
}
// Accessor name regex.
@@ -149,24 +139,23 @@ namespace CXX
accessor_regex.push_back ("/([^,]+)/get\\u$1/");
}
- compile_regex (options.value<CLI::accessor_regex> (),
+ compile_regex (options.accessor_regex (),
accessor_regex,
"accessor");
- compile_regex (options.value<CLI::one_accessor_regex> (),
+ compile_regex (options.one_accessor_regex (),
one_accessor_regex,
"one accessor");
- compile_regex (options.value<CLI::opt_accessor_regex> (),
+ compile_regex (options.opt_accessor_regex (),
opt_accessor_regex,
"optional accessor");
- compile_regex (options.value<CLI::seq_accessor_regex> (),
+ compile_regex (options.seq_accessor_regex (),
seq_accessor_regex,
"sequence accessor");
}
-
// Modifier name regex.
//
{
@@ -190,24 +179,23 @@ namespace CXX
modifier_regex.push_back ("/detach,([^,]+)/detach\\u$1/");
}
- compile_regex (options.value<CLI::modifier_regex> (),
+ compile_regex (options.modifier_regex (),
modifier_regex,
"modifier");
- compile_regex (options.value<CLI::one_modifier_regex> (),
+ compile_regex (options.one_modifier_regex (),
one_modifier_regex,
"one modifier");
- compile_regex (options.value<CLI::opt_modifier_regex> (),
+ compile_regex (options.opt_modifier_regex (),
opt_modifier_regex,
"optional modifier");
- compile_regex (options.value<CLI::seq_modifier_regex> (),
+ compile_regex (options.seq_modifier_regex (),
seq_modifier_regex,
"sequence modifier");
}
-
// Parser name regex.
//
{
@@ -222,9 +210,7 @@ namespace CXX
parser_regex.push_back ("/(.+)/parse\\u$1/");
}
- compile_regex (options.value<CLI::parser_regex> (),
- parser_regex,
- "parser");
+ compile_regex (options.parser_regex (), parser_regex, "parser");
}
// Serializer name regex.
@@ -241,11 +227,35 @@ namespace CXX
serializer_regex.push_back ("/(.+)/serialize\\u$1/");
}
- compile_regex (options.value<CLI::serializer_regex> (),
+ compile_regex (options.serializer_regex (),
serializer_regex,
"serializer");
}
+ // Const regex.
+ //
+ {
+ if (fn == "knr")
+ {
+ const_regex.push_back ("/([^,]+),([^,]+),([^,]+)/$1_$2_$3/");
+ const_regex.push_back ("/([^,]+),([^,]+)/$1_$2/");
+ }
+ else if (fn == "lcc")
+ {
+ const_regex.push_back ("/([^,]+),([^,]+),([^,]+)/\\l$1_\\u$2_\\u$3/");
+ const_regex.push_back ("/([^,]+),([^,]+)/\\l$1\\u$2/");
+ }
+ else
+ {
+ // Java: all uppercase.
+ //
+ const_regex.push_back ("/([^,]+),([^,]+),([^,]+)/\\U$1_$2_$3/");
+ const_regex.push_back ("/([^,]+),([^,]+)/\\U$1_$2/");
+ }
+
+ compile_regex (options.const_regex (), const_regex, "const");
+ }
+
// Enumerator name regex.
//
{
@@ -253,14 +263,14 @@ namespace CXX
//
enumerator_regex.push_back ("/^$/empty/");
- compile_regex (options.value<CLI::enumerator_regex> (),
+ compile_regex (options.enumerator_regex (),
enumerator_regex,
"enumerator");
}
// Element type regex.
//
- compile_regex (options.value<CLI::element_type_regex> (),
+ compile_regex (options.element_type_regex (),
element_type_regex,
"element_type");
}
@@ -282,35 +292,44 @@ namespace CXX
seq_modifier_regex (c.seq_modifier_regex),
parser_regex (c.parser_regex),
serializer_regex (c.serializer_regex),
+ const_regex (c.const_regex),
enumerator_regex (c.enumerator_regex),
element_type_regex (c.element_type_regex)
{
}
public:
- typedef BackendElements::Regex::Expression<WideChar> Regex;
- typedef BackendElements::Regex::Format<WideChar> RegexFormat;
- typedef Cult::Containers::Vector<Regex> RegexVector;
+ typedef cutl::re::wregexsub Regex;
+ typedef cutl::re::wformat RegexFormat;
+
+ struct RegexVector: vector<Regex>
+ {
+ void
+ push_back (String const& r)
+ {
+ vector<Regex>::push_back (Regex (r));
+ }
+ };
String
process_regex (String const& name,
RegexVector const& rv,
String const& id)
{
- Boolean trace (options.value<CLI::name_regex_trace> ());
+ bool trace (options.name_regex_trace ());
if (trace)
os << id << " name: '" << name << "'" << endl;
- for (RegexVector::ConstReverseIterator i (rv.rbegin ());
+ for (RegexVector::const_reverse_iterator i (rv.rbegin ());
i != rv.rend (); ++i)
{
if (trace)
- os << "try: '" << i->pattern () << "' : ";
+ os << "try: '" << i->regex () << "' : ";
if (i->match (name))
{
- String r (i->merge (name));
+ String r (i->replace (name));
if (trace)
os << "'" << r << "' : +" << endl;
@@ -331,20 +350,20 @@ namespace CXX
RegexVector const& backup,
String const& id)
{
- Boolean trace (options.value<CLI::name_regex_trace> ());
+ bool trace (options.name_regex_trace ());
if (trace)
os << id << " name: '" << name << "'" << endl;
- for (RegexVector::ConstReverseIterator i (primary.rbegin ());
+ for (RegexVector::const_reverse_iterator i (primary.rbegin ());
i != primary.rend (); ++i)
{
if (trace)
- os << "try: '" << i->pattern () << "' : ";
+ os << "try: '" << i->regex () << "' : ";
if (i->match (name))
{
- String r (i->merge (name));
+ String r (i->replace (name));
if (trace)
os << "'" << r << "' : +" << endl;
@@ -356,15 +375,15 @@ namespace CXX
os << '-' << endl;
}
- for (RegexVector::ConstReverseIterator i (backup.rbegin ());
+ for (RegexVector::const_reverse_iterator i (backup.rbegin ());
i != backup.rend (); ++i)
{
if (trace)
- os << "try: '" << i->pattern () << "' : ";
+ os << "try: '" << i->regex () << "' : ";
if (i->match (name))
{
- String r (i->merge (name));
+ String r (i->replace (name));
if (trace)
os << "'" << r << "' : +" << endl;
@@ -386,20 +405,20 @@ namespace CXX
String const& id)
{
String s (ns + L' ' + name);
- Boolean trace (options.value<CLI::name_regex_trace> ());
+ bool trace (options.name_regex_trace ());
if (trace)
os << id << " name: '" << s << "'" << endl;
- for (RegexVector::ConstReverseIterator i (rv.rbegin ());
+ for (RegexVector::const_reverse_iterator i (rv.rbegin ());
i != rv.rend (); ++i)
{
if (trace)
- os << "try: '" << i->pattern () << "' : ";
+ os << "try: '" << i->regex () << "' : ";
if (i->match (s))
{
- String r (i->merge (s));
+ String r (i->replace (s));
if (trace)
os << "'" << r << "' : +" << endl;
@@ -422,20 +441,20 @@ namespace CXX
String const& id)
{
String s (ns + L' ' + name);
- Boolean trace (options.value<CLI::name_regex_trace> ());
+ bool trace (options.name_regex_trace ());
if (trace)
os << id << " name: '" << s << "'" << endl;
- for (RegexVector::ConstReverseIterator i (primary.rbegin ());
+ for (RegexVector::const_reverse_iterator i (primary.rbegin ());
i != primary.rend (); ++i)
{
if (trace)
- os << "try: '" << i->pattern () << "' : ";
+ os << "try: '" << i->regex () << "' : ";
if (i->match (s))
{
- String r (i->merge (s));
+ String r (i->replace (s));
if (trace)
os << "'" << r << "' : +" << endl;
@@ -447,15 +466,15 @@ namespace CXX
os << '-' << endl;
}
- for (RegexVector::ConstReverseIterator i (backup.rbegin ());
+ for (RegexVector::const_reverse_iterator i (backup.rbegin ());
i != backup.rend (); ++i)
{
if (trace)
- os << "try: '" << i->pattern () << "' : ";
+ os << "try: '" << i->regex () << "' : ";
if (i->match (s))
{
- String r (i->merge (s));
+ String r (i->replace (s));
if (trace)
os << "'" << r << "' : +" << endl;
@@ -474,11 +493,11 @@ namespace CXX
String
find_name (String const& base_name,
NameSet& set,
- Boolean insert = true)
+ bool insert = true)
{
String name (base_name);
- for (UnsignedLong i (1); set.find (name) != set.end (); ++i)
+ for (size_t i (1); set.find (name) != set.end (); ++i)
{
std::wostringstream os;
os << i;
@@ -492,23 +511,22 @@ namespace CXX
}
private:
- Void
- compile_regex (Containers::Vector<NarrowString> const& sv,
+ void
+ compile_regex (NarrowStrings const& sv,
RegexVector& rv,
String const& id)
{
- typedef Containers::Vector<NarrowString> Vector;
-
- for (Vector::ConstIterator i (sv.begin ()); i != sv.end (); ++i)
+ for (NarrowStrings::const_iterator i (sv.begin ()); i != sv.end ();
+ ++i)
{
try
{
- rv.push_back (Regex (*i));
+ rv.push_back (*i);
}
catch (RegexFormat const& e)
{
os << "error: invalid " << id << " name regex: '" <<
- e.expression () << "': " << e.description () << endl;
+ e.regex () << "': " << e.description ().c_str () << endl;
throw Failed ();
}
@@ -516,8 +534,8 @@ namespace CXX
}
private:
- Cult::Containers::Map<String, NameSet> global_type_names_;
- Cult::Containers::Map<String, NameSet> global_element_names_;
+ map<String, NameSet> global_type_names_;
+ map<String, NameSet> global_element_names_;
RegexVector type_regex_;
RegexVector accessor_regex_;
@@ -530,14 +548,15 @@ namespace CXX
RegexVector seq_modifier_regex_;
RegexVector parser_regex_;
RegexVector serializer_regex_;
+ RegexVector const_regex_;
RegexVector enumerator_regex_;
RegexVector element_type_regex_;
public:
- Cult::Containers::Map<String, NameSet>& global_type_names;
- Cult::Containers::Map<String, NameSet>& global_element_names;
+ map<String, NameSet>& global_type_names;
+ map<String, NameSet>& global_element_names;
- Boolean detach;
+ bool detach;
RegexVector& type_regex;
RegexVector& accessor_regex;
@@ -550,6 +569,7 @@ namespace CXX
RegexVector& seq_modifier_regex;
RegexVector& parser_regex;
RegexVector& serializer_regex;
+ RegexVector& const_regex;
RegexVector& enumerator_regex;
RegexVector& element_type_regex;
};
@@ -563,7 +583,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
// Process the name with enumerator name regex.
@@ -590,7 +610,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
// Use processed name.
@@ -630,7 +650,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (Tree::Context::skip (m))
@@ -657,20 +677,23 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (Tree::Context::skip (m))
return;
- UnsignedLong max (Tree::Context::max (m));
- UnsignedLong min (Tree::Context::min (m));
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (m.scope ()));
+
+ size_t max (Tree::Context::max (m));
+ size_t min (Tree::Context::min (m));
String const& s (m.context ().get<String> ("stem"));
String const& b (m.context ().get<String> ("name"));
- Boolean def_attr (m.default_p () &&
- m.is_a<SemanticGraph::Attribute> ());
+ bool def_attr (m.default_p () &&
+ m.is_a<SemanticGraph::Attribute> ());
// Accessors/modifiers. Note that we postpone inserting
// the names into the name_set to avoid over-escaping.
@@ -809,7 +832,7 @@ namespace CXX
//
if (m.default_p ())
{
- Boolean simple (true);
+ bool simple (true);
if (m.is_a<SemanticGraph::Element> ())
{
@@ -824,9 +847,9 @@ namespace CXX
process_regex (
s + L",default,value", accessor_regex, L"accessor")));
- m.context ().set ( "default-value", find_name (an, name_set_));
+ m.context ().set ("default-value", find_name (an, name_set_));
- Boolean lit (false);
+ bool lit (false);
{
IsLiteralValue test (lit);
test.dispatch (m.type ());
@@ -840,6 +863,18 @@ namespace CXX
}
}
}
+
+ // Element id.
+ //
+ if (m.is_a<SemanticGraph::Element> () && ordered_p (c))
+ {
+ String id (
+ escape (
+ process_regex (
+ s + L",id", const_regex, L"const")));
+
+ m.context ().set ("ordered-id-name", find_name (id, name_set_));
+ }
}
private:
@@ -854,7 +889,7 @@ namespace CXX
Any (Context& c,
NameSet& name_set,
NameSet& stem_set,
- Boolean& has_wildcard)
+ bool& has_wildcard)
: Context (c),
name_set_ (name_set),
stem_set_ (stem_set),
@@ -862,11 +897,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
- UnsignedLong max (Tree::Context::max (a));
- UnsignedLong min (Tree::Context::min (a));
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (a.scope ()));
+
+ size_t max (Tree::Context::max (a));
+ size_t min (Tree::Context::min (a));
String s (find_name (L"any", stem_set_));
@@ -980,11 +1018,23 @@ namespace CXX
//
a.context ().set ("member", find_name (b + L"_", name_set_));
+ // Wildcard id.
+ //
+ if (ordered_p (c))
+ {
+ String id (
+ escape (
+ process_regex (
+ s + L",id", const_regex, L"const")));
+
+ a.context ().set ("ordered-id-name", find_name (id, name_set_));
+ }
+
if (!has_wildcard_)
has_wildcard_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String s (find_name (L"any,attribute", stem_set_));
@@ -1050,7 +1100,7 @@ namespace CXX
private:
NameSet& name_set_;
NameSet& stem_set_;
- Boolean& has_wildcard_;
+ bool& has_wildcard_;
};
//
@@ -1062,20 +1112,20 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
- SemanticGraph::Context& cc (c.context ());
+ SemanticGraph::Context& ctx (c.context ());
// We leave this set around to allow other mappings to use
// this information.
//
- cc.set ("cxx-tree-name-processor-stem-set", NameSet ());
- cc.set ("cxx-tree-name-processor-member-set", NameSet ());
+ ctx.set ("cxx-tree-name-processor-stem-set", NameSet ());
+ ctx.set ("cxx-tree-name-processor-member-set", NameSet ());
// Use processed name.
//
- String name (cc.get<String> ("name"));
+ String name (ctx.get<String> ("name"));
// If renamed name is empty then we are not generating
// anything for this type and name processing is not
@@ -1085,10 +1135,10 @@ namespace CXX
return;
NameSet& stem_set (
- cc.get<NameSet> ("cxx-tree-name-processor-stem-set"));
+ ctx.get<NameSet> ("cxx-tree-name-processor-stem-set"));
NameSet& member_set (
- cc.get<NameSet> ("cxx-tree-name-processor-member-set"));
+ ctx.get<NameSet> ("cxx-tree-name-processor-member-set"));
stem_set.insert (c.name ());
member_set.insert (name);
@@ -1144,11 +1194,121 @@ namespace CXX
Complex::names (c, names);
}
+ // Names for the mixed content.
+ //
+ if (mixed_p (c))
+ {
+ // Check if we already have the mixed content down inheritance
+ // hierarchy.
+ //
+ using SemanticGraph::Complex;
+
+ for (Complex* p (&c); p->inherits_p ();)
+ {
+ if (Complex* b = dynamic_cast<Complex*> (
+ &p->inherits ().base ()))
+ {
+ if (mixed_p (*b))
+ {
+ SemanticGraph::Context& bctx (b->context ());
+ ctx.set ("mixed-type", bctx.get<String> ("mixed-type"));
+ ctx.set ("mixed-const-iterator",
+ bctx.get<String> ("mixed-const-iterator"));
+ ctx.set ("mixed-ordered-id-name",
+ bctx.get<String> ("mixed-ordered-id-name"));
+ ctx.set ("mixed-aname", bctx.get<String> ("mixed-aname"));
+ ctx.set ("mixed-member", bctx.get<String> ("mixed-member"));
+ ctx.set ("mixed-in-base", true);
+ break;
+ }
+
+ p = b;
+ }
+ else
+ break;
+ }
+
+ // If not, set up the names.
+ //
+ if (!ctx.count ("mixed-in-base"))
+ {
+ String s (find_name (L"text,content", stem_set));
+ String n (find_name (escape (s), member_set, false));
+
+ String an (find_name (
+ escape (process_regex (s,
+ seq_accessor_regex,
+ accessor_regex,
+ L"sequence accessor")),
+ member_set,
+ false));
+
+ String mn (find_name (
+ escape (process_regex (s,
+ seq_modifier_regex,
+ modifier_regex,
+ L"sequence modifier")),
+ member_set,
+ false));
+
+ ctx.set ("mixed-aname", an);
+ ctx.set ("mixed-mname", mn);
+
+ member_set.insert (name);
+
+ if (an != n)
+ member_set.insert (an);
+
+ if (mn != n && mn != an)
+ member_set.insert (mn);
+
+ // Types.
+ //
+ ctx.set (
+ "mixed-type",
+ find_name (
+ escape (process_regex (s + L",type", type_regex, L"type")),
+ member_set));
+
+ ctx.set (
+ "mixed-container",
+ find_name (
+ escape (process_regex (s + L",sequence", type_regex, L"type")),
+ member_set));
+
+ ctx.set (
+ "mixed-iterator",
+ find_name (
+ escape (process_regex (s + L",iterator", type_regex, L"type")),
+ member_set));
+
+ ctx.set (
+ "mixed-const-iterator",
+ find_name (
+ escape (
+ process_regex (s + L",const,iterator", type_regex, L"type")),
+ member_set));
+
+ // Text content id.
+ //
+ ctx.set (
+ "mixed-ordered-id-name",
+ find_name (
+ escape (
+ process_regex (s + L",id", const_regex, L"const")),
+ member_set));
+
+ // Data member.
+ //
+ ctx.set ("mixed-member", find_name (n + L"_", member_set));
+ }
+ }
+
// Names for wildcards.
//
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
{
- Boolean has_wildcard (false);
+ bool has_wildcard (false);
Any any (*this, member_set, stem_set, has_wildcard);
Traversal::Names names (any);
Complex::names (c, names);
@@ -1198,6 +1358,105 @@ namespace CXX
}
}
}
+
+ // Names for the order container.
+ //
+ if (ordered_p (c))
+ {
+ // Check if we already have the order container down
+ // inheritance hierarchy.
+ //
+ using SemanticGraph::Complex;
+
+ for (Complex* p (&c); p->inherits_p ();)
+ {
+ if (Complex* b = dynamic_cast<Complex*> (
+ &p->inherits ().base ()))
+ {
+ if (ordered_p (*b))
+ {
+ SemanticGraph::Context& bctx (b->context ());
+ ctx.set ("order-type", bctx.get<String> ("order-type"));
+ ctx.set ("order-const-iterator",
+ bctx.get<String> ("order-const-iterator"));
+ ctx.set ("order-aname", bctx.get<String> ("order-aname"));
+ ctx.set ("order-member", bctx.get<String> ("order-member"));
+ ctx.set ("order-in-base", true);
+ break;
+ }
+
+ p = b;
+ }
+ else
+ break;
+ }
+
+ // If not, set up the names.
+ //
+ if (!ctx.count ("order-in-base"))
+ {
+ String s (find_name (L"content,order", stem_set));
+ String n (find_name (escape (s), member_set, false));
+
+ String an (find_name (
+ escape (process_regex (s,
+ seq_accessor_regex,
+ accessor_regex,
+ L"sequence accessor")),
+ member_set,
+ false));
+
+ String mn (find_name (
+ escape (process_regex (s,
+ seq_modifier_regex,
+ modifier_regex,
+ L"sequence modifier")),
+ member_set,
+ false));
+
+ ctx.set ("order-aname", an);
+ ctx.set ("order-mname", mn);
+
+ member_set.insert (name);
+
+ if (an != n)
+ member_set.insert (an);
+
+ if (mn != n && mn != an)
+ member_set.insert (mn);
+
+ // Types.
+ //
+ ctx.set (
+ "order-type",
+ find_name (
+ escape (process_regex (s + L",type", type_regex, L"type")),
+ member_set));
+
+ ctx.set (
+ "order-container",
+ find_name (
+ escape (process_regex (s + L",sequence", type_regex, L"type")),
+ member_set));
+
+ ctx.set (
+ "order-iterator",
+ find_name (
+ escape (process_regex (s + L",iterator", type_regex, L"type")),
+ member_set));
+
+ ctx.set (
+ "order-const-iterator",
+ find_name (
+ escape (
+ process_regex (s + L",const,iterator", type_regex, L"type")),
+ member_set));
+
+ // Data member.
+ //
+ ctx.set ("order-member", find_name (n + L"_", member_set));
+ }
+ }
}
};
@@ -1211,7 +1470,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
// Process the name with type name regex.
@@ -1254,7 +1513,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
// First we need to figure out if we need to process this
@@ -1263,7 +1522,7 @@ namespace CXX
if (!generate_p (e))
return;
- if (options.value<CLI::generate_element_type> ())
+ if (options.generate_element_type ())
{
SemanticGraph::Context& ec (e.context ());
@@ -1379,7 +1638,7 @@ namespace CXX
//
String p;
- if (!options.value<CLI::suppress_parsing> () && doc_root_p (e))
+ if (!options.suppress_parsing () && doc_root_p (e))
{
p = find_name (
escape (
@@ -1392,8 +1651,7 @@ namespace CXX
//
String s;
- if (options.value<CLI::generate_serialization> () &&
- doc_root_p (e))
+ if (options.generate_serialization () && doc_root_p (e))
{
s = find_name (
escape (
@@ -1430,7 +1688,7 @@ namespace CXX
if (type_set_.find (r) != type_set_.end ())
r += L"_";
- for (UnsignedLong i (1);
+ for (size_t i (1);
element_set_.find (r) != element_set_.end () ||
type_set_.find (r) != type_set_.end (); ++i)
{
@@ -1454,7 +1712,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& ns)
{
NameSet& type_set (global_type_names[ns.name ()]);
@@ -1475,7 +1733,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& ns)
{
String const& name (ns.name ());
@@ -1557,7 +1815,7 @@ namespace CXX
*this >> names_ >> *this;
}
- Void
+ void
process_name (SemanticGraph::Type& t, String const& name)
{
String r (
@@ -1567,10 +1825,10 @@ namespace CXX
t.context ().set ("name", escape (r));
}
- Void
+ void
process_name (SemanticGraph::Namespace& n,
String const& name,
- Char const* key)
+ char const* key)
{
String r (process_regex (name, type_regex, L"type"));
n.context ().set (key, escape (r));
@@ -1578,13 +1836,13 @@ namespace CXX
// anyType and anySimpleType
//
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType& t)
{
process_name (t, "type");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType& t)
{
process_name (t, "simple,type");
@@ -1592,79 +1850,79 @@ namespace CXX
// Integrals.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
process_name (t, "byte");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
process_name (t, "unsigned,byte");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
process_name (t, "short");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
process_name (t, "unsigned,short");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
process_name (t, "int");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
process_name (t, "unsigned,int");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
process_name (t, "long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
process_name (t, "unsigned,long");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
process_name (t, "integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
process_name (t, "non,positive,integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
process_name (t, "non,negative,integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
process_name (t, "positive,integer");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
process_name (t, "negative,integer");
@@ -1672,7 +1930,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
process_name (t, "boolean");
@@ -1680,19 +1938,19 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
process_name (t, "float");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
process_name (t, "double");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
process_name (t, "decimal");
@@ -1700,49 +1958,49 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
process_name (t, "string");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
process_name (t, "normalized,string");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
process_name (t, "token");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
process_name (t, "nmtoken");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
process_name (t, "nmtokens");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
process_name (t, "name");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
process_name (t, "ncname");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
process_name (t, "language");
@@ -1750,19 +2008,19 @@ namespace CXX
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
process_name (t, "id");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
process_name (t, "idref");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
process_name (t, "idrefs");
@@ -1771,7 +2029,7 @@ namespace CXX
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
process_name (t, "uri");
@@ -1779,7 +2037,7 @@ namespace CXX
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
process_name (t, "qname");
@@ -1787,13 +2045,13 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
process_name (t, "base64,binary");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
process_name (t, "hex,binary");
@@ -1802,55 +2060,55 @@ namespace CXX
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
process_name (t, "date");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
process_name (t, "date,time");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
process_name (t, "duration");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
process_name (t, "gday");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
process_name (t, "gmonth");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
process_name (t, "gmonth,day");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
process_name (t, "gyear");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
process_name (t, "gyear,month");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
process_name (t, "time");
@@ -1858,19 +2116,19 @@ namespace CXX
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity& t)
{
process_name (t, "entity");
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities& t)
{
process_name (t, "entities");
}
- virtual Void
+ virtual void
post (SemanticGraph::Namespace& n)
{
// Assign names to extra stuff in the XML Schema namespace.
@@ -1879,13 +2137,15 @@ namespace CXX
process_name (n, "buffer", "buffer");
process_name (n, "time,zone", "time-zone");
- if (options.value<CLI::generate_element_type> ())
+ process_name (n, "content,order", "content-order");
+
+ if (options.generate_element_type ())
process_name (n, "element,type", "element-type");
- if (options.value<CLI::generate_element_map> ())
+ if (options.generate_element_map ())
process_name (n, "element,map", "element-map");
- if (options.value<CLI::generate_serialization> ())
+ if (options.generate_serialization ())
{
process_name (n, "namespace,info", "namespace-info");
process_name (n, "namespace,infomap", "namespace-infomap");
@@ -1895,12 +2155,12 @@ namespace CXX
process_name (n, "facet", "facet");
}
- if (!options.value<CLI::generate_insertion> ().empty ())
+ if (!options.generate_insertion ().empty ())
{
process_name (n, "ostream", "ostream");
}
- if (!options.value<CLI::generate_extraction> ().empty ())
+ if (!options.generate_extraction ().empty ())
{
process_name (n, "istream", "istream");
}
@@ -1908,7 +2168,7 @@ namespace CXX
process_name (n, "flags", "flags");
process_name (n, "properties", "properties");
- NarrowString fn (options.value<CLI::function_naming> ());
+ NarrowString fn (options.function_naming ());
if (fn == "knr")
n.context ().set ("tree-node-key", String ("tree_node_key"));
@@ -1936,8 +2196,8 @@ namespace CXX
process_name (n, "error", "error");
process_name (n, "diagnostics", "diagnostics");
- if (!options.value<CLI::suppress_parsing> () ||
- options.value<CLI::generate_serialization> ())
+ if (!options.suppress_parsing () ||
+ options.generate_serialization ())
{
process_name (n, "error,handler", "error-handler");
}
@@ -1955,7 +2215,7 @@ namespace CXX
//
struct UsesPassOne: Traversal::Uses
{
- virtual Void
+ virtual void
traverse (Type& u)
{
SemanticGraph::Schema& s (u.schema ());
@@ -1970,7 +2230,7 @@ namespace CXX
struct UsesPassThree: Traversal::Uses
{
- virtual Void
+ virtual void
traverse (Type& u)
{
SemanticGraph::Schema& s (u.schema ());
@@ -1988,7 +2248,7 @@ namespace CXX
//
struct Implies: Traversal::Implies
{
- virtual Void
+ virtual void
traverse (SemanticGraph::Implies& i)
{
SemanticGraph::Schema& s (i.schema ());
@@ -2001,8 +2261,8 @@ namespace CXX
}
};
- Boolean
- process_impl (CLI::Options const& ops,
+ bool
+ process_impl (options const& ops,
SemanticGraph::Schema& tu,
SemanticGraph::Path const& file,
StringLiteralMap const& map)
@@ -2064,7 +2324,7 @@ namespace CXX
//
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
schema >> sources >> schema;
@@ -2128,8 +2388,8 @@ namespace CXX
}
}
- Boolean NameProcessor::
- process (CLI::Options const& ops,
+ bool NameProcessor::
+ process (options const& ops,
SemanticGraph::Schema& tu,
SemanticGraph::Path const& file,
StringLiteralMap const& map)
diff --git a/xsd/xsd/cxx/tree/name-processor.hxx b/xsd/xsd/cxx/tree/name-processor.hxx
index cf187b7..46ea883 100644
--- a/xsd/xsd/cxx/tree/name-processor.hxx
+++ b/xsd/xsd/cxx/tree/name-processor.hxx
@@ -1,26 +1,24 @@
// file : xsd/cxx/tree/name-processor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_NAME_PROCESSOR_HXX
#define CXX_TREE_NAME_PROCESSOR_HXX
+#include <types.hxx>
+
#include <cxx/tree/elements.hxx>
+#include <cxx/tree/options.hxx>
namespace CXX
{
namespace Tree
{
- using namespace Cult::Types;
-
class NameProcessor
{
public:
- NameProcessor (); // Dummy ctor, helps with long symbols on HP-UX.
-
- Boolean
- process (CLI::Options const&,
+ bool
+ process (options const&,
XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file,
StringLiteralMap const&);
diff --git a/xsd/xsd/cxx/tree/options.cli b/xsd/xsd/cxx/tree/options.cli
new file mode 100644
index 0000000..f1b343a
--- /dev/null
+++ b/xsd/xsd/cxx/tree/options.cli
@@ -0,0 +1,480 @@
+// file : xsd/cxx/tree/options.cli
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include <cstddef>; // std::size_t
+
+include <types.hxx>; // NarrowString, NarrowStrings
+
+include <cxx/options.cli>;
+
+namespace CXX
+{
+ namespace Tree
+ {
+ class options: CXX::options
+ {
+ // Polymorphism.
+ //
+ bool --generate-polymorphic
+ {
+ "Generate polymorphism-aware code. Specify this option if you use
+ substitution groups or \cb{xsi:type}. Use the \cb{--polymorphic-type}
+ or \cb{--polymorphic-type-all} option to specify which type
+ hierarchies are polymorphic."
+ };
+
+ NarrowStrings --polymorphic-type
+ {
+ "<type>",
+ "Indicate that <type> is a root of a polymorphic type hierarchy. The
+ compiler can often automatically determine which types are
+ polymorphic based on the substitution group declarations. However,
+ you may need to use this option if you are not using substitution
+ groups or if substitution groups are defined in another schema. You
+ need to specify this option when compiling every schema file that
+ references <type>. The <type> argument is an XML Schema type name
+ that can be optionally qualified with a namespace in the
+ \c{\i{namespace}\b{#}\i{name}} form."
+ };
+
+ bool --polymorphic-type-all
+ {
+ "Indicate that all types should be treated as polymorphic."
+ };
+
+ unsigned long --polymorphic-plate = 0
+ {
+ "<num>",
+ "Specify the polymorphic map plate the generated code should register
+ on. This functionality is primarily useful to segregate multiple
+ schemas that define the same polymorphic types."
+ };
+
+ // Ordered content.
+ //
+ NarrowStrings --ordered-type
+ {
+ "<type>",
+ "Indicate that element order in <type> is significant. An example
+ would be a complex type with unbounded choice as a content model
+ where the element order in XML has application-specific semantics.
+ For ordered types the compiler generates a special container data
+ member and a corresponding set of accessors and modifiers that are
+ used to capture the order of elements and, for mixed content, of
+ text.
+
+ The <type> argument is an XML Schema type name that can be optionally
+ qualified with a namespace in the \c{\i{namespace}\b{#}\i{name}} form.
+ Note also that you will need to specify this option when compiling
+ every schema file that has other ordered types derived from this
+ type."
+ };
+
+ bool --ordered-type-derived
+ {
+ "Automatically treat types derived from ordered bases as also
+ ordered. This is primarily useful if you would like to be able
+ to iterate over the complete content using the content order
+ container."
+ };
+
+ bool --ordered-type-mixed
+ {
+ "Automatically treat complex types with mixed content as ordered."
+ };
+
+ bool --ordered-type-all
+ {
+ "Indicate that element order in all types is significant."
+ };
+
+ NarrowString --order-container
+ {
+ "<type>",
+ "Specify a custom class template that should be used as a container
+ for the content order in ordered types instead of the default
+ \cb{std::vector}. See \cb{--ordered-type} for more information on
+ ordered type. This option is primarily useful if you need to
+ perform more complex lookups in the content order container, for
+ example by element id. In this case, a container like Boost
+ multi-index may be more convenient. Note that if using a custom
+ container, you will also most likely need to include the relevant
+ headers using the \cb{--hxx-prologue*} options."
+ };
+
+ // Features.
+ //
+ bool --generate-serialization
+ {
+ "Generate serialization functions. Serialization functions convert
+ the object model back to XML."
+ };
+
+ bool --generate-ostream
+ {
+ "Generate ostream insertion operators (\cb{operator<<}) for generated
+ types. This allows one to easily print a fragment or the whole object
+ model for debugging or logging."
+ };
+
+ bool --generate-doxygen
+ {
+ "Generate documentation comments suitable for extraction by the
+ Doxygen documentation system. Documentation from annotations is
+ added to the comments if present in the schema."
+ };
+
+ bool --generate-comparison
+ {
+ "Generate comparison operators (\cb{operator==} and \cb{operator!=})
+ for complex types. Comparison is performed member-wise."
+ };
+
+ bool --generate-default-ctor
+ {
+ "Generate default constructors even for types that have required
+ members. Required members of an instance constructed using such a
+ constructor are not initialized and accessing them results in
+ undefined behavior."
+ };
+
+ bool --generate-from-base-ctor
+ {
+ "Generate constructors that expect an instance of a base type
+ followed by all required members."
+ };
+
+ bool --suppress-assignment
+ {
+ "Suppress the generation of copy assignment operators for complex
+ types. If this option is specified, the copy assignment operators
+ for such types are declared private and left unimplemented."
+ };
+
+ bool --generate-detach
+ {
+ "Generate detach functions for required elements and attributes.
+ Detach functions for optional and sequence cardinalities are
+ provided by the respective containers. These functions, for
+ example, allow you to move sub-trees in the object model either
+ within the same tree or between different trees."
+ };
+
+ bool --generate-wildcard
+ {
+ "Generate accessors and modifiers as well as parsing and serialization
+ code for XML Schema wildcards (\cb{any} and \cb{anyAttribute}). XML
+ content matched by wildcards is presented as DOM fragments. Note
+ that you need to initialize the Xerces-C++ runtime if you are using
+ this option."
+ };
+
+ bool --generate-any-type
+ {
+ "Extract and store content of the XML Schema \cb{anyType} type as a
+ DOM fragment. Note that you need to initialize the Xerces-C++ runtime
+ if you are using this option."
+ };
+
+ NarrowStrings --generate-insertion
+ {
+ "<os>",
+ "Generate data representation stream insertion operators for the <os>
+ output stream type. Repeat this option to specify more than one
+ stream type. The ACE CDR stream (\cb{ACE_OutputCDR}) and RPC XDR
+ are recognized by the compiler and the necessary \cb{#include}
+ directives are automatically generated. For custom stream types use
+ the \cb{--hxx-prologue*} options to provide the necessary
+ declarations."
+ };
+
+ NarrowStrings --generate-extraction
+ {
+ "<is>",
+ "Generate data representation stream extraction constructors for the
+ <is> input stream type. Repeat this option to specify more than one
+ stream type. The ACE CDR stream (\cb{ACE_InputCDR}) and RPC XDR are
+ recognized by the compiler and the necessary \cb{#include} directives
+ are automatically generated. For custom stream types use the
+ \cb{--hxx-prologue*} options to provide the necessary declarations."
+ };
+
+ bool --generate-forward
+ {
+ "Generate a separate header file with forward declarations for the
+ types being generated."
+ };
+
+ bool --suppress-parsing
+ {
+ "Suppress the generation of the parsing functions and constructors.
+ Use this option to reduce the generated code size when parsing from
+ XML is not needed."
+ };
+
+ bool --generate-element-type
+ {
+ "Generate types instead of parsing and serialization functions for
+ root elements. This is primarily useful to distinguish object models
+ with the same root type but with different root elements."
+ };
+
+ bool --generate-element-map
+ {
+ "Generate a root element map that allows uniform parsing and
+ serialization of multiple root elements. This option is only valid
+ together with \cb{--generate-element-type}."
+ };
+
+ bool --generate-intellisense
+ {
+ "Generate workarounds for IntelliSense bugs in Visual Studio 2005
+ (8.0). When this option is used, the resulting code is slightly
+ more verbose. IntelliSense in Visual Studio 2008 (9.0) and later
+ does not require these workarounds. Support for IntelliSense in
+ Visual Studio 2003 (7.1) is improved with this option but is
+ still incomplete."
+ };
+
+ bool --omit-default-attributes
+ {
+ "Omit attributes with default and fixed values from serialized XML
+ documents."
+ };
+
+ // Naming.
+ //
+ NarrowString --type-naming = "knr"
+ {
+ "<style>",
+ "Specify the type naming convention that should be used in the
+ generated code. Valid styles are \cb{knr} (default), \cb{ucc},
+ and \cb{java}. See the NAMING CONVENTION section below for more
+ information."
+ };
+
+ NarrowString --function-naming = "knr"
+ {
+ "<style>",
+ "Specify the function naming convention that should be used in the
+ generated code. Valid styles are \cb{knr} (default), \cb{lcc}, and
+ \cb{java}. See the NAMING CONVENTION section below for more
+ information."
+ };
+
+ NarrowStrings --type-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema type names to C++ type names. See the NAMING CONVENTION
+ section below for more information."
+ };
+
+ NarrowStrings --accessor-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes to C++ accessor function
+ names. See the NAMING CONVENTION section below for more information."
+ };
+
+ NarrowStrings --one-accessor-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes with cardinality one to
+ C++ accessor function names. See the NAMING CONVENTION section
+ below for more information."
+ };
+
+ NarrowStrings --opt-accessor-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes with cardinality optional
+ to C++ accessor function names. See the NAMING CONVENTION section
+ below for more information."
+ };
+
+ NarrowStrings --seq-accessor-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes with cardinality sequence
+ to C++ accessor function names. See the NAMING CONVENTION section
+ below for more information."
+ };
+
+ NarrowStrings --modifier-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes to C++ modifier function
+ names. See the NAMING CONVENTION section below for more information."
+ };
+
+ NarrowStrings --one-modifier-regex
+
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes with cardinality one to C++
+ modifier function names. See the NAMING CONVENTION section below
+ for more information."
+ };
+
+ NarrowStrings --opt-modifier-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes with cardinality optional
+ to C++ modifier function names. See the NAMING CONVENTION section
+ below for more information."
+ };
+
+ NarrowStrings --seq-modifier-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema names of elements/attributes with cardinality sequence
+ to C++ modifier function names. See the NAMING CONVENTION section
+ below for more information."
+ };
+
+ NarrowStrings --parser-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema element names to C++ parsing function names. See the
+ NAMING CONVENTION section below for more information."
+ };
+
+ NarrowStrings --serializer-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema element names to C++ serialization function names. See
+ the NAMING CONVENTION section below for more information."
+ };
+
+ NarrowStrings --const-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema-derived names to C++ constant names. See the NAMING
+ CONVENTION section below for more information."
+ };
+
+ NarrowStrings --enumerator-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema enumeration values to C++ enumerator names. See the
+ NAMING CONVENTION section below for more information."
+ };
+
+ NarrowStrings --element-type-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate
+ XML Schema element names to C++ element type names. See the NAMING
+ CONVENTION section below for more information."
+ };
+
+ bool --name-regex-trace
+ {
+ "Trace the process of applying regular expressions specified with
+ the name transformation options. Use this option to find out why
+ your regular expressions don't do what you expected them to do."
+ };
+
+ // Root element.
+ //
+ bool --root-element-first
+ {
+ "Treat only the first global element as a document root. By default
+ all global elements are considered document roots."
+ };
+
+ bool --root-element-last
+ {
+ "Treat only the last global element as a document root. By default
+ all global elements are considered document roots."
+ };
+
+ bool --root-element-all
+ {
+ "Treat all global elements as document roots. This is the default
+ behavior. By explicitly specifying this option you can suppress
+ the warning that is issued if more than one global element is
+ defined."
+ };
+
+ bool --root-element-none
+ {
+ "Do not treat any global elements as document roots. By default all
+ global elements are considered document roots."
+ };
+
+ NarrowStrings --root-element
+ {
+ "<element>",
+ "Treat only <element> as a document root. Repeat this option to
+ specify more than one root element."
+ };
+
+ // Custom type.
+ //
+ NarrowStrings --custom-type
+ {
+ "<map>",
+ "Use a custom C++ type instead of the generated class. The <map>
+ argument is in the form \c{\i{name}[\b{=}\i{type}[\b{/}\i{base}]]},
+ where \i{name} is a type name as defined in XML Schema and \i{type}
+ is a C++ type name that should be used instead. If \i{type} is not
+ present or empty then the custom type is assumed to have the same
+ name and be defined in the same namespace as the generated class
+ would have. If \i{base} is specified then the generated class is
+ still generated but with that name."
+ };
+
+ NarrowStrings --custom-type-regex
+ {
+ "<regex>",
+ "Use custom C++ types instead of the generated classes. The <regex>
+ argument is in the form
+ \c{\b{/}\i{name-pat}\b{/}[\i{type-sub}\b{/}[\i{base-sub}\b{/}]]},
+ where \i{name-pat} is a regex pattern that will be matched against
+ type names as defined in XML Schema and \i{type-sub} is a C++ type
+ name substitution that should be used instead. If \i{type-sub} is
+ not present or its substitution results in an empty string then
+ the custom type is assumed to have the same name and be defined
+ in the same namespace as the generated class would have. If
+ \i{base-sub} is present and its substitution results in a
+ non-empty string then the generated class is still generated
+ but with the result of this substitution as its name. The pattern
+ and substitutions are in the Perl regular expression format.
+ See also the REGEX AND SHELL QUOTING section below."
+ };
+
+ // Parts.
+ //
+ std::size_t --parts = 1
+ {
+ "<num>",
+ "Split generated source code into <num> parts. This is useful when
+ translating large, monolithic schemas and a C++ compiler is not
+ able to compile the resulting source code at once (usually due
+ to insufficient memory)."
+ };
+
+ NarrowString --parts-suffix = "-"
+ {
+ "<suffix>",
+ "Use <suffix> instead of the default '\cb{-}' to separate the file
+ name from the part number."
+ };
+ };
+ }
+}
diff --git a/xsd/xsd/cxx/tree/options.cxx b/xsd/xsd/cxx/tree/options.cxx
new file mode 100644
index 0000000..820ebac
--- /dev/null
+++ b/xsd/xsd/cxx/tree/options.cxx
@@ -0,0 +1,1149 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+#include <options-parser.hxx>
+//
+// End prologue.
+
+#include <cxx/tree/options.hxx>
+
+#include <map>
+#include <set>
+#include <string>
+#include <vector>
+#include <ostream>
+#include <sstream>
+
+namespace cli
+{
+ template <typename X>
+ struct parser
+ {
+ static void
+ parse (X& x, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string v (s.next ());
+ std::istringstream is (v);
+ if (!(is >> x && is.eof ()))
+ throw invalid_value (o, v);
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <>
+ struct parser<bool>
+ {
+ static void
+ parse (bool& x, scanner& s)
+ {
+ s.next ();
+ x = true;
+ }
+ };
+
+ template <>
+ struct parser<std::string>
+ {
+ static void
+ parse (std::string& x, bool& xs, scanner& s)
+ {
+ const char* o (s.next ());
+
+ if (s.more ())
+ x = s.next ();
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::vector<X> >
+ {
+ static void
+ parse (std::vector<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.push_back (x);
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::set<X> >
+ {
+ static void
+ parse (std::set<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.insert (x);
+ xs = true;
+ }
+ };
+
+ template <typename K, typename V>
+ struct parser<std::map<K, V> >
+ {
+ static void
+ parse (std::map<K, V>& m, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string ov (s.next ());
+ std::string::size_type p = ov.find ('=');
+
+ if (p == std::string::npos)
+ {
+ K k = K ();
+
+ if (!ov.empty ())
+ {
+ std::istringstream ks (ov);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = V ();
+ }
+ else
+ {
+ K k = K ();
+ V v = V ();
+ std::string kstr (ov, 0, p);
+ std::string vstr (ov, p + 1);
+
+ if (!kstr.empty ())
+ {
+ std::istringstream ks (kstr);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ if (!vstr.empty ())
+ {
+ std::istringstream vs (vstr);
+
+ if (!(vs >> v && vs.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = v;
+ }
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X, typename T, T X::*M>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, s);
+ }
+
+ template <typename X, typename T, T X::*M, bool X::*S>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, x.*S, s);
+ }
+}
+
+#include <map>
+#include <cstring>
+
+namespace CXX
+{
+ namespace Tree
+ {
+ // options
+ //
+
+ options::
+ options ()
+ : generate_polymorphic_ (),
+ polymorphic_type_ (),
+ polymorphic_type_specified_ (false),
+ polymorphic_type_all_ (),
+ polymorphic_plate_ (0),
+ polymorphic_plate_specified_ (false),
+ ordered_type_ (),
+ ordered_type_specified_ (false),
+ ordered_type_derived_ (),
+ ordered_type_mixed_ (),
+ ordered_type_all_ (),
+ order_container_ (),
+ order_container_specified_ (false),
+ generate_serialization_ (),
+ generate_ostream_ (),
+ generate_doxygen_ (),
+ generate_comparison_ (),
+ generate_default_ctor_ (),
+ generate_from_base_ctor_ (),
+ suppress_assignment_ (),
+ generate_detach_ (),
+ generate_wildcard_ (),
+ generate_any_type_ (),
+ generate_insertion_ (),
+ generate_insertion_specified_ (false),
+ generate_extraction_ (),
+ generate_extraction_specified_ (false),
+ generate_forward_ (),
+ suppress_parsing_ (),
+ generate_element_type_ (),
+ generate_element_map_ (),
+ generate_intellisense_ (),
+ omit_default_attributes_ (),
+ type_naming_ ("knr"),
+ type_naming_specified_ (false),
+ function_naming_ ("knr"),
+ function_naming_specified_ (false),
+ type_regex_ (),
+ type_regex_specified_ (false),
+ accessor_regex_ (),
+ accessor_regex_specified_ (false),
+ one_accessor_regex_ (),
+ one_accessor_regex_specified_ (false),
+ opt_accessor_regex_ (),
+ opt_accessor_regex_specified_ (false),
+ seq_accessor_regex_ (),
+ seq_accessor_regex_specified_ (false),
+ modifier_regex_ (),
+ modifier_regex_specified_ (false),
+ one_modifier_regex_ (),
+ one_modifier_regex_specified_ (false),
+ opt_modifier_regex_ (),
+ opt_modifier_regex_specified_ (false),
+ seq_modifier_regex_ (),
+ seq_modifier_regex_specified_ (false),
+ parser_regex_ (),
+ parser_regex_specified_ (false),
+ serializer_regex_ (),
+ serializer_regex_specified_ (false),
+ const_regex_ (),
+ const_regex_specified_ (false),
+ enumerator_regex_ (),
+ enumerator_regex_specified_ (false),
+ element_type_regex_ (),
+ element_type_regex_specified_ (false),
+ name_regex_trace_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_all_ (),
+ root_element_none_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ custom_type_ (),
+ custom_type_specified_ (false),
+ custom_type_regex_ (),
+ custom_type_regex_specified_ (false),
+ parts_ (1),
+ parts_specified_ (false),
+ parts_suffix_ ("-"),
+ parts_suffix_specified_ (false)
+ {
+ }
+
+ options::
+ options (int& argc,
+ char** argv,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : generate_polymorphic_ (),
+ polymorphic_type_ (),
+ polymorphic_type_specified_ (false),
+ polymorphic_type_all_ (),
+ polymorphic_plate_ (0),
+ polymorphic_plate_specified_ (false),
+ ordered_type_ (),
+ ordered_type_specified_ (false),
+ ordered_type_derived_ (),
+ ordered_type_mixed_ (),
+ ordered_type_all_ (),
+ order_container_ (),
+ order_container_specified_ (false),
+ generate_serialization_ (),
+ generate_ostream_ (),
+ generate_doxygen_ (),
+ generate_comparison_ (),
+ generate_default_ctor_ (),
+ generate_from_base_ctor_ (),
+ suppress_assignment_ (),
+ generate_detach_ (),
+ generate_wildcard_ (),
+ generate_any_type_ (),
+ generate_insertion_ (),
+ generate_insertion_specified_ (false),
+ generate_extraction_ (),
+ generate_extraction_specified_ (false),
+ generate_forward_ (),
+ suppress_parsing_ (),
+ generate_element_type_ (),
+ generate_element_map_ (),
+ generate_intellisense_ (),
+ omit_default_attributes_ (),
+ type_naming_ ("knr"),
+ type_naming_specified_ (false),
+ function_naming_ ("knr"),
+ function_naming_specified_ (false),
+ type_regex_ (),
+ type_regex_specified_ (false),
+ accessor_regex_ (),
+ accessor_regex_specified_ (false),
+ one_accessor_regex_ (),
+ one_accessor_regex_specified_ (false),
+ opt_accessor_regex_ (),
+ opt_accessor_regex_specified_ (false),
+ seq_accessor_regex_ (),
+ seq_accessor_regex_specified_ (false),
+ modifier_regex_ (),
+ modifier_regex_specified_ (false),
+ one_modifier_regex_ (),
+ one_modifier_regex_specified_ (false),
+ opt_modifier_regex_ (),
+ opt_modifier_regex_specified_ (false),
+ seq_modifier_regex_ (),
+ seq_modifier_regex_specified_ (false),
+ parser_regex_ (),
+ parser_regex_specified_ (false),
+ serializer_regex_ (),
+ serializer_regex_specified_ (false),
+ const_regex_ (),
+ const_regex_specified_ (false),
+ enumerator_regex_ (),
+ enumerator_regex_specified_ (false),
+ element_type_regex_ (),
+ element_type_regex_specified_ (false),
+ name_regex_trace_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_all_ (),
+ root_element_none_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ custom_type_ (),
+ custom_type_specified_ (false),
+ custom_type_regex_ (),
+ custom_type_regex_specified_ (false),
+ parts_ (1),
+ parts_specified_ (false),
+ parts_suffix_ ("-"),
+ parts_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (argc, argv, erase);
+ _parse (s, opt, arg);
+ }
+
+ options::
+ options (int start,
+ int& argc,
+ char** argv,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : generate_polymorphic_ (),
+ polymorphic_type_ (),
+ polymorphic_type_specified_ (false),
+ polymorphic_type_all_ (),
+ polymorphic_plate_ (0),
+ polymorphic_plate_specified_ (false),
+ ordered_type_ (),
+ ordered_type_specified_ (false),
+ ordered_type_derived_ (),
+ ordered_type_mixed_ (),
+ ordered_type_all_ (),
+ order_container_ (),
+ order_container_specified_ (false),
+ generate_serialization_ (),
+ generate_ostream_ (),
+ generate_doxygen_ (),
+ generate_comparison_ (),
+ generate_default_ctor_ (),
+ generate_from_base_ctor_ (),
+ suppress_assignment_ (),
+ generate_detach_ (),
+ generate_wildcard_ (),
+ generate_any_type_ (),
+ generate_insertion_ (),
+ generate_insertion_specified_ (false),
+ generate_extraction_ (),
+ generate_extraction_specified_ (false),
+ generate_forward_ (),
+ suppress_parsing_ (),
+ generate_element_type_ (),
+ generate_element_map_ (),
+ generate_intellisense_ (),
+ omit_default_attributes_ (),
+ type_naming_ ("knr"),
+ type_naming_specified_ (false),
+ function_naming_ ("knr"),
+ function_naming_specified_ (false),
+ type_regex_ (),
+ type_regex_specified_ (false),
+ accessor_regex_ (),
+ accessor_regex_specified_ (false),
+ one_accessor_regex_ (),
+ one_accessor_regex_specified_ (false),
+ opt_accessor_regex_ (),
+ opt_accessor_regex_specified_ (false),
+ seq_accessor_regex_ (),
+ seq_accessor_regex_specified_ (false),
+ modifier_regex_ (),
+ modifier_regex_specified_ (false),
+ one_modifier_regex_ (),
+ one_modifier_regex_specified_ (false),
+ opt_modifier_regex_ (),
+ opt_modifier_regex_specified_ (false),
+ seq_modifier_regex_ (),
+ seq_modifier_regex_specified_ (false),
+ parser_regex_ (),
+ parser_regex_specified_ (false),
+ serializer_regex_ (),
+ serializer_regex_specified_ (false),
+ const_regex_ (),
+ const_regex_specified_ (false),
+ enumerator_regex_ (),
+ enumerator_regex_specified_ (false),
+ element_type_regex_ (),
+ element_type_regex_specified_ (false),
+ name_regex_trace_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_all_ (),
+ root_element_none_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ custom_type_ (),
+ custom_type_specified_ (false),
+ custom_type_regex_ (),
+ custom_type_regex_specified_ (false),
+ parts_ (1),
+ parts_specified_ (false),
+ parts_suffix_ ("-"),
+ parts_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (start, argc, argv, erase);
+ _parse (s, opt, arg);
+ }
+
+ options::
+ options (int& argc,
+ char** argv,
+ int& end,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : generate_polymorphic_ (),
+ polymorphic_type_ (),
+ polymorphic_type_specified_ (false),
+ polymorphic_type_all_ (),
+ polymorphic_plate_ (0),
+ polymorphic_plate_specified_ (false),
+ ordered_type_ (),
+ ordered_type_specified_ (false),
+ ordered_type_derived_ (),
+ ordered_type_mixed_ (),
+ ordered_type_all_ (),
+ order_container_ (),
+ order_container_specified_ (false),
+ generate_serialization_ (),
+ generate_ostream_ (),
+ generate_doxygen_ (),
+ generate_comparison_ (),
+ generate_default_ctor_ (),
+ generate_from_base_ctor_ (),
+ suppress_assignment_ (),
+ generate_detach_ (),
+ generate_wildcard_ (),
+ generate_any_type_ (),
+ generate_insertion_ (),
+ generate_insertion_specified_ (false),
+ generate_extraction_ (),
+ generate_extraction_specified_ (false),
+ generate_forward_ (),
+ suppress_parsing_ (),
+ generate_element_type_ (),
+ generate_element_map_ (),
+ generate_intellisense_ (),
+ omit_default_attributes_ (),
+ type_naming_ ("knr"),
+ type_naming_specified_ (false),
+ function_naming_ ("knr"),
+ function_naming_specified_ (false),
+ type_regex_ (),
+ type_regex_specified_ (false),
+ accessor_regex_ (),
+ accessor_regex_specified_ (false),
+ one_accessor_regex_ (),
+ one_accessor_regex_specified_ (false),
+ opt_accessor_regex_ (),
+ opt_accessor_regex_specified_ (false),
+ seq_accessor_regex_ (),
+ seq_accessor_regex_specified_ (false),
+ modifier_regex_ (),
+ modifier_regex_specified_ (false),
+ one_modifier_regex_ (),
+ one_modifier_regex_specified_ (false),
+ opt_modifier_regex_ (),
+ opt_modifier_regex_specified_ (false),
+ seq_modifier_regex_ (),
+ seq_modifier_regex_specified_ (false),
+ parser_regex_ (),
+ parser_regex_specified_ (false),
+ serializer_regex_ (),
+ serializer_regex_specified_ (false),
+ const_regex_ (),
+ const_regex_specified_ (false),
+ enumerator_regex_ (),
+ enumerator_regex_specified_ (false),
+ element_type_regex_ (),
+ element_type_regex_specified_ (false),
+ name_regex_trace_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_all_ (),
+ root_element_none_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ custom_type_ (),
+ custom_type_specified_ (false),
+ custom_type_regex_ (),
+ custom_type_regex_specified_ (false),
+ parts_ (1),
+ parts_specified_ (false),
+ parts_suffix_ ("-"),
+ parts_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (argc, argv, erase);
+ _parse (s, opt, arg);
+ end = s.end ();
+ }
+
+ options::
+ options (int start,
+ int& argc,
+ char** argv,
+ int& end,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : generate_polymorphic_ (),
+ polymorphic_type_ (),
+ polymorphic_type_specified_ (false),
+ polymorphic_type_all_ (),
+ polymorphic_plate_ (0),
+ polymorphic_plate_specified_ (false),
+ ordered_type_ (),
+ ordered_type_specified_ (false),
+ ordered_type_derived_ (),
+ ordered_type_mixed_ (),
+ ordered_type_all_ (),
+ order_container_ (),
+ order_container_specified_ (false),
+ generate_serialization_ (),
+ generate_ostream_ (),
+ generate_doxygen_ (),
+ generate_comparison_ (),
+ generate_default_ctor_ (),
+ generate_from_base_ctor_ (),
+ suppress_assignment_ (),
+ generate_detach_ (),
+ generate_wildcard_ (),
+ generate_any_type_ (),
+ generate_insertion_ (),
+ generate_insertion_specified_ (false),
+ generate_extraction_ (),
+ generate_extraction_specified_ (false),
+ generate_forward_ (),
+ suppress_parsing_ (),
+ generate_element_type_ (),
+ generate_element_map_ (),
+ generate_intellisense_ (),
+ omit_default_attributes_ (),
+ type_naming_ ("knr"),
+ type_naming_specified_ (false),
+ function_naming_ ("knr"),
+ function_naming_specified_ (false),
+ type_regex_ (),
+ type_regex_specified_ (false),
+ accessor_regex_ (),
+ accessor_regex_specified_ (false),
+ one_accessor_regex_ (),
+ one_accessor_regex_specified_ (false),
+ opt_accessor_regex_ (),
+ opt_accessor_regex_specified_ (false),
+ seq_accessor_regex_ (),
+ seq_accessor_regex_specified_ (false),
+ modifier_regex_ (),
+ modifier_regex_specified_ (false),
+ one_modifier_regex_ (),
+ one_modifier_regex_specified_ (false),
+ opt_modifier_regex_ (),
+ opt_modifier_regex_specified_ (false),
+ seq_modifier_regex_ (),
+ seq_modifier_regex_specified_ (false),
+ parser_regex_ (),
+ parser_regex_specified_ (false),
+ serializer_regex_ (),
+ serializer_regex_specified_ (false),
+ const_regex_ (),
+ const_regex_specified_ (false),
+ enumerator_regex_ (),
+ enumerator_regex_specified_ (false),
+ element_type_regex_ (),
+ element_type_regex_specified_ (false),
+ name_regex_trace_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_all_ (),
+ root_element_none_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ custom_type_ (),
+ custom_type_specified_ (false),
+ custom_type_regex_ (),
+ custom_type_regex_specified_ (false),
+ parts_ (1),
+ parts_specified_ (false),
+ parts_suffix_ ("-"),
+ parts_suffix_specified_ (false)
+ {
+ ::cli::argv_scanner s (start, argc, argv, erase);
+ _parse (s, opt, arg);
+ end = s.end ();
+ }
+
+ options::
+ options (::cli::scanner& s,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+ : generate_polymorphic_ (),
+ polymorphic_type_ (),
+ polymorphic_type_specified_ (false),
+ polymorphic_type_all_ (),
+ polymorphic_plate_ (0),
+ polymorphic_plate_specified_ (false),
+ ordered_type_ (),
+ ordered_type_specified_ (false),
+ ordered_type_derived_ (),
+ ordered_type_mixed_ (),
+ ordered_type_all_ (),
+ order_container_ (),
+ order_container_specified_ (false),
+ generate_serialization_ (),
+ generate_ostream_ (),
+ generate_doxygen_ (),
+ generate_comparison_ (),
+ generate_default_ctor_ (),
+ generate_from_base_ctor_ (),
+ suppress_assignment_ (),
+ generate_detach_ (),
+ generate_wildcard_ (),
+ generate_any_type_ (),
+ generate_insertion_ (),
+ generate_insertion_specified_ (false),
+ generate_extraction_ (),
+ generate_extraction_specified_ (false),
+ generate_forward_ (),
+ suppress_parsing_ (),
+ generate_element_type_ (),
+ generate_element_map_ (),
+ generate_intellisense_ (),
+ omit_default_attributes_ (),
+ type_naming_ ("knr"),
+ type_naming_specified_ (false),
+ function_naming_ ("knr"),
+ function_naming_specified_ (false),
+ type_regex_ (),
+ type_regex_specified_ (false),
+ accessor_regex_ (),
+ accessor_regex_specified_ (false),
+ one_accessor_regex_ (),
+ one_accessor_regex_specified_ (false),
+ opt_accessor_regex_ (),
+ opt_accessor_regex_specified_ (false),
+ seq_accessor_regex_ (),
+ seq_accessor_regex_specified_ (false),
+ modifier_regex_ (),
+ modifier_regex_specified_ (false),
+ one_modifier_regex_ (),
+ one_modifier_regex_specified_ (false),
+ opt_modifier_regex_ (),
+ opt_modifier_regex_specified_ (false),
+ seq_modifier_regex_ (),
+ seq_modifier_regex_specified_ (false),
+ parser_regex_ (),
+ parser_regex_specified_ (false),
+ serializer_regex_ (),
+ serializer_regex_specified_ (false),
+ const_regex_ (),
+ const_regex_specified_ (false),
+ enumerator_regex_ (),
+ enumerator_regex_specified_ (false),
+ element_type_regex_ (),
+ element_type_regex_specified_ (false),
+ name_regex_trace_ (),
+ root_element_first_ (),
+ root_element_last_ (),
+ root_element_all_ (),
+ root_element_none_ (),
+ root_element_ (),
+ root_element_specified_ (false),
+ custom_type_ (),
+ custom_type_specified_ (false),
+ custom_type_regex_ (),
+ custom_type_regex_specified_ (false),
+ parts_ (1),
+ parts_specified_ (false),
+ parts_suffix_ ("-"),
+ parts_suffix_specified_ (false)
+ {
+ _parse (s, opt, arg);
+ }
+
+ void options::
+ print_usage (::std::wostream& os)
+ {
+ os << "--generate-polymorphic Generate polymorphism-aware code." << ::std::endl;
+
+ os << "--polymorphic-type <type> Indicate that <type> is a root of a polymorphic" << ::std::endl
+ << " type hierarchy." << ::std::endl;
+
+ os << "--polymorphic-type-all Indicate that all types should be treated as" << ::std::endl
+ << " polymorphic." << ::std::endl;
+
+ os << "--polymorphic-plate <num> Specify the polymorphic map plate the generated" << ::std::endl
+ << " code should register on." << ::std::endl;
+
+ os << "--ordered-type <type> Indicate that element order in <type> is" << ::std::endl
+ << " significant." << ::std::endl;
+
+ os << "--ordered-type-derived Automatically treat types derived from ordered" << ::std::endl
+ << " bases as also ordered." << ::std::endl;
+
+ os << "--ordered-type-mixed Automatically treat complex types with mixed" << ::std::endl
+ << " content as ordered." << ::std::endl;
+
+ os << "--ordered-type-all Indicate that element order in all types is" << ::std::endl
+ << " significant." << ::std::endl;
+
+ os << "--order-container <type> Specify a custom class template that should be" << ::std::endl
+ << " used as a container for the content order in" << ::std::endl
+ << " ordered types instead of the default" << ::std::endl
+ << " 'std::vector'." << ::std::endl;
+
+ os << "--generate-serialization Generate serialization functions." << ::std::endl;
+
+ os << "--generate-ostream Generate ostream insertion operators" << ::std::endl
+ << " ('operator<<') for generated types." << ::std::endl;
+
+ os << "--generate-doxygen Generate documentation comments suitable for" << ::std::endl
+ << " extraction by the Doxygen documentation system." << ::std::endl;
+
+ os << "--generate-comparison Generate comparison operators ('operator==' and" << ::std::endl
+ << " 'operator!=') for complex types." << ::std::endl;
+
+ os << "--generate-default-ctor Generate default constructors even for types that" << ::std::endl
+ << " have required members." << ::std::endl;
+
+ os << "--generate-from-base-ctor Generate constructors that expect an instance of a" << ::std::endl
+ << " base type followed by all required members." << ::std::endl;
+
+ os << "--suppress-assignment Suppress the generation of copy assignment" << ::std::endl
+ << " operators for complex types." << ::std::endl;
+
+ os << "--generate-detach Generate detach functions for required elements" << ::std::endl
+ << " and attributes." << ::std::endl;
+
+ os << "--generate-wildcard Generate accessors and modifiers as well as" << ::std::endl
+ << " parsing and serialization code for XML Schema" << ::std::endl
+ << " wildcards ('any' and 'anyAttribute')." << ::std::endl;
+
+ os << "--generate-any-type Extract and store content of the XML Schema" << ::std::endl
+ << " 'anyType' type as a DOM fragment." << ::std::endl;
+
+ os << "--generate-insertion <os> Generate data representation stream insertion" << ::std::endl
+ << " operators for the <os> output stream type." << ::std::endl;
+
+ os << "--generate-extraction <is> Generate data representation stream extraction" << ::std::endl
+ << " constructors for the <is> input stream type." << ::std::endl;
+
+ os << "--generate-forward Generate a separate header file with forward" << ::std::endl
+ << " declarations for the types being generated." << ::std::endl;
+
+ os << "--suppress-parsing Suppress the generation of the parsing functions" << ::std::endl
+ << " and constructors." << ::std::endl;
+
+ os << "--generate-element-type Generate types instead of parsing and" << ::std::endl
+ << " serialization functions for root elements." << ::std::endl;
+
+ os << "--generate-element-map Generate a root element map that allows uniform" << ::std::endl
+ << " parsing and serialization of multiple root" << ::std::endl
+ << " elements." << ::std::endl;
+
+ os << "--generate-intellisense Generate workarounds for IntelliSense bugs in" << ::std::endl
+ << " Visual Studio 2005 (8.0)." << ::std::endl;
+
+ os << "--omit-default-attributes Omit attributes with default and fixed values from" << ::std::endl
+ << " serialized XML documents." << ::std::endl;
+
+ os << "--type-naming <style> Specify the type naming convention that should be" << ::std::endl
+ << " used in the generated code." << ::std::endl;
+
+ os << "--function-naming <style> Specify the function naming convention that should" << ::std::endl
+ << " be used in the generated code." << ::std::endl;
+
+ os << "--type-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema type names to C++" << ::std::endl
+ << " type names." << ::std::endl;
+
+ os << "--accessor-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes to C++ accessor function" << ::std::endl
+ << " names." << ::std::endl;
+
+ os << "--one-accessor-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes with cardinality one to C++" << ::std::endl
+ << " accessor function names." << ::std::endl;
+
+ os << "--opt-accessor-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes with cardinality optional to" << ::std::endl
+ << " C++ accessor function names." << ::std::endl;
+
+ os << "--seq-accessor-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes with cardinality sequence to" << ::std::endl
+ << " C++ accessor function names." << ::std::endl;
+
+ os << "--modifier-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes to C++ modifier function" << ::std::endl
+ << " names." << ::std::endl;
+
+ os << "--one-modifier-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes with cardinality one to C++" << ::std::endl
+ << " modifier function names." << ::std::endl;
+
+ os << "--opt-modifier-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes with cardinality optional to" << ::std::endl
+ << " C++ modifier function names." << ::std::endl;
+
+ os << "--seq-modifier-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema names of" << ::std::endl
+ << " elements/attributes with cardinality sequence to" << ::std::endl
+ << " C++ modifier function names." << ::std::endl;
+
+ os << "--parser-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema element names to C++" << ::std::endl
+ << " parsing function names." << ::std::endl;
+
+ os << "--serializer-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema element names to C++" << ::std::endl
+ << " serialization function names." << ::std::endl;
+
+ os << "--const-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema-derived names to C++" << ::std::endl
+ << " constant names." << ::std::endl;
+
+ os << "--enumerator-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema enumeration values to" << ::std::endl
+ << " C++ enumerator names." << ::std::endl;
+
+ os << "--element-type-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate XML Schema element names to C++" << ::std::endl
+ << " element type names." << ::std::endl;
+
+ os << "--name-regex-trace Trace the process of applying regular expressions" << ::std::endl
+ << " specified with the name transformation options." << ::std::endl;
+
+ os << "--root-element-first Treat only the first global element as a document" << ::std::endl
+ << " root." << ::std::endl;
+
+ os << "--root-element-last Treat only the last global element as a document" << ::std::endl
+ << " root." << ::std::endl;
+
+ os << "--root-element-all Treat all global elements as document roots." << ::std::endl;
+
+ os << "--root-element-none Do not treat any global elements as document" << ::std::endl
+ << " roots." << ::std::endl;
+
+ os << "--root-element <element> Treat only <element> as a document root." << ::std::endl;
+
+ os << "--custom-type <map> Use a custom C++ type instead of the generated" << ::std::endl
+ << " class." << ::std::endl;
+
+ os << "--custom-type-regex <regex> Use custom C++ types instead of the generated" << ::std::endl
+ << " classes." << ::std::endl;
+
+ os << "--parts <num> Split generated source code into <num> parts." << ::std::endl;
+
+ os << "--parts-suffix <suffix> Use <suffix> instead of the default ''-'' to" << ::std::endl
+ << " separate the file name from the part number." << ::std::endl;
+ }
+
+ typedef
+ std::map<std::string, void (*) (options&, ::cli::scanner&)>
+ _cli_options_map;
+
+ static _cli_options_map _cli_options_map_;
+
+ struct _cli_options_map_init
+ {
+ _cli_options_map_init ()
+ {
+ _cli_options_map_["--generate-polymorphic"] =
+ &::cli::thunk< options, bool, &options::generate_polymorphic_ >;
+ _cli_options_map_["--polymorphic-type"] =
+ &::cli::thunk< options, NarrowStrings, &options::polymorphic_type_,
+ &options::polymorphic_type_specified_ >;
+ _cli_options_map_["--polymorphic-type-all"] =
+ &::cli::thunk< options, bool, &options::polymorphic_type_all_ >;
+ _cli_options_map_["--polymorphic-plate"] =
+ &::cli::thunk< options, unsigned long, &options::polymorphic_plate_,
+ &options::polymorphic_plate_specified_ >;
+ _cli_options_map_["--ordered-type"] =
+ &::cli::thunk< options, NarrowStrings, &options::ordered_type_,
+ &options::ordered_type_specified_ >;
+ _cli_options_map_["--ordered-type-derived"] =
+ &::cli::thunk< options, bool, &options::ordered_type_derived_ >;
+ _cli_options_map_["--ordered-type-mixed"] =
+ &::cli::thunk< options, bool, &options::ordered_type_mixed_ >;
+ _cli_options_map_["--ordered-type-all"] =
+ &::cli::thunk< options, bool, &options::ordered_type_all_ >;
+ _cli_options_map_["--order-container"] =
+ &::cli::thunk< options, NarrowString, &options::order_container_,
+ &options::order_container_specified_ >;
+ _cli_options_map_["--generate-serialization"] =
+ &::cli::thunk< options, bool, &options::generate_serialization_ >;
+ _cli_options_map_["--generate-ostream"] =
+ &::cli::thunk< options, bool, &options::generate_ostream_ >;
+ _cli_options_map_["--generate-doxygen"] =
+ &::cli::thunk< options, bool, &options::generate_doxygen_ >;
+ _cli_options_map_["--generate-comparison"] =
+ &::cli::thunk< options, bool, &options::generate_comparison_ >;
+ _cli_options_map_["--generate-default-ctor"] =
+ &::cli::thunk< options, bool, &options::generate_default_ctor_ >;
+ _cli_options_map_["--generate-from-base-ctor"] =
+ &::cli::thunk< options, bool, &options::generate_from_base_ctor_ >;
+ _cli_options_map_["--suppress-assignment"] =
+ &::cli::thunk< options, bool, &options::suppress_assignment_ >;
+ _cli_options_map_["--generate-detach"] =
+ &::cli::thunk< options, bool, &options::generate_detach_ >;
+ _cli_options_map_["--generate-wildcard"] =
+ &::cli::thunk< options, bool, &options::generate_wildcard_ >;
+ _cli_options_map_["--generate-any-type"] =
+ &::cli::thunk< options, bool, &options::generate_any_type_ >;
+ _cli_options_map_["--generate-insertion"] =
+ &::cli::thunk< options, NarrowStrings, &options::generate_insertion_,
+ &options::generate_insertion_specified_ >;
+ _cli_options_map_["--generate-extraction"] =
+ &::cli::thunk< options, NarrowStrings, &options::generate_extraction_,
+ &options::generate_extraction_specified_ >;
+ _cli_options_map_["--generate-forward"] =
+ &::cli::thunk< options, bool, &options::generate_forward_ >;
+ _cli_options_map_["--suppress-parsing"] =
+ &::cli::thunk< options, bool, &options::suppress_parsing_ >;
+ _cli_options_map_["--generate-element-type"] =
+ &::cli::thunk< options, bool, &options::generate_element_type_ >;
+ _cli_options_map_["--generate-element-map"] =
+ &::cli::thunk< options, bool, &options::generate_element_map_ >;
+ _cli_options_map_["--generate-intellisense"] =
+ &::cli::thunk< options, bool, &options::generate_intellisense_ >;
+ _cli_options_map_["--omit-default-attributes"] =
+ &::cli::thunk< options, bool, &options::omit_default_attributes_ >;
+ _cli_options_map_["--type-naming"] =
+ &::cli::thunk< options, NarrowString, &options::type_naming_,
+ &options::type_naming_specified_ >;
+ _cli_options_map_["--function-naming"] =
+ &::cli::thunk< options, NarrowString, &options::function_naming_,
+ &options::function_naming_specified_ >;
+ _cli_options_map_["--type-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::type_regex_,
+ &options::type_regex_specified_ >;
+ _cli_options_map_["--accessor-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::accessor_regex_,
+ &options::accessor_regex_specified_ >;
+ _cli_options_map_["--one-accessor-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::one_accessor_regex_,
+ &options::one_accessor_regex_specified_ >;
+ _cli_options_map_["--opt-accessor-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::opt_accessor_regex_,
+ &options::opt_accessor_regex_specified_ >;
+ _cli_options_map_["--seq-accessor-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::seq_accessor_regex_,
+ &options::seq_accessor_regex_specified_ >;
+ _cli_options_map_["--modifier-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::modifier_regex_,
+ &options::modifier_regex_specified_ >;
+ _cli_options_map_["--one-modifier-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::one_modifier_regex_,
+ &options::one_modifier_regex_specified_ >;
+ _cli_options_map_["--opt-modifier-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::opt_modifier_regex_,
+ &options::opt_modifier_regex_specified_ >;
+ _cli_options_map_["--seq-modifier-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::seq_modifier_regex_,
+ &options::seq_modifier_regex_specified_ >;
+ _cli_options_map_["--parser-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::parser_regex_,
+ &options::parser_regex_specified_ >;
+ _cli_options_map_["--serializer-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::serializer_regex_,
+ &options::serializer_regex_specified_ >;
+ _cli_options_map_["--const-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::const_regex_,
+ &options::const_regex_specified_ >;
+ _cli_options_map_["--enumerator-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::enumerator_regex_,
+ &options::enumerator_regex_specified_ >;
+ _cli_options_map_["--element-type-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::element_type_regex_,
+ &options::element_type_regex_specified_ >;
+ _cli_options_map_["--name-regex-trace"] =
+ &::cli::thunk< options, bool, &options::name_regex_trace_ >;
+ _cli_options_map_["--root-element-first"] =
+ &::cli::thunk< options, bool, &options::root_element_first_ >;
+ _cli_options_map_["--root-element-last"] =
+ &::cli::thunk< options, bool, &options::root_element_last_ >;
+ _cli_options_map_["--root-element-all"] =
+ &::cli::thunk< options, bool, &options::root_element_all_ >;
+ _cli_options_map_["--root-element-none"] =
+ &::cli::thunk< options, bool, &options::root_element_none_ >;
+ _cli_options_map_["--root-element"] =
+ &::cli::thunk< options, NarrowStrings, &options::root_element_,
+ &options::root_element_specified_ >;
+ _cli_options_map_["--custom-type"] =
+ &::cli::thunk< options, NarrowStrings, &options::custom_type_,
+ &options::custom_type_specified_ >;
+ _cli_options_map_["--custom-type-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::custom_type_regex_,
+ &options::custom_type_regex_specified_ >;
+ _cli_options_map_["--parts"] =
+ &::cli::thunk< options, std::size_t, &options::parts_,
+ &options::parts_specified_ >;
+ _cli_options_map_["--parts-suffix"] =
+ &::cli::thunk< options, NarrowString, &options::parts_suffix_,
+ &options::parts_suffix_specified_ >;
+ }
+ };
+
+ static _cli_options_map_init _cli_options_map_init_;
+
+ bool options::
+ _parse (const char* o, ::cli::scanner& s)
+ {
+ _cli_options_map::const_iterator i (_cli_options_map_.find (o));
+
+ if (i != _cli_options_map_.end ())
+ {
+ (*(i->second)) (*this, s);
+ return true;
+ }
+
+ // options base
+ //
+ if (::CXX::options::_parse (o, s))
+ return true;
+
+ return false;
+ }
+
+ void options::
+ _parse (::cli::scanner& s,
+ ::cli::unknown_mode opt_mode,
+ ::cli::unknown_mode arg_mode)
+ {
+ bool opt = true;
+
+ while (s.more ())
+ {
+ const char* o = s.peek ();
+
+ if (std::strcmp (o, "--") == 0)
+ {
+ s.skip ();
+ opt = false;
+ continue;
+ }
+
+ if (opt && _parse (o, s));
+ else if (opt && std::strncmp (o, "-", 1) == 0 && o[1] != '\0')
+ {
+ switch (opt_mode)
+ {
+ case ::cli::unknown_mode::skip:
+ {
+ s.skip ();
+ continue;
+ }
+ case ::cli::unknown_mode::stop:
+ {
+ break;
+ }
+ case ::cli::unknown_mode::fail:
+ {
+ throw ::cli::unknown_option (o);
+ }
+ }
+
+ break;
+ }
+ else
+ {
+ switch (arg_mode)
+ {
+ case ::cli::unknown_mode::skip:
+ {
+ s.skip ();
+ continue;
+ }
+ case ::cli::unknown_mode::stop:
+ {
+ break;
+ }
+ case ::cli::unknown_mode::fail:
+ {
+ throw ::cli::unknown_argument (o);
+ }
+ }
+
+ break;
+ }
+ }
+ }
+ }
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
diff --git a/xsd/xsd/cxx/tree/options.hxx b/xsd/xsd/cxx/tree/options.hxx
new file mode 100644
index 0000000..b190dc5
--- /dev/null
+++ b/xsd/xsd/cxx/tree/options.hxx
@@ -0,0 +1,411 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+#ifndef CXX_TREE_OPTIONS_HXX
+#define CXX_TREE_OPTIONS_HXX
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+#include <cstddef>
+
+#include <types.hxx>
+
+#include <cxx/options.hxx>
+
+namespace CXX
+{
+ namespace Tree
+ {
+ class options: public ::CXX::options
+ {
+ public:
+ options (int& argc,
+ char** argv,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (int start,
+ int& argc,
+ char** argv,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (int& argc,
+ char** argv,
+ int& end,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (int start,
+ int& argc,
+ char** argv,
+ int& end,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options (::cli::scanner&,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ options ();
+
+ // Option accessors.
+ //
+ const bool&
+ generate_polymorphic () const;
+
+ const NarrowStrings&
+ polymorphic_type () const;
+
+ bool
+ polymorphic_type_specified () const;
+
+ const bool&
+ polymorphic_type_all () const;
+
+ const unsigned long&
+ polymorphic_plate () const;
+
+ bool
+ polymorphic_plate_specified () const;
+
+ const NarrowStrings&
+ ordered_type () const;
+
+ bool
+ ordered_type_specified () const;
+
+ const bool&
+ ordered_type_derived () const;
+
+ const bool&
+ ordered_type_mixed () const;
+
+ const bool&
+ ordered_type_all () const;
+
+ const NarrowString&
+ order_container () const;
+
+ bool
+ order_container_specified () const;
+
+ const bool&
+ generate_serialization () const;
+
+ const bool&
+ generate_ostream () const;
+
+ const bool&
+ generate_doxygen () const;
+
+ const bool&
+ generate_comparison () const;
+
+ const bool&
+ generate_default_ctor () const;
+
+ const bool&
+ generate_from_base_ctor () const;
+
+ const bool&
+ suppress_assignment () const;
+
+ const bool&
+ generate_detach () const;
+
+ const bool&
+ generate_wildcard () const;
+
+ const bool&
+ generate_any_type () const;
+
+ const NarrowStrings&
+ generate_insertion () const;
+
+ bool
+ generate_insertion_specified () const;
+
+ const NarrowStrings&
+ generate_extraction () const;
+
+ bool
+ generate_extraction_specified () const;
+
+ const bool&
+ generate_forward () const;
+
+ const bool&
+ suppress_parsing () const;
+
+ const bool&
+ generate_element_type () const;
+
+ const bool&
+ generate_element_map () const;
+
+ const bool&
+ generate_intellisense () const;
+
+ const bool&
+ omit_default_attributes () const;
+
+ const NarrowString&
+ type_naming () const;
+
+ bool
+ type_naming_specified () const;
+
+ const NarrowString&
+ function_naming () const;
+
+ bool
+ function_naming_specified () const;
+
+ const NarrowStrings&
+ type_regex () const;
+
+ bool
+ type_regex_specified () const;
+
+ const NarrowStrings&
+ accessor_regex () const;
+
+ bool
+ accessor_regex_specified () const;
+
+ const NarrowStrings&
+ one_accessor_regex () const;
+
+ bool
+ one_accessor_regex_specified () const;
+
+ const NarrowStrings&
+ opt_accessor_regex () const;
+
+ bool
+ opt_accessor_regex_specified () const;
+
+ const NarrowStrings&
+ seq_accessor_regex () const;
+
+ bool
+ seq_accessor_regex_specified () const;
+
+ const NarrowStrings&
+ modifier_regex () const;
+
+ bool
+ modifier_regex_specified () const;
+
+ const NarrowStrings&
+ one_modifier_regex () const;
+
+ bool
+ one_modifier_regex_specified () const;
+
+ const NarrowStrings&
+ opt_modifier_regex () const;
+
+ bool
+ opt_modifier_regex_specified () const;
+
+ const NarrowStrings&
+ seq_modifier_regex () const;
+
+ bool
+ seq_modifier_regex_specified () const;
+
+ const NarrowStrings&
+ parser_regex () const;
+
+ bool
+ parser_regex_specified () const;
+
+ const NarrowStrings&
+ serializer_regex () const;
+
+ bool
+ serializer_regex_specified () const;
+
+ const NarrowStrings&
+ const_regex () const;
+
+ bool
+ const_regex_specified () const;
+
+ const NarrowStrings&
+ enumerator_regex () const;
+
+ bool
+ enumerator_regex_specified () const;
+
+ const NarrowStrings&
+ element_type_regex () const;
+
+ bool
+ element_type_regex_specified () const;
+
+ const bool&
+ name_regex_trace () const;
+
+ const bool&
+ root_element_first () const;
+
+ const bool&
+ root_element_last () const;
+
+ const bool&
+ root_element_all () const;
+
+ const bool&
+ root_element_none () const;
+
+ const NarrowStrings&
+ root_element () const;
+
+ bool
+ root_element_specified () const;
+
+ const NarrowStrings&
+ custom_type () const;
+
+ bool
+ custom_type_specified () const;
+
+ const NarrowStrings&
+ custom_type_regex () const;
+
+ bool
+ custom_type_regex_specified () const;
+
+ const std::size_t&
+ parts () const;
+
+ bool
+ parts_specified () const;
+
+ const NarrowString&
+ parts_suffix () const;
+
+ bool
+ parts_suffix_specified () const;
+
+ // Print usage information.
+ //
+ static void
+ print_usage (::std::wostream&);
+
+ // Implementation details.
+ //
+ protected:
+ bool
+ _parse (const char*, ::cli::scanner&);
+
+ private:
+ void
+ _parse (::cli::scanner&,
+ ::cli::unknown_mode option,
+ ::cli::unknown_mode argument);
+
+ public:
+ bool generate_polymorphic_;
+ NarrowStrings polymorphic_type_;
+ bool polymorphic_type_specified_;
+ bool polymorphic_type_all_;
+ unsigned long polymorphic_plate_;
+ bool polymorphic_plate_specified_;
+ NarrowStrings ordered_type_;
+ bool ordered_type_specified_;
+ bool ordered_type_derived_;
+ bool ordered_type_mixed_;
+ bool ordered_type_all_;
+ NarrowString order_container_;
+ bool order_container_specified_;
+ bool generate_serialization_;
+ bool generate_ostream_;
+ bool generate_doxygen_;
+ bool generate_comparison_;
+ bool generate_default_ctor_;
+ bool generate_from_base_ctor_;
+ bool suppress_assignment_;
+ bool generate_detach_;
+ bool generate_wildcard_;
+ bool generate_any_type_;
+ NarrowStrings generate_insertion_;
+ bool generate_insertion_specified_;
+ NarrowStrings generate_extraction_;
+ bool generate_extraction_specified_;
+ bool generate_forward_;
+ bool suppress_parsing_;
+ bool generate_element_type_;
+ bool generate_element_map_;
+ bool generate_intellisense_;
+ bool omit_default_attributes_;
+ NarrowString type_naming_;
+ bool type_naming_specified_;
+ NarrowString function_naming_;
+ bool function_naming_specified_;
+ NarrowStrings type_regex_;
+ bool type_regex_specified_;
+ NarrowStrings accessor_regex_;
+ bool accessor_regex_specified_;
+ NarrowStrings one_accessor_regex_;
+ bool one_accessor_regex_specified_;
+ NarrowStrings opt_accessor_regex_;
+ bool opt_accessor_regex_specified_;
+ NarrowStrings seq_accessor_regex_;
+ bool seq_accessor_regex_specified_;
+ NarrowStrings modifier_regex_;
+ bool modifier_regex_specified_;
+ NarrowStrings one_modifier_regex_;
+ bool one_modifier_regex_specified_;
+ NarrowStrings opt_modifier_regex_;
+ bool opt_modifier_regex_specified_;
+ NarrowStrings seq_modifier_regex_;
+ bool seq_modifier_regex_specified_;
+ NarrowStrings parser_regex_;
+ bool parser_regex_specified_;
+ NarrowStrings serializer_regex_;
+ bool serializer_regex_specified_;
+ NarrowStrings const_regex_;
+ bool const_regex_specified_;
+ NarrowStrings enumerator_regex_;
+ bool enumerator_regex_specified_;
+ NarrowStrings element_type_regex_;
+ bool element_type_regex_specified_;
+ bool name_regex_trace_;
+ bool root_element_first_;
+ bool root_element_last_;
+ bool root_element_all_;
+ bool root_element_none_;
+ NarrowStrings root_element_;
+ bool root_element_specified_;
+ NarrowStrings custom_type_;
+ bool custom_type_specified_;
+ NarrowStrings custom_type_regex_;
+ bool custom_type_regex_specified_;
+ std::size_t parts_;
+ bool parts_specified_;
+ NarrowString parts_suffix_;
+ bool parts_suffix_specified_;
+ };
+ }
+}
+
+#include <cxx/tree/options.ixx>
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
+#endif // CXX_TREE_OPTIONS_HXX
diff --git a/xsd/xsd/cxx/tree/options.ixx b/xsd/xsd/cxx/tree/options.ixx
new file mode 100644
index 0000000..824fbee
--- /dev/null
+++ b/xsd/xsd/cxx/tree/options.ixx
@@ -0,0 +1,502 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+namespace CXX
+{
+ namespace Tree
+ {
+ // options
+ //
+
+ inline const bool& options::
+ generate_polymorphic () const
+ {
+ return this->generate_polymorphic_;
+ }
+
+ inline const NarrowStrings& options::
+ polymorphic_type () const
+ {
+ return this->polymorphic_type_;
+ }
+
+ inline bool options::
+ polymorphic_type_specified () const
+ {
+ return this->polymorphic_type_specified_;
+ }
+
+ inline const bool& options::
+ polymorphic_type_all () const
+ {
+ return this->polymorphic_type_all_;
+ }
+
+ inline const unsigned long& options::
+ polymorphic_plate () const
+ {
+ return this->polymorphic_plate_;
+ }
+
+ inline bool options::
+ polymorphic_plate_specified () const
+ {
+ return this->polymorphic_plate_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ ordered_type () const
+ {
+ return this->ordered_type_;
+ }
+
+ inline bool options::
+ ordered_type_specified () const
+ {
+ return this->ordered_type_specified_;
+ }
+
+ inline const bool& options::
+ ordered_type_derived () const
+ {
+ return this->ordered_type_derived_;
+ }
+
+ inline const bool& options::
+ ordered_type_mixed () const
+ {
+ return this->ordered_type_mixed_;
+ }
+
+ inline const bool& options::
+ ordered_type_all () const
+ {
+ return this->ordered_type_all_;
+ }
+
+ inline const NarrowString& options::
+ order_container () const
+ {
+ return this->order_container_;
+ }
+
+ inline bool options::
+ order_container_specified () const
+ {
+ return this->order_container_specified_;
+ }
+
+ inline const bool& options::
+ generate_serialization () const
+ {
+ return this->generate_serialization_;
+ }
+
+ inline const bool& options::
+ generate_ostream () const
+ {
+ return this->generate_ostream_;
+ }
+
+ inline const bool& options::
+ generate_doxygen () const
+ {
+ return this->generate_doxygen_;
+ }
+
+ inline const bool& options::
+ generate_comparison () const
+ {
+ return this->generate_comparison_;
+ }
+
+ inline const bool& options::
+ generate_default_ctor () const
+ {
+ return this->generate_default_ctor_;
+ }
+
+ inline const bool& options::
+ generate_from_base_ctor () const
+ {
+ return this->generate_from_base_ctor_;
+ }
+
+ inline const bool& options::
+ suppress_assignment () const
+ {
+ return this->suppress_assignment_;
+ }
+
+ inline const bool& options::
+ generate_detach () const
+ {
+ return this->generate_detach_;
+ }
+
+ inline const bool& options::
+ generate_wildcard () const
+ {
+ return this->generate_wildcard_;
+ }
+
+ inline const bool& options::
+ generate_any_type () const
+ {
+ return this->generate_any_type_;
+ }
+
+ inline const NarrowStrings& options::
+ generate_insertion () const
+ {
+ return this->generate_insertion_;
+ }
+
+ inline bool options::
+ generate_insertion_specified () const
+ {
+ return this->generate_insertion_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ generate_extraction () const
+ {
+ return this->generate_extraction_;
+ }
+
+ inline bool options::
+ generate_extraction_specified () const
+ {
+ return this->generate_extraction_specified_;
+ }
+
+ inline const bool& options::
+ generate_forward () const
+ {
+ return this->generate_forward_;
+ }
+
+ inline const bool& options::
+ suppress_parsing () const
+ {
+ return this->suppress_parsing_;
+ }
+
+ inline const bool& options::
+ generate_element_type () const
+ {
+ return this->generate_element_type_;
+ }
+
+ inline const bool& options::
+ generate_element_map () const
+ {
+ return this->generate_element_map_;
+ }
+
+ inline const bool& options::
+ generate_intellisense () const
+ {
+ return this->generate_intellisense_;
+ }
+
+ inline const bool& options::
+ omit_default_attributes () const
+ {
+ return this->omit_default_attributes_;
+ }
+
+ inline const NarrowString& options::
+ type_naming () const
+ {
+ return this->type_naming_;
+ }
+
+ inline bool options::
+ type_naming_specified () const
+ {
+ return this->type_naming_specified_;
+ }
+
+ inline const NarrowString& options::
+ function_naming () const
+ {
+ return this->function_naming_;
+ }
+
+ inline bool options::
+ function_naming_specified () const
+ {
+ return this->function_naming_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ type_regex () const
+ {
+ return this->type_regex_;
+ }
+
+ inline bool options::
+ type_regex_specified () const
+ {
+ return this->type_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ accessor_regex () const
+ {
+ return this->accessor_regex_;
+ }
+
+ inline bool options::
+ accessor_regex_specified () const
+ {
+ return this->accessor_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ one_accessor_regex () const
+ {
+ return this->one_accessor_regex_;
+ }
+
+ inline bool options::
+ one_accessor_regex_specified () const
+ {
+ return this->one_accessor_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ opt_accessor_regex () const
+ {
+ return this->opt_accessor_regex_;
+ }
+
+ inline bool options::
+ opt_accessor_regex_specified () const
+ {
+ return this->opt_accessor_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ seq_accessor_regex () const
+ {
+ return this->seq_accessor_regex_;
+ }
+
+ inline bool options::
+ seq_accessor_regex_specified () const
+ {
+ return this->seq_accessor_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ modifier_regex () const
+ {
+ return this->modifier_regex_;
+ }
+
+ inline bool options::
+ modifier_regex_specified () const
+ {
+ return this->modifier_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ one_modifier_regex () const
+ {
+ return this->one_modifier_regex_;
+ }
+
+ inline bool options::
+ one_modifier_regex_specified () const
+ {
+ return this->one_modifier_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ opt_modifier_regex () const
+ {
+ return this->opt_modifier_regex_;
+ }
+
+ inline bool options::
+ opt_modifier_regex_specified () const
+ {
+ return this->opt_modifier_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ seq_modifier_regex () const
+ {
+ return this->seq_modifier_regex_;
+ }
+
+ inline bool options::
+ seq_modifier_regex_specified () const
+ {
+ return this->seq_modifier_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ parser_regex () const
+ {
+ return this->parser_regex_;
+ }
+
+ inline bool options::
+ parser_regex_specified () const
+ {
+ return this->parser_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ serializer_regex () const
+ {
+ return this->serializer_regex_;
+ }
+
+ inline bool options::
+ serializer_regex_specified () const
+ {
+ return this->serializer_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ const_regex () const
+ {
+ return this->const_regex_;
+ }
+
+ inline bool options::
+ const_regex_specified () const
+ {
+ return this->const_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ enumerator_regex () const
+ {
+ return this->enumerator_regex_;
+ }
+
+ inline bool options::
+ enumerator_regex_specified () const
+ {
+ return this->enumerator_regex_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ element_type_regex () const
+ {
+ return this->element_type_regex_;
+ }
+
+ inline bool options::
+ element_type_regex_specified () const
+ {
+ return this->element_type_regex_specified_;
+ }
+
+ inline const bool& options::
+ name_regex_trace () const
+ {
+ return this->name_regex_trace_;
+ }
+
+ inline const bool& options::
+ root_element_first () const
+ {
+ return this->root_element_first_;
+ }
+
+ inline const bool& options::
+ root_element_last () const
+ {
+ return this->root_element_last_;
+ }
+
+ inline const bool& options::
+ root_element_all () const
+ {
+ return this->root_element_all_;
+ }
+
+ inline const bool& options::
+ root_element_none () const
+ {
+ return this->root_element_none_;
+ }
+
+ inline const NarrowStrings& options::
+ root_element () const
+ {
+ return this->root_element_;
+ }
+
+ inline bool options::
+ root_element_specified () const
+ {
+ return this->root_element_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ custom_type () const
+ {
+ return this->custom_type_;
+ }
+
+ inline bool options::
+ custom_type_specified () const
+ {
+ return this->custom_type_specified_;
+ }
+
+ inline const NarrowStrings& options::
+ custom_type_regex () const
+ {
+ return this->custom_type_regex_;
+ }
+
+ inline bool options::
+ custom_type_regex_specified () const
+ {
+ return this->custom_type_regex_specified_;
+ }
+
+ inline const std::size_t& options::
+ parts () const
+ {
+ return this->parts_;
+ }
+
+ inline bool options::
+ parts_specified () const
+ {
+ return this->parts_specified_;
+ }
+
+ inline const NarrowString& options::
+ parts_suffix () const
+ {
+ return this->parts_suffix_;
+ }
+
+ inline bool options::
+ parts_suffix_specified () const
+ {
+ return this->parts_suffix_specified_;
+ }
+ }
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
diff --git a/xsd/xsd/cxx/tree/order-processor.cxx b/xsd/xsd/cxx/tree/order-processor.cxx
new file mode 100644
index 0000000..68eee8c
--- /dev/null
+++ b/xsd/xsd/cxx/tree/order-processor.cxx
@@ -0,0 +1,244 @@
+// file : xsde/cxx/tree/order-processor.cxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#include <iostream>
+
+#include <cxx/tree/elements.hxx>
+#include <cxx/tree/order-processor.hxx>
+
+#include <xsd-frontend/semantic-graph.hxx>
+#include <xsd-frontend/traversal.hxx>
+
+using namespace std;
+
+namespace CXX
+{
+ namespace Tree
+ {
+ namespace
+ {
+ struct Member: Traversal::Element, Traversal::Any
+ {
+ Member (size_t count): count_ (count) {}
+
+ virtual void
+ traverse (SemanticGraph::Element& e)
+ {
+ if (Context::skip (e))
+ return;
+
+ e.context ().set ("ordered-id", count_++);
+ }
+
+ virtual void
+ traverse (SemanticGraph::Any& a)
+ {
+ a.context ().set ("ordered-id", count_++);
+ }
+
+ size_t count_;
+ };
+
+ //
+ //
+ struct Type: Traversal::Complex
+ {
+ Type (TypeNameSet& ordered_types, bool derived, bool mixed, bool all)
+ : ordered_types_ (ordered_types),
+ derived_ (derived),
+ mixed_ (mixed),
+ all_ (all)
+ {
+ }
+
+ virtual void
+ traverse (SemanticGraph::Complex& c)
+ {
+ SemanticGraph::Context& ctx (c.context ());
+
+ if (!ctx.count ("ordered"))
+ {
+ // First process our base.
+ //
+ if (c.inherits_p ())
+ {
+ SemanticGraph::Type& b (c.inherits ().base ());
+
+ if (!b.context ().count ("ordered"))
+ dispatch (b);
+ }
+
+ // See if our base (not necessarily immediate) is ordered.
+ //
+ using SemanticGraph::Complex;
+
+ Complex* b (0);
+
+ for (Complex* p (&c); p->inherits_p ();)
+ {
+ if ((b = dynamic_cast<Complex*> (&p->inherits ().base ())))
+ {
+ if (Context::ordered_p (*b))
+ break;
+
+ p = b;
+ }
+ else
+ break;
+ }
+
+ bool o (all_ ||
+ (derived_ && b != 0 && Context::ordered_p (*b)) ||
+ (mixed_ && c.mixed_p ()) ||
+ ordered_types_.find (c));
+ ctx.set ("ordered", o);
+
+ // Assign ids to elements and wildcards, calculate total count.
+ //
+ if (o)
+ {
+ size_t count (
+ b != 0 && Context::ordered_p (*b)
+ ? b->context ().get<size_t> ("ordered-count")
+ : 1);
+
+ ctx.set ("ordered-start", count);
+
+ Member m (count);
+ Traversal::Names n (m);
+ names (c, n);
+
+ // Assign content id for mixed text.
+ //
+ if (Context::mixed_p (c) && count == 1)
+ ctx.set ("mixed-ordered-id", m.count_++);
+
+ ctx.set ("ordered-count", m.count_);
+ }
+ }
+ }
+
+ private:
+ TypeNameSet& ordered_types_;
+ bool derived_;
+ bool mixed_;
+ bool all_;
+ };
+
+ // Go into sourced/included/imported schemas while making sure
+ // we don't process the same stuff more than once.
+ //
+ struct Uses: Traversal::Sources,
+ Traversal::Includes,
+ Traversal::Imports
+ {
+ Uses (char const* seen_key)
+ : seen_key_ (seen_key)
+ {
+ }
+
+ virtual void
+ traverse (SemanticGraph::Sources& sr)
+ {
+ SemanticGraph::Schema& s (sr.schema ());
+
+ if (!s.context ().count (seen_key_))
+ {
+ s.context ().set (seen_key_, true);
+ Traversal::Sources::traverse (sr);
+ }
+ }
+
+ virtual void
+ traverse (SemanticGraph::Includes& i)
+ {
+ SemanticGraph::Schema& s (i.schema ());
+
+ if (!s.context ().count (seen_key_))
+ {
+ s.context ().set (seen_key_, true);
+ Traversal::Includes::traverse (i);
+ }
+ }
+
+ virtual void
+ traverse (SemanticGraph::Imports& i)
+ {
+ SemanticGraph::Schema& s (i.schema ());
+
+ if (!s.context ().count (seen_key_))
+ {
+ s.context ().set (seen_key_, true);
+ Traversal::Imports::traverse (i);
+ }
+ }
+
+ private:
+ char const* seen_key_;
+ };
+
+ char const* seen_key = "cxx-tree-order-processor-seen";
+
+ bool
+ process_impl (options const& ops,
+ SemanticGraph::Schema& tu,
+ SemanticGraph::Path const&)
+ {
+ // Prepare a set of ordered types.
+ //
+ TypeNameSet ordered_types (ops.ordered_type ().begin (),
+ ops.ordered_type ().end ());
+
+ // Root schema in the file-per-type mode is just a bunch
+ // of includes without a namespace.
+ //
+ SemanticGraph::Schema::NamesIterator i (tu.names_begin ());
+
+ // Nothing to do if this is the XML Schema namespace.
+ //
+ if (i == tu.names_end () ||
+ i->named ().name () != L"http://www.w3.org/2001/XMLSchema")
+ {
+ // Note that we check first if this schema has already been
+ // processed which may happen in the file-per-type compilation
+ // mode.
+ //
+ if (!tu.context ().count (seen_key))
+ {
+ Traversal::Schema schema;
+ Uses uses (seen_key);
+
+ schema >> uses >> schema;
+
+ Traversal::Names schema_names;
+ Traversal::Namespace ns;
+ Traversal::Names ns_names;
+ Type type (ordered_types,
+ ops.ordered_type_derived (),
+ ops.ordered_type_mixed (),
+ ops.ordered_type_all ());
+
+ schema >> schema_names >> ns >> ns_names >> type;
+
+ // Some twisted schemas do recusive self-inclusion.
+ //
+ tu.context ().set (seen_key, true);
+
+ schema.dispatch (tu);
+ }
+ }
+
+ return true;
+ }
+ }
+
+ bool OrderProcessor::
+ process (options const& ops,
+ SemanticGraph::Schema& tu,
+ SemanticGraph::Path const& file)
+ {
+ return process_impl (ops, tu, file);
+ }
+ }
+}
diff --git a/xsd/xsd/cxx/tree/order-processor.hxx b/xsd/xsd/cxx/tree/order-processor.hxx
new file mode 100644
index 0000000..fa68d21
--- /dev/null
+++ b/xsd/xsd/cxx/tree/order-processor.hxx
@@ -0,0 +1,30 @@
+// file : xsde/cxx/tree/order-processor.hxx
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef CXX_TREE_ORDER_PROCESSOR_HXX
+#define CXX_TREE_ORDER_PROCESSOR_HXX
+
+#include <xsd-frontend/semantic-graph.hxx>
+
+#include <xsd.hxx>
+#include <types.hxx>
+
+#include <cxx/tree/options.hxx>
+
+namespace CXX
+{
+ namespace Tree
+ {
+ class OrderProcessor
+ {
+ public:
+ bool
+ process (options const&,
+ XSDFrontend::SemanticGraph::Schema&,
+ XSDFrontend::SemanticGraph::Path const& file);
+ };
+ }
+}
+
+#endif // CXX_TREE_ORDER_PROCESSOR_HXX
diff --git a/xsd/xsd/cxx/tree/parser-header.cxx b/xsd/xsd/cxx/tree/parser-header.cxx
index c1d1ab9..8aff44f 100644
--- a/xsd/xsd/cxx/tree/parser-header.cxx
+++ b/xsd/xsd/cxx/tree/parser-header.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parser-header.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/parser-header.hxx>
@@ -23,7 +22,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (!doc_root_p (e))
@@ -71,7 +70,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (const " << string_type << "& uri," << endl
<< flags_type << " f = 0," << endl
<< "const " << properties_type << "& p = " << properties_type << " ());"
@@ -94,7 +93,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (const " << string_type << "& uri," << endl
<< error_handler << "& eh," << endl
<< flags_type << " f = 0," << endl
@@ -120,7 +119,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (const " << string_type << "& uri," << endl
<< xerces_ns << "::DOMErrorHandler& eh," << endl
<< flags_type << " f = 0," << endl
@@ -149,7 +148,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (::std::istream& is," << endl
<< flags_type << " f = 0," << endl
<< "const " << properties_type << "& p = " << properties_type << " ());"
@@ -172,7 +171,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (::std::istream& is," << endl
<< error_handler << "& eh," << endl
<< flags_type << " f = 0," << endl
@@ -198,7 +197,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (::std::istream& is," << endl
<< xerces_ns << "::DOMErrorHandler& eh," << endl
<< flags_type << " f = 0," << endl
@@ -225,7 +224,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (::std::istream& is," << endl
<< "const " << string_type << "& id," << endl
<< flags_type << " f = 0," << endl
@@ -256,7 +255,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (::std::istream& is," << endl
<< "const " << string_type << "& id," << endl
<< error_handler << "& eh," << endl
@@ -288,7 +287,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (::std::istream& is," << endl
<< "const " << string_type << "& id," << endl
<< xerces_ns << "::DOMErrorHandler& eh," << endl
@@ -318,7 +317,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (" << xerces_ns << "::InputSource& is," << endl
<< flags_type << " f = 0," << endl
<< "const " << properties_type << "& p = " << properties_type << " ());"
@@ -342,7 +341,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (" << xerces_ns << "::InputSource& is," << endl
<< error_handler << "& eh," << endl
<< flags_type << " f = 0," << endl
@@ -368,7 +367,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (" << xerces_ns << "::InputSource& is," << endl
<< xerces_ns << "::DOMErrorHandler& eh," << endl
<< flags_type << " f = 0," << endl
@@ -395,7 +394,7 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (const " << xerces_ns << "::DOMDocument& d," << endl
<< flags_type << " f = 0," << endl
<< "const " << properties_type << "& p = " << properties_type << " ());"
@@ -420,9 +419,9 @@ namespace CXX
}
os << inst_exp
- << "::std::auto_ptr< " << type_name (e) << " >" << endl
+ << auto_ptr << "< " << type_name (e) << " >" << endl
<< name << " (" << dom_auto_ptr << "< " << xerces_ns <<
- "::DOMDocument >& d," << endl
+ "::DOMDocument > d," << endl
<< flags_type << " f = 0," << endl
<< "const " << properties_type << "& p = " << properties_type << " ());"
<< endl;
@@ -449,7 +448,7 @@ namespace CXX
}
- Void
+ void
generate_parser_header (Context& ctx)
{
ctx.os << "#include <iosfwd>" << endl
@@ -460,7 +459,7 @@ namespace CXX
<< endl;
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx);
ElementFunction element (ctx);
diff --git a/xsd/xsd/cxx/tree/parser-header.hxx b/xsd/xsd/cxx/tree/parser-header.hxx
index 20ca7d4..dfe7843 100644
--- a/xsd/xsd/cxx/tree/parser-header.hxx
+++ b/xsd/xsd/cxx/tree/parser-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parser-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_PARSER_HEADER_HXX
@@ -13,7 +12,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_parser_header (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/parser-source.cxx b/xsd/xsd/cxx/tree/parser-source.cxx
index 7291cb8..c93368c 100644
--- a/xsd/xsd/cxx/tree/parser-source.cxx
+++ b/xsd/xsd/cxx/tree/parser-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parser-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/parser-source.hxx>
@@ -23,7 +22,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (!doc_root_p (e))
@@ -38,9 +37,11 @@ namespace CXX
// confused if the name is 'type'. (see tests/schema/anonymous)
//
+ char const* d (std >= cxx_version::cxx11 ? "std::move (d)" : "d");
+
// URI.
//
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (const " << string_type << "& u," << endl
<< flags_type << " f," << endl
<< "const " << properties_type << "& p)"
@@ -56,22 +57,20 @@ namespace CXX
<< "::xsd::cxx::xml::dom::parse< " << char_type << " > (" << endl
<< "u, h, p, f";
- if (options.value<CLI::disable_multi_import> ())
+ if (options.disable_multi_import ())
os << " | ::xsd::cxx::xml::dom::no_muliple_imports";
- os << "));"
+ os << "));"
<< endl
<< "h.throw_if_failed< ::xsd::cxx::tree::parsing< " <<
char_type << " > > ();"
<< endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << "return " << auto_ptr << "< " << type << " > (" << endl
<< fq_name (e, "parser") << " (" << endl
- << "d, f | " << flags_type << "::own_dom, p));"
- << endl
- << "return r;"
+ << d << ", f | " << flags_type << "::own_dom, p));"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (const " << string_type << "& u," << endl
<< error_handler << "& h," << endl
<< flags_type << " f," << endl
@@ -86,7 +85,7 @@ namespace CXX
<< "::xsd::cxx::xml::dom::parse< " << char_type << " > (" << endl
<< "u, h, p, f";
- if (options.value<CLI::disable_multi_import> ())
+ if (options.disable_multi_import ())
os << " | ::xsd::cxx::xml::dom::no_muliple_imports";
os << "));"
@@ -94,14 +93,12 @@ namespace CXX
<< "if (!d.get ())" << endl
<< "throw ::xsd::cxx::tree::parsing< " << char_type << " > ();"
<< endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << "return " << auto_ptr << "< " << type << " > (" << endl
<< fq_name (e, "parser") << " (" << endl
- << "d, f | " << flags_type << "::own_dom, p));"
- << endl
- << "return r;"
+ << d << ", f | " << flags_type << "::own_dom, p));"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (const " << string_type << "& u," << endl
<< xerces_ns << "::DOMErrorHandler& h," << endl
<< flags_type << " f," << endl
@@ -112,7 +109,7 @@ namespace CXX
<< "::xsd::cxx::xml::dom::parse< " << char_type << " > (" << endl
<< "u, h, p, f";
- if (options.value<CLI::disable_multi_import> ())
+ if (options.disable_multi_import ())
os << " | ::xsd::cxx::xml::dom::no_muliple_imports";
os << "));"
@@ -120,17 +117,15 @@ namespace CXX
<< "if (!d.get ())" << endl
<< "throw ::xsd::cxx::tree::parsing< " << char_type << " > ();"
<< endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << "return " << auto_ptr << "< " << type << " > (" << endl
<< fq_name (e, "parser") << " (" << endl
- << "d, f | " << flags_type << "::own_dom, p));"
- << endl
- << "return r;"
+ << d << ", f | " << flags_type << "::own_dom, p));"
<< "}";
// istream
//
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (::std::istream& is," << endl
<< flags_type << " f," << endl
<< "const " << properties_type << "& p)"
@@ -143,7 +138,7 @@ namespace CXX
<< "return " << fq_name (e, "parser") << " (isrc, f, p);"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (::std::istream& is," << endl
<< error_handler << "& h," << endl
<< flags_type << " f," << endl
@@ -157,7 +152,7 @@ namespace CXX
<< "return " << fq_name (e, "parser") << " (isrc, h, f, p);"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (::std::istream& is," << endl
<< xerces_ns << "::DOMErrorHandler& h," << endl
<< flags_type << " f," << endl
@@ -167,7 +162,7 @@ namespace CXX
<< "return " << fq_name (e, "parser") << " (isrc, h, f, p);"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (::std::istream& is," << endl
<< "const " << string_type << "& sid," << endl
<< flags_type << " f," << endl
@@ -181,7 +176,7 @@ namespace CXX
<< "return " << fq_name (e, "parser") << " (isrc, f, p);"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (::std::istream& is," << endl
<< "const " << string_type << "& sid," << endl
<< error_handler << "& h," << endl
@@ -196,7 +191,7 @@ namespace CXX
<< "return " << fq_name (e, "parser") << " (isrc, h, f, p);"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (::std::istream& is," << endl
<< "const " << string_type << "& sid," << endl
<< xerces_ns << "::DOMErrorHandler& h," << endl
@@ -210,7 +205,7 @@ namespace CXX
// InputSource.
//
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (" << xerces_ns << "::InputSource& i," << endl
<< flags_type << " f," << endl
<< "const " << properties_type << "& p)"
@@ -222,7 +217,7 @@ namespace CXX
<< "::xsd::cxx::xml::dom::parse< " << char_type << " > (" << endl
<< "i, h, p, f";
- if (options.value<CLI::disable_multi_import> ())
+ if (options.disable_multi_import ())
os << " | ::xsd::cxx::xml::dom::no_muliple_imports";
os << "));"
@@ -230,14 +225,12 @@ namespace CXX
<< "h.throw_if_failed< ::xsd::cxx::tree::parsing< " <<
char_type << " > > ();"
<< endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << "return " << auto_ptr << "< " << type << " > (" << endl
<< fq_name (e, "parser") << " (" << endl
- << "d, f | " << flags_type << "::own_dom, p));"
- << endl
- << "return r;"
+ << d << ", f | " << flags_type << "::own_dom, p));"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (" << xerces_ns << "::InputSource& i," << endl
<< error_handler << "& h," << endl
<< flags_type << " f," << endl
@@ -248,7 +241,7 @@ namespace CXX
<< "::xsd::cxx::xml::dom::parse< " << char_type << " > (" << endl
<< "i, h, p, f";
- if (options.value<CLI::disable_multi_import> ())
+ if (options.disable_multi_import ())
os << " | ::xsd::cxx::xml::dom::no_muliple_imports";
os << "));"
@@ -256,15 +249,13 @@ namespace CXX
<< "if (!d.get ())" << endl
<< "throw ::xsd::cxx::tree::parsing< " << char_type << " > ();"
<< endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << "return " << auto_ptr << "< " << type << " > (" << endl
<< fq_name (e, "parser") << " (" << endl
- << "d, f | " << flags_type << "::own_dom, p));"
- << endl
- << "return r;"
+ << d << ", f | " << flags_type << "::own_dom, p));"
<< "}";
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (" << xerces_ns << "::InputSource& i," << endl
<< xerces_ns << "::DOMErrorHandler& h," << endl
<< flags_type << " f," << endl
@@ -275,7 +266,7 @@ namespace CXX
<< "::xsd::cxx::xml::dom::parse< " << char_type << " > (" << endl
<< "i, h, p, f";
- if (options.value<CLI::disable_multi_import> ())
+ if (options.disable_multi_import ())
os << " | ::xsd::cxx::xml::dom::no_muliple_imports";
os << "));"
@@ -283,18 +274,16 @@ namespace CXX
<< "if (!d.get ())" << endl
<< "throw ::xsd::cxx::tree::parsing< " << char_type << " > ();"
<< endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << "return " << auto_ptr << "< " << type << " > (" << endl
<< fq_name (e, "parser") << " (" << endl
- << "d, f | " << flags_type << "::own_dom, p));"
- << endl
- << "return r;"
+ << d << ", f | " << flags_type << "::own_dom, p));"
<< "}";
// DOM.
//
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType test (fund);
test.dispatch (t);
@@ -304,44 +293,36 @@ namespace CXX
// If this element's type is anonymous then we don't need to do
// anything.
//
- Boolean poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+ bool poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
// const DOMDocument&
//
- os << "::std::auto_ptr< " << type << " >" << endl
- << name << " (const " << xerces_ns << "::DOMDocument& d," << endl
+ os << auto_ptr << "< " << type << " >" << endl
+ << name << " (const " << xerces_ns << "::DOMDocument& doc," << endl
<< flags_type << " f," << endl
<< "const " << properties_type << "& p)"
<< "{"
<< "if (f & " << flags_type << "::keep_dom)"
<< "{"
<< dom_auto_ptr << "< " << xerces_ns <<
- "::DOMDocument > c (" << endl
+ "::DOMDocument > d (" << endl
<< "static_cast< " << xerces_ns <<
- "::DOMDocument* > (d.cloneNode (true)));"
+ "::DOMDocument* > (doc.cloneNode (true)));"
<< endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << "return " << auto_ptr << "< " << type << " > (" << endl
<< fq_name (e, "parser") << " (" << endl
- << "c, f | " << flags_type << "::own_dom, p));"
- << endl
- << "return r;"
+ << d << ", f | " << flags_type << "::own_dom, p));"
<< "}"
- << "const " << xerces_ns << "::DOMElement& e (*d.getDocumentElement ());"
+ << "const " << xerces_ns << "::DOMElement& e (*doc.getDocumentElement ());"
<< "const " << qname_type << " n (" << endl
<< "::xsd::cxx::xml::dom::name< " << char_type << " > (e));"
<< endl;
if (poly)
{
- // aCC cannot handle an inline call to type_factory_map_instance.
- //
- os << "::xsd::cxx::tree::type_factory_map< " << char_type <<
- " >& tfm (" << endl
- << "::xsd::cxx::tree::type_factory_map_instance< 0, " <<
- char_type << " > ());"
- << endl
- << "::std::auto_ptr< ::xsd::cxx::tree::type > tmp (" << endl
- << "tfm.create (" << endl
+ os << auto_ptr << "< ::xsd::cxx::tree::type > tmp (" << endl
+ << "::xsd::cxx::tree::type_factory_map_instance< " <<
+ poly_plate << ", " << char_type << " > ().create (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (e.namespace_().name ()) << "," << endl
<< "&::xsd::cxx::tree::factory_impl< " << type << " >," << endl
@@ -349,7 +330,7 @@ namespace CXX
<< endl
<< "if (tmp.get () != 0)"
<< "{"
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << auto_ptr << "< " << type << " > r (" << endl
<< "dynamic_cast< " << type << "* > (tmp.get ()));"
<< endl
<< "if (r.get ())" << endl
@@ -367,7 +348,7 @@ namespace CXX
if (fund)
{
- os << "::std::auto_ptr< " << type << " > r (" << endl
+ os << auto_ptr << "< " << type << " > r (" << endl
<< "new " << type << " (" << endl
<< "::xsd::cxx::tree::traits< " << type << ", " <<
char_type;
@@ -382,7 +363,7 @@ namespace CXX
}
else
{
- os << "::std::auto_ptr< " << type << " > r (" << endl
+ os << auto_ptr << "< " << type << " > r (" << endl
<< "::xsd::cxx::tree::traits< " << type << ", " <<
char_type << " >::create (" << endl
<< "e, f, 0));";
@@ -400,11 +381,11 @@ namespace CXX
<< "}";
- // dom::auto_ptr<DOMDocument>
+ // dom::auto_ptr/unique_ptr<DOMDocument>
//
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< name << " (" << dom_auto_ptr << "< " << xerces_ns <<
- "::DOMDocument >& d," << endl
+ "::DOMDocument > d," << endl
<< flags_type << " f," << endl
<< "const " << properties_type << "&)"
<< "{"
@@ -431,15 +412,9 @@ namespace CXX
if (poly)
{
- // aCC cannot handle an inline call to type_factory_map_instance.
- //
- os << "::xsd::cxx::tree::type_factory_map< " << char_type <<
- " >& tfm (" << endl
- << "::xsd::cxx::tree::type_factory_map_instance< 0, " <<
- char_type << " > ());"
- << endl
- << "::std::auto_ptr< ::xsd::cxx::tree::type > tmp (" << endl
- << "tfm.create (" << endl
+ os << auto_ptr << "< ::xsd::cxx::tree::type > tmp (" << endl
+ << "::xsd::cxx::tree::type_factory_map_instance< " <<
+ poly_plate << ", " << char_type << " > ().create (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (e.namespace_().name ()) << "," << endl
<< "&::xsd::cxx::tree::factory_impl< " << type << " >," << endl
@@ -456,7 +431,7 @@ namespace CXX
if (fund)
{
- os << "::std::auto_ptr< " << type << " > r (" << endl
+ os << auto_ptr << "< " << type << " > r (" << endl
<< "new " << type << " (" << endl
<< "::xsd::cxx::tree::traits< " << type << ", " <<
char_type;
@@ -471,7 +446,7 @@ namespace CXX
}
else
{
- os << "::std::auto_ptr< " << type << " > r (" << endl
+ os << auto_ptr << "< " << type << " > r (" << endl
<< "::xsd::cxx::tree::traits< " << type << ", " <<
char_type << " >::create (" << endl
<< "e, f, 0));";
@@ -481,7 +456,7 @@ namespace CXX
if (poly)
{
os << endl
- << "::std::auto_ptr< " << type << " > r (" << endl
+ << auto_ptr << "< " << type << " > r (" << endl
<< "dynamic_cast< " << type << "* > (tmp.get ()));"
<< endl
<< "if (r.get ())" << endl
@@ -517,10 +492,8 @@ namespace CXX
};
}
- Void
- generate_parser_source (Context& ctx,
- UnsignedLong first,
- UnsignedLong last)
+ void
+ generate_parser_source (Context& ctx, size_t first, size_t last)
{
ctx.os << "#include <istream>" << endl
<< "#include <xsd/cxx/xml/sax/std-input-source.hxx>" << endl
@@ -528,7 +501,7 @@ namespace CXX
<< endl;
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx, first, last);
ElementFunction element (ctx);
diff --git a/xsd/xsd/cxx/tree/parser-source.hxx b/xsd/xsd/cxx/tree/parser-source.hxx
index 2a85571..a5cd597 100644
--- a/xsd/xsd/cxx/tree/parser-source.hxx
+++ b/xsd/xsd/cxx/tree/parser-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/parser-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_PARSER_SOURCE_HXX
@@ -12,8 +11,8 @@ namespace CXX
{
namespace Tree
{
- Void
- generate_parser_source (Context&, UnsignedLong first, UnsignedLong last);
+ void
+ generate_parser_source (Context&, size_t first, size_t last);
}
}
diff --git a/xsd/xsd/cxx/tree/polymorphism-processor.cxx b/xsd/xsd/cxx/tree/polymorphism-processor.cxx
index 0763f0f..cbd2471 100644
--- a/xsd/xsd/cxx/tree/polymorphism-processor.cxx
+++ b/xsd/xsd/cxx/tree/polymorphism-processor.cxx
@@ -1,19 +1,16 @@
// file : xsde/cxx/tree/polymorphism-processor.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <iostream>
+
#include <cxx/tree/elements.hxx>
#include <cxx/tree/polymorphism-processor.hxx>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-#include <cult/containers/set.hxx>
-
-#include <iostream>
-
-using std::wcerr;
+using namespace std;
namespace CXX
{
@@ -21,64 +18,17 @@ namespace CXX
{
namespace
{
- struct TypeSet
- {
- template <typename I>
- TypeSet (I begin, I end)
- {
- for (; begin != end; ++begin)
- insert (*begin);
- }
-
- Void
- insert (String const& name)
- {
- Size p (name.rfind ('#'));
-
- if (p == String::npos)
- unames_.insert (name);
- else
- qnames_.insert (name);
- }
-
- Boolean
- find (SemanticGraph::Type& t)
- {
- if (!unames_.empty ())
- {
- if (unames_.find (t.name ()) != unames_.end ())
- return true;
- }
-
- if (!qnames_.empty ())
- {
- if (qnames_.find (t.scope ().name () + L"#" + t.name ()) !=
- qnames_.end ())
- return true;
- }
-
- return false;
- }
-
- private:
- typedef Cult::Containers::Set<String> StringSet;
-
- StringSet unames_;
- StringSet qnames_;
- };
-
-
//
//
struct Type: Traversal::Type,
Traversal::Complex
{
- Type (TypeSet& poly_types)
+ Type (TypeNameSet& poly_types)
: poly_types_ (poly_types)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
SemanticGraph::Context& ctx (t.context ());
@@ -87,7 +37,7 @@ namespace CXX
ctx.set ("polymorphic", poly_types_.find (t));
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
SemanticGraph::Context& ctx (c.context ());
@@ -96,7 +46,7 @@ namespace CXX
{
// First check our base.
//
- Boolean pb (false);
+ bool pb (false);
if (c.inherits_p ())
{
SemanticGraph::Type& b (c.inherits ().base ());
@@ -104,7 +54,7 @@ namespace CXX
if (!b.context ().count ("polymorphic"))
dispatch (b);
- pb = b.context ().get<Boolean> ("polymorphic");
+ pb = b.context ().get<bool> ("polymorphic");
}
ctx.set ("polymorphic", pb || poly_types_.find (c));
@@ -112,7 +62,7 @@ namespace CXX
}
private:
- TypeSet& poly_types_;
+ TypeNameSet& poly_types_;
};
struct FundType: Traversal::AnyType,
@@ -171,13 +121,13 @@ namespace CXX
Traversal::Fundamental::Entity,
Traversal::Fundamental::Entities
{
- FundType (TypeSet& poly_types, Boolean& valid)
+ FundType (TypeNameSet& poly_types, bool& valid)
: poly_types_ (poly_types), valid_ (valid)
{
}
- Void
- check (SemanticGraph::Type& t, Boolean fund)
+ void
+ check (SemanticGraph::Type& t, bool fund)
{
SemanticGraph::Context& ctx (t.context ());
@@ -201,13 +151,13 @@ namespace CXX
// anyType & anySimpleType.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyType& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnySimpleType& t)
{
check (t, false);
@@ -215,7 +165,7 @@ namespace CXX
// Boolean.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Boolean& t)
{
check (t, true);
@@ -223,79 +173,79 @@ namespace CXX
// Integral types.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Byte& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedByte& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Short& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedShort& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Int& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedInt& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Long& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::UnsignedLong& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Integer& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonPositiveInteger& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NonNegativeInteger& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::PositiveInteger& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NegativeInteger& t)
{
check (t, true);
@@ -303,19 +253,19 @@ namespace CXX
// Floats.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Float& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Double& t)
{
check (t, true);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Decimal& t)
{
check (t, true);
@@ -323,49 +273,49 @@ namespace CXX
// Strings.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::String& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NormalizedString& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Token& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameToken& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NameTokens& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Name& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::NCName& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Language& t)
{
check (t, false);
@@ -374,7 +324,7 @@ namespace CXX
// Qualified name.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::QName& t)
{
check (t, false);
@@ -383,19 +333,19 @@ namespace CXX
// ID/IDREF.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Id& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRef& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::IdRefs& t)
{
check (t, false);
@@ -403,7 +353,7 @@ namespace CXX
// URI.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::AnyURI& t)
{
check (t, false);
@@ -411,13 +361,13 @@ namespace CXX
// Binary.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Base64Binary& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::HexBinary& t)
{
check (t, false);
@@ -426,55 +376,55 @@ namespace CXX
// Date/time.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Date& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::DateTime& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Duration& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Day& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Month& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::MonthDay& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Year& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::YearMonth& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Time& t)
{
check (t, false);
@@ -482,27 +432,27 @@ namespace CXX
// Entity.
//
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entity& t)
{
check (t, false);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Entities& t)
{
check (t, false);
}
private:
- TypeSet& poly_types_;
- Boolean& valid_;
+ TypeNameSet& poly_types_;
+ bool& valid_;
};
struct GlobalElement: Traversal::Element
{
- GlobalElement (TypeSet& poly_types,
- Boolean& valid,
+ GlobalElement (TypeNameSet& poly_types,
+ bool& valid,
const WarningSet& disabled_warnings)
: poly_types_ (poly_types), valid_ (valid), warning_ (true)
{
@@ -511,7 +461,7 @@ namespace CXX
warning_ = false;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
using SemanticGraph::Schema;
@@ -528,13 +478,13 @@ namespace CXX
// We may need to override the previous value.
//
- if (ctx.count ("polymorphic") && ctx.get<Boolean> ("polymorphic"))
+ if (ctx.count ("polymorphic") && ctx.get<bool> ("polymorphic"))
return;
// Built-in types that are mapped to fundamental types cannot
// be declared polymorphic.
//
- Boolean fund (false);
+ bool fund (false);
IsFundamentalType test (fund);
test.dispatch (rt);
@@ -585,7 +535,7 @@ namespace CXX
private:
// Return true if root sources s.
//
- Boolean
+ bool
sources_p (SemanticGraph::Schema& root, SemanticGraph::Schema& s)
{
using SemanticGraph::Schema;
@@ -605,9 +555,9 @@ namespace CXX
}
private:
- TypeSet& poly_types_;
- Boolean& valid_;
- Boolean warning_;
+ TypeNameSet& poly_types_;
+ bool& valid_;
+ bool warning_;
};
// Go into sourced/included/imported schemas while making sure
@@ -617,12 +567,12 @@ namespace CXX
Traversal::Includes,
Traversal::Imports
{
- Uses (Char const* seen_key)
+ Uses (char const* seen_key)
: seen_key_ (seen_key)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Sources& sr)
{
SemanticGraph::Schema& s (sr.schema ());
@@ -634,7 +584,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Includes& i)
{
SemanticGraph::Schema& s (i.schema ());
@@ -646,7 +596,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Imports& i)
{
SemanticGraph::Schema& s (i.schema ());
@@ -659,25 +609,25 @@ namespace CXX
}
private:
- Char const* seen_key_;
+ char const* seen_key_;
};
- Char const* pass_one_key = "cxx-tree-polymorphism-processor-seen-one";
- Char const* pass_two_key = "cxx-tree-polymorphism-processor-seen-two";
+ char const* pass_one_key = "cxx-tree-polymorphism-processor-seen-one";
+ char const* pass_two_key = "cxx-tree-polymorphism-processor-seen-two";
- Boolean
- process_impl (CLI::Options const& ops,
+ bool
+ process_impl (options const& ops,
SemanticGraph::Schema& tu,
SemanticGraph::Path const&,
const WarningSet& disabled_warnings)
{
- Boolean valid (true);
+ bool valid (true);
// Prepare a set of polymorphic types.
//
- TypeSet poly_types (ops.value<CLI::polymorphic_type> ().begin (),
- ops.value<CLI::polymorphic_type> ().end ());
+ TypeNameSet poly_types (ops.polymorphic_type ().begin (),
+ ops.polymorphic_type ().end ());
// Root schema in the file-per-type mode is just a bunch
// of includes without a namespace.
@@ -779,8 +729,8 @@ namespace CXX
}
}
- Boolean PolymorphismProcessor::
- process (CLI::Options const& ops,
+ bool PolymorphismProcessor::
+ process (options const& ops,
SemanticGraph::Schema& tu,
SemanticGraph::Path const& file,
const WarningSet& disabled_warnings)
diff --git a/xsd/xsd/cxx/tree/polymorphism-processor.hxx b/xsd/xsd/cxx/tree/polymorphism-processor.hxx
index 3fbeca8..7338790 100644
--- a/xsd/xsd/cxx/tree/polymorphism-processor.hxx
+++ b/xsd/xsd/cxx/tree/polymorphism-processor.hxx
@@ -1,30 +1,26 @@
// file : xsde/cxx/tree/polymorphism-processor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_POLYMORPHISM_PROCESSOR_HXX
#define CXX_TREE_POLYMORPHISM_PROCESSOR_HXX
-#include <cult/types.hxx>
-
#include <xsd-frontend/semantic-graph.hxx>
-#include <cxx/tree/cli.hxx>
-
#include <xsd.hxx>
+#include <types.hxx>
+
+#include <cxx/tree/options.hxx>
namespace CXX
{
namespace Tree
{
- using namespace Cult::Types;
-
class PolymorphismProcessor
{
public:
- Boolean
- process (CLI::Options const& options,
+ bool
+ process (options const&,
XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file,
const WarningSet& disabled_warnings);
diff --git a/xsd/xsd/cxx/tree/serialization-header.cxx b/xsd/xsd/cxx/tree/serialization-header.cxx
index d024a38..67da857 100644
--- a/xsd/xsd/cxx/tree/serialization-header.cxx
+++ b/xsd/xsd/cxx/tree/serialization-header.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization-header.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/serialization-header.hxx>
@@ -21,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -67,7 +66,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -112,7 +111,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -156,7 +155,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -175,7 +174,7 @@ namespace CXX
"const " << name << "&);"
<< endl;
- Boolean simple (true);
+ bool simple (true);
{
IsSimpleType t (simple);
t.dispatch (c);
@@ -211,7 +210,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (doc_root_p (e))
@@ -237,7 +236,7 @@ namespace CXX
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (!doc_root_p (e))
@@ -533,10 +532,10 @@ namespace CXX
}
- Void
+ void
generate_serialization_header (Context& ctx)
{
- Boolean elemen_type (ctx.options.value<CLI::generate_element_type> ());
+ bool elemen_type (ctx.options.generate_element_type ());
if (!elemen_type)
ctx.os << "#include <iosfwd>" << endl
@@ -550,7 +549,7 @@ namespace CXX
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/tree/serialization-header.hxx b/xsd/xsd/cxx/tree/serialization-header.hxx
index 86c6b6a..979bb2e 100644
--- a/xsd/xsd/cxx/tree/serialization-header.hxx
+++ b/xsd/xsd/cxx/tree/serialization-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_SERIALIZATION_HEADER_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_serialization_header (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/serialization-source.cxx b/xsd/xsd/cxx/tree/serialization-source.cxx
index 40ae031..559a3cf 100644
--- a/xsd/xsd/cxx/tree/serialization-source.cxx
+++ b/xsd/xsd/cxx/tree/serialization-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/serialization-source.hxx>
@@ -42,7 +41,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -91,7 +90,9 @@ namespace CXX
<< "l << static_cast< const " << base << "& > (i);"
<< "}";
- // Register with type factory map.
+ // Register with type factory map. If this type is anonymous
+ // but substitutes, then it will be registered as part of the
+ // substitution registration.
//
if (polymorphic && polymorphic_p (l) && !anonymous_p (l))
{
@@ -100,8 +101,8 @@ namespace CXX
String const& name (ename (l));
os << "static" << endl
- << "const ::xsd::cxx::tree::type_serializer_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_serializer_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_serializer_init (" << endl
<< strlit (l.name ()) << "," << endl
<< strlit (xml_ns_name (l)) << ");"
@@ -131,7 +132,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -171,7 +172,9 @@ namespace CXX
<< "l << static_cast< const " << base << "& > (i);"
<< "}";
- // Register with type factory map.
+ // Register with type factory map. If this type is anonymous
+ // but substitutes, then it will be registered as part of the
+ // substitution registration.
//
if (polymorphic && polymorphic_p (u) && !anonymous_p (u))
{
@@ -180,8 +183,8 @@ namespace CXX
String const& name (ename (u));
os << "static" << endl
- << "const ::xsd::cxx::tree::type_serializer_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_serializer_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_serializer_init (" << endl
<< strlit (u.name ()) << "," << endl
<< strlit (xml_ns_name (u)) << ");"
@@ -200,7 +203,7 @@ namespace CXX
inherits_base_ >> base_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -253,7 +256,9 @@ namespace CXX
<< "}";
- // Register with type factory map.
+ // Register with type factory map. If this type is anonymous
+ // but substitutes, then it will be registered as part of the
+ // substitution registration.
//
if (polymorphic && polymorphic_p (e) && !anonymous_p (e))
{
@@ -262,8 +267,8 @@ namespace CXX
String const& name (ename (e));
os << "static" << endl
- << "const ::xsd::cxx::tree::type_serializer_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_serializer_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_serializer_init (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (xml_ns_name (e)) << ");"
@@ -284,12 +289,17 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e))
return;
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (e.scope ()));
+
+ bool ordered (ordered_p (c));
+
String const& aname (eaname (e));
String ns (e.qualified_p () ? e.namespace_ ().name () : "");
String type (scope + L"::" + etype (e));
@@ -301,20 +311,23 @@ namespace CXX
// dynamically-type with xsi:type.
//
SemanticGraph::Type& t (e.type ());
- Boolean poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+ bool poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
os << "// " << comment (e.name ()) << endl
<< "//" << endl;
- // aCC cannot handle an inline call to type_serializer_map_instance.
- //
+ if (ordered)
+ os << "case " << scope << "::" <<
+ e.context ().get<String> ("ordered-id-name") << ":"
+ << "{";
+
if (poly)
{
- os << "{"
+ os << (ordered ? "" : "{")
<< "::xsd::cxx::tree::type_serializer_map< " << char_type
<< " >& tsm (" << endl
- << "::xsd::cxx::tree::type_serializer_map_instance< 0, " <<
- char_type << " > ());"
+ << "::xsd::cxx::tree::type_serializer_map_instance< " <<
+ poly_plate << ", " << char_type << " > ());"
<< endl;
}
@@ -322,15 +335,22 @@ namespace CXX
{
// sequence
//
- os << "for (" << scope << "::" << econst_iterator (e) << endl
- << "b (i." << aname << " ().begin ()), " <<
- "n (i." << aname << " ().end ());" << endl
- << "b != n; ++b)"
- << "{";
+ if (ordered)
+ os << "const " << type << "& x (i." << aname <<
+ " ()[b->index]);"
+ << endl;
+ else
+ os << "for (" << scope << "::" << econst_iterator (e) << endl
+ << "b (i." << aname << " ().begin ()), " <<
+ "n (i." << aname << " ().end ());" << endl
+ << "b != n; ++b)"
+ << "{";
+
+ char const* x (ordered ? "x" : "*b");
if (poly)
{
- os << "if (typeid (" << type << ") == typeid (*b))"
+ os << "if (typeid (" << type << ") == typeid (" << x << "))"
<< "{"
<< xerces_ns << "::DOMElement& s (" << endl
<< "::xsd::cxx::xml::dom::create_element (" << endl
@@ -338,14 +358,14 @@ namespace CXX
<< (ns ? strlit (ns) + L",\n" : L"")
<< "e));"
<< endl
- << "s << *b;"
+ << "s << " << x << ";"
<< "}"
<< "else" << endl
<< "tsm.serialize (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (ns) << "," << endl
<< (e.global_p () ? "true" : "false") << ", " <<
- (e.qualified_p () ? "true" : "false") << ", e, *b);";
+ (e.qualified_p () ? "true" : "false") << ", e, " << x << ");";
}
else
{
@@ -360,30 +380,29 @@ namespace CXX
{
case st_other:
{
- os << "s << *b;";
+ os << "s << " << x << ";";
break;
}
case st_double:
{
- os << "s << " << as_double_type << " (*b);";
+ os << "s << " << as_double_type << " (" << x << ");";
break;
}
case st_decimal:
{
- os << "s << " << as_decimal_type << " (*b);";
+ os << "s << " << as_decimal_type << " (" << x << ");";
break;
}
}
}
-
- os << "}";
}
else if (min (e) == 0)
{
// optional
//
- os << "if (i." << aname << " ())"
- << "{";
+ if (!ordered)
+ os << "if (i." << aname << " ())"
+ << "{";
if (poly)
{
@@ -433,8 +452,6 @@ namespace CXX
}
}
}
-
- os << "}";
}
else
{
@@ -462,8 +479,10 @@ namespace CXX
}
else
{
- os << "{"
- << xerces_ns << "::DOMElement& s (" << endl
+ if (!ordered)
+ os << "{";
+
+ os << xerces_ns << "::DOMElement& s (" << endl
<< "::xsd::cxx::xml::dom::create_element (" << endl
<< strlit (e.name ()) << "," << endl
<< (ns ? strlit (ns) + L",\n" : L"")
@@ -488,13 +507,26 @@ namespace CXX
break;
}
}
-
- os << "}";
}
}
- if (poly)
+ if (ordered)
+ {
+ // See comment for bool text (false); below.
+ //
+ if (mixed_p (c) && c.context ().get<size_t> ("ordered-start") != 1)
+ os << "text = true;";
+
+ os << "continue;"
+ << "}";
+ }
+ else
+ {
os << "}";
+
+ if (poly && (max (e) != 1 || min (e) == 0))
+ os << "}"; // There is no extra block for poly one.
+ }
}
private:
@@ -508,51 +540,80 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (a.scope ()));
+
+ bool ordered (ordered_p (c));
+
String const& aname (eaname (a));
os << "// " << ename (a) << endl
<< "//" << endl;
+ if (ordered)
+ os << "case " << scope << "::" <<
+ a.context ().get<String> ("ordered-id-name") << ":";
+
if (max (a) != 1)
{
// sequence
//
- os << "for (" << scope << "::" << econst_iterator (a) << endl
- << "b (i." << aname << " ().begin ()), " <<
- "n (i." << aname << " ().end ());" << endl
- << "b != n; ++b)"
- << "{"
+ if (!ordered)
+ os << "for (" << scope << "::" << econst_iterator (a) << endl
+ << "b (i." << aname << " ().begin ()), " <<
+ "n (i." << aname << " ().end ());" << endl
+ << "b != n; ++b)";
+
+ os << "{"
<< "e.appendChild (" << endl
<< "e.getOwnerDocument ()->importNode (" << endl
<< "const_cast< " << xerces_ns <<
- "::DOMElement* > (&(*b)), true));"
- << "}";
+ "::DOMElement* > (&(" <<
+ (ordered ? (L"i." + aname + L" ()[b->index]") : L"*b") <<
+ ")), true));";
}
else if (min (a) == 0)
{
// optional
//
- os << "if (i." << aname << " ())"
- << "{"
+ if (!ordered)
+ os << "if (i." << aname << " ())";
+
+ os << "{"
<< "e.appendChild (" << endl
<< "e.getOwnerDocument ()->importNode (" << endl
<< "const_cast< " << xerces_ns << "::DOMElement* > (&(*i." <<
- aname << " ())), true));"
- << "}";
+ aname << " ())), true));";
}
else
{
// one
//
+ if (ordered)
+ os << "{";
+
os << "e.appendChild (" << endl
<< "e.getOwnerDocument ()->importNode (" << endl
<< "const_cast< " << xerces_ns << "::DOMElement* > (&(i." <<
aname << " ())), true));"
<< endl;
}
+
+ if (ordered)
+ {
+ // See comment for bool text (false); below.
+ //
+ if (mixed_p (c) && c.context ().get<size_t> ("ordered-start") != 1)
+ os << "text = true;";
+
+ os << "continue;";
+ }
+
+ if (ordered || max (a) != 1 || min (a) == 0)
+ os << "}";
}
private:
@@ -566,7 +627,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& aname (eaname (a));
@@ -611,8 +672,7 @@ namespace CXX
{
// Make sure we serialize required fixed attributes.
//
- if (a.optional_p () &&
- options.value<CLI::omit_default_attributes> ())
+ if (a.optional_p () && options.omit_default_attributes ())
{
os << "if (i." << aname << " () != " << scope <<
"::" << edefault_value (a) << " ())";
@@ -660,7 +720,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& aname (eaname (a));
@@ -697,9 +757,11 @@ namespace CXX
inherits_ >> base_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
+ SemanticGraph::Context& ctx (c.context ());
+
String name (ename (c));
// If renamed name is empty then we do not need to generate
@@ -729,7 +791,7 @@ namespace CXX
// Serialize anyAttribute content first so that is gets
// overriden by schema-defined attributes.
//
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
{
AnyAttribute any_attribute (*this, name);
Traversal::Names names (any_attribute);
@@ -738,24 +800,109 @@ namespace CXX
}
{
+ bool o (ordered_p (c));
+ size_t start, count;
+
+ if (o)
+ {
+ start = ctx.get<size_t> ("ordered-start");
+ count = ctx.get<size_t> ("ordered-count");
+
+ if (start != count)
+ {
+ String const& ci (ctx.get<String> ("order-const-iterator"));
+ String const& an (ctx.get<String> ("order-aname"));
+
+ // If we have mixed content and a base, then we have to
+ // skip the text content until we serialize one of "our"
+ // elements.
+ //
+ if (mixed_p (c) && start != 1)
+ os << "bool text (false);"
+ << endl;
+
+ os << "for (" << name << "::" << ci << endl
+ << "b (i." << an << " ().begin ()), n (i." << an <<
+ " ().end ());" << endl
+ << "b != n; ++b)"
+ << "{"
+ << "switch (b->id)"
+ << "{";
+ }
+ }
+
Traversal::Names names;
Any any (*this, name);
Element element (*this, name);
- Attribute attribute (*this, name);
names >> element;
- names >> attribute;
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
names >> any;
Complex::names (c, names);
+
+ if (o)
+ {
+ if (start != count)
+ {
+ if (mixed_p (c))
+ {
+ //@@ propagate mixed-ordered-id to derived
+
+ os << "// text_content" << endl
+ << "//" << endl
+ << "case " << name << "::" <<
+ ctx.get<String> ("mixed-ordered-id-name") << ":"
+ << "{";
+
+ // See the comment above.
+ //
+ if (start != 1)
+ os << "if (text)" << endl;
+
+ os << "e.appendChild (" << endl
+ << "e.getOwnerDocument ()->createTextNode (" << endl
+ << "::xsd::cxx::xml::string (" << endl
+ << "i." << ctx.get<String> ("mixed-aname") <<
+ " ()[b->index].c_str ()).c_str ()));";
+
+ // os << "e << i." << ctx.get<String> ("mixed-aname") <<
+ // " ()[b->index];";
+
+ os << "continue;"
+ << "}";
+ }
+
+ // Ignore content before our id range and stop serializing
+ // if we see anything past. This handles inheritance.
+ //
+ os << "default:"
+ << "{";
+
+ if (start != 1)
+ os << "if (b->id < " << start << "UL)" << endl
+ << "continue;";
+
+ os << "break;" // Stop (see break below).
+ << "}";
+
+ os << "}" // switch
+ << "break;" // Unknown element past our elements.
+ << "}"; // for
+ }
+ }
}
- os << "}";
+ {
+ Attribute attribute (*this, name);
+ Traversal::Names names (attribute);
+ Complex::names (c, names);
+ }
+ os << "}";
- Boolean simple (true);
+ bool simple (true);
{
IsSimpleType t (simple);
t.dispatch (c);
@@ -763,7 +910,7 @@ namespace CXX
if (simple)
{
- Boolean hb (c.inherits_p ());
+ bool hb (c.inherits_p ());
// operator<< (xercesc::DOMAttr)
//
@@ -805,7 +952,9 @@ namespace CXX
os << "}";
}
- // Register with type factory map.
+ // Register with type factory map. If this type is anonymous
+ // but substitutes, then it will be registered as part of the
+ // substitution registration.
//
if (polymorphic && polymorphic_p (c) && !anonymous_p (c))
{
@@ -814,8 +963,8 @@ namespace CXX
String const& name (ename (c));
os << "static" << endl
- << "const ::xsd::cxx::tree::type_serializer_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_serializer_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_serializer_init (" << endl
<< strlit (c.name ()) << "," << endl
<< strlit (xml_ns_name (c)) << ");"
@@ -842,7 +991,7 @@ namespace CXX
belongs_ >> type_name_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (polymorphic && e.substitutes_p ())
@@ -852,8 +1001,8 @@ namespace CXX
String const& name (ename (e));
os << "static" << endl
- << "const ::xsd::cxx::tree::element_serializer_initializer< 0, " <<
- char_type << ", ";
+ << "const ::xsd::cxx::tree::element_serializer_initializer< " <<
+ poly_plate << ", " << char_type << ", ";
belongs (e, belongs_);
@@ -881,11 +1030,11 @@ namespace CXX
ElementType (Context& c)
: GlobalElementBase (c),
Context (c),
- element_map_ (c.options.value<CLI::generate_element_map> ())
+ element_map_ (c.options.generate_element_map ())
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (doc_root_p (e))
@@ -921,7 +1070,7 @@ namespace CXX
}
private:
- Boolean element_map_;
+ bool element_map_;
};
struct ElementFunction: Traversal::Element,
@@ -933,7 +1082,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (!doc_root_p (e))
@@ -954,7 +1103,7 @@ namespace CXX
// If this element's type is anonymous then we don't need to do
// anything.
//
- Boolean poly (polymorphic &&
+ bool poly (polymorphic &&
polymorphic_p (type) &&
!anonymous_p (type));
@@ -1137,18 +1286,11 @@ namespace CXX
if (poly)
{
- // aCC cannot handle an inline call to
- // type_serializer_map_instance.
- //
os << "}"
<< "else"
<< "{"
- << "::xsd::cxx::tree::type_serializer_map< " << char_type
- << " >& tsm (" << endl
- << "::xsd::cxx::tree::type_serializer_map_instance< 0, " <<
- char_type << " > ());"
- << endl
- << "tsm.serialize (" << endl
+ << "::xsd::cxx::tree::type_serializer_map_instance< " <<
+ poly_plate << ", " << char_type << " > ().serialize (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (e.namespace_().name ()) << "," << endl
<< "e, n, s);"
@@ -1168,37 +1310,23 @@ namespace CXX
if (poly)
{
- // aCC cannot handle an inline call to
- // type_serializer_map_instance as well as the direct
- // auto_ptr assignment.
- //
os << dom_auto_ptr << "< " << xerces_ns << "::DOMDocument > d;"
<< endl
<< "if (typeid (" << type_name (e) << ") == typeid (s))"
<< "{"
- << dom_auto_ptr << "< " << xerces_ns <<
- "::DOMDocument > r (" << endl
- << "::xsd::cxx::xml::dom::serialize< " <<
+ << "d = ::xsd::cxx::xml::dom::serialize< " <<
char_type << " > (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (ns) << "," << endl
- << "m, f));"
- << "d = r;"
+ << "m, f);"
<< "}"
<< "else"
<< "{"
- << "::xsd::cxx::tree::type_serializer_map< " << char_type
- << " >& tsm (" << endl
- << "::xsd::cxx::tree::type_serializer_map_instance< 0, " <<
- char_type << " > ());"
- << endl
- << dom_auto_ptr << "< " << xerces_ns <<
- "::DOMDocument > r (" << endl
- << "tsm.serialize (" << endl
+ << "d = ::xsd::cxx::tree::type_serializer_map_instance< " <<
+ poly_plate << ", " << char_type << " > ().serialize (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (e.namespace_().name ()) << "," << endl
- << "m, s, f));"
- << "d = r;"
+ << "m, s, f);"
<< "}";
}
else
@@ -1233,12 +1361,10 @@ namespace CXX
};
}
- Void
- generate_serialization_source (Context& ctx,
- UnsignedLong first,
- UnsignedLong last)
+ void
+ generate_serialization_source (Context& ctx, size_t first, size_t last)
{
- Boolean elemen_type (ctx.options.value<CLI::generate_element_type> ());
+ bool elemen_type (ctx.options.generate_element_type ());
if (!elemen_type)
ctx.os << "#include <ostream>" << endl
@@ -1252,8 +1378,8 @@ namespace CXX
ctx.os << "#include <xsd/cxx/tree/type-serializer-map.hxx>" << endl
<< endl;
- Boolean import_maps (ctx.options.value<CLI::import_maps> ());
- Boolean export_maps (ctx.options.value<CLI::export_maps> ());
+ bool import_maps (ctx.options.import_maps ());
+ bool export_maps (ctx.options.export_maps ());
if (import_maps || export_maps)
{
@@ -1269,19 +1395,23 @@ namespace CXX
if (export_maps)
ctx.os << "template struct __declspec (dllexport) " <<
- "type_serializer_plate< 0, " << ctx.char_type << " >;";
+ "type_serializer_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
if (import_maps)
ctx.os << "template struct __declspec (dllimport) " <<
- "type_serializer_plate< 0, " << ctx.char_type << " >;";
+ "type_serializer_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
ctx.os << "#elif defined(__GNUC__) && __GNUC__ >= 4" << endl
<< "template struct __attribute__ ((visibility(\"default\"))) " <<
- "type_serializer_plate< 0, " << ctx.char_type << " >;";
+ "type_serializer_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
ctx.os << "#elif defined(XSD_MAP_VISIBILITY)" << endl
<< "template struct XSD_MAP_VISIBILITY " <<
- "type_serializer_plate< 0, " << ctx.char_type << " >;";
+ "type_serializer_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
ctx.os << "#endif" << endl
<< "}" // tree
@@ -1294,15 +1424,15 @@ namespace CXX
ctx.os << "namespace _xsd"
<< "{"
<< "static" << endl
- << "const ::xsd::cxx::tree::type_serializer_plate< 0, " <<
- ctx.char_type << " >" << endl
+ << "const ::xsd::cxx::tree::type_serializer_plate< " <<
+ ctx.poly_plate << ", " << ctx.char_type << " >" << endl
<< "type_serializer_plate_init;"
<< "}";
}
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx, first, last);
diff --git a/xsd/xsd/cxx/tree/serialization-source.hxx b/xsd/xsd/cxx/tree/serialization-source.hxx
index 322949a..1a74126 100644
--- a/xsd/xsd/cxx/tree/serialization-source.hxx
+++ b/xsd/xsd/cxx/tree/serialization-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/serialization-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_SERIALIZATION_SOURCE_HXX
@@ -12,10 +11,8 @@ namespace CXX
{
namespace Tree
{
- Void
- generate_serialization_source (Context&,
- UnsignedLong first,
- UnsignedLong last);
+ void
+ generate_serialization_source (Context&, size_t first, size_t last);
}
}
diff --git a/xsd/xsd/cxx/tree/stream-extraction-source.cxx b/xsd/xsd/cxx/tree/stream-extraction-source.cxx
index 1378bc6..ceb56c1 100644
--- a/xsd/xsd/cxx/tree/stream-extraction-source.cxx
+++ b/xsd/xsd/cxx/tree/stream-extraction-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-extraction-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/stream-extraction-source.hxx>
@@ -14,8 +13,6 @@ namespace CXX
{
namespace
{
- typedef Containers::Vector<NarrowString> Streams;
-
struct List: Traversal::List, Context
{
List (Context& c)
@@ -23,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -45,9 +42,10 @@ namespace CXX
base += L" >";
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ());
+ i != st.end (); ++i)
{
os << name << "::" << endl
<< name << " (" << istream_type << "< " <<
@@ -61,7 +59,9 @@ namespace CXX
// Register with type map.
//
- if (polymorphic && polymorphic_p (l) && !anonymous_p (l))
+ if (polymorphic &&
+ polymorphic_p (l) &&
+ (!anonymous_p (l) || anonymous_substitutes_p (l)))
{
// Note that we are using the original type name.
//
@@ -69,8 +69,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_extraction_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_extraction_init_" <<
n++ << " (" << endl
<< strlit (l.name ()) << "," << endl
@@ -101,7 +101,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -114,9 +114,10 @@ namespace CXX
String const& base (xs_string_type);
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
os << name << "::" << endl
<< name << " (" << istream_type << "< " <<
@@ -129,7 +130,9 @@ namespace CXX
// Register with type map.
//
- if (polymorphic && polymorphic_p (u) && !anonymous_p (u))
+ if (polymorphic &&
+ polymorphic_p (u) &&
+ (!anonymous_p (u) || anonymous_substitutes_p (u)))
{
// Note that we are using the original type name.
//
@@ -137,8 +140,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_extraction_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_extraction_init_" <<
n++ << " (" << endl
<< strlit (u.name ()) << "," << endl
@@ -158,7 +161,7 @@ namespace CXX
inherits_base_ >> base_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -169,15 +172,30 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (e);
}
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ bool enum_based (false);
+ if (string_based)
+ {
+ SemanticGraph::Enumeration* base_enum (0);
+ IsEnumBasedType t (base_enum);
+ t.dispatch (e);
+
+ enum_based = (base_enum != 0);
+ }
+
+ String value;
+ if (string_based)
+ value = evalue (e);
+
+ size_t n (0);
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
os << name << "::" << endl
<< name << " (" << istream_type << "< " <<
@@ -188,8 +206,18 @@ namespace CXX
inherits (e, inherits_base_);
- os << " (s, f, c)"
- << "{";
+ if (string_based && !enum_based)
+ {
+ // Use copy c-tor to pass the flags and container.
+ //
+ os << " (" << endl;
+ inherits (e, inherits_base_);
+ os << " (_xsd_" << name << "_literals_[s.read_uint ()]), f, c)";
+ }
+ else
+ os << " (s, f, c)";
+
+ os << "{";
if (string_based)
os << "_xsd_" << name << "_convert ();";
@@ -198,7 +226,9 @@ namespace CXX
// Register with type map.
//
- if (polymorphic && polymorphic_p (e) && !anonymous_p (e))
+ if (polymorphic &&
+ polymorphic_p (e) &&
+ (!anonymous_p (e) || anonymous_substitutes_p (e)))
{
// Note that we are using the original type name.
//
@@ -206,8 +236,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_extraction_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_extraction_init_" <<
n++ << " (" << endl
<< strlit (e.name ()) << "," << endl
@@ -229,14 +259,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Member& m)
{
if (skip (m))
return;
os << "," << endl
- << " " << emember (m) << " (f, this)";
+ << " " << emember (m) << " (this)";
}
};
@@ -249,7 +279,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& member (emember (a));
@@ -261,7 +291,7 @@ namespace CXX
<< " " << member << " (this->" << dom_doc << " ())";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& member (emember (a));
@@ -281,7 +311,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e))
@@ -291,8 +321,9 @@ namespace CXX
SemanticGraph::Type& t (e.type ());
String type (etype (e));
+ String tr (etraits (e)); // traits type name
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType traverser (fund);
traverser.dispatch (t);
@@ -304,7 +335,12 @@ namespace CXX
// from which makes it impossible to substitute or dynamically-
// type with xsi:type.
//
- Boolean poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+ bool poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+
+ char const* r (
+ (poly || !fund) && std >= cxx_version::cxx11
+ ? "::std::move (r)"
+ : "r");
if (max (e) != 1)
{
@@ -327,16 +363,17 @@ namespace CXX
if (poly)
{
os << "bool d;"
- << "::std::auto_ptr< " << type << " > r;"
+ << auto_ptr << "< " << type << " > r;"
<< "s >> d;"
<< endl
<< "if (!d)" << endl
<< "r.reset (new " << type << " (s, f, this));"
<< "else"
<< "{"
- << "::std::auto_ptr< ::xsd::cxx::tree::type > tmp (" << endl
- << "::xsd::cxx::tree::stream_extraction_map_instance< 0, " <<
- stream << ", " << char_type << " > ().extract (" << endl
+ << auto_ptr << "< ::xsd::cxx::tree::type > tmp (" << endl
+ << "::xsd::cxx::tree::stream_extraction_map_instance< " <<
+ poly_plate << ", " << stream << ", " << char_type <<
+ " > ().extract (" << endl
<< "s, f, this));"
<< "r.reset (dynamic_cast< " << type << "* > (tmp.get ()));"
<< "if (r.get ())" << endl
@@ -353,11 +390,11 @@ namespace CXX
}
else
{
- os << "::std::auto_ptr< " << type << " > r (new " << type <<
- " (s, f, this));";
+ os << auto_ptr << "< " << type << " > r (" << endl
+ << tr << "::create (s, f, this));";
}
- os << "c.push_back (r);"
+ os << "c.push_back (" << r << ");"
<< "}" // while
<< "}" // if
<< "}";
@@ -375,16 +412,17 @@ namespace CXX
if (poly)
{
os << "bool d;"
- << "::std::auto_ptr< " << type << " > r;"
+ << auto_ptr << "< " << type << " > r;"
<< "s >> d;"
<< endl
<< "if (!d)" << endl
<< "r.reset (new " << type << " (s, f, this));"
<< "else"
<< "{"
- << "::std::auto_ptr< ::xsd::cxx::tree::type > tmp (" << endl
- << "::xsd::cxx::tree::stream_extraction_map_instance< 0, " <<
- stream << ", " << char_type << " > ().extract (" << endl
+ << auto_ptr << "< ::xsd::cxx::tree::type > tmp (" << endl
+ << "::xsd::cxx::tree::stream_extraction_map_instance< " <<
+ poly_plate << ", " << stream << ", " << char_type <<
+ " > ().extract (" << endl
<< "s, f, this));"
<< "r.reset (dynamic_cast< " << type << "* > (tmp.get ()));"
<< "if (r.get ())" << endl
@@ -401,11 +439,11 @@ namespace CXX
}
else
{
- os << "::std::auto_ptr< " << type << " > r (new " << type <<
- " (s, f, this));";
+ os << auto_ptr << "< " << type << " > r (" << endl
+ << tr << "::create (s, f, this));";
}
- os << "this->" << member << ".set (r);"
+ os << "this->" << member << ".set (" << r << ");"
<< "}" // if (p)
<< "}";
}
@@ -418,16 +456,17 @@ namespace CXX
if (poly)
{
os << "bool d;"
- << "::std::auto_ptr< " << type << " > r;"
+ << auto_ptr << "< " << type << " > r;"
<< "s >> d;"
<< endl
<< "if (!d)" << endl
<< "r.reset (new " << type << " (s, f, this));"
<< "else"
<< "{"
- << "::std::auto_ptr< ::xsd::cxx::tree::type > tmp (" << endl
- << "::xsd::cxx::tree::stream_extraction_map_instance< 0, " <<
- stream << ", " << char_type << " > ().extract (" << endl
+ << auto_ptr << "< ::xsd::cxx::tree::type > tmp (" << endl
+ << "::xsd::cxx::tree::stream_extraction_map_instance< " <<
+ poly_plate << ", " << stream << ", " << char_type <<
+ " > ().extract (" << endl
<< "s, f, this));"
<< "r.reset (dynamic_cast< " << type << "* > (tmp.get ()));"
<< "if (r.get ())" << endl
@@ -444,11 +483,11 @@ namespace CXX
}
else
{
- os << "::std::auto_ptr< " << type << " > r (new " << type <<
- " (s, f, this));";
+ os << auto_ptr << "< " << type << " > r (" << endl
+ << tr << "::create (s, f, this));";
}
- os << "this->" << member << ".set (r);"
+ os << "this->" << member << ".set (" << r << ");"
<< "}";
}
}
@@ -464,13 +503,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& member (emember (a));
String type (etype (a));
+ String tr (etraits (a)); // traits type name
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType traverser (fund);
traverser.dispatch (a.type ());
@@ -492,9 +532,8 @@ namespace CXX
}
else
{
- os << "::std::auto_ptr< " << type << " > r (new " << type <<
- " (s, f, this));"
- << "this->" << member << ".set (r);";
+ os << "this->" << member << ".set (" << tr <<
+ "::create (s, f, this));";
}
os << "}" // if (p)
@@ -512,9 +551,8 @@ namespace CXX
}
else
{
- os << "::std::auto_ptr< " << type << " > r (new " << type <<
- " (s, f, this));"
- << "this->" << member << ".set (r);";
+ os << "this->" << member << ".set (" << tr <<
+ "::create (s, f, this));";
}
os << "}";
@@ -530,11 +568,11 @@ namespace CXX
inherits_ >> base_;
names_ctor_member_ >> ctor_member_;
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
names_ctor_member_ >> ctor_any_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -545,9 +583,9 @@ namespace CXX
if (renamed_type (c, name) && !name)
return;
- Boolean has_members (has<Traversal::Member> (c));
+ bool has_members (has<Traversal::Member> (c));
- Boolean facets (false);
+ bool facets (false);
if (c.inherits_p ())
{
// See if we have any facets that we need to handle.
@@ -565,9 +603,10 @@ namespace CXX
}
}
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
os << name << "::" << endl
@@ -613,7 +652,8 @@ namespace CXX
<< unclash (name, "parse") << " (" <<
istream_type << "< " << i->c_str () << " >& s," << endl
<< flags_type << " f)"
- << "{";
+ << "{"
+ << "XSD_UNUSED (f);"; // Can be unused.
{
Element element (*this, *i);
Attribute attribute (*this);
@@ -631,7 +671,9 @@ namespace CXX
// Register with type map.
//
- if (polymorphic && polymorphic_p (c) && !anonymous_p (c))
+ if (polymorphic &&
+ polymorphic_p (c) &&
+ (!anonymous_p (c) || anonymous_substitutes_p (c)))
{
// Note that we are using the original type name.
//
@@ -639,8 +681,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_extraction_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_extraction_init_" <<
n++ << " (" << endl
<< strlit (c.name ()) << "," << endl
@@ -661,18 +703,18 @@ namespace CXX
};
}
- Void
+ void
generate_stream_extraction_source (Context& ctx)
{
if (ctx.polymorphic)
{
- Streams const& st (ctx.options.value<CLI::generate_extraction> ());
+ NarrowStrings const& st (ctx.options.generate_extraction ());
ctx.os << "#include <xsd/cxx/tree/stream-extraction-map.hxx>" << endl
<< endl;
- Boolean import_maps (ctx.options.value<CLI::import_maps> ());
- Boolean export_maps (ctx.options.value<CLI::export_maps> ());
+ bool import_maps (ctx.options.import_maps ());
+ bool export_maps (ctx.options.export_maps ());
if (import_maps || export_maps)
{
@@ -685,7 +727,8 @@ namespace CXX
<< "namespace tree"
<< "{";
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream (*i);
@@ -693,22 +736,22 @@ namespace CXX
if (export_maps)
ctx.os << "template struct __declspec (dllexport) " <<
- "stream_extraction_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;";
+ "stream_extraction_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;";
if (import_maps)
ctx.os << "template struct __declspec (dllimport) " <<
- "stream_extraction_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;";
+ "stream_extraction_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;";
ctx.os << "#elif defined(__GNUC__) && __GNUC__ >= 4" << endl
<< "template struct __attribute__ ((visibility(\"default\"))) " <<
- "stream_extraction_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;"
+ "stream_extraction_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;"
<< "#elif defined(XSD_MAP_VISIBILITY)" << endl
<< "template struct XSD_MAP_VISIBILITY " <<
- "stream_extraction_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;"
+ "stream_extraction_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;"
<< "#endif" << endl;
}
@@ -723,14 +766,16 @@ namespace CXX
ctx.os << "namespace _xsd"
<< "{";
- UnsignedLong n (0);
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream (*i);
ctx.os << "static" << endl
- << "const ::xsd::cxx::tree::stream_extraction_plate< 0, " <<
- stream << ", " << ctx.char_type << " >" << endl
+ << "const ::xsd::cxx::tree::stream_extraction_plate< " <<
+ ctx.poly_plate << ", " << stream << ", " << ctx.char_type <<
+ " >" << endl
<< "stream_extraction_plate_init_" << n++ << ";";
}
@@ -739,7 +784,7 @@ namespace CXX
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/tree/stream-extraction-source.hxx b/xsd/xsd/cxx/tree/stream-extraction-source.hxx
index 23ab17c..9104281 100644
--- a/xsd/xsd/cxx/tree/stream-extraction-source.hxx
+++ b/xsd/xsd/cxx/tree/stream-extraction-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-extraction-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_EXTRACTION_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_stream_extraction_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/stream-header.cxx b/xsd/xsd/cxx/tree/stream-header.cxx
index 02e2651..9ba9b3b 100644
--- a/xsd/xsd/cxx/tree/stream-header.cxx
+++ b/xsd/xsd/cxx/tree/stream-header.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-header.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/stream-header.hxx>
@@ -21,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -48,7 +47,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -75,7 +74,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -86,13 +85,13 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (e);
}
- Boolean enum_based (false);
+ bool enum_based (false);
if (string_based)
{
SemanticGraph::Enumeration* be (0);
@@ -129,7 +128,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -149,7 +148,7 @@ namespace CXX
};
}
- Void
+ void
generate_stream_header (Context& ctx)
{
String c (ctx.char_type);
@@ -159,7 +158,7 @@ namespace CXX
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/tree/stream-header.hxx b/xsd/xsd/cxx/tree/stream-header.hxx
index 246a06e..36eea87 100644
--- a/xsd/xsd/cxx/tree/stream-header.hxx
+++ b/xsd/xsd/cxx/tree/stream-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_STREAM_HEADER_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_stream_header (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/stream-insertion-header.cxx b/xsd/xsd/cxx/tree/stream-insertion-header.cxx
index 1669fdd..e9ee438 100644
--- a/xsd/xsd/cxx/tree/stream-insertion-header.cxx
+++ b/xsd/xsd/cxx/tree/stream-insertion-header.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-insertion-header.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/stream-insertion-header.hxx>
@@ -14,8 +13,6 @@ namespace CXX
{
namespace
{
- typedef Containers::Vector<NarrowString> Streams;
-
struct List: Traversal::List, Context
{
List (Context& c)
@@ -23,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -34,8 +31,9 @@ namespace CXX
if (renamed_type (l, name) && !name)
return;
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type (ostream_type + L"< " + String (*i) + L" >");
@@ -56,7 +54,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -67,8 +65,9 @@ namespace CXX
if (renamed_type (u, name) && !name)
return;
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type (ostream_type + L"< " + String (*i) + L" >");
@@ -89,7 +88,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -100,8 +99,9 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type (ostream_type + L"< " + String (*i) + L" >");
@@ -121,7 +121,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -132,8 +132,9 @@ namespace CXX
if (renamed_type (c, name) && !name)
return;
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type (ostream_type + L"< " + String (*i) + L" >");
@@ -147,14 +148,14 @@ namespace CXX
};
}
- Void
+ void
generate_stream_insertion_header (Context& ctx)
{
String c (ctx.char_type);
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/tree/stream-insertion-header.hxx b/xsd/xsd/cxx/tree/stream-insertion-header.hxx
index ca93713..31b6328 100644
--- a/xsd/xsd/cxx/tree/stream-insertion-header.hxx
+++ b/xsd/xsd/cxx/tree/stream-insertion-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-insertion-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_STREAM_INSERTION_HEADER_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_stream_insertion_header (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/stream-insertion-source.cxx b/xsd/xsd/cxx/tree/stream-insertion-source.cxx
index 09faf71..2c82cfd 100644
--- a/xsd/xsd/cxx/tree/stream-insertion-source.cxx
+++ b/xsd/xsd/cxx/tree/stream-insertion-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-insertion-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/stream-insertion-source.hxx>
@@ -14,8 +13,6 @@ namespace CXX
{
namespace
{
- typedef Containers::Vector<NarrowString> Streams;
-
struct List: Traversal::List, Context
{
List (Context& c)
@@ -23,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -45,9 +42,10 @@ namespace CXX
base += L" >";
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type ("::xsd::cxx::tree::ostream< " + *i + " >");
@@ -60,7 +58,9 @@ namespace CXX
// Register with type map.
//
- if (polymorphic && polymorphic_p (l) && !anonymous_p (l))
+ if (polymorphic &&
+ polymorphic_p (l) &&
+ (!anonymous_p (l) || anonymous_substitutes_p (l)))
{
// Note that we are using the original type name.
//
@@ -68,8 +68,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_insertion_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_insertion_init_" <<
n++ << " (" << endl
<< strlit (l.name ()) << "," << endl
@@ -100,7 +100,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -113,9 +113,10 @@ namespace CXX
String const& base (xs_string_type);
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type ("::xsd::cxx::tree::ostream< " + *i + " >");
@@ -128,7 +129,9 @@ namespace CXX
// Register with type map.
//
- if (polymorphic && polymorphic_p (u) && !anonymous_p (u))
+ if (polymorphic &&
+ polymorphic_p (u) &&
+ (!anonymous_p (u) || anonymous_substitutes_p (u)))
{
// Note that we are using the original type name.
//
@@ -136,8 +139,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_insertion_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_insertion_init_" <<
n++ << " (" << endl
<< strlit (u.name ()) << "," << endl
@@ -157,7 +160,7 @@ namespace CXX
inherits_base_ >> base_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -168,26 +171,57 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ bool string_based (false);
+ {
+ IsStringBasedType t (string_based);
+ t.dispatch (e);
+ }
+
+ bool enum_based (false);
+ if (string_based)
+ {
+ SemanticGraph::Enumeration* base_enum (0);
+ IsEnumBasedType t (base_enum);
+ t.dispatch (e);
+
+ enum_based = (base_enum != 0);
+ }
+
+ String value;
+ if (string_based)
+ value = evalue (e);
+
+ size_t n (0);
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type ("::xsd::cxx::tree::ostream< " + *i + " >");
os << stream_type << "&" << endl
<< "operator<< (" << stream_type << "& s," << endl
<< "const " << name << "& x)"
- << "{"
- << "return s << static_cast< const ";
+ << "{";
- inherits (e, inherits_base_);
+ if (!string_based || enum_based)
+ {
+ os << "return s << static_cast< const ";
+ inherits (e, inherits_base_);
+ os << "& > (x);";
+ }
+ else
+ {
+ os << name << "::" << value << " v (x);"
+ << "return s << static_cast< unsigned int > (v);";
+ }
- os << "& > (x);"
- << "}";
+ os << "}";
// Register with type map.
//
- if (polymorphic && polymorphic_p (e) && !anonymous_p (e))
+ if (polymorphic &&
+ polymorphic_p (e) &&
+ (!anonymous_p (e) || anonymous_substitutes_p (e)))
{
// Note that we are using the original type name.
//
@@ -195,8 +229,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_insertion_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_insertion_init_" <<
n++ << " (" << endl
<< strlit (e.name ()) << "," << endl
@@ -218,7 +252,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e)) return;
@@ -233,7 +267,7 @@ namespace CXX
// from which makes it impossible to substitute or dynamically-
// type with xsi:type.
//
- Boolean poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+ bool poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
if (max (e) != 1)
{
@@ -257,8 +291,9 @@ namespace CXX
<< "if (!d)" << endl
<< "s << *i;"
<< "else" << endl
- << "::xsd::cxx::tree::stream_insertion_map_instance< 0, " <<
- stream << ", " << char_type << " > ().insert (s, *i);";
+ << "::xsd::cxx::tree::stream_insertion_map_instance< " <<
+ poly_plate << ", " << stream << ", " << char_type <<
+ " > ().insert (s, *i);";
}
else
os << "s << *i;";
@@ -284,8 +319,9 @@ namespace CXX
<< "if (!d)" << endl
<< "s << i;"
<< "else" << endl
- << "::xsd::cxx::tree::stream_insertion_map_instance< 0, " <<
- stream << ", " << char_type << " > ().insert (s, i);"
+ << "::xsd::cxx::tree::stream_insertion_map_instance< " <<
+ poly_plate << ", " << stream << ", " << char_type <<
+ " > ().insert (s, i);"
<< "}";
}
else
@@ -307,8 +343,9 @@ namespace CXX
<< "if (!d)" << endl
<< "s << i;"
<< "else" << endl
- << "::xsd::cxx::tree::stream_insertion_map_instance< 0, " <<
- stream << ", " << char_type << " > ().insert (s, i);"
+ << "::xsd::cxx::tree::stream_insertion_map_instance< " <<
+ poly_plate << ", " << stream << ", " << char_type <<
+ " > ().insert (s, i);"
<< "}";
}
else
@@ -328,7 +365,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& aname (eaname (a));
@@ -358,7 +395,7 @@ namespace CXX
inherits_ >> base_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -369,11 +406,12 @@ namespace CXX
if (renamed_type (c, name) && !name)
return;
- Boolean has_body (has<Traversal::Member> (c) || c.inherits_p ());
+ bool has_body (has<Traversal::Member> (c) || c.inherits_p ());
- UnsignedLong n (0);
- Streams const& st (options.value<CLI::generate_insertion> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ NarrowStrings const& st (options.generate_insertion ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream_type ("::xsd::cxx::tree::ostream< " + *i + " >");
@@ -408,7 +446,9 @@ namespace CXX
// Register with type map.
//
- if (polymorphic && polymorphic_p (c) && !anonymous_p (c))
+ if (polymorphic &&
+ polymorphic_p (c) &&
+ (!anonymous_p (c) || anonymous_substitutes_p (c)))
{
// Note that we are using the original type name.
//
@@ -416,8 +456,8 @@ namespace CXX
os << "static" << endl
<< "const ::xsd::cxx::tree::stream_insertion_initializer< " <<
- "0, " << i->c_str () << ", " <<
- char_type << ", " << name << " >" << endl
+ poly_plate << ", " << i->c_str () << ", " << char_type <<
+ ", " << name << " >" << endl
<< "_xsd_" << name << "_stream_insertion_init_" <<
n++ << " (" << endl
<< strlit (c.name ()) << "," << endl
@@ -433,18 +473,18 @@ namespace CXX
};
}
- Void
+ void
generate_stream_insertion_source (Context& ctx)
{
if (ctx.polymorphic)
{
- Streams const& st (ctx.options.value<CLI::generate_insertion> ());
+ NarrowStrings const& st (ctx.options.generate_insertion ());
ctx.os << "#include <xsd/cxx/tree/stream-insertion-map.hxx>" << endl
<< endl;
- Boolean import_maps (ctx.options.value<CLI::import_maps> ());
- Boolean export_maps (ctx.options.value<CLI::export_maps> ());
+ bool import_maps (ctx.options.import_maps ());
+ bool export_maps (ctx.options.export_maps ());
if (import_maps || export_maps)
{
@@ -457,7 +497,8 @@ namespace CXX
<< "namespace tree"
<< "{";
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream (*i);
@@ -465,22 +506,22 @@ namespace CXX
if (export_maps)
ctx.os << "template struct __declspec (dllexport) " <<
- "stream_insertion_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;";
+ "stream_insertion_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;";
if (import_maps)
ctx.os << "template struct __declspec (dllimport) " <<
- "stream_insertion_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;";
+ "stream_insertion_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;";
ctx.os << "#elif defined(__GNUC__) && __GNUC__ >= 4" << endl
<< "template struct __attribute__ ((visibility(\"default\"))) " <<
- "stream_insertion_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;"
+ "stream_insertion_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;"
<< "#elif defined(XSD_MAP_VISIBILITY)" << endl
<< "template struct XSD_MAP_VISIBILITY " <<
- "stream_insertion_plate< 0, " << stream << ", " <<
- ctx.char_type << " >;"
+ "stream_insertion_plate< " << ctx.poly_plate << ", " <<
+ stream << ", " << ctx.char_type << " >;"
<< "#endif" << endl;
}
@@ -494,14 +535,16 @@ namespace CXX
ctx.os << "namespace _xsd"
<< "{";
- UnsignedLong n (0);
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ size_t n (0);
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
String stream (*i);
ctx.os << "static" << endl
- << "const ::xsd::cxx::tree::stream_insertion_plate< 0, " <<
- stream << ", " << ctx.char_type << " >" << endl
+ << "const ::xsd::cxx::tree::stream_insertion_plate< " <<
+ ctx.poly_plate << ", " << stream << ", " << ctx.char_type <<
+ " >" << endl
<< "stream_insertion_plate_init_" << n++ << ";";
}
@@ -510,7 +553,7 @@ namespace CXX
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/tree/stream-insertion-source.hxx b/xsd/xsd/cxx/tree/stream-insertion-source.hxx
index b270912..d2d5534 100644
--- a/xsd/xsd/cxx/tree/stream-insertion-source.hxx
+++ b/xsd/xsd/cxx/tree/stream-insertion-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-insertion-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_INSERTION_SOURCE_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_stream_insertion_source (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/stream-source.cxx b/xsd/xsd/cxx/tree/stream-source.cxx
index e8a7fc4..935ad40 100644
--- a/xsd/xsd/cxx/tree/stream-source.cxx
+++ b/xsd/xsd/cxx/tree/stream-source.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/stream-source.hxx>
@@ -21,7 +20,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -52,15 +51,17 @@ namespace CXX
// Register with ostream map.
//
- if (polymorphic && polymorphic_p (l) && !anonymous_p (l))
+ if (polymorphic &&
+ polymorphic_p (l) &&
+ (!anonymous_p (l) || anonymous_substitutes_p (l)))
{
// Note that we are using the original type name.
//
String const& name (ename (l));
os << "static" << endl
- << "const ::xsd::cxx::tree::std_ostream_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::std_ostream_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_std_ostream_init;"
<< endl;
}
@@ -87,7 +88,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -107,15 +108,17 @@ namespace CXX
// Register with ostream map.
//
- if (polymorphic && polymorphic_p (u) && !anonymous_p (u))
+ if (polymorphic &&
+ polymorphic_p (u) &&
+ (!anonymous_p (u) || anonymous_substitutes_p (u)))
{
// Note that we are using the original type name.
//
String const& name (ename (u));
os << "static" << endl
- << "const ::xsd::cxx::tree::std_ostream_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::std_ostream_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_std_ostream_init;"
<< endl;
}
@@ -131,7 +134,7 @@ namespace CXX
inherits_base_ >> base_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -142,13 +145,13 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (e);
}
- Boolean enum_based (false);
+ bool enum_based (false);
if (string_based)
{
SemanticGraph::Enumeration* be (0);
@@ -185,15 +188,17 @@ namespace CXX
// Register with ostream map.
//
- if (polymorphic && polymorphic_p (e) && !anonymous_p (e))
+ if (polymorphic &&
+ polymorphic_p (e) &&
+ (!anonymous_p (e) || anonymous_substitutes_p (e)))
{
// Note that we are using the original type name.
//
String const& name (ename (e));
os << "static" << endl
- << "const ::xsd::cxx::tree::std_ostream_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::std_ostream_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_std_ostream_init;"
<< endl;
}
@@ -211,7 +216,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e))
@@ -226,17 +231,15 @@ namespace CXX
// dynamically-type with xsi:type.
//
SemanticGraph::Type& t (e.type ());
- Boolean poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+ bool poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
- // aCC cannot handle an inline call to std_ostream_map_instance.
- //
if (poly)
{
os << "{"
<< "::xsd::cxx::tree::std_ostream_map< " << char_type
<< " >& om (" << endl
- << "::xsd::cxx::tree::std_ostream_map_instance< 0, " <<
- char_type << " > ());"
+ << "::xsd::cxx::tree::std_ostream_map_instance< " <<
+ poly_plate << ", " << char_type << " > ());"
<< endl;
}
@@ -304,7 +307,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& aname (eaname (a));
@@ -334,7 +337,7 @@ namespace CXX
inherits_ >> base_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -347,7 +350,7 @@ namespace CXX
//
//
- Boolean has_body (has<Traversal::Member> (c) || c.inherits_p ());
+ bool has_body (has<Traversal::Member> (c) || c.inherits_p ());
os << std_ostream_type << "&" << endl
<< "operator<< (" << std_ostream_type << "& o, " <<
@@ -380,15 +383,17 @@ namespace CXX
// Register with ostream map.
//
- if (polymorphic && polymorphic_p (c) && !anonymous_p (c))
+ if (polymorphic &&
+ polymorphic_p (c) &&
+ (!anonymous_p (c) || anonymous_substitutes_p (c)))
{
// Note that we are using the original type name.
//
String const& name (ename (c));
os << "static" << endl
- << "const ::xsd::cxx::tree::std_ostream_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::std_ostream_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_std_ostream_init;"
<< endl;
}
@@ -400,10 +405,8 @@ namespace CXX
};
}
- Void
- generate_stream_source (Context& ctx,
- UnsignedLong first,
- UnsignedLong last)
+ void
+ generate_stream_source (Context& ctx, size_t first, size_t last)
{
String c (ctx.char_type);
@@ -415,8 +418,8 @@ namespace CXX
ctx.os << "#include <xsd/cxx/tree/std-ostream-map.hxx>" << endl
<< endl;
- Boolean import_maps (ctx.options.value<CLI::import_maps> ());
- Boolean export_maps (ctx.options.value<CLI::export_maps> ());
+ bool import_maps (ctx.options.import_maps ());
+ bool export_maps (ctx.options.export_maps ());
if (import_maps || export_maps)
{
@@ -432,19 +435,23 @@ namespace CXX
if (export_maps)
ctx.os << "template struct __declspec (dllexport) " <<
- "std_ostream_plate< 0, " << ctx.char_type << " >;";
+ "std_ostream_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
if (import_maps)
ctx.os << "template struct __declspec (dllimport) " <<
- "std_ostream_plate< 0, " << ctx.char_type << " >;";
+ "std_ostream_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
ctx.os << "#elif defined(__GNUC__) && __GNUC__ >= 4" << endl
<< "template struct __attribute__ ((visibility(\"default\"))) " <<
- "std_ostream_plate< 0, " << ctx.char_type << " >;";
+ "std_ostream_plate< " << ctx.poly_plate << ", " << ctx.char_type <<
+ " >;";
ctx.os << "#elif defined(XSD_MAP_VISIBILITY)" << endl
<< "template struct XSD_MAP_VISIBILITY " <<
- "std_ostream_plate< 0, " << ctx.char_type << " >;";
+ "std_ostream_plate< " << ctx.poly_plate << ", " << ctx.char_type <<
+ " >;";
ctx.os << "#endif" << endl
<< "}" // tree
@@ -457,15 +464,15 @@ namespace CXX
ctx.os << "namespace _xsd"
<< "{"
<< "static" << endl
- << "const ::xsd::cxx::tree::std_ostream_plate< 0, " <<
- ctx.char_type << " >" << endl
+ << "const ::xsd::cxx::tree::std_ostream_plate< " <<
+ ctx.poly_plate << ", " << ctx.char_type << " >" << endl
<< "std_ostream_plate_init;"
<< "}";
}
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx, first, last);
diff --git a/xsd/xsd/cxx/tree/stream-source.hxx b/xsd/xsd/cxx/tree/stream-source.hxx
index 13e8f37..f13a23e 100644
--- a/xsd/xsd/cxx/tree/stream-source.hxx
+++ b/xsd/xsd/cxx/tree/stream-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/stream-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_STREAM_SOURCE_HXX
@@ -12,10 +11,8 @@ namespace CXX
{
namespace Tree
{
- Void
- generate_stream_source (Context&,
- UnsignedLong first,
- UnsignedLong last);
+ void
+ generate_stream_source (Context&, size_t first, size_t last);
}
}
diff --git a/xsd/xsd/cxx/tree/tree-forward.cxx b/xsd/xsd/cxx/tree/tree-forward.cxx
index 214cc75..5afae3c 100644
--- a/xsd/xsd/cxx/tree/tree-forward.cxx
+++ b/xsd/xsd/cxx/tree/tree-forward.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/tree-forward.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <cxx/tree/tree-forward.hxx>
@@ -22,7 +21,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String const& name (ename (l));
@@ -52,7 +51,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String const& name (ename (u));
@@ -82,7 +81,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String const& name (ename (e));
@@ -112,7 +111,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String const& name (ename (c));
@@ -136,16 +135,16 @@ namespace CXX
};
}
- Void
+ void
generate_forward (Context& ctx)
{
- NarrowString xml_schema (ctx.options.value<CLI::extern_xml_schema> ());
+ NarrowString xml_schema (ctx.options.extern_xml_schema ());
// Inlcude or Emit fundamental types.
//
if (xml_schema)
{
- String name (ctx.hxx_expr->merge (xml_schema));
+ String name (ctx.hxx_expr->replace (xml_schema));
ctx.os << "#include " << ctx.process_include_path (name) << endl
<< endl;
@@ -164,21 +163,21 @@ namespace CXX
<< "#include <xsd/cxx/tree/types.hxx>" << endl
<< endl;
- if (!ctx.options.value<CLI::suppress_parsing> () ||
- ctx.options.value<CLI::generate_serialization> ())
+ if (!ctx.options.suppress_parsing () ||
+ ctx.options.generate_serialization ())
{
ctx.os << "#include <xsd/cxx/xml/error-handler.hxx>" << endl
<< endl;
}
- if (!ctx.options.value<CLI::suppress_parsing> () ||
- ctx.options.value<CLI::generate_serialization> ())
+ if (!ctx.options.suppress_parsing () ||
+ ctx.options.generate_serialization ())
{
ctx.os << "#include <xsd/cxx/xml/dom/auto-ptr.hxx>" << endl
<< endl;
}
- Boolean element_map (ctx.options.value<CLI::generate_element_map> ());
+ bool element_map (ctx.options.generate_element_map ());
if (element_map)
ctx.os << "#include <xsd/cxx/tree/element-map.hxx>" << endl
@@ -188,7 +187,7 @@ namespace CXX
// later in the individual generators for each feature because
// those headers provide implementation for the fundamental types.
//
- if (!ctx.options.value<CLI::suppress_parsing> ())
+ if (!ctx.options.suppress_parsing ())
{
ctx.os << "#include <xsd/cxx/tree/parsing.hxx>" << endl;
@@ -210,7 +209,7 @@ namespace CXX
ctx.os << endl;
}
- if (ctx.options.value<CLI::generate_serialization> ())
+ if (ctx.options.generate_serialization ())
{
ctx.os << "#include <xsd/cxx/xml/dom/serialization-header.hxx>" << endl
<< "#include <xsd/cxx/tree/serialization.hxx>" << endl;
@@ -233,18 +232,17 @@ namespace CXX
ctx.os << endl;
}
- if (ctx.options.value<CLI::generate_ostream> ())
+ if (ctx.options.generate_ostream ())
{
ctx.os << "#include <xsd/cxx/tree/std-ostream-operators.hxx>" << endl
<< endl;
}
- typedef Containers::Vector<NarrowString> Streams;
-
- Streams const& ist (ctx.options.value<CLI::generate_insertion> ());
+ NarrowStrings const& ist (ctx.options.generate_insertion ());
if (!ist.empty ())
{
- for (Streams::ConstIterator i (ist.begin ()); i != ist.end (); ++i)
+ for (NarrowStrings::const_iterator i (ist.begin ()); i != ist.end ();
+ ++i)
{
if (*i == "ACE_OutputCDR")
ctx.os << "#include <xsd/cxx/tree/ace-cdr-stream-insertion.hxx>"
@@ -258,10 +256,11 @@ namespace CXX
<< endl;
}
- Streams const& est (ctx.options.value<CLI::generate_extraction> ());
+ NarrowStrings const& est (ctx.options.generate_extraction ());
if (!est.empty ())
{
- for (Streams::ConstIterator i (est.begin ()); i != est.end (); ++i)
+ for (NarrowStrings::const_iterator i (est.begin ()); i != est.end ();
+ ++i)
{
if (*i == "ACE_InputCDR")
ctx.os << "#include <xsd/cxx/tree/ace-cdr-stream-extraction.hxx>"
@@ -288,7 +287,7 @@ namespace CXX
// First emit header includes.
//
- if (ctx.options.value<CLI::generate_forward> ())
+ if (ctx.options.generate_forward ())
{
Traversal::Schema schema;
Includes includes (ctx, Includes::forward);
@@ -302,7 +301,7 @@ namespace CXX
<< "//" << endl;
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx);
diff --git a/xsd/xsd/cxx/tree/tree-forward.hxx b/xsd/xsd/cxx/tree/tree-forward.hxx
index efe0e02..5b08a10 100644
--- a/xsd/xsd/cxx/tree/tree-forward.hxx
+++ b/xsd/xsd/cxx/tree/tree-forward.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/tree-forward.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_TREE_FORWARD_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_forward (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/tree-header.cxx b/xsd/xsd/cxx/tree/tree-header.cxx
index 9b5acc6..f0c3560 100644
--- a/xsd/xsd/cxx/tree/tree-header.cxx
+++ b/xsd/xsd/cxx/tree/tree-header.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/tree-header.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd-frontend/semantic-graph.hxx>
@@ -16,8 +15,6 @@ namespace CXX
{
namespace
{
- typedef Containers::Vector<NarrowString> Streams;
-
// List mapping.
//
struct List: Traversal::List, Context
@@ -27,7 +24,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -142,8 +139,9 @@ namespace CXX
// c-tor (istream&)
//
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
if (doxygen)
{
@@ -167,7 +165,7 @@ namespace CXX
<< endl;
}
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -293,6 +291,22 @@ namespace CXX
<< "~" << name << " ();";
os << "};";
+
+ // Comparison operators.
+ //
+ if (options.generate_comparison ())
+ {
+ os << inst_exp
+ << "bool" << endl
+ << "operator== (const " << name << "&, const " << name << "&);"
+ << endl;
+
+ os << inst_exp
+ << "bool" << endl
+ << "operator!= (const " << name << "&, const " << name << "&);"
+ << endl
+ << endl;
+ }
}
private:
@@ -318,7 +332,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -353,7 +367,7 @@ namespace CXX
<< "public:" << endl
<< endl;
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
// c-tor ()
//
@@ -400,8 +414,9 @@ namespace CXX
// c-tor (istream&)
//
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
if (doxygen)
{
@@ -425,7 +440,7 @@ namespace CXX
<< endl;
}
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -551,7 +566,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (doxygen && e.annotated_p ())
@@ -579,7 +594,7 @@ namespace CXX
names_ >> enumerator_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -590,13 +605,13 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (e);
}
- Boolean enum_based (false);
+ bool enum_based (false);
SemanticGraph::Enumeration* base_enum (0);
if (string_based)
@@ -614,7 +629,7 @@ namespace CXX
// Get to the ultimate base and see if is a fundamental type.
//
- Boolean fund_based (false);
+ bool fund_based (false);
SemanticGraph::Type& ult_base (ultimate_base (e));
{
IsFundamentalType t (fund_based);
@@ -623,7 +638,7 @@ namespace CXX
// Count enumerators.
//
- UnsignedLong enum_count (0);
+ size_t enum_count (0);
for (Type::NamesIterator i (e.names_begin ()), end (e.names_end ());
i != end; ++i)
@@ -688,7 +703,7 @@ namespace CXX
// default c-tor
//
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
if (doxygen)
{
@@ -808,8 +823,9 @@ namespace CXX
// c-tor (istream&)
//
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
if (doxygen)
{
@@ -833,7 +849,7 @@ namespace CXX
<< endl;
}
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -1031,7 +1047,7 @@ namespace CXX
os << "};";
}
- virtual Void
+ virtual void
comma (Type&)
{
os << "," << endl;
@@ -1058,7 +1074,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -1069,14 +1085,14 @@ namespace CXX
String kind (m.is_a<SemanticGraph::Element> ()
? "element" : "attribute");
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType t (fund);
t.dispatch (m.type ());
}
- Boolean def_attr (m.default_p () &&
- m.is_a<SemanticGraph::Attribute> ());
+ bool def_attr (m.default_p () &&
+ m.is_a<SemanticGraph::Attribute> ());
if (max (m) != 1)
{
@@ -1249,7 +1265,7 @@ namespace CXX
}
os << "void" << endl
- << mname << " (::std::auto_ptr< " << type << " > p);"
+ << mname << " (" << auto_ptr << "< " << type << " > p);"
<< endl;
}
}
@@ -1338,7 +1354,7 @@ namespace CXX
}
os << "void" << endl
- << mname << " (::std::auto_ptr< " << type << " > p);"
+ << mname << " (" << auto_ptr << "< " << type << " > p);"
<< endl;
}
@@ -1362,7 +1378,7 @@ namespace CXX
<< " */" << endl;
}
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< edname (m) << " ();"
<< endl;
}
@@ -1373,7 +1389,7 @@ namespace CXX
//
if (m.default_p ())
{
- Boolean simple (true);
+ bool simple (true);
if (m.is_a<SemanticGraph::Element> ())
{
@@ -1383,7 +1399,7 @@ namespace CXX
if (simple)
{
- Boolean lit (false);
+ bool lit (false);
{
IsLiteralValue test (lit);
test.dispatch (m.type ());
@@ -1425,7 +1441,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& aname (eaname (a));
@@ -1698,7 +1714,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& aname (eaname (a));
@@ -1778,16 +1794,19 @@ namespace CXX
belongs_ >> type_name_;
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
return;
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (m.scope ()));
+
String const& type (etype (m));
- Boolean el (m.is_a<SemanticGraph::Element> ());
+ bool el (m.is_a<SemanticGraph::Element> ());
- Boolean def_attr (m.default_p () && !el);
+ bool def_attr (m.default_p () && !el);
if (doxygen)
{
@@ -1826,7 +1845,7 @@ namespace CXX
else
{
os << "// " << comment (m.name ()) << endl
- << "// " << endl;
+ << "//" << endl;
}
// Typedefs.
@@ -1849,7 +1868,7 @@ namespace CXX
if (max (m) != 1)
{
String const& container (econtainer (m));
- Boolean isense (options.value<CLI::generate_intellisense> ());
+ bool isense (options.generate_intellisense ());
// sequence
//
@@ -1872,7 +1891,7 @@ namespace CXX
<< " */" << endl;
}
- // IntelliSense does not not like aliases and fully-qualified
+ // IntelliSense does not like aliases and fully-qualified
// names here.
//
if (!isense)
@@ -1941,6 +1960,24 @@ namespace CXX
os << " > " << etraits (m) << ";"
<< endl;
+
+ // Element id.
+ //
+ if (el && ordered_p (c))
+ {
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Element id used for capturing content " <<
+ "order." << endl
+ << " */" << endl;
+
+ SemanticGraph::Context& ctx (m.context ());
+
+ os << "static const ::std::size_t " <<
+ ctx.get<String> ("ordered-id-name") << " = " <<
+ ctx.get<size_t> ("ordered-id") << "UL;" << endl;
+ }
+
member_function_.traverse (m);
if (doxygen)
@@ -1967,9 +2004,12 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (a.scope ()));
+
if (doxygen)
{
os << "/**" << endl
@@ -1990,7 +2030,7 @@ namespace CXX
else
{
os << "// " << ename (a) << endl
- << "// " << endl;
+ << "//" << endl;
}
// Typedefs.
@@ -2060,6 +2100,23 @@ namespace CXX
os << endl;
}
+ // Wildcard id.
+ //
+ if (ordered_p (c))
+ {
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Wildcard id used for capturing content " <<
+ "order." << endl
+ << " */" << endl;
+
+ SemanticGraph::Context& ctx (a.context ());
+
+ os << "static const ::std::size_t " <<
+ ctx.get<String> ("ordered-id-name") << " = " <<
+ ctx.get<size_t> ("ordered-id") << "UL;" << endl;
+ }
+
any_function_.traverse (a);
if (doxygen)
@@ -2069,7 +2126,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& container (econtainer (a));
@@ -2095,7 +2152,7 @@ namespace CXX
else
{
os << "// " << ename (a) << endl
- << "// " << endl;
+ << "//" << endl;
}
if (doxygen)
@@ -2152,14 +2209,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m)) return;
String const& member (emember (m));
- Boolean def_attr (m.default_p () &&
+ bool def_attr (m.default_p () &&
m.is_a<SemanticGraph::Attribute> ());
if (max (m) != 1)
@@ -2186,7 +2243,7 @@ namespace CXX
//
if (m.default_p ())
{
- Boolean simple (true);
+ bool simple (true);
if (m.is_a<SemanticGraph::Element> ())
{
@@ -2196,7 +2253,7 @@ namespace CXX
if (simple)
{
- Boolean lit (false);
+ bool lit (false);
{
IsLiteralValue test (lit);
test.dispatch (m.type ());
@@ -2221,7 +2278,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& member (emember (a));
@@ -2246,7 +2303,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
os << econtainer (a) << " " << emember (a) << ";";
@@ -2269,15 +2326,15 @@ namespace CXX
inherits_member_ >> member_name_;
names_ >> member_;
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
names_ >> any_;
names_data_ >> data_member_;
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
names_data_ >> data_any_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -2288,20 +2345,25 @@ namespace CXX
if (renamed_type (c, name) && !name)
return;
- Boolean has_members (has<Traversal::Member> (c));
+ SemanticGraph::Context& ctx (c.context ());
+
+ bool has_members (has<Traversal::Member> (c));
- Boolean hae (has<Traversal::Any> (c));
- Boolean haa (has<Traversal::AnyAttribute> (c));
+ bool hae (has<Traversal::Any> (c));
+ bool haa (has<Traversal::AnyAttribute> (c));
- Boolean gen_wildcard (options.value<CLI::generate_wildcard> ());
+ bool gen_wildcard (options.generate_wildcard ());
- Boolean simple (true);
+ bool mixed (mixed_p (c) && !ctx.count ("mixed-in-base"));
+ bool ordered (ordered_p (c) && !ctx.count ("order-in-base"));
+
+ bool simple (true);
{
IsSimpleType t (simple);
t.dispatch (c);
}
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (c);
@@ -2344,17 +2406,148 @@ namespace CXX
//
names (c, names_);
- // dom_document accessors.
+ // Mixed content.
//
- if (edom_document_member_p (c))
+ if (mixed)
{
+ String const& type (ctx.get<String> ("mixed-type"));
+ String const& cont (ctx.get<String> ("mixed-container"));
+ String const& iter (ctx.get<String> ("mixed-iterator"));
+ String const& citer (ctx.get<String> ("mixed-const-iterator"));
- if (!doxygen)
- {
- os << "// DOMDocument for wildcard content." << endl
+ if (doxygen)
+ os << "/**" << endl
+ << " * @name " << comment ("text_content") << endl
+ << " *" << endl
+ << " * @brief Accessor and modifier functions for text " <<
+ "content." << endl
+ << " */" << endl
+ << "//@{" << endl;
+ else
+ os << "// text_content" << endl
<< "//" << endl;
- }
+ // Typedefs.
+ //
+ bool isense (options.generate_intellisense ());
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Text content type." << endl
+ << " */" << endl;
+
+ os << "typedef " << xs_string_type << " " << type << ";";
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Text content sequence container type." << endl
+ << " */" << endl;
+
+ os << "typedef ::xsd::cxx::tree::sequence< " << type <<
+ " > " << cont << ";";
+
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Text content iterator type." << endl
+ << " */" << endl;
+
+ // IntelliSense does not like aliases and fully-qualified
+ // names here.
+ //
+ if (!isense)
+ os << "typedef " << cont << "::iterator " << iter<< ";";
+ else
+ os << "typedef ::xsd::cxx::tree::sequence< " << type <<
+ " >::iterator " << iter << ";";
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Text content constant iterator type." << endl
+ << " */" << endl;
+
+ if (!isense)
+ os << "typedef " << cont << "::const_iterator " << citer<< ";";
+ else
+ os << "typedef ::xsd::cxx::tree::sequence< " << type <<
+ " >::const_iterator " << citer << ";";
+
+ os << endl;
+
+ // Content id.
+ //
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Text content id used for capturing content " <<
+ "order." << endl
+ << " */" << endl;
+
+ os << "static const ::std::size_t " <<
+ ctx.get<String> ("mixed-ordered-id-name") << " = " <<
+ ctx.get<size_t> ("mixed-ordered-id") << "UL;" << endl;
+
+ // Accessors and modifiers.
+ //
+ String const& aname (ctx.get<String> ("mixed-aname"));
+ String const& mname (ctx.get<String> ("mixed-mname"));
+
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Return a read-only (constant) reference " <<
+ "to the text" << endl
+ << " * content sequence." << endl
+ << " *" << endl
+ << " * @return A constant reference to the sequence " <<
+ "container." << endl
+ << " */" << endl;
+
+ os << "const " << cont << "&" << endl
+ << aname << " () const;"
+ << endl;
+
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Return a read-write reference to the " <<
+ "text content" << endl
+ << " * sequence." << endl
+ << " *" << endl
+ << " * @return A reference to the sequence container." << endl
+ << " */" << endl;
+
+ os << cont << "&" << endl
+ << aname << " ();"
+ << endl;
+
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Copy elements from a given sequence." << endl
+ << " *" << endl
+ << " * @param s A sequence to copy entries from." << endl
+ << " *" << endl
+ << " * For each element in @a s this function " <<
+ "add it to the sequence." << endl
+ << " * Note that this operation " <<
+ "completely changes the sequence and" << endl
+ << " * all old elements will be lost." << endl
+ << " */" << endl;
+
+ os << "void" << endl
+ << mname << " (const " << cont << "& s);"
+ << endl;
+
+ if (doxygen)
+ os << "//@}" << endl
+ << endl;
+ }
+
+ // dom_document accessors.
+ //
+ if (edom_document_member_p (c))
+ {
if (doxygen)
{
os << "/**" << endl
@@ -2369,6 +2562,9 @@ namespace CXX
<< " * the raw XML content corresponding to wildcards." << endl
<< " */" << endl;
}
+ else
+ os << "// DOMDocument for wildcard content." << endl
+ << "//" << endl;
os << "const " << xerces_ns << "::DOMDocument&" << endl
<< edom_document (c) << " () const;"
@@ -2393,6 +2589,137 @@ namespace CXX
<< endl;
}
+ // Order container.
+ //
+ if (ordered)
+ {
+ String const& type (ctx.get<String> ("order-type"));
+ String const& cont (ctx.get<String> ("order-container"));
+ String const& iter (ctx.get<String> ("order-iterator"));
+ String const& citer (ctx.get<String> ("order-const-iterator"));
+
+ String const ct (options.order_container_specified ()
+ ? options.order_container ()
+ : "::std::vector");
+
+ if (doxygen)
+ os << "/**" << endl
+ << " * @name " << comment ("content_order") << endl
+ << " *" << endl
+ << " * @brief Accessor and modifier functions for content " <<
+ "order." << endl
+ << " */" << endl
+ << "//@{" << endl;
+ else
+ os << "// content_order" << endl
+ << "//" << endl;
+
+ // Typedefs.
+ //
+ bool isense (options.generate_intellisense ());
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Content order entry type." << endl
+ << " */" << endl;
+
+ os << "typedef " << ns_name (xs_ns ()) << "::" <<
+ xs_ns ().context ().get<String> ("content-order") << " " <<
+ type << ";";
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Content order sequence container type." << endl
+ << " */" << endl;
+
+ os << "typedef " << ct << "< " << type << " > " << cont << ";";
+
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Content order iterator type." << endl
+ << " */" << endl;
+
+ // IntelliSense does not like aliases and fully-qualified
+ // names here.
+ //
+ if (!isense)
+ os << "typedef " << cont << "::iterator " << iter<< ";";
+ else
+ os << "typedef " << ct << "< " << type << " >::iterator " <<
+ iter << ";";
+
+ if (doxygen)
+ os << endl
+ << "/**" << endl
+ << " * @brief Content order constant iterator type." << endl
+ << " */" << endl;
+
+ if (!isense)
+ os << "typedef " << cont << "::const_iterator " << citer<< ";";
+ else
+ os << "typedef " << ct << "< " << type <<
+ " >::const_iterator " << citer << ";";
+
+ os << endl;
+
+ // Accessors and modifiers.
+ //
+ String const& aname (ctx.get<String> ("order-aname"));
+ String const& mname (ctx.get<String> ("order-mname"));
+
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Return a read-only (constant) reference " <<
+ "to the content" << endl
+ << " * order sequence." << endl
+ << " *" << endl
+ << " * @return A constant reference to the sequence " <<
+ "container." << endl
+ << " */" << endl;
+
+ os << "const " << cont << "&" << endl
+ << aname << " () const;"
+ << endl;
+
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Return a read-write reference to the " <<
+ "content order" << endl
+ << " * sequence." << endl
+ << " *" << endl
+ << " * @return A reference to the sequence container." << endl
+ << " */" << endl;
+
+ os << cont << "&" << endl
+ << aname << " ();"
+ << endl;
+
+ if (doxygen)
+ os << "/**" << endl
+ << " * @brief Copy elements from a given sequence." << endl
+ << " *" << endl
+ << " * @param s A sequence to copy entries from." << endl
+ << " *" << endl
+ << " * For each element in @a s this function " <<
+ "add it to the sequence." << endl
+ << " * Note that this operation " <<
+ "completely changes the sequence and" << endl
+ << " * all old elements will be lost." << endl
+ << " */" << endl;
+
+ os << "void" << endl
+ << mname << " (const " << cont << "& s);"
+ << endl;
+
+ if (doxygen)
+ os << "//@}" << endl
+ << endl;
+ }
+
if (doxygen)
{
os << "/**" << endl
@@ -2407,15 +2734,15 @@ namespace CXX
<< "//" << endl;
}
- Boolean generate_no_base_ctor (false);
+ bool generate_no_base_ctor (false);
{
GenerateWithoutBaseCtor t (generate_no_base_ctor);
t.traverse (c);
}
- Boolean has_complex_non_op_args (false);
- Boolean has_poly_non_op_args (false);
- Boolean complex_poly_args_clash (true);
+ bool has_complex_non_op_args (false);
+ bool has_poly_non_op_args (false);
+ bool complex_poly_args_clash (true);
{
HasComplexPolyNonOptArgs t (*this, true,
has_complex_non_op_args,
@@ -2426,7 +2753,7 @@ namespace CXX
// default c-tor
//
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
// c-tor (ultimate-base, all-non-optional-members) will become
// default c-tor if our inheritance hierarchy has no required
@@ -2434,7 +2761,7 @@ namespace CXX
// c-tor (all-non-optional-members) if we have no required
// members.
//
- Boolean generate (false);
+ bool generate (false);
{
GenerateDefaultCtor t (*this, generate, generate_no_base_ctor);
t.traverse (c);
@@ -2460,7 +2787,7 @@ namespace CXX
// c-tor (base, all-non-optional-members)
//
- if (options.value<CLI::generate_from_base_ctor> ())
+ if (options.generate_from_base_ctor ())
{
// c-tor (base, all-non-optional-members) will be equivalent to
// c-tor (ultimate-base, all-non-optional-members) unless our
@@ -2470,7 +2797,7 @@ namespace CXX
// customized version may not necessarily be convertible to
// the base without loss of information.
//
- Boolean generate (false);
+ bool generate (false);
{
GenerateFromBaseCtor t (*this, generate);
t.traverse (c);
@@ -2478,9 +2805,9 @@ namespace CXX
if (generate)
{
- Boolean has_complex_non_op_args (false);
- Boolean has_poly_non_op_args (false);
- Boolean complex_poly_args_clash (true);
+ bool has_complex_non_op_args (false);
+ bool has_poly_non_op_args (false);
+ bool complex_poly_args_clash (true);
{
HasComplexPolyNonOptArgs t (*this, false,
has_complex_non_op_args,
@@ -2505,7 +2832,7 @@ namespace CXX
inherits (c, inherits_member_);
os << "&";
{
- FromBaseCtorArg args (*this, FromBaseCtorArg::arg_type, false);
+ FromBaseCtorArg args (*this, CtorArgType::type, false);
Traversal::Names args_names (args);
names (c, args_names);
}
@@ -2524,7 +2851,7 @@ namespace CXX
"base and" << endl
<< " * initializers for required elements and "
<< "attributes" << endl
- << " * (auto_ptr version)." << endl
+ << " * (" << auto_ptr << " version)." << endl
<< " *" << endl
<< " * This constructor will try to use the passed " <<
"values directly" << endl
@@ -2537,7 +2864,7 @@ namespace CXX
os << "&";
{
FromBaseCtorArg args (
- *this, FromBaseCtorArg::arg_complex_auto_ptr, false);
+ *this, CtorArgType::complex_auto_ptr, false);
Traversal::Names args_names (args);
names (c, args_names);
}
@@ -2558,7 +2885,7 @@ namespace CXX
"base and" << endl
<< " * initializers for required elements and "
<< "attributes" << endl
- << " * (auto_ptr version)." << endl
+ << " * (" << auto_ptr << " version)." << endl
<< " *" << endl
<< " * This constructor will try to use the passed " <<
"values directly" << endl
@@ -2571,7 +2898,7 @@ namespace CXX
os << "&";
{
FromBaseCtorArg args (
- *this, FromBaseCtorArg::arg_poly_auto_ptr, false);
+ *this, CtorArgType::poly_auto_ptr, false);
Traversal::Names args_names (args);
names (c, args_names);
}
@@ -2597,7 +2924,7 @@ namespace CXX
os << name << " (";
{
CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, false, true);
+ *this, CtorArgType::type, false, true);
ctor_args.dispatch (c);
}
os << ");"
@@ -2615,7 +2942,8 @@ namespace CXX
os << "/**" << endl
<< " * @brief Create an instance from initializers " <<
"for required " << endl
- << " * elements and attributes (auto_ptr version)." << endl
+ << " * elements and attributes (" << auto_ptr <<
+ " version)." << endl
<< " *" << endl
<< " * This constructor will try to use the passed " <<
"values directly" << endl
@@ -2626,7 +2954,7 @@ namespace CXX
os << name << " (";
{
CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_complex_auto_ptr, false, true);
+ *this, CtorArgType::complex_auto_ptr, false, true);
ctor_args.dispatch (c);
}
os << ");"
@@ -2644,7 +2972,8 @@ namespace CXX
os << "/**" << endl
<< " * @brief Create an instance from initializers " <<
"for required " << endl
- << " * elements and attributes (auto_ptr version)." << endl
+ << " * elements and attributes (" << auto_ptr <<
+ " version)." << endl
<< " *" << endl
<< " * This constructor will try to use the passed " <<
"values directly" << endl
@@ -2655,7 +2984,7 @@ namespace CXX
os << name << " (";
{
CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_poly_auto_ptr, false, true);
+ *this, CtorArgType::poly_auto_ptr, false, true);
ctor_args.dispatch (c);
}
os << ");"
@@ -2686,7 +3015,7 @@ namespace CXX
{
CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, false, false);
+ *this, CtorArgType::type, false, false);
ctor_args.dispatch (c);
}
@@ -2709,7 +3038,7 @@ namespace CXX
{
CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, false, false);
+ *this, CtorArgType::type, false, false);
ctor_args.dispatch (c);
}
@@ -2731,7 +3060,7 @@ namespace CXX
{
CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, false, false);
+ *this, CtorArgType::type, false, false);
ctor_args.dispatch (c);
}
@@ -2755,7 +3084,7 @@ namespace CXX
os << name << " (";
{
- CtorArgs ctor_args (*this, CtorArgs::arg_type);
+ CtorArgs ctor_args (*this, CtorArgType::type);
ctor_args.dispatch (c);
}
@@ -2774,7 +3103,7 @@ namespace CXX
"base and" << endl
<< " * initializers for required elements and " <<
"attributes" << endl
- << " * (auto_ptr version)." << endl
+ << " * (" << auto_ptr << " version)." << endl
<< " *" << endl
<< " * This constructor will try to use the passed " <<
"values directly" << endl
@@ -2785,7 +3114,7 @@ namespace CXX
os << name << " (";
{
- CtorArgs ctor_args (*this, CtorArgs::arg_complex_auto_ptr);
+ CtorArgs ctor_args (*this, CtorArgType::complex_auto_ptr);
ctor_args.dispatch (c);
}
@@ -2805,7 +3134,7 @@ namespace CXX
"base and" << endl
<< " * initializers for required elements and " <<
"attributes" << endl
- << " * (auto_ptr version)." << endl
+ << " * (" << auto_ptr << " version)." << endl
<< " *" << endl
<< " * This constructor will try to use the passed " <<
"values directly" << endl
@@ -2816,7 +3145,7 @@ namespace CXX
os << name << " (";
{
- CtorArgs ctor_args (*this, CtorArgs::arg_poly_auto_ptr);
+ CtorArgs ctor_args (*this, CtorArgType::poly_auto_ptr);
ctor_args.dispatch (c);
}
@@ -2826,8 +3155,9 @@ namespace CXX
// c-tor (istream&)
//
- Streams const& st (options.value<CLI::generate_extraction> ());
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ NarrowStrings const& st (options.generate_extraction ());
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
if (doxygen)
{
@@ -2852,7 +3182,7 @@ namespace CXX
}
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -2969,12 +3299,61 @@ namespace CXX
<< container << "* c = 0) const;"
<< endl;
+ // operator=
+ //
+ bool priv (false);
+
+ if (!simple)
+ {
+ if (options.suppress_assignment ())
+ {
+ priv = true;
+ os << "private:" << endl;
+
+ if (doxygen)
+ {
+ os << "/**" << endl
+ << " * @brief Disabled copy assignment operator." << endl
+ << " *" << endl
+ << " * @param x An instance to make a copy of." << endl
+ << " * @return A reference to itself." << endl
+ << " */" << endl;
+ }
+
+ os << name << "&" << endl
+ << "operator= (const " << name << "& x);"
+ << endl;
+ }
+ else if (has_members || (gen_wildcard && (hae || haa)))
+ {
+ if (doxygen)
+ {
+ os << "/**" << endl
+ << " * @brief Copy assignment operator." << endl
+ << " *" << endl
+ << " * @param x An instance to make a copy of." << endl
+ << " * @return A reference to itself." << endl
+ << " *" << endl
+ << " * For polymorphic object models use the @c _clone " <<
+ "function instead." << endl
+ << " */" << endl;
+ }
+
+ os << name << "&" << endl
+ << "operator= (const " << name << "& x);"
+ << endl;
+ }
+ }
+
if (doxygen)
{
os << "//@}" << endl
<< endl;
}
+ if (priv)
+ os << "public:" << endl;
+
// d-tor
//
if (doxygen)
@@ -2990,7 +3369,7 @@ namespace CXX
// Data members and implementation functions.
//
- if (has_members || hae || (haa && gen_wildcard))
+ if (has_members || hae || (haa && gen_wildcard) || ordered || mixed)
{
os << "// Implementation." << endl
<< "//" << endl;
@@ -3000,9 +3379,10 @@ namespace CXX
<< "//@cond" << endl
<< endl;
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing () &&
+ (has_members || hae || (haa && gen_wildcard) || mixed))
{
- // parse (xercesc::DOMElement)
+ // parse ()
//
os << "protected:" << endl
<< "void" << endl
@@ -3019,7 +3399,8 @@ namespace CXX
//
if (has_members)
{
- for (Streams::ConstIterator i (st.begin ()); i != st.end (); ++i)
+ for (NarrowStrings::const_iterator i (st.begin ()); i != st.end ();
+ ++i)
{
os << "void" << endl
<< unclash (name, "parse") << " (" <<
@@ -3029,7 +3410,7 @@ namespace CXX
}
}
- //
+ // DOM document.
//
if (edom_document_member_p (c))
{
@@ -3038,6 +3419,24 @@ namespace CXX
<< endl;
}
+ // Mixed text content.
+ //
+ if (mixed)
+ {
+ os << ctx.get<String> ("mixed-container") << " " <<
+ ctx.get<String> ("mixed-member") << ";"
+ << endl;
+ }
+
+ // Order container.
+ //
+ if (ordered)
+ {
+ os << ctx.get<String> ("order-container") << " " <<
+ ctx.get<String> ("order-member") << ";"
+ << endl;
+ }
+
//
//
names (c, names_data_);
@@ -3051,7 +3450,7 @@ namespace CXX
// Comparison operators.
//
- if (options.value<CLI::generate_comparison> () &&
+ if (options.generate_comparison () &&
(has_members || !c.inherits_p () ||
((hae || haa) && gen_wildcard)))
{
@@ -3095,7 +3494,7 @@ namespace CXX
belongs_ >> type_name_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (!doc_root_p (e))
@@ -3103,13 +3502,13 @@ namespace CXX
SemanticGraph::Type& t (e.type ());
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType test (fund);
test.dispatch (t);
}
- Boolean simple (true);
+ bool simple (true);
if (!fund)
{
IsSimpleType test (simple);
@@ -3274,7 +3673,7 @@ namespace CXX
}
os << "void" << endl
- << mname << " (::std::auto_ptr< " << type << " > p);"
+ << mname << " (" << auto_ptr << "< " << type << " > p);"
<< endl;
}
@@ -3296,7 +3695,7 @@ namespace CXX
<< " */" << endl;
}
- os << "::std::auto_ptr< " << type << " >" << endl
+ os << auto_ptr << "< " << type << " >" << endl
<< edname (e) << " ();"
<< endl;
}
@@ -3357,7 +3756,7 @@ namespace CXX
// default c-tor
//
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
if (doxygen)
{
@@ -3403,7 +3802,8 @@ namespace CXX
os << "/**" << endl
<< " * @brief Create an instance from an initializer " <<
"for" << endl
- << " * the element value (auto_ptr version)." << endl
+ << " * the element value (" << auto_ptr <<
+ " version)." << endl
<< " *" << endl
<< " * @param p Element value to use." << endl
<< " *" << endl
@@ -3413,11 +3813,11 @@ namespace CXX
<< " */" << endl;
}
- os << name << " (::std::auto_ptr< " << type << " > p);"
+ os << name << " (" << auto_ptr << "< " << type << " > p);"
<< endl;
}
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -3608,7 +4008,7 @@ namespace CXX
};
}
- Void
+ void
generate_tree_header (Context& ctx)
{
if (ctx.generate_xml_schema)
@@ -3625,21 +4025,21 @@ namespace CXX
<< "#include <xsd/cxx/tree/types.hxx>" << endl
<< endl;
- if (!ctx.options.value<CLI::suppress_parsing> () ||
- ctx.options.value<CLI::generate_serialization> ())
+ if (!ctx.options.suppress_parsing () ||
+ ctx.options.generate_serialization ())
{
ctx.os << "#include <xsd/cxx/xml/error-handler.hxx>" << endl
<< endl;
}
- if (!ctx.options.value<CLI::suppress_parsing> () ||
- ctx.options.value<CLI::generate_serialization> ())
+ if (!ctx.options.suppress_parsing () ||
+ ctx.options.generate_serialization ())
{
ctx.os << "#include <xsd/cxx/xml/dom/auto-ptr.hxx>" << endl
<< endl;
}
- Boolean element_map (ctx.options.value<CLI::generate_element_map> ());
+ bool element_map (ctx.options.generate_element_map ());
if (element_map)
ctx.os << "#include <xsd/cxx/tree/element-map.hxx>" << endl
@@ -3649,7 +4049,7 @@ namespace CXX
// later in the individual generators for each feature because
// those headers provide implementation for the fundamental types.
//
- if (!ctx.options.value<CLI::suppress_parsing> ())
+ if (!ctx.options.suppress_parsing ())
{
ctx.os << "#include <xsd/cxx/tree/parsing.hxx>" << endl;
@@ -3670,7 +4070,7 @@ namespace CXX
ctx.os << endl;
}
- if (ctx.options.value<CLI::generate_serialization> ())
+ if (ctx.options.generate_serialization ())
{
ctx.os << "#include <xsd/cxx/xml/dom/serialization-header.hxx>" << endl
<< "#include <xsd/cxx/tree/serialization.hxx>" << endl;
@@ -3692,16 +4092,17 @@ namespace CXX
ctx.os << endl;
}
- if (ctx.options.value<CLI::generate_ostream> ())
+ if (ctx.options.generate_ostream ())
{
ctx.os << "#include <xsd/cxx/tree/std-ostream-operators.hxx>" << endl
<< endl;
}
- Streams const& ist (ctx.options.value<CLI::generate_insertion> ());
+ NarrowStrings const& ist (ctx.options.generate_insertion ());
if (!ist.empty ())
{
- for (Streams::ConstIterator i (ist.begin ()); i != ist.end (); ++i)
+ for (NarrowStrings::const_iterator i (ist.begin ()); i != ist.end ();
+ ++i)
{
if (*i == "ACE_OutputCDR")
ctx.os << "#include <xsd/cxx/tree/ace-cdr-stream-insertion.hxx>"
@@ -3715,10 +4116,11 @@ namespace CXX
<< endl;
}
- Streams const& est (ctx.options.value<CLI::generate_extraction> ());
+ NarrowStrings const& est (ctx.options.generate_extraction ());
if (!est.empty ())
{
- for (Streams::ConstIterator i (est.begin ()); i != est.end (); ++i)
+ for (NarrowStrings::const_iterator i (est.begin ()); i != est.end ();
+ ++i)
{
if (*i == "ACE_InputCDR")
ctx.os << "#include <xsd/cxx/tree/ace-cdr-stream-extraction.hxx>"
@@ -3746,12 +4148,25 @@ namespace CXX
}
else
{
- Boolean inline_ (ctx.options.value<CLI::generate_inline> ());
+ bool inline_ (ctx.options.generate_inline ());
- ctx.os << "#include <memory> // std::auto_ptr" << endl
+ ctx.os << "#include <memory> // " << ctx.auto_ptr << endl
<< "#include <limits> // std::numeric_limits" << endl
- << "#include <algorithm> // std::binary_search" << endl
- << endl;
+ << "#include <algorithm> // std::binary_search" << endl;
+
+ if (ctx.std >= cxx_version::cxx11)
+ ctx.os << "#include <utility> // std::move" << endl;
+
+ if (!ctx.options.ordered_type ().empty () ||
+ ctx.options.ordered_type_all ())
+ {
+ ctx.os << "#include <cstddef> // std::size_t" << endl;
+
+ if (!ctx.options.order_container_specified ())
+ ctx.os << "#include <vector>" << endl;
+ }
+
+ ctx.os << endl;
if (ctx.char_type == L"char" && ctx.char_encoding != L"custom")
{
@@ -3766,23 +4181,23 @@ namespace CXX
<< "#include <xsd/cxx/tree/list.hxx>" << endl
<< endl;
- if (!ctx.options.value<CLI::suppress_parsing> ())
+ if (!ctx.options.suppress_parsing ())
{
ctx.os << "#include <xsd/cxx/xml/dom/parsing-header.hxx>" << endl
<< endl;
}
- if (ctx.options.value<CLI::generate_wildcard> ())
+ if (ctx.options.generate_wildcard ())
{
- if (ctx.options.value<CLI::suppress_parsing> () ||
- !ctx.options.value<CLI::generate_serialization> ())
+ if (ctx.options.suppress_parsing () ||
+ !ctx.options.generate_serialization ())
ctx.os << "#include <xsd/cxx/xml/dom/auto-ptr.hxx>" << endl;
ctx.os << "#include <xsd/cxx/tree/containers-wildcard.hxx>" << endl
<< endl;
}
- if (!ctx.options.value<CLI::generate_extraction> ().empty ())
+ if (!ctx.options.generate_extraction ().empty ())
ctx.os << "#include <xsd/cxx/tree/istream-fwd.hxx>" << endl
<< endl;
@@ -3820,7 +4235,7 @@ namespace CXX
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
DocumentedNamespace ns (ctx);
@@ -3839,7 +4254,7 @@ namespace CXX
names >> complex;
names >> enumeration;
- if (ctx.options.value<CLI::generate_element_type> ())
+ if (ctx.options.generate_element_type ())
names >> element;
schema.dispatch (ctx.schema_root);
diff --git a/xsd/xsd/cxx/tree/tree-header.hxx b/xsd/xsd/cxx/tree/tree-header.hxx
index bb3b417..7c97364 100644
--- a/xsd/xsd/cxx/tree/tree-header.hxx
+++ b/xsd/xsd/cxx/tree/tree-header.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/tree-header.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_TREE_HEADER_HXX
@@ -12,7 +11,7 @@ namespace CXX
{
namespace Tree
{
- Void
+ void
generate_tree_header (Context&);
}
}
diff --git a/xsd/xsd/cxx/tree/tree-inline.cxx b/xsd/xsd/cxx/tree/tree-inline.cxx
index 5bf309b..500ee73 100644
--- a/xsd/xsd/cxx/tree/tree-inline.cxx
+++ b/xsd/xsd/cxx/tree/tree-inline.cxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/tree-inline.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <xsd-frontend/semantic-graph.hxx>
@@ -22,7 +21,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -54,7 +53,7 @@ namespace CXX
os << inl
<< name << "::" << endl
<< name << " ()" << endl
- << ": " << base_type << " ( " << flags_type << " (0), this)"
+ << ": " << base_type << " (this)"
<< "{"
<< "}";
@@ -83,6 +82,28 @@ namespace CXX
<< " " << base_type << " (o, f, this)"
<< "{"
<< "}";
+
+ // Comparison operators.
+ //
+ if (options.generate_comparison ())
+ {
+ os << inl
+ << "bool" << endl
+ << "operator== (const " << name << "& x, " <<
+ "const " << name << "& y)"
+ << "{"
+ << "const " << base_type << "& bx (x);"
+ << "return bx == y;"
+ << "}";
+
+ os << inl
+ << "bool" << endl
+ << "operator!= (const " << name << "& x, " <<
+ "const " << name << "& y)"
+ << "{"
+ << "return !(x == y);"
+ << "}";
+ }
}
private:
@@ -106,7 +127,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -123,7 +144,7 @@ namespace CXX
<< "//" << endl
<< endl;
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
// c-tor ()
//
@@ -182,7 +203,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
// This type should be ultimately string based.
@@ -196,7 +217,7 @@ namespace CXX
os << ")";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Type& t)
{
base_type_name_.dispatch (t);
@@ -217,7 +238,7 @@ namespace CXX
inherits_member_ >> member_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -228,13 +249,13 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (e);
}
- Boolean enum_based (false);
+ bool enum_based (false);
if (string_based)
{
SemanticGraph::Enumeration* be (0);
@@ -250,7 +271,7 @@ namespace CXX
// Get to the ultimate base and see if is a fundamental type.
//
- Boolean fund_based (false);
+ bool fund_based (false);
SemanticGraph::Type& ult_base (ultimate_base (e));
{
IsFundamentalType t (fund_based);
@@ -276,7 +297,7 @@ namespace CXX
// default c-tor
//
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
os << inl
<< name << "::" << endl
@@ -427,7 +448,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -437,13 +458,13 @@ namespace CXX
String const& mname (emname (m));
String const& member (emember (m));
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType t (fund);
t.dispatch (m.type ());
}
- Boolean def_attr (m.default_p () &&
+ bool def_attr (m.default_p () &&
m.is_a<SemanticGraph::Attribute> ());
if (max (m) != 1)
@@ -537,9 +558,10 @@ namespace CXX
if (!fund)
os << inl
<< "void " << scope_ << "::" << endl
- << mname << " (::std::auto_ptr< " << type << " > x)"
+ << mname << " (" << auto_ptr << "< " << type << " > x)"
<< "{"
- << "this->" << member << ".set (x);"
+ << "this->" << member << ".set (" <<
+ (std >= cxx_version::cxx11 ? "std::move (x)" : "x") << ");"
<< "}";
}
else
@@ -589,9 +611,10 @@ namespace CXX
if (!fund)
os << inl
<< "void " << scope_ << "::" << endl
- << mname << " (::std::auto_ptr< " << type << " > x)"
+ << mname << " (" << auto_ptr << "< " << type << " > x)"
<< "{"
- << "this->" << member << ".set (x);"
+ << "this->" << member << ".set (" <<
+ (std >= cxx_version::cxx11 ? "std::move (x)" : "x") << ");"
<< "}";
// auto_ptr<type>
@@ -599,7 +622,7 @@ namespace CXX
//
if (detach && !fund)
os << inl
- << "::std::auto_ptr< " << q_type << " > " <<
+ << auto_ptr << "< " << q_type << " > " <<
scope_ << "::" << endl
<< edname (m) << " ()"
<< "{"
@@ -613,7 +636,7 @@ namespace CXX
//
if (m.default_p ())
{
- Boolean simple (true);
+ bool simple (true);
if (m.is_a<SemanticGraph::Element> ())
{
@@ -660,7 +683,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& aname (eaname (a));
@@ -810,7 +833,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& aname (eaname (a));
@@ -862,7 +885,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
String name (ename (c));
@@ -883,13 +906,48 @@ namespace CXX
Member member (*this, name);
Traversal::Names names;
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
names >> any;
names >> member;
Complex::names (c, names);
+ // Mixed text content.
+ //
+ if (mixed_p (c) && !c.context ().count ("mixed-in-base"))
+ {
+ SemanticGraph::Context& ctx (c.context ());
+
+ String const& cont (ctx.get<String> ("mixed-container"));
+ String const& memb (ctx.get<String> ("mixed-member"));
+
+ String const& aname (ctx.get<String> ("mixed-aname"));
+ String const& mname (ctx.get<String> ("mixed-mname"));
+
+ os << inl
+ << "const " << name << "::" << cont << "& " <<
+ name << "::" << endl
+ << aname << " () const"
+ << "{"
+ << "return this->" << memb << ";"
+ << "}";
+
+ os << inl
+ << name << "::" << cont << "& " << name << "::" << endl
+ << aname << " ()"
+ << "{"
+ << "return this->" << memb << ";"
+ << "}";
+
+ os << inl
+ << "void " << name << "::" << endl
+ << mname << " (const " << cont << "& s)"
+ << "{"
+ << "this->" << memb << " = s;"
+ << "}";
+ }
+
// dom_document accessors.
//
if (edom_document_member_p (c))
@@ -899,14 +957,49 @@ namespace CXX
name << "::" << endl
<< edom_document (c) << " () const"
<< "{"
- << "return *" << edom_document_member (c) << ";"
+ << "return *this->" << edom_document_member (c) << ";"
<< "}";
os << inl
<< xerces_ns << "::DOMDocument& " << name << "::" << endl
<< edom_document (c) << " ()"
<< "{"
- << "return *" << edom_document_member (c) << ";"
+ << "return *this->" << edom_document_member (c) << ";"
+ << "}";
+ }
+
+ // Order container.
+ //
+ if (ordered_p (c) && !c.context ().count ("order-in-base"))
+ {
+ SemanticGraph::Context& ctx (c.context ());
+
+ String const& cont (ctx.get<String> ("order-container"));
+ String const& memb (ctx.get<String> ("order-member"));
+
+ String const& aname (ctx.get<String> ("order-aname"));
+ String const& mname (ctx.get<String> ("order-mname"));
+
+ os << inl
+ << "const " << name << "::" << cont << "& " <<
+ name << "::" << endl
+ << aname << " () const"
+ << "{"
+ << "return this->" << memb << ";"
+ << "}";
+
+ os << inl
+ << name << "::" << cont << "& " << name << "::" << endl
+ << aname << " ()"
+ << "{"
+ << "return this->" << memb << ";"
+ << "}";
+
+ os << inl
+ << "void " << name << "::" << endl
+ << mname << " (const " << cont << "& s)"
+ << "{"
+ << "this->" << memb << " = s;"
<< "}";
}
@@ -924,13 +1017,13 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (!doc_root_p (e))
return;
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType test (fund);
test.dispatch (e.type ());
@@ -976,7 +1069,7 @@ namespace CXX
<< "void " << name << "::" << endl
<< mname << " (const " << type << "& x)"
<< "{"
- << "return this->" << member << ".set (x);"
+ << "this->" << member << ".set (x);"
<< "}";
// void
@@ -986,9 +1079,10 @@ namespace CXX
{
os << inl
<< "void " << name << "::" << endl
- << mname << " (::std::auto_ptr< " << type << " > p)"
+ << mname << " (" << auto_ptr << "< " << type << " > x)"
<< "{"
- << "return this->" << member << ".set (p);"
+ << "this->" << member << ".set (" <<
+ (std >= cxx_version::cxx11 ? "std::move (x)" : "x") << ");"
<< "}";
}
@@ -997,7 +1091,7 @@ namespace CXX
//
if (detach && !fund)
os << inl
- << "::std::auto_ptr< " << name << "::" << type << " > " <<
+ << auto_ptr << "< " << name << "::" << type << " > " <<
name << "::" << endl
<< edname (e) << " ()"
<< "{"
@@ -1007,12 +1101,12 @@ namespace CXX
};
}
- Void
- generate_tree_inline (Context& ctx, UnsignedLong first, UnsignedLong last)
+ void
+ generate_tree_inline (Context& ctx, size_t first, size_t last)
{
// Generate includes.
//
- if (ctx.options.value<CLI::generate_inline> ())
+ if (ctx.options.generate_inline ())
{
Traversal::Schema schema;
Includes includes (ctx, Includes::inline_);
@@ -1035,7 +1129,7 @@ namespace CXX
}
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx, first, last);
@@ -1053,7 +1147,7 @@ namespace CXX
names >> complex;
names >> enumeration;
- if (ctx.options.value<CLI::generate_element_type> ())
+ if (ctx.options.generate_element_type ())
names >> element;
schema.dispatch (ctx.schema_root);
diff --git a/xsd/xsd/cxx/tree/tree-inline.hxx b/xsd/xsd/cxx/tree/tree-inline.hxx
index ffe4341..351ab38 100644
--- a/xsd/xsd/cxx/tree/tree-inline.hxx
+++ b/xsd/xsd/cxx/tree/tree-inline.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/tree-inline.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_TREE_INLINE_HXX
@@ -12,8 +11,8 @@ namespace CXX
{
namespace Tree
{
- Void
- generate_tree_inline (Context&, UnsignedLong first, UnsignedLong last);
+ void
+ generate_tree_inline (Context&, size_t first, size_t last);
}
}
diff --git a/xsd/xsd/cxx/tree/tree-source.cxx b/xsd/xsd/cxx/tree/tree-source.cxx
index 4a17b00..8a01c5a 100644
--- a/xsd/xsd/cxx/tree/tree-source.cxx
+++ b/xsd/xsd/cxx/tree/tree-source.cxx
@@ -1,9 +1,9 @@
// file : xsd/cxx/tree/tree-source.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#include <cult/containers/list.hxx>
+#include <map>
+#include <list>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
@@ -11,6 +11,8 @@
#include <cxx/tree/tree-source.hxx>
#include <cxx/tree/default-value.hxx>
+using namespace std;
+
namespace CXX
{
namespace Tree
@@ -24,7 +26,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& l)
{
String name (ename (l));
@@ -39,7 +41,7 @@ namespace CXX
<< "//" << endl
<< endl;
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
SemanticGraph::Type& item_type (l.argumented ().type ());
String base (L"::xsd::cxx::tree::list< " +
@@ -105,27 +107,35 @@ namespace CXX
// Register with type factory map.
//
- if (polymorphic && polymorphic_p (l) && !anonymous_p (l))
+ if (polymorphic && polymorphic_p (l))
{
// Note that we are using the original type name.
//
String const& name (ename (l));
- if (!options.value<CLI::suppress_parsing> ())
+ // If this type is anonymous but substitutes, then it will
+ // be registered as part of the substitution registration.
+ //
+ if (!anonymous_p (l) && !options.suppress_parsing ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::type_factory_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_factory_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_factory_init (" << endl
<< strlit (l.name ()) << "," << endl
<< strlit (xml_ns_name (l)) << ");"
<< endl;
+ }
- if (options.value<CLI::generate_comparison> ())
+ if ((!anonymous_p (l) || anonymous_substitutes_p (l)) &&
+ options.generate_comparison ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::comparison_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::comparison_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_comparison_init;"
<< endl;
+ }
}
}
@@ -150,7 +160,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& u)
{
String name (ename (u));
@@ -167,7 +177,7 @@ namespace CXX
<< "//" << endl
<< endl;
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -212,27 +222,35 @@ namespace CXX
// Register with type factory map.
//
- if (polymorphic && polymorphic_p (u) && !anonymous_p (u))
+ if (polymorphic && polymorphic_p (u))
{
// Note that we are using the original type name.
//
String const& name (ename (u));
- if (!options.value<CLI::suppress_parsing> ())
+ // If this type is anonymous but substitutes, then it will
+ // be registered as part of the substitution registration.
+ //
+ if (!anonymous_p (u) && !options.suppress_parsing ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::type_factory_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_factory_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_factory_init (" << endl
<< strlit (u.name ()) << "," << endl
<< strlit (xml_ns_name (u)) << ");"
<< endl;
+ }
- if (options.value<CLI::generate_comparison> ())
+ if ((!anonymous_p (u) || anonymous_substitutes_p (u)) &&
+ options.generate_comparison ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::comparison_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::comparison_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_comparison_init;"
<< endl;
+ }
}
}
};
@@ -248,7 +266,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
os << strlit (e.name ());
@@ -269,13 +287,13 @@ namespace CXX
String name_;
};
- Boolean
+ bool
operator< (LiteralInfo const& x, LiteralInfo const& y)
{
return x.value_ < y.value_;
}
- typedef Cult::Containers::List<LiteralInfo> LiteralInfoList;
+ typedef list<LiteralInfo> LiteralInfoList;
// Populate LiteralInfoList
@@ -288,7 +306,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
list_.push_back (LiteralInfo (e.name (), ename (e)));
@@ -307,7 +325,7 @@ namespace CXX
names_enumerator_literal_ >> enumerator_literal_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
String name (ename (e));
@@ -318,14 +336,14 @@ namespace CXX
if (renamed_type (e, name) && !name)
return;
- Boolean string_based (false);
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (e);
}
SemanticGraph::Enumeration* be (0);
- Boolean enum_based (false);
+ bool enum_based (false);
if (string_based)
{
IsEnumBasedType t (be);
@@ -338,7 +356,7 @@ namespace CXX
if (string_based)
value = evalue (e);
- UnsignedLong enum_count (0);
+ size_t enum_count (0);
for (Type::NamesIterator i (e.names_begin ()), end (e.names_end ());
i != end; ++i)
@@ -359,7 +377,7 @@ namespace CXX
<< "//" << endl
<< endl;
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -490,7 +508,7 @@ namespace CXX
String fq_name (ns_scope + L"::" + name);
- for (LiteralInfoList::Iterator
+ for (LiteralInfoList::iterator
b (l.begin ()), i (b), end (l.end ()); i != end; ++i)
{
if (i != b)
@@ -504,31 +522,39 @@ namespace CXX
// Register with type factory map.
//
- if (polymorphic && polymorphic_p (e) && !anonymous_p (e))
+ if (polymorphic && polymorphic_p (e))
{
// Note that we are using the original type name.
//
String const& name (ename (e));
- if (!options.value<CLI::suppress_parsing> ())
+ // If this type is anonymous but substitutes, then it will
+ // be registered as part of the substitution registration.
+ //
+ if (!anonymous_p (e) && !options.suppress_parsing ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::type_factory_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_factory_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_factory_init (" << endl
<< strlit (e.name ()) << "," << endl
<< strlit (xml_ns_name (e)) << ");"
<< endl;
+ }
- if (options.value<CLI::generate_comparison> ())
+ if ((!anonymous_p (e) || anonymous_substitutes_p (e)) &&
+ options.generate_comparison ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::comparison_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::comparison_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_comparison_init;"
<< endl;
+ }
}
}
- virtual Void
+ virtual void
comma (Type&)
{
os << "," << endl;
@@ -549,7 +575,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -560,7 +586,7 @@ namespace CXX
if (m.default_p ())
{
SemanticGraph::Type& t (m.type ());
- Boolean simple (true);
+ bool simple (true);
if (m.is_a<SemanticGraph::Element> ())
{
@@ -570,7 +596,7 @@ namespace CXX
if (simple)
{
- Boolean lit (false);
+ bool lit (false);
{
IsLiteralValue test (lit);
test.dispatch (t);
@@ -661,12 +687,15 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e))
return;
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (e.scope ()));
+
String const& member (emember (e));
String tr (etraits (e)); // traits type name
@@ -674,7 +703,7 @@ namespace CXX
SemanticGraph::Type& t (e.type ());
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType traverser (fund);
traverser.dispatch (t);
@@ -686,23 +715,17 @@ namespace CXX
// derived from which makes it impossible to substitute or
// dynamically-type with xsi:type.
//
- Boolean poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+ bool poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
os << "// " << comment (e.name ()) << endl
<< "//" << endl;
if (poly)
{
- // aCC cannot handle an inline call to type_factory_map_instance.
- //
os << "{"
- << "::xsd::cxx::tree::type_factory_map< " << char_type <<
- " >& tfm (" << endl
- << "::xsd::cxx::tree::type_factory_map_instance< 0, " <<
- char_type << " > ());"
- << endl
- << "::std::auto_ptr< ::xsd::cxx::tree::type > tmp (" << endl
- << "tfm.create (" << endl
+ << auto_ptr << "< ::xsd::cxx::tree::type > tmp (" << endl
+ << "::xsd::cxx::tree::type_factory_map_instance< " <<
+ poly_plate << ", " << char_type << " > ().create (" << endl
<< strlit (e.name ()) << "," << endl
<< (e.qualified_p ()
? strlit (e.namespace_ ().name ())
@@ -732,8 +755,14 @@ namespace CXX
if (!fund)
{
- os << "::std::auto_ptr< " << type << " > r (" << endl
- << tr << "::create (i, f, this));"
+ os << auto_ptr << "< " << type << " > r (" << endl
+ << tr << "::create (i, f";
+
+ if (t.is_a<SemanticGraph::AnyType> () &&
+ options.generate_any_type ())
+ os << " | " << flags_type << "::extract_content";
+
+ os << ", this));"
<< endl;
}
}
@@ -772,7 +801,7 @@ namespace CXX
{
// Cast to static type.
//
- os << "::std::auto_ptr< " << type << " > r (" << endl
+ os << auto_ptr << "< " << type << " > r (" << endl
<< "dynamic_cast< " << type << "* > (tmp.get ()));"
<< endl
<< "if (r.get ())" << endl
@@ -783,23 +812,25 @@ namespace CXX
<< endl;
}
+ char const* r (std >= cxx_version::cxx11 ? "::std::move (r)" : "r");
+
if (max (e) != 1)
{
// sequence
//
- os << "this->" << member << ".push_back (r);";
+ os << "this->" << member << ".push_back (" << r << ");";
}
else if (min (e) == 0)
{
// optional
//
- os << "this->" << member << ".set (r);";
+ os << "this->" << member << ".set (" << r << ");";
}
else
{
// one
//
- os << "this->" << member << ".set (r);";
+ os << "this->" << member << ".set (" << r << ");";
}
}
else
@@ -827,6 +858,27 @@ namespace CXX
}
}
+ // Capture order.
+ //
+ if (ordered_p (c))
+ {
+ SemanticGraph::Context& ctx (c.context ());
+
+ String const& t (ctx.get<String> ("order-type"));
+ String const& m (ctx.get<String> ("order-member"));
+
+ os << "this->" << m << ".push_back (" << endl
+ << t << " (" <<
+ e.context ().get<String> ("ordered-id-name");
+
+ // sequence
+ //
+ if (max (e) != 1)
+ os << ", " << "this->" << member << ".size () - 1";
+
+ os << "));";
+ }
+
os << "continue;";
// End of check block.
@@ -863,7 +915,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (skip (e))
@@ -893,15 +945,16 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& member (emember (a));
+ SemanticGraph::Complex& c (
+ dynamic_cast<SemanticGraph::Complex&> (a.scope ()));
+
String const& ns (a.definition_namespace ().name ());
- String const& dom_doc (
- edom_document (
- dynamic_cast<SemanticGraph::Complex&> (a.scope ())));
+ String const& dom_doc (edom_document (c));
os << "// " << ename (a) << endl
<< "//" << endl
@@ -982,7 +1035,7 @@ namespace CXX
{
// sequence
//
- os << "this->" << member << " .push_back (r);";
+ os << "this->" << member << ".push_back (r);";
}
else if (min (a) == 0)
{
@@ -997,6 +1050,31 @@ namespace CXX
os << "this->" << member << ".set (r);";
}
+ // Capture order.
+ //
+ if (ordered_p (c))
+ {
+ SemanticGraph::Context& ctx (c.context ());
+
+ String const& t (ctx.get<String> ("order-type"));
+ String const& m (ctx.get<String> ("order-member"));
+
+ os << "this->" << m << ".push_back (" << endl
+ << t << " (" <<
+ a.context ().get<String> ("ordered-id-name") << ", ";
+
+ if (max (a) != 1)
+ // sequence
+ //
+ os << "this->" << member << ".size () - 1";
+ else
+ // optional & one
+ //
+ os << "0";
+
+ os << "));";
+ }
+
os << "continue;";
// End of check block.
@@ -1030,7 +1108,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
if (max (a) == 1 && min (a) == 1)
@@ -1055,7 +1133,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& member (emember (a));
@@ -1075,26 +1153,8 @@ namespace CXX
<< "{";
}
- Boolean fund (false);
- {
- IsFundamentalType traverser (fund);
- traverser.dispatch (a.type ());
- }
-
- if (fund)
- {
- os << "this->" << member << ".set (" << tr <<
- "::create (i, f, this));";
- }
- else
- {
- String type (etype (a));
-
- os << "::std::auto_ptr< " << type << " > r (" << endl
- << tr << "::create (i, f, this));"
- << endl
- << "this->" << member << ".set (r);";
- }
+ os << "this->" << member << ".set (" << tr <<
+ "::create (i, f, this));";
os << "continue;"
<< "}";
@@ -1109,7 +1169,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& member (emember (a));
@@ -1202,7 +1262,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& a)
{
String const& member (emember (a));
@@ -1238,33 +1298,31 @@ namespace CXX
Traversal::Type,
Context
{
- // If base_arg is empty then no base argument is
- // generated.
+ // If base_arg is empty then no base argument is generated.
//
- CtorBase (Context& c, String const& base_arg)
- : Context (c), base_arg_ (base_arg)
+ CtorBase (Context& c, CtorArgType at, String const& base_arg)
+ : Context (c), args_ (c, at, base_arg)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type&)
{
- if (base_arg_)
- os << base_arg_;
+ if (args_.base_arg_)
+ os << args_.base_arg_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration&)
{
- if (base_arg_)
- os << base_arg_;
+ if (args_.base_arg_)
+ os << args_.base_arg_;
}
- Void
+ void
traverse (SemanticGraph::Complex& c)
{
- Args args (*this, base_arg_);
- args.traverse (c);
+ args_.traverse (c);
}
private:
@@ -1279,31 +1337,32 @@ namespace CXX
Traversal::Attribute,
Context
{
- Args (Context& c, String const& base_arg)
- : Context (c), base_arg_ (base_arg), first_ (true)
+ Args (Context& c, CtorArgType at, String const& base_arg)
+ : Context (c),
+ arg_type_ (at), base_arg_ (base_arg), first_ (true)
{
*this >> inherits_ >> *this;
*this >> names_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type&)
{
if (base_arg_)
os << comma () << base_arg_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration&)
{
if (base_arg_)
os << comma () << base_arg_;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
- if (!options.value<CLI::generate_wildcard> ())
+ if (!options.generate_wildcard ())
return;
if (min (a) == 1 && max (a) == 1)
@@ -1314,18 +1373,43 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (!skip (e) && min (e) == 1 && max (e) == 1)
{
// one
//
- os << comma () << ename (e);
+ bool move (false);
+
+ if (std >= cxx_version::cxx11)
+ {
+ switch (arg_type_)
+ {
+ case CtorArgType::complex_auto_ptr:
+ {
+ bool simple (true);
+ IsSimpleType t (simple);
+ t.dispatch (e.type ());
+ move = !simple;
+ break;
+ }
+ case CtorArgType::poly_auto_ptr:
+ {
+ move = polymorphic && polymorphic_p (e.type ());
+ break;
+ }
+ case CtorArgType::type:
+ break;
+ }
+ }
+
+ os << comma () << (move ? "std::move (" : "") << ename (e) <<
+ (move ? ")" : "");
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
// Note that we are not including attributes with default
@@ -1345,20 +1429,23 @@ namespace CXX
String
comma ()
{
- Boolean tmp (first_);
+ bool tmp (first_);
first_ = false;
return tmp ? "" : ",\n";
}
- private:
+ public:
+ CtorArgType arg_type_;
String base_arg_;
- Boolean first_;
+
+ private:
+ bool first_;
Traversal::Inherits inherits_;
Traversal::Names names_;
};
- String base_arg_;
+ Args args_;
};
@@ -1366,12 +1453,12 @@ namespace CXX
Traversal::Attribute,
Context
{
- CtorMember (Context& c)
- : Context (c)
+ CtorMember (Context& c, CtorArgType at)
+ : Context (c), arg_type_ (at)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (skip (e))
@@ -1384,38 +1471,62 @@ namespace CXX
// sequence
//
os << "," << endl
- << " " << member << " (" << flags_type << " (), this)";
+ << " " << member << " (this)";
}
else if (min (e) == 0)
{
// optional
//
os << "," << endl
- << " " << member << " (" << flags_type << " (), this)";
+ << " " << member << " (this)";
}
else
{
// one
//
+ bool move (false);
+
+ if (std >= cxx_version::cxx11)
+ {
+ switch (arg_type_)
+ {
+ case CtorArgType::complex_auto_ptr:
+ {
+ bool simple (true);
+ IsSimpleType t (simple);
+ t.dispatch (e.type ());
+ move = !simple;
+ break;
+ }
+ case CtorArgType::poly_auto_ptr:
+ {
+ move = polymorphic && polymorphic_p (e.type ());
+ break;
+ }
+ case CtorArgType::type:
+ break;
+ }
+ }
+
os << "," << endl
- << " " << member << " (" << ename (e) << ", " <<
- flags_type << " (), this)";
+ << " " << member << " (" << (move ? "std::move (" : "") <<
+ ename (e) << (move ? ")" : "") << ", this)";
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
String const& member (emember (a));
- Boolean def (a.default_p ());
+ bool def (a.default_p ());
if (min (a) == 0 && !def)
{
// optional
//
os << "," << endl
- << " " << member << " (" << flags_type << " (), this)";
+ << " " << member << " (this)";
}
else
{
@@ -1429,16 +1540,18 @@ namespace CXX
//
os << "," << endl
<< " " << member << " (" <<
- edefault_value (a) << " (), " << flags_type << " (), this)";
+ edefault_value (a) << " (), this)";
}
else
{
os << "," << endl
- << " " << member << " (" << ename (a) << ", " <<
- flags_type << " (), this)";
+ << " " << member << " (" << ename (a) << ", this)";
}
}
}
+
+ private:
+ CtorArgType arg_type_;
};
struct CtorAny: Traversal::Any,
@@ -1450,7 +1563,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& member (emember (a));
@@ -1482,7 +1595,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& dom_doc (
@@ -1502,7 +1615,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Member& m)
{
if (skip (m))
@@ -1528,7 +1641,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& member (emember (a));
@@ -1541,7 +1654,7 @@ namespace CXX
arg_name << "." << member << ", this->" << dom_doc << " ())";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& member (emember (a));
@@ -1558,6 +1671,48 @@ namespace CXX
String arg_name;
};
+ struct AssignMember: Traversal::Member, Context
+ {
+ AssignMember (Context& c)
+ : Context (c)
+ {
+ }
+
+ virtual void
+ traverse (SemanticGraph::Member& m)
+ {
+ if (skip (m))
+ return;
+
+ String const& member (emember (m));
+ os << "this->" << member << " = x." << member << ";";
+ }
+ };
+
+ struct AssignAny: Traversal::Any,
+ Traversal::AnyAttribute,
+ Context
+ {
+ AssignAny (Context& c)
+ : Context (c)
+ {
+ }
+
+ virtual void
+ traverse (SemanticGraph::Any& a)
+ {
+ String const& member (emember (a));
+ os << "this->" << member << " = x." << member << ";";
+ }
+
+ virtual void
+ traverse (SemanticGraph::AnyAttribute& a)
+ {
+ String const& member (emember (a));
+ os << "this->" << member << " = x." << member << ";";
+ }
+ };
+
// Element parsing c-tor initializers.
//
@@ -1568,7 +1723,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& m)
{
if (skip (m))
@@ -1577,7 +1732,7 @@ namespace CXX
String const& member (emember (m));
os << "," << endl
- << " " << member << " (f, this)";
+ << " " << member << " (this)";
}
};
@@ -1590,7 +1745,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& member (emember (a));
@@ -1602,7 +1757,7 @@ namespace CXX
<< " " << member << " (this->" << dom_doc << " ())";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& member (emember (a));
@@ -1627,7 +1782,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (skip (e))
@@ -1636,10 +1791,10 @@ namespace CXX
String const& member (emember (e));
os << "," << endl
- << " " << member << " (" << flags_type << " (), this)";
+ << " " << member << " (this)";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
String const& member (emember (a));
@@ -1651,11 +1806,11 @@ namespace CXX
//
os << "," << endl
<< " " << member << " (" <<
- edefault_value (a) << " (), " << flags_type << " (), this)";
+ edefault_value (a) << " (), this)";
}
else
os << "," << endl
- << " " << member << " (" << flags_type << " (), this)";
+ << " " << member << " (this)";
}
};
@@ -1668,7 +1823,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& member (emember (a));
@@ -1680,7 +1835,7 @@ namespace CXX
<< " " << member << " (this->" << dom_doc << " ())";
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& member (emember (a));
@@ -1707,39 +1862,39 @@ namespace CXX
{
// generate should initially be false.
//
- HasComparisonOperator (Context& c, Boolean& generate)
+ HasComparisonOperator (Context& c, bool& generate)
: Context (c), generate_ (generate)
{
*this >> inherits_ >> *this;
*this >> names_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Fundamental::Type&)
{
// All built-in types are comparable.
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::List&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Union&)
{
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Enumeration& e)
{
Traversal::Enumeration::inherits (e);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
Complex::names (c);
@@ -1748,29 +1903,29 @@ namespace CXX
Complex::inherits (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Member& m)
{
if (!skip (m))
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&)
{
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
generate_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute&)
{
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
generate_ = true;
}
private:
- Boolean& generate_;
+ bool& generate_;
Traversal::Inherits inherits_;
Traversal::Names names_;
@@ -1787,7 +1942,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (skip (e))
@@ -1802,7 +1957,7 @@ namespace CXX
// dynamically-type with xsi:type.
//
SemanticGraph::Type& t (e.type ());
- Boolean poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
+ bool poly (polymorphic && polymorphic_p (t) && !anonymous_p (t));
if (!poly)
{
@@ -1812,13 +1967,11 @@ namespace CXX
}
else
{
- // aCC cannot handle an inline call to comparison_map_instance.
- //
os << "{"
<< "::xsd::cxx::tree::comparison_map< " << char_type
<< " >& cm (" << endl
- << "::xsd::cxx::tree::comparison_map_instance< 0, " <<
- char_type << " > ());"
+ << "::xsd::cxx::tree::comparison_map_instance< " <<
+ poly_plate << ", " << char_type << " > ());"
<< endl;
if (max (e) != 1)
@@ -1878,7 +2031,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
String const& aname (eaname (a));
@@ -1898,7 +2051,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
String const& aname (eaname (a));
@@ -1914,7 +2067,7 @@ namespace CXX
<< endl;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute& a)
{
String const& aname (eaname (a));
@@ -1935,50 +2088,53 @@ namespace CXX
Traversal::AnyAttribute,
Context
{
- HasParseFunction (Context& c, Boolean& has_el, Boolean& has_at)
+ HasParseFunction (Context& c, bool& has_el, bool& has_at)
: Context (c), has_el_ (has_el), has_at_ (has_at)
{
*this >> names_ >> *this;
*this >> inherits_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
+ if (mixed_p (c) && !c.context ().count ("mixed-in-base"))
+ has_el_ = true;
+
names (c);
if (!(has_el_ && has_at_))
inherits (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element&)
{
has_el_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any&)
{
has_el_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute&)
{
has_at_ = true;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::AnyAttribute&)
{
- if (options.value<CLI::generate_wildcard> ())
+ if (options.generate_wildcard ())
has_at_ = true;
}
private:
- Boolean& has_el_;
- Boolean& has_at_;
+ bool& has_el_;
+ bool& has_at_;
Traversal::Names names_;
Traversal::Inherits inherits_;
@@ -1993,14 +2149,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (Type& c)
{
Facets f;
FacetCollector col (f);
col.traverse (c);
- for (Facets::ConstIterator i (f.begin ()); i != f.end (); ++i)
+ for (Facets::const_iterator i (f.begin ()); i != f.end (); ++i)
{
if (i->first == L"fractionDigits")
os << "{::xsd::cxx::tree::facet::fraction_digits, " <<
@@ -2012,7 +2168,7 @@ namespace CXX
}
private:
- typedef Cult::Containers::Map<String, String> Facets;
+ typedef map<String, String> Facets;
struct FacetCollector: Traversal::Complex
{
@@ -2022,7 +2178,7 @@ namespace CXX
*this >> inherits_ >> *this;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
if (c.inherits_p ())
@@ -2075,21 +2231,25 @@ namespace CXX
default_ctor_any_init_ (c),
default_ctor_member_init_ (c),
ctor_any_ (c),
- ctor_member_ (c),
+ ctor_member_ (c, CtorArgType::type),
element_ctor_any_ (c),
element_ctor_member_ (c),
+ assign_any_ (c),
+ assign_member_ (c),
comparison_any_ (c),
comparison_member_ (c),
facet_array_ (c)
{
+ bool gen_wildcard (options.generate_wildcard ());
+
inherits_member_ >> member_name_;
names_element_ >> element_;
- if (options.value<CLI::generate_wildcard> ())
+ if (gen_wildcard)
names_element_ >> any_;
names_element_test_ >> element_test_;
- if (options.value<CLI::generate_wildcard> ())
+ if (gen_wildcard)
names_element_test_ >> any_test_;
names_attribute_ >> attribute_;
@@ -2097,26 +2257,32 @@ namespace CXX
names_any_attribute_ >> any_attribute_;
default_ctor_init_names_ >> default_ctor_member_init_;
- if (options.value<CLI::generate_wildcard> ())
+ if (gen_wildcard)
default_ctor_init_names_ >> default_ctor_any_init_;
ctor_names_ >> ctor_member_;
- if (options.value<CLI::generate_wildcard> ())
+ if (gen_wildcard)
ctor_names_ >> ctor_any_;
element_ctor_names_ >> element_ctor_member_;
- if (options.value<CLI::generate_wildcard> ())
+ if (gen_wildcard)
element_ctor_names_ >> element_ctor_any_;
+ assign_names_ >> assign_member_;
+ if (gen_wildcard)
+ assign_names_ >> assign_any_;
+
comparison_names_ >> comparison_member_;
- if (options.value<CLI::generate_wildcard> ())
+ if (gen_wildcard)
comparison_names_ >> comparison_any_;
}
- virtual Void
+ virtual void
traverse (Type& c)
{
+ bool gen_wildcard (options.generate_wildcard ());
+
String name (ename (c));
// If renamed name is empty then we do not need to generate
@@ -2125,7 +2291,12 @@ namespace CXX
if (renamed_type (c, name) && !name)
return;
- Boolean string_based (false);
+ SemanticGraph::Context& ctx (c.context ());
+
+ bool mixed (mixed_p (c) && !ctx.count ("mixed-in-base"));
+ bool ordered (ordered_p (c) && !ctx.count ("order-in-base"));
+
+ bool string_based (false);
{
IsStringBasedType t (string_based);
t.dispatch (c);
@@ -2137,7 +2308,7 @@ namespace CXX
t.dispatch (c);
}
- Boolean facets (false);
+ bool facets (false);
String base; // base type name
if (c.inherits_p ())
{
@@ -2200,15 +2371,15 @@ namespace CXX
// c-tors
//
- Boolean generate_no_base_ctor (false);
+ bool generate_no_base_ctor (false);
{
GenerateWithoutBaseCtor t (generate_no_base_ctor);
t.traverse (c);
}
- Boolean has_complex_non_op_args (false);
- Boolean has_poly_non_op_args (false);
- Boolean complex_poly_args_clash (true);
+ bool has_complex_non_op_args (false);
+ bool has_poly_non_op_args (false);
+ bool complex_poly_args_clash (true);
{
HasComplexPolyNonOptArgs t (*this, true,
has_complex_non_op_args,
@@ -2219,9 +2390,9 @@ namespace CXX
// default c-tor
//
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
- Boolean generate (false);
+ bool generate (false);
{
GenerateDefaultCtor t (*this, generate, generate_no_base_ctor);
t.traverse (c);
@@ -2241,6 +2412,12 @@ namespace CXX
" > ())";
}
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
names (c, default_ctor_init_names_);
os << "{";
@@ -2252,9 +2429,9 @@ namespace CXX
// c-tor (base, all-non-optional-members)
//
- if (options.value<CLI::generate_from_base_ctor> ())
+ if (options.generate_from_base_ctor ())
{
- Boolean generate (false);
+ bool generate (false);
{
GenerateFromBaseCtor t (*this, generate);
t.traverse (c);
@@ -2262,9 +2439,9 @@ namespace CXX
if (generate)
{
- Boolean has_complex_non_op_args (false);
- Boolean has_poly_non_op_args (false);
- Boolean complex_poly_args_clash (true);
+ bool has_complex_non_op_args (false);
+ bool has_poly_non_op_args (false);
+ bool complex_poly_args_clash (true);
{
HasComplexPolyNonOptArgs t (*this, false,
has_complex_non_op_args,
@@ -2281,7 +2458,7 @@ namespace CXX
inherits (c, inherits_member_);
os << "& " << base_arg;
{
- FromBaseCtorArg args (*this, FromBaseCtorArg::arg_type, true);
+ FromBaseCtorArg args (*this, CtorArgType::type, true);
Traversal::Names args_names (args);
names (c, args_names);
}
@@ -2296,6 +2473,12 @@ namespace CXX
" > ())";
}
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
names (c, ctor_names_);
os << "{";
@@ -2308,13 +2491,14 @@ namespace CXX
//
if (has_complex_non_op_args)
{
+ CtorArgType const at (CtorArgType::complex_auto_ptr);
+
os << name << "::" << endl
<< name << " (const ";
inherits (c, inherits_member_);
os << "& " << base_arg;
{
- FromBaseCtorArg args (
- *this, FromBaseCtorArg::arg_complex_auto_ptr, true);
+ FromBaseCtorArg args (*this, at, true);
Traversal::Names args_names (args);
names (c, args_names);
}
@@ -2329,7 +2513,21 @@ namespace CXX
" > ())";
}
- names (c, ctor_names_);
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
+ {
+ CtorMember t (*this, at);
+ Traversal::Names n (t);
+
+ if (gen_wildcard)
+ n >> ctor_any_;
+
+ names (c, n);
+ }
os << "{";
if (facets)
@@ -2343,13 +2541,14 @@ namespace CXX
if (polymorphic &&
has_poly_non_op_args && !complex_poly_args_clash)
{
+ CtorArgType const at (CtorArgType::poly_auto_ptr);
+
os << name << "::" << endl
<< name << " (const ";
inherits (c, inherits_member_);
os << "& " << base_arg;
{
- FromBaseCtorArg args (
- *this, FromBaseCtorArg::arg_poly_auto_ptr, true);
+ FromBaseCtorArg args (*this, at, true);
Traversal::Names args_names (args);
names (c, args_names);
}
@@ -2364,7 +2563,21 @@ namespace CXX
" > ())";
}
- names (c, ctor_names_);
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
+ {
+ CtorMember t (*this, at);
+ Traversal::Names n (t);
+
+ if (gen_wildcard)
+ n >> ctor_any_;
+
+ names (c, n);
+ }
os << "{";
if (facets)
@@ -2378,17 +2591,18 @@ namespace CXX
//
if (generate_no_base_ctor)
{
+ CtorArgType const at (CtorArgType::type);
+
os << name << "::" << endl
<< name << " (";
{
- CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, true, true);
+ CtorArgsWithoutBase ctor_args (*this, at, true, true);
ctor_args.dispatch (c);
}
os << ")" << endl
<< ": " << base << " (";
{
- CtorBase base (*this, "");
+ CtorBase base (*this, at, "");
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2403,6 +2617,12 @@ namespace CXX
" > ())";
}
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
names (c, ctor_names_);
os << "{";
@@ -2416,17 +2636,18 @@ namespace CXX
//
if (has_complex_non_op_args)
{
+ CtorArgType const at (CtorArgType::complex_auto_ptr);
+
os << name << "::" << endl
<< name << " (";
{
- CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_complex_auto_ptr, true, true);
+ CtorArgsWithoutBase ctor_args (*this, at, true, true);
ctor_args.dispatch (c);
}
os << ")" << endl
<< ": " << base << " (";
{
- CtorBase base (*this, "");
+ CtorBase base (*this, at, "");
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2441,7 +2662,21 @@ namespace CXX
" > ())";
}
- names (c, ctor_names_);
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
+ {
+ CtorMember t (*this, at);
+ Traversal::Names n (t);
+
+ if (gen_wildcard)
+ n >> ctor_any_;
+
+ names (c, n);
+ }
os << "{";
if (facets)
@@ -2455,17 +2690,18 @@ namespace CXX
if (polymorphic &&
has_poly_non_op_args && !complex_poly_args_clash)
{
+ CtorArgType const at (CtorArgType::poly_auto_ptr);
+
os << name << "::" << endl
<< name << " (";
{
- CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_poly_auto_ptr, true, true);
+ CtorArgsWithoutBase ctor_args (*this, at, true, true);
ctor_args.dispatch (c);
}
os << ")" << endl
<< ": " << base << " (";
{
- CtorBase base (*this, "");
+ CtorBase base (*this, at, "");
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2480,7 +2716,21 @@ namespace CXX
" > ())";
}
- names (c, ctor_names_);
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
+ {
+ CtorMember t (*this, at);
+ Traversal::Names n (t);
+
+ if (gen_wildcard)
+ n >> ctor_any_;
+
+ names (c, n);
+ }
os << "{";
if (facets)
@@ -2497,6 +2747,7 @@ namespace CXX
{
// c-tor (enum-value, all-non-optional-members)
//
+ CtorArgType const at (CtorArgType::type);
String base_arg (L"_xsd_" + ename (*enum_base) + L"_base");
os << name << "::" << endl
@@ -2504,8 +2755,7 @@ namespace CXX
evalue (*enum_base) << " " << base_arg;
{
- CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, true, false);
+ CtorArgsWithoutBase ctor_args (*this, at, true, false);
ctor_args.dispatch (c);
}
@@ -2513,7 +2763,7 @@ namespace CXX
<< ": " << base << " (";
{
- CtorBase base (*this, base_arg);
+ CtorBase base (*this, at, base_arg);
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2529,6 +2779,8 @@ namespace CXX
" > ())";
}
+ // Cannot be mixed.
+
names (c, ctor_names_);
os << "{";
@@ -2537,6 +2789,7 @@ namespace CXX
os << "}";
}
+ CtorArgType const at (CtorArgType::type);
String base_arg (L"_xsd_" + ename (ultimate_base (c)) + L"_base");
// c-tor (const char*, all-non-optional-members)
@@ -2545,8 +2798,7 @@ namespace CXX
<< name << " (const " << char_type << "* " << base_arg;
{
- CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, true, false);
+ CtorArgsWithoutBase ctor_args (*this, at, true, false);
ctor_args.dispatch (c);
}
@@ -2554,7 +2806,7 @@ namespace CXX
<< ": " << base << " (";
{
- CtorBase base (*this, base_arg);
+ CtorBase base (*this, at, base_arg);
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2570,6 +2822,8 @@ namespace CXX
" > ())";
}
+ // Cannot be mixed.
+
names (c, ctor_names_);
os << "{";
@@ -2584,8 +2838,7 @@ namespace CXX
<< name << " (const " << string_type << "& " << base_arg;
{
- CtorArgsWithoutBase ctor_args (
- *this, CtorArgsWithoutBase::arg_type, true, false);
+ CtorArgsWithoutBase ctor_args (*this, at, true, false);
ctor_args.dispatch (c);
}
@@ -2593,7 +2846,7 @@ namespace CXX
<< ": " << base << " (";
{
- CtorBase base (*this, base_arg);
+ CtorBase base (*this, at, base_arg);
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2609,6 +2862,8 @@ namespace CXX
" > ())";
}
+ // Cannot be mixed.
+
names (c, ctor_names_);
os << "{";
@@ -2619,57 +2874,66 @@ namespace CXX
// c-tor (ultimate-base, all-non-optional-members)
//
+ {
+ CtorArgType const at (CtorArgType::type);
- os << name << "::" << endl
- << name << " (";
+ os << name << "::" << endl
+ << name << " (";
- String base_arg;
+ String base_arg;
- {
- CtorArgs ctor_args (*this, CtorArgs::arg_type, base_arg);
- ctor_args.dispatch (c);
- }
+ {
+ CtorArgs ctor_args (*this, at, base_arg);
+ ctor_args.dispatch (c);
+ }
- os << ")" << endl
- << ": " << base << " (";
+ os << ")" << endl
+ << ": " << base << " (";
- {
- CtorBase base (*this, base_arg);
- Traversal::Inherits inherits_base (base);
+ {
+ CtorBase base (*this, at, base_arg);
+ Traversal::Inherits inherits_base (base);
- inherits (c, inherits_base);
- }
+ inherits (c, inherits_base);
+ }
- os << ")";
+ os << ")";
- if (edom_document_member_p (c))
- {
- os << "," << endl
- << " " << edom_document_member (c) << " (" <<
- "::xsd::cxx::xml::dom::create_document< " << char_type <<
- " > ())";
- }
+ if (edom_document_member_p (c))
+ {
+ os << "," << endl
+ << " " << edom_document_member (c) << " (" <<
+ "::xsd::cxx::xml::dom::create_document< " << char_type <<
+ " > ())";
+ }
- names (c, ctor_names_);
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
- os << "{";
- if (facets)
- os << "this->_facet_table (_xsd_" << name << "_facet_table);";
- os << "}";
+ names (c, ctor_names_);
+
+ os << "{";
+ if (facets)
+ os << "this->_facet_table (_xsd_" << name << "_facet_table);";
+ os << "}";
+ }
// If we have any complex arguments in the previous c-tor
// then also generate the auto_ptr version.
//
if (has_complex_non_op_args)
{
+ CtorArgType const at (CtorArgType::complex_auto_ptr);
+ String base_arg;
+
os << name << "::" << endl
<< name << " (";
- String base_arg;
-
{
- CtorArgs ctor_args (
- *this, CtorArgs::arg_complex_auto_ptr, base_arg);
+ CtorArgs ctor_args (*this, at, base_arg);
ctor_args.dispatch (c);
}
@@ -2677,7 +2941,7 @@ namespace CXX
<< ": " << base << " (";
{
- CtorBase base (*this, base_arg);
+ CtorBase base (*this, at, base_arg);
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2693,7 +2957,21 @@ namespace CXX
" > ())";
}
- names (c, ctor_names_);
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
+ {
+ CtorMember t (*this, at);
+ Traversal::Names n (t);
+
+ if (gen_wildcard)
+ n >> ctor_any_;
+
+ names (c, n);
+ }
os << "{";
if (facets)
@@ -2707,14 +2985,14 @@ namespace CXX
if (polymorphic &&
has_poly_non_op_args && !complex_poly_args_clash)
{
+ CtorArgType const at (CtorArgType::poly_auto_ptr);
+ String base_arg;
+
os << name << "::" << endl
<< name << " (";
- String base_arg;
-
{
- CtorArgs ctor_args (
- *this, CtorArgs::arg_poly_auto_ptr, base_arg);
+ CtorArgs ctor_args (*this, at, base_arg);
ctor_args.dispatch (c);
}
@@ -2722,7 +3000,7 @@ namespace CXX
<< ": " << base << " (";
{
- CtorBase base (*this, base_arg);
+ CtorBase base (*this, at, base_arg);
Traversal::Inherits inherits_base (base);
inherits (c, inherits_base);
@@ -2738,7 +3016,21 @@ namespace CXX
" > ())";
}
- names (c, ctor_names_);
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
+ {
+ CtorMember t (*this, at);
+ Traversal::Names n (t);
+
+ if (gen_wildcard)
+ n >> ctor_any_;
+
+ names (c, n);
+ }
os << "{";
if (facets)
@@ -2764,6 +3056,20 @@ namespace CXX
" > ())";
}
+ if (mixed)
+ {
+ String const& m (ctx.get<String> ("mixed-member"));
+ os << "," << endl
+ << " " << m << " (x." << m << ", f, this)";
+ }
+
+ if (ordered)
+ {
+ String const& m (ctx.get<String> ("order-member"));
+ os << "," << endl
+ << " " << m << " (x." << m << ")";
+ }
+
{
CopyAny copy_any (*this, "x");
CopyMember copy_member (*this, "x");
@@ -2771,7 +3077,7 @@ namespace CXX
names >> copy_member;
- if (options.value<CLI::generate_wildcard> ())
+ if (gen_wildcard)
names >> copy_any;
Complex::names (c, names);
@@ -2784,17 +3090,15 @@ namespace CXX
//
//
- Boolean he (has<Traversal::Element> (c));
- Boolean hae (has<Traversal::Any> (c));
+ bool he (has<Traversal::Element> (c));
+ bool hae (has<Traversal::Any> (c));
- Boolean ha (has<Traversal::Attribute> (c));
- Boolean haa (has<Traversal::AnyAttribute> (c));
-
- Boolean gen_wildcard (options.value<CLI::generate_wildcard> ());
+ bool ha (has<Traversal::Attribute> (c));
+ bool haa (has<Traversal::AnyAttribute> (c));
//
//
- if (!options.value<CLI::suppress_parsing> ())
+ if (!options.suppress_parsing ())
{
// c-tor (xercesc::DOMElement)
//
@@ -2804,7 +3108,7 @@ namespace CXX
<< container << "* c)" << endl
<< ": " << base << " (e, f";
- if (he || ha || hae || (haa && gen_wildcard))
+ if (he || ha || hae || (haa && gen_wildcard) || mixed)
os << " | " << flags_type << "::base";
os << ", c)";
@@ -2817,6 +3121,12 @@ namespace CXX
" > ())";
}
+ if (mixed)
+ {
+ os << "," << endl
+ << " " << ctx.get<String> ("mixed-member") << " (this)";
+ }
+
names (c, element_ctor_names_);
os << "{";
@@ -2825,12 +3135,12 @@ namespace CXX
os << "this->_facet_table (_xsd_" << name << "_facet_table);"
<< endl;
- Boolean base_has_el (false), base_has_at (false);
+ bool base_has_el (false), base_has_at (false);
// We are only interested in this information if we are
- // generating out own parse().
+ // generating our own parse().
//
- if (he || ha || hae || (haa && gen_wildcard))
+ if (he || ha || hae || (haa && gen_wildcard) || mixed)
{
if (c.inherits_p ())
{
@@ -2839,13 +3149,14 @@ namespace CXX
}
}
- //@@ throw if p is no exhausted at the end.
+ //@@ Throw if p is not exhausted at the end.
//
- if (he || ha || hae || (haa && gen_wildcard))
+ if (he || ha || hae || (haa && gen_wildcard) || mixed)
os << "if ((f & " << flags_type << "::base) == 0)"
<< "{"
<< parser_type << " p (e, " <<
- (he || hae || base_has_el ? "true, " : "false, ") <<
+ (he || hae || base_has_el || mixed_p (c) ? "true, " : "false, ") <<
+ (mixed_p (c) ? "true, " : "false, ") <<
(ha || (haa && gen_wildcard) || base_has_at ? "true" : "false")
<< ");"
<< "this->" << unclash (name, "parse") << " (p, f);"
@@ -2853,7 +3164,7 @@ namespace CXX
os << "}";
- Boolean simple (true);
+ bool simple (true);
{
IsSimpleType t (simple);
t.dispatch (c);
@@ -2891,7 +3202,7 @@ namespace CXX
os << "}";
}
- if (he || ha || hae || (haa && gen_wildcard))
+ if (he || ha || hae || (haa && gen_wildcard) || mixed)
{
os << "void " << name << "::" << endl
<< unclash (name, "parse") << " (" <<
@@ -2906,17 +3217,45 @@ namespace CXX
os << "this->" << base << "::parse (p, f);"
<< endl;
- if (he || hae)
+ if (he || hae || mixed_p (c))
{
- os << "for (; p.more_elements (); p.next_element ())"
- << "{"
- << "const " << xerces_ns << "::DOMElement& i (" <<
- "p.cur_element ());"
- << "const " << qname_type << " n (" << endl
- << "::xsd::cxx::xml::dom::name< " << char_type << " > (i));"
- << endl;
+ bool m (mixed_p (c));
+
+ os << "for (; p.more_content (); p.next_content (" <<
+ (m ? "true" : "false") << "))"
+ << "{";
- names (c, names_element_);
+ if (m)
+ {
+ String const& ma (ctx.get<String> ("mixed-aname"));
+ String const& mi (ctx.get<String> ("mixed-ordered-id-name"));
+ String const& oa (ctx.get<String> ("order-aname"));
+ String const& ot (ctx.get<String> ("order-type"));
+
+ os << "if (p.cur_is_text ())"
+ << "{"
+ << "const " << xerces_ns << "::DOMText& t (" <<
+ "p.cur_text ());"
+ << "this->" << ma << " ().push_back (" << endl
+ << "::xsd::cxx::xml::transcode< " << char_type << " > (" <<
+ "t.getData (), t.getLength ()));"
+ << "this->" << oa << " ().push_back (" << endl
+ << ot << " (" << mi << "," << endl
+ << "this->" << ma << " ().size () - 1));"
+ << "continue;"
+ << "}";
+ }
+
+ if (he || hae)
+ {
+ os << "const " << xerces_ns << "::DOMElement& i (" <<
+ "p.cur_element ());"
+ << "const " << qname_type << " n (" << endl
+ << "::xsd::cxx::xml::dom::name< " << char_type << " > (i));"
+ << endl;
+
+ names (c, names_element_);
+ }
os << "break;"
<< "}";
@@ -2977,6 +3316,45 @@ namespace CXX
<< "return new class " << name << " (*this, f, c);"
<< "}";
+ // operator=
+ //
+ if (!options.suppress_assignment () &&
+ (he || ha || (gen_wildcard && (hae || haa))))
+ {
+ os << name << "& " << name << "::" << endl
+ << "operator= (const " << name << "& x)"
+ << "{"
+ << "if (this != &x)"
+ << "{"
+ << "static_cast< " << base << "& > (*this) = x;";
+
+ // Note that here we don't assign the DOMDocument that is
+ // used to hold wildcard fragments. Each document has its
+ // own copy.
+
+ // Mixed text content.
+ //
+ if (mixed)
+ {
+ String const& m (ctx.get<String> ("mixed-member"));
+ os << "this->" << m << " = x." << m << ";";
+ }
+
+ // Order container.
+ //
+ if (ordered)
+ {
+ String const& m (ctx.get<String> ("order-member"));
+ os << "this->" << m << " = x." << m << ";";
+ }
+
+ names (c, assign_names_);
+
+ os << "}"
+ << "return *this;"
+ << "}";
+ }
+
// d-tor
//
os << name << "::" << endl
@@ -2986,36 +3364,44 @@ namespace CXX
// Register with type factory map.
//
- if (polymorphic && polymorphic_p (c) && !anonymous_p (c))
+ if (polymorphic && polymorphic_p (c))
{
// Note that we are using the original type name.
//
String const& name (ename (c));
- if (!options.value<CLI::suppress_parsing> ())
+ // If this type is anonymous but substitutes, then it will
+ // be registered as part of the substitution registration.
+ //
+ if (!anonymous_p (c) && !options.suppress_parsing ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::type_factory_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::type_factory_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_type_factory_init (" << endl
<< strlit (c.name ()) << "," << endl
<< strlit (xml_ns_name (c)) << ");"
<< endl;
+ }
- if (options.value<CLI::generate_comparison> ())
+ if ((!anonymous_p (c) || anonymous_substitutes_p (c)) &&
+ options.generate_comparison ())
+ {
os << "static" << endl
- << "const ::xsd::cxx::tree::comparison_initializer< 0, " <<
- char_type << ", " << name << " >" << endl
+ << "const ::xsd::cxx::tree::comparison_initializer< " <<
+ poly_plate << ", " << char_type << ", " << name << " >" << endl
<< "_xsd_" << name << "_comparison_init;"
<< endl;
+ }
}
// Comparison operators.
//
- if (options.value<CLI::generate_comparison> () &&
- (he || ha || !c.inherits_p () ||
+ if (options.generate_comparison () &&
+ (he || ha || mixed || ordered || !c.inherits_p () ||
((hae || haa) && gen_wildcard)))
{
- Boolean base_comp (false);
+ bool base_comp (false);
if (c.inherits_p ())
{
@@ -3023,8 +3409,8 @@ namespace CXX
test.dispatch (c.inherits ().base ());
}
- Boolean has_body (he || ha || base_comp ||
- ((hae || haa) && gen_wildcard));
+ bool has_body (he || ha || ordered || mixed || base_comp ||
+ ((hae || haa) && gen_wildcard));
os << "bool" << endl
<< "operator== (const " << name << "&" <<
@@ -3042,6 +3428,22 @@ namespace CXX
Complex::names (c, comparison_names_);
}
+ if (mixed)
+ {
+ String const& an (ctx.get<String> ("mixed-aname"));
+ os << "if (!(x." << an << " () == y." << an << " ()))" << endl
+ << "return false;"
+ << endl;
+ }
+
+ if (ordered)
+ {
+ String const& an (ctx.get<String> ("order-aname"));
+ os << "if (!(x." << an << " () == y." << an << " ()))" << endl
+ << "return false;"
+ << endl;
+ }
+
os << "return true;"
<< "}";
@@ -3088,6 +3490,10 @@ namespace CXX
ElementCtorMember element_ctor_member_;
Traversal::Names element_ctor_names_;
+ AssignAny assign_any_;
+ AssignMember assign_member_;
+ Traversal::Names assign_names_;
+
AnyComparison comparison_any_;
MemberComparison comparison_member_;
Traversal::Names comparison_names_;
@@ -3105,27 +3511,27 @@ namespace CXX
GlobalElement (Context& c)
: GlobalElementBase (c),
Context (c),
- element_type_ (c.options.value<CLI::generate_element_type> ()),
- element_map_ (c.options.value<CLI::generate_element_map> ()),
+ element_type_ (c.options.generate_element_type ()),
+ element_map_ (c.options.generate_element_map ()),
type_name_ (c)
{
belongs_ >> type_name_;
}
- virtual Void
+ virtual void
traverse (Type& e)
{
if (element_type_ && doc_root_p (e))
{
SemanticGraph::Type& t (e.type ());
- Boolean fund (false);
+ bool fund (false);
{
IsFundamentalType test (fund);
test.dispatch (t);
}
- Boolean simple (true);
+ bool simple (true);
if (!fund)
{
IsSimpleType test (simple);
@@ -3166,11 +3572,11 @@ namespace CXX
// default c-tor
//
- if (options.value<CLI::generate_default_ctor> ())
+ if (options.generate_default_ctor ())
{
os << name << "::" << endl
<< name << " ()" << endl
- << ": " << member << " (0, 0)"
+ << ": " << member << " (0)"
<< "{"
<< "}";
}
@@ -3179,7 +3585,7 @@ namespace CXX
//
os << name << "::" << endl
<< name << " (const " << type << "& x)" << endl
- << ": " << member << " (x, 0, 0)"
+ << ": " << member << " (x, 0)"
<< "{"
<< "}";
@@ -3189,8 +3595,8 @@ namespace CXX
if (!simple || (polymorphic && polymorphic_p (t)))
{
os << name << "::" << endl
- << name << " (::std::auto_ptr< " << type << " > p)" << endl
- << ": " << member << " (p, 0, 0)"
+ << name << " (" << auto_ptr << "< " << type << " > p)" << endl
+ << ": " << member << " (p, 0)"
<< "{"
<< "}";
}
@@ -3201,7 +3607,7 @@ namespace CXX
String const& name_member (ec.get<String> ("element-name-member"));
String const& ns_member (ec.get<String> ("element-ns-member"));
- Boolean parsing (!options.value<CLI::suppress_parsing> ());
+ bool parsing (!options.suppress_parsing ());
if (parsing)
{
String const& tr (etraits (e));
@@ -3209,7 +3615,7 @@ namespace CXX
os << name << "::" << endl
<< name << " (const " << xerces_ns << "::DOMElement& e, " <<
flags_type << " f)" << endl
- << ": " << member << " (f, 0)"
+ << ": " << member << " (0)"
<< "{"
<< "const " << qname_type << " n (" << endl
<< "::xsd::cxx::xml::dom::name< " << char_type << " > (e));"
@@ -3302,14 +3708,14 @@ namespace CXX
}
if (polymorphic && e.substitutes_p () &&
- !options.value<CLI::suppress_parsing> ())
+ !options.suppress_parsing ())
{
String const& name (ename (e));
Type& r (e.substitutes ().root ());
os << "static" << endl
- << "const ::xsd::cxx::tree::element_factory_initializer< 0, " <<
- char_type << ", ";
+ << "const ::xsd::cxx::tree::element_factory_initializer< " <<
+ poly_plate << ", " << char_type << ", ";
belongs (e, belongs_);
@@ -3325,32 +3731,30 @@ namespace CXX
}
private:
- Boolean element_type_;
- Boolean element_map_;
+ bool element_type_;
+ bool element_map_;
Traversal::Belongs belongs_;
MemberTypeName type_name_;
};
}
- Void
- generate_tree_source (Context& ctx,
- UnsignedLong first,
- UnsignedLong last)
+ void
+ generate_tree_source (Context& ctx, size_t first, size_t last)
{
- if (ctx.options.value<CLI::generate_wildcard> ())
+ if (ctx.options.generate_wildcard ())
{
ctx.os << "#include <xsd/cxx/xml/dom/wildcard-source.hxx>" << endl
<< endl;
}
- if (!ctx.options.value<CLI::suppress_parsing> ())
+ if (!ctx.options.suppress_parsing ())
ctx.os << "#include <xsd/cxx/xml/dom/parsing-source.hxx>" << endl
<< endl;
if (ctx.polymorphic)
{
- Boolean parsing (!ctx.options.value<CLI::suppress_parsing> ());
- Boolean comparison (ctx.options.value<CLI::generate_comparison> ());
+ bool parsing (!ctx.options.suppress_parsing ());
+ bool comparison (ctx.options.generate_comparison ());
if (parsing)
ctx.os << "#include <xsd/cxx/tree/type-factory-map.hxx>" << endl
@@ -3362,8 +3766,8 @@ namespace CXX
if (parsing || comparison)
{
- Boolean import_maps (ctx.options.value<CLI::import_maps> ());
- Boolean export_maps (ctx.options.value<CLI::export_maps> ());
+ bool import_maps (ctx.options.import_maps ());
+ bool export_maps (ctx.options.export_maps ());
if (import_maps || export_maps)
{
@@ -3379,39 +3783,47 @@ namespace CXX
if (parsing && export_maps)
ctx.os << "template struct __declspec (dllexport) " <<
- "type_factory_plate< 0, " << ctx.char_type << " >;";
+ "type_factory_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
if (parsing && import_maps)
ctx.os << "template struct __declspec (dllimport) " <<
- "type_factory_plate< 0, " << ctx.char_type << " >;";
+ "type_factory_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
if (comparison && export_maps)
ctx.os << "template struct __declspec (dllexport) " <<
- "comparison_plate< 0, " << ctx.char_type << " >;";
+ "comparison_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
if (comparison && import_maps)
ctx.os << "template struct __declspec (dllimport) " <<
- "comparison_plate< 0, " << ctx.char_type << " >;";
+ "comparison_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
ctx.os << "#elif defined(__GNUC__) && __GNUC__ >= 4" << endl;
if (parsing)
ctx.os << "template struct __attribute__ ((visibility(\"default\"))) " <<
- "type_factory_plate< 0, " << ctx.char_type << " >;";
+ "type_factory_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
if (comparison)
ctx.os << "template struct __attribute__ ((visibility(\"default\"))) " <<
- "comparison_plate< 0, " << ctx.char_type << " >;";
+ "comparison_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
ctx.os << "#elif defined(XSD_MAP_VISIBILITY)" << endl;
if (parsing)
ctx.os << "template struct XSD_MAP_VISIBILITY " <<
- "type_factory_plate< 0, " << ctx.char_type << " >;";
+ "type_factory_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
if (comparison)
ctx.os << "template struct XSD_MAP_VISIBILITY " <<
- "comparison_plate< 0, " << ctx.char_type << " >;";
+ "comparison_plate< " << ctx.poly_plate << ", " <<
+ ctx.char_type << " >;";
ctx.os << "#endif" << endl
<< "}" // tree
@@ -3426,15 +3838,15 @@ namespace CXX
if (parsing)
ctx.os << "static" << endl
- << "const ::xsd::cxx::tree::type_factory_plate< 0, " <<
- ctx.char_type << " >" << endl
+ << "const ::xsd::cxx::tree::type_factory_plate< " <<
+ ctx.poly_plate << ", " << ctx.char_type << " >" << endl
<< "type_factory_plate_init;"
<< endl;
if (comparison)
ctx.os << "static" << endl
- << "const ::xsd::cxx::tree::comparison_plate< 0, " <<
- ctx.char_type << " >" << endl
+ << "const ::xsd::cxx::tree::comparison_plate< " <<
+ ctx.poly_plate << ", " << ctx.char_type << " >" << endl
<< "comparison_plate_init;"
<< endl;
@@ -3443,7 +3855,7 @@ namespace CXX
}
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Traversal::Names names_ns, names;
Namespace ns (ctx, first, last);
diff --git a/xsd/xsd/cxx/tree/tree-source.hxx b/xsd/xsd/cxx/tree/tree-source.hxx
index a1b4778..b2d96f7 100644
--- a/xsd/xsd/cxx/tree/tree-source.hxx
+++ b/xsd/xsd/cxx/tree/tree-source.hxx
@@ -1,6 +1,5 @@
// file : xsd/cxx/tree/tree-source.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_TREE_SOURCE_HXX
@@ -12,8 +11,8 @@ namespace CXX
{
namespace Tree
{
- Void
- generate_tree_source (Context&, UnsignedLong first, UnsignedLong last);
+ void
+ generate_tree_source (Context&, size_t first, size_t last);
}
}
diff --git a/xsd/xsd/cxx/tree/validator.cxx b/xsd/xsd/cxx/tree/validator.cxx
index 88451ba..ce3dcd8 100644
--- a/xsd/xsd/cxx/tree/validator.cxx
+++ b/xsd/xsd/cxx/tree/validator.cxx
@@ -1,20 +1,18 @@
// file : xsd/cxx/tree/validator.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#include <cxx/tree/validator.hxx>
+#include <set>
+#include <iostream>
-#include <cult/containers/set.hxx>
+#include <cxx/tree/validator.hxx>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
#include <cxx/tree/elements.hxx>
-#include <iostream>
-
-using std::wcerr;
+using namespace std;
namespace CXX
{
@@ -27,15 +25,15 @@ namespace CXX
public:
ValidationContext (SemanticGraph::Schema& root,
SemanticGraph::Path const& path,
- CLI::Options const& options,
+ Tree::options const& ops,
const WarningSet& disabled_warnings,
Counts const& counts,
- Boolean generate_xml_schema,
- Boolean& valid_)
+ bool generate_xml_schema,
+ bool& valid_)
: Context (std::wcerr,
root,
path,
- options,
+ ops,
counts,
generate_xml_schema,
0,
@@ -53,8 +51,8 @@ namespace CXX
}
public:
- Boolean
- is_disabled (Char const* w)
+ bool
+ is_disabled (char const* w)
{
return disabled_warnings_all_ ||
disabled_warnings_.find (w) != disabled_warnings_.end ();
@@ -95,12 +93,12 @@ namespace CXX
protected:
const WarningSet& disabled_warnings_;
- Boolean disabled_warnings_all_;
+ bool disabled_warnings_all_;
- Boolean& valid;
+ bool& valid;
- Boolean& subst_group_warning_issued;
- Boolean subst_group_warning_issued_;
+ bool& subst_group_warning_issued;
+ bool subst_group_warning_issued_;
};
@@ -122,7 +120,7 @@ namespace CXX
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (skip (e))
@@ -130,13 +128,13 @@ namespace CXX
using SemanticGraph::Any;
- Boolean q (e.qualified_p ());
+ bool q (e.qualified_p ());
String ns (q ? e.namespace_ ().name () : "");
for (Any::NamespaceIterator i (any_.namespace_begin ());
i != any_.namespace_end (); ++i)
{
- Boolean failed (false);
+ bool failed (false);
if (*i == L"##any")
{
@@ -205,14 +203,14 @@ namespace CXX
{
}
- virtual Void
+ virtual void
post (Type& c)
{
// Go down the inheritance hierarchy.
//
if (down_)
{
- Boolean up = up_;
+ bool up = up_;
up_ = false;
if (c.inherits_p ())
@@ -225,7 +223,7 @@ namespace CXX
//
if (up_)
{
- Boolean down = down_;
+ bool down = down_;
down_ = false;
for (Type::BegetsIterator i (c.begets_begin ());
@@ -239,10 +237,10 @@ namespace CXX
}
private:
- Boolean up_, down_;
+ bool up_, down_;
};
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
using SemanticGraph::Compositor;
@@ -295,7 +293,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
using SemanticGraph::Schema;
@@ -341,7 +339,7 @@ namespace CXX
Complex::traverse (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
// This is also used to traverse Complex.
@@ -352,7 +350,7 @@ namespace CXX
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (is_disabled ("T002"))
@@ -379,7 +377,7 @@ namespace CXX
// Return true if root sources s.
//
- Boolean
+ bool
sources_p (SemanticGraph::Schema& root, SemanticGraph::Schema& s)
{
using SemanticGraph::Schema;
@@ -399,9 +397,9 @@ namespace CXX
}
private:
- Containers::Set<String> types_;
+ set<String> types_;
- Traversal::Sources sources_;
+ Sources sources_;
Traversal::Names schema_names_;
Traversal::Namespace ns_;
@@ -432,7 +430,7 @@ namespace CXX
*this >> names_;
}
- Boolean
+ bool
traverse_common (SemanticGraph::Member& m)
{
SemanticGraph::Type& t (m.type ());
@@ -461,7 +459,7 @@ namespace CXX
<< "automatically name them"
<< endl;
- if (!options.value<CLI::show_anonymous> ())
+ if (!options.show_anonymous ())
wcerr << t.file ()
<< ": info: use --show-anonymous option to see these "
<< "types" << endl;
@@ -473,14 +471,14 @@ namespace CXX
return false;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
if (skip (e)) return;
if (traverse_common (e))
{
- if (options.value<CLI::show_anonymous> ())
+ if (options.show_anonymous ())
{
wcerr << e.file () << ":" << e.line () << ":" << e.column ()
<< ": error: element '" << xpath (e) << "' "
@@ -491,12 +489,12 @@ namespace CXX
Traversal::Element::traverse (e);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
if (traverse_common (a))
{
- if (options.value<CLI::show_anonymous> ())
+ if (options.show_anonymous ())
{
wcerr << a.file () << ":" << a.line () << ":" << a.column ()
<< ": error: attribute '" << xpath (a) << "' "
@@ -508,11 +506,11 @@ namespace CXX
}
private:
- Boolean anonymous_error_issued_;
+ bool anonymous_error_issued_;
- Containers::Set<String> types_;
+ set<String> types_;
- Traversal::Sources sources_;
+ Sources sources_;
Traversal::Names schema_names_;
Traversal::Namespace ns_;
@@ -521,27 +519,21 @@ namespace CXX
};
}
- Validator::
- Validator ()
- {
- // Dummy ctor, helps with long symbols on HP-UX.
- }
-
- Boolean Validator::
- validate (CLI::Options const& options,
+ bool Validator::
+ validate (options const& ops,
SemanticGraph::Schema& schema,
SemanticGraph::Path const& path,
const WarningSet& disabled_warnings,
Counts const& counts)
{
- Boolean valid (true);
+ bool valid (true);
ValidationContext ctx (
- schema, path, options, disabled_warnings, counts, false, valid);
+ schema, path, ops, disabled_warnings, counts, false, valid);
//
//
- Boolean import_maps (options.value<CLI::import_maps> ());
- Boolean export_maps (options.value<CLI::export_maps> ());
+ bool import_maps (ops.import_maps ());
+ bool export_maps (ops.export_maps ());
if (import_maps && export_maps)
{
@@ -569,17 +561,17 @@ namespace CXX
//
//
- if (options.value<CLI::char_type> () != "char" &&
- options.value<CLI::char_type> () != "wchar_t" &&
+ if (ops.char_type () != "char" &&
+ ops.char_type () != "wchar_t" &&
!ctx.is_disabled ("T003"))
{
wcerr << "warning T003: unknown base character type '" <<
- options.value<CLI::char_type> ().c_str () << "'" << endl;
+ ops.char_type ().c_str () << "'" << endl;
}
//
//
- NarrowString tn (options.value<CLI::type_naming> ());
+ NarrowString tn (ops.type_naming ());
if (tn != "knr" && tn != "ucc" && tn != "java")
{
@@ -589,7 +581,7 @@ namespace CXX
return false;
}
- NarrowString fn (options.value<CLI::function_naming> ());
+ NarrowString fn (ops.function_naming ());
if (fn != "knr" && fn != "lcc" && fn != "java")
{
@@ -601,11 +593,11 @@ namespace CXX
//
//
- Boolean element_type (options.value<CLI::generate_element_type> ());
- Boolean par (!options.value<CLI::suppress_parsing> ());
- Boolean ser (options.value<CLI::generate_serialization> ());
+ bool element_type (ops.generate_element_type ());
+ bool par (!ops.suppress_parsing ());
+ bool ser (ops.generate_serialization ());
- if (options.value<CLI::generate_element_map> ())
+ if (ops.generate_element_map ())
{
if (!element_type)
{
@@ -631,11 +623,11 @@ namespace CXX
if (counts.global_elements > 1 &&
(element_type || par || ser) &&
- !options.value<CLI::root_element_first> () &&
- !options.value<CLI::root_element_last> () &&
- !options.value<CLI::root_element_all> () &&
- !options.value<CLI::root_element_none> () &&
- options.value<CLI::root_element> ().empty () &&
+ !ops.root_element_first () &&
+ !ops.root_element_last () &&
+ !ops.root_element_all () &&
+ !ops.root_element_none () &&
+ ops.root_element ().empty () &&
!ctx.is_disabled ("T004"))
{
wcerr << schema.file () << ": warning T004: generating ";
diff --git a/xsd/xsd/cxx/tree/validator.hxx b/xsd/xsd/cxx/tree/validator.hxx
index da0c441..58ec85e 100644
--- a/xsd/xsd/cxx/tree/validator.hxx
+++ b/xsd/xsd/cxx/tree/validator.hxx
@@ -1,13 +1,12 @@
// file : xsd/cxx/tree/validator.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef CXX_TREE_VALIDATOR_HXX
#define CXX_TREE_VALIDATOR_HXX
#include <cxx/tree/elements.hxx>
-#include <cxx/tree/cli.hxx>
+#include <cxx/tree/options.hxx>
#include <xsd.hxx>
@@ -18,10 +17,8 @@ namespace CXX
class Validator
{
public:
- Validator (); // Dummy ctor, helps with long symbols on HP-UX.
-
- Boolean
- validate (CLI::Options const& options,
+ bool
+ validate (options const&,
SemanticGraph::Schema&,
SemanticGraph::Path const& tu,
const WarningSet& disabled_warnings,
diff --git a/xsd/xsd/elements.hxx b/xsd/xsd/elements.hxx
index 3a535a6..b09803f 100644
--- a/xsd/xsd/elements.hxx
+++ b/xsd/xsd/elements.hxx
@@ -1,37 +1,30 @@
// file : xsd/elements.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef ELEMENTS_HXX
#define ELEMENTS_HXX
-#include <cult/types.hxx>
-
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-using namespace Cult;
-typedef WideString String;
+#include <types.hxx>
namespace SemanticGraph = XSDFrontend::SemanticGraph;
namespace Traversal = XSDFrontend::Traversal;
-
// Anonymous feedback via belongs edge.
//
-struct AnonymousBase : Traversal::Element,
- Traversal::Attribute
+struct AnonymousBase : Traversal::Element, Traversal::Attribute
{
- AnonymousBase (Traversal::NodeDispatcherBase& d1)
+ AnonymousBase (Traversal::NodeDispatcher& d1)
: complex_ (&d1, 0)
{
edge_traverser (belongs_);
belongs_.node_traverser (complex_);
}
- AnonymousBase (Traversal::NodeDispatcherBase& d1,
- Traversal::NodeDispatcherBase& d2)
+ AnonymousBase (Traversal::NodeDispatcher& d1, Traversal::NodeDispatcher& d2)
: complex_ (&d1, &d2)
{
edge_traverser (belongs_);
@@ -65,7 +58,7 @@ public:
public:
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
SemanticGraph::Type& t (e.type ());
@@ -84,7 +77,7 @@ public:
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Attribute& a)
{
SemanticGraph::Type& t (a.type ());
@@ -106,13 +99,12 @@ public:
private:
struct Complex : Traversal::Complex
{
- Complex (Traversal::NodeDispatcherBase* d1,
- Traversal::NodeDispatcherBase* d2)
+ Complex (Traversal::NodeDispatcher* d1, Traversal::NodeDispatcher* d2)
: d1_ (d1), d2_ (d2)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
if (d1_)
@@ -123,8 +115,8 @@ private:
}
private:
- Traversal::NodeDispatcherBase* d1_;
- Traversal::NodeDispatcherBase* d2_;
+ Traversal::NodeDispatcher* d1_;
+ Traversal::NodeDispatcher* d2_;
} complex_;
diff --git a/xsd/xsd/makefile b/xsd/xsd/makefile
index cc04568..d57022d 100644
--- a/xsd/xsd/makefile
+++ b/xsd/xsd/makefile
@@ -1,6 +1,5 @@
# file : xsd/makefile
-# author : Boris Kolpackov <boris@codesynthesis.com>
-# copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+# copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
# license : GNU GPL v2 + exceptions; see accompanying LICENSE file
include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make
@@ -8,7 +7,8 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make
cxx_tun := xsd.cxx
cxx_tun += cxx/elements.cxx \
- cxx/literal-map.cxx
+ cxx/literal-map.cxx \
+ cxx/option-types.cxx
cxx_tun += cxx/parser/elements.cxx \
cxx/parser/validator.cxx \
@@ -31,6 +31,7 @@ cxx_tun += cxx/tree/elements.cxx \
cxx/tree/validator.cxx \
cxx/tree/counter.cxx \
cxx/tree/name-processor.cxx \
+ cxx/tree/order-processor.cxx \
cxx/tree/polymorphism-processor.cxx \
cxx/tree/default-value.cxx \
cxx/tree/generator.cxx \
@@ -49,18 +50,24 @@ cxx_tun += cxx/tree/elements.cxx \
cxx/tree/stream-extraction-source.cxx
-# Type map
+# Type map.
#
cxx_tun += type-map/lexer.cxx \
type-map/parser.cxx
-# Processing
+# Processing.
#
cxx_tun += processing/cardinality/processor.cxx \
processing/inheritance/processor.cxx
+# Options file.
+#
+cli_tun := options.cli \
+ cxx/options.cli \
+ cxx/tree/options.cli \
+ cxx/parser/options.cli
-cxx_obj := $(addprefix $(out_base)/,$(cxx_tun:.cxx=.o))
+cxx_obj := $(addprefix $(out_base)/,$(cxx_tun:.cxx=.o) $(cli_tun:.cli=.o))
cxx_od := $(cxx_obj:.o=.o.d)
xsd := $(out_base)/xsd
@@ -72,20 +79,12 @@ clean := $(out_base)/.clean
# Import.
#
$(call import,\
- $(scf_root)/import/libcult/stub.make,\
- l: cult.l,cpp-options: cult.l.cpp-options)
-
-$(call import,\
- $(scf_root)/import/libbackend-elements/stub.make,\
- l: be.l,cpp-options: be.l.cpp-options)
-
-$(call import,\
- $(scf_root)/import/libboost/regex/stub.make,\
- l: re.l,cpp-options: re.l.cpp-options)
+ $(scf_root)/import/cli/stub.make,\
+ cli: cli,cli-rules: cli_rules)
$(call import,\
- $(scf_root)/import/libboost/filesystem/stub.make,\
- l: fs.l,cpp-options: fs.l.cpp-options)
+ $(scf_root)/import/libcutl/stub.make,\
+ l: cutl.l,cpp-options: cutl.l.cpp-options)
$(call import,\
$(scf_root)/import/libxsd-frontend/stub.make,\
@@ -97,18 +96,52 @@ $(call import,\
# Build.
#
-$(xsd): $(cxx_obj) $(xsd_fe.l) $(be.l) $(cult.l) $(fs.l) $(re.l) $(xerces_c.l)
+$(xsd): $(cxx_obj) $(xsd_fe.l) $(cutl.l) $(xerces_c.l)
-$(cxx_obj) $(cxx_od): cpp_options := -I$(src_base)
+$(cxx_obj) $(cxx_od): cpp_options := -I$(out_base) -I$(src_base)
$(cxx_obj) $(cxx_od): \
$(xsd_fe.l.cpp-options) \
- $(be.l.cpp-options) \
- $(cult.l.cpp-options) \
- $(fs.l.cpp-options) \
- $(re.l.cpp-options) \
+ $(cutl.l.cpp-options) \
$(xerces_c.l.cpp-options)
-$(call include-dep,$(cxx_od))
+genf := $(cli_tun:.cli=.hxx) $(cli_tun:.cli=.ixx) $(cli_tun:.cli=.cxx)
+gen := $(addprefix $(out_base)/,$(genf))
+
+# Don't depend on installed executable since it may not exist.
+#
+ifneq ($(cli),cli)
+$(gen): $(cli)
+endif
+$(gen): cli := $(cli)
+$(gen): cli_options += \
+-I $(src_base) \
+--generate-specifier \
+--ostream-type ::std::wostream \
+--exclude-base \
+--suppress-undocumented \
+--generate-file-scanner \
+--include-with-brackets \
+--option-length 28 \
+--cxx-prologue '\#include <options-parser.hxx>'
+
+#--include-prefix xsd
+#--guard-prefix XSD
+
+$(addprefix $(out_base)/cxx/options,.hxx .ixx .cxx): $(src_base)/options.cli
+$(addprefix $(out_base)/cxx/options,.hxx .ixx .cxx): cli_options += \
+--include-prefix cxx --guard-prefix CXX
+
+$(addprefix $(out_base)/cxx/tree/options,.hxx .ixx .cxx): \
+$(src_base)/options.cli $(src_base)/cxx/options.cli
+$(addprefix $(out_base)/cxx/tree/options,.hxx .ixx .cxx): cli_options += \
+--include-prefix cxx/tree --guard-prefix CXX_TREE
+
+$(addprefix $(out_base)/cxx/parser/options,.hxx .ixx .cxx): \
+$(src_base)/options.cli $(src_base)/cxx/options.cli
+$(addprefix $(out_base)/cxx/parser/options,.hxx .ixx .cxx): cli_options += \
+--include-prefix cxx/parser --guard-prefix CXX_PARSER
+
+$(call include-dep,$(cxx_od),$(cxx_obj),$(gen))
# Alias for default target.
#
@@ -134,12 +167,16 @@ $(clean): \
$(addsuffix .cxx.clean,$(cxx_obj)) \
$(addsuffix .cxx.clean,$(cxx_od))
+ifneq ($(xsd_clean_gen),n)
+$(clean): $(addprefix $(out_base)/,$(cli_tun:.cli=.cxx.cli.clean))
+endif
+
# Generated .gitignore.
#
ifeq ($(out_base),$(src_base))
$(xsd): | $(out_base)/.gitignore
-$(out_base)/.gitignore: files := xsd
+$(out_base)/.gitignore: files := xsd $(genf)
$(clean): $(out_base)/.gitignore.clean
$(call include,$(bld_root)/git/gitignore.make)
@@ -147,6 +184,7 @@ endif
# How to.
#
+$(call include,$(cli_rules))
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
diff --git a/xsd/xsd/options-parser.hxx b/xsd/xsd/options-parser.hxx
new file mode 100644
index 0000000..0f370cd
--- /dev/null
+++ b/xsd/xsd/options-parser.hxx
@@ -0,0 +1,30 @@
+// file : xsd/options-parser.hxx
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef OPTIONS_PARSER_HXX
+#define OPTIONS_PARSER_HXX
+
+#include <types.hxx>
+#include <options.hxx>
+
+namespace cli
+{
+ template <>
+ struct parser<NarrowString>
+ {
+ static void
+ parse (NarrowString& x, bool& xs, scanner& s)
+ {
+ xs = true;
+ const char* o (s.next ());
+
+ if (s.more ())
+ x = s.next ();
+ else
+ throw missing_value (o);
+ }
+ };
+}
+
+#endif // OPTIONS_PARSER_HXX
diff --git a/xsd/xsd/options.cli b/xsd/xsd/options.cli
new file mode 100644
index 0000000..1ebb38e
--- /dev/null
+++ b/xsd/xsd/options.cli
@@ -0,0 +1,313 @@
+// file : xsd/options.cli
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+include <cstddef>; // std::size_t
+
+include <types.hxx>; // NarrowString, NarrowStrings
+
+class help_options
+{
+ // These are all documented elsewhere.
+ //
+ bool --help;
+ bool --version;
+ bool --proprietary-license;
+};
+
+class options = 0
+{
+ NarrowStrings --disable-warning
+ {
+ "<warn>",
+ "Disable printing warning with id <warn>. If \cb{all} is specified for
+ the warning id then all warnings are disabled."
+ };
+
+ // The following option is "fake" in that it is actually handled by
+ // argv_file_scanner. We have it here to get the documentation.
+ //
+ std::string --options-file
+ {
+ "<file>",
+ "Read additional options from <file>. Each option should appearing on a
+ separate line optionally followed by space and an option value. Empty
+ lines and lines starting with \cb{#} are ignored. Option values can
+ be enclosed in double (\cb{\"}) or single (\cb{'}) quotes to preserve
+ leading and trailing whitespaces as well as to specify empty values.
+ If the value itself contains trailing or leading quotes, enclose it
+ with an extra pair of quotes, for example \cb{'\"x\"'}. Non-leading
+ and non-trailing quotes are interpreted as being part of the option
+ value.
+
+ The semantics of providing options in a file is equivalent to providing
+ the same set of options in the same order on the command line at the
+ point where the \cb{--options-file} option is specified except that
+ the shell escaping and quoting is not required. You can repeat this
+ option to specify more than one options file."
+ };
+
+ // SLOC/license options.
+ //
+ bool --show-sloc
+ {
+ "Show the number of generated physical source lines of code (SLOC)."
+ };
+
+ std::size_t --sloc-limit
+ {
+ "<num>",
+ "Check that the number of generated physical source lines of code (SLOC)
+ does not exceed <num>."
+ };
+
+ bool --proprietary-license
+ {
+ "Indicate that the generated code is licensed under a proprietary
+ license instead of the GPL."
+ };
+
+ NarrowString --custom-literals
+ {
+ "<file>",
+ "Load custom XML string to C++ literal mappings from <file>. This
+ mechanism can be useful if you are using a custom character encoding
+ and some of the strings in your schemas, for example element/attribute
+ names or enumeration values, contain non-ASCII characters. In this
+ case you will need to provide a custom mapping to C++ literals for
+ such strings. The format of this file is specified in the
+ \cb{custom-literals.xsd} XML Schema file that can be found in the
+ documentation directory."
+ };
+
+ // Anonymous type morphing.
+ //
+ bool --preserve-anonymous
+ {
+ "Preserve anonymous types. By default anonymous types are automatically
+ named with names derived from the enclosing elements/attributes. Because
+ mappings implemented by this compiler require all types to be named,
+ this option is only useful if you want to make sure your schemas don't
+ have anonymous types."
+ };
+
+ bool --show-anonymous
+ {
+ "Show elements and attributes that are of anonymous types. This option
+ only makes sense together with the \cb{--preserve-anonymous} option."
+ };
+
+ NarrowStrings --anonymous-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to derive names for
+ anonymous types from the enclosing attributes/elements. <regex> is a
+ Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}.
+ Any character can be used as a delimiter instead of \cb{/}. Escaping of
+ the delimiter character in \ci{pattern} or \ci{replacement} is not
+ supported.
+
+ All the regular expressions are pushed into a stack with the last
+ specified expression considered first. The first match that succeeds is
+ used. Regular expressions are applied to a string in the form
+
+ \c{\i{filename} \i{namespace} \i{xpath}}
+
+ For instance:
+
+ \cb{hello.xsd http://example.com/hello element}
+
+ \cb{hello.xsd http://example.com/hello type/element}
+
+ As an example, the following expression makes all the derived names
+ start with capital letters. This could be useful when your naming
+ convention requires type names to start with capital letters:
+
+ \cb{%.* .* (.+/)*(.+)%\\u$2%}
+
+ See also the REGEX AND SHELL QUOTING section below."
+ };
+
+ bool --anonymous-regex-trace
+ {
+ "Trace the process of applying regular expressions specified with the
+ \cb{--anonymous-regex} option. Use this option to find out why your
+ regular expressions don't do what you expected them to do."
+ };
+
+ bool --morph-anonymous; // Deprecated and therefore undocumented.
+
+ // Location options.
+ //
+ NarrowStrings --location-map
+ {
+ "<ol>=<nl>",
+ "Map the original schema location <ol> that is specified in the XML
+ Schema include or import elements to new schema location <nl>. Repeat
+ this option to map more than one schema location. For example, the
+ following option maps the \cb{http://example.com/foo.xsd} URL to the
+ \cb{foo.xsd} local file.
+
+ \cb{--location-map http://example.com/foo.xsd=foo.xsd}"
+ };
+
+ NarrowStrings --location-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to map schema
+ locations that are specified in the XML Schema include or import
+ elements. <regex> is a Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. Any character can
+ be used as a delimiter instead of \cb{/}. Escaping of the delimiter
+ character in \ci{pattern} or \ci{replacement} is not supported. All
+ the regular expressions are pushed into a stack with the last specified
+ expression considered first. The first match that succeeds is used.
+
+ For example, the following expression maps URL locations in the form
+ \cb{http://example.com/foo/bar.xsd} to local files in the form
+ \cb{bar.xsd}:
+
+ \cb{%http://.+/(.+)%$1%}
+
+ See also the REGEX AND SHELL QUOTING section below."
+ };
+
+ bool --location-regex-trace
+ {
+ "Trace the process of applying regular expressions specified with the
+ \cb{--location-regex} option. Use this option to find out why your
+ regular expressions don't do what you expected them to do."
+ };
+
+ // File-per-type option.
+ //
+ bool --file-per-type
+ {
+ "Generate a separate set of C++ files for each type defined in XML
+ Schema. Note that in this mode you only need to compile the root
+ schema(s) and the code will be generated for all included and
+ imported schemas. This compilation mode is primarily useful when
+ some of your schemas cannot be compiled separately or have cyclic
+ dependencies which involve type inheritance. Other options related
+ to this mode are: \cb{--type-file-regex}, \cb{--schema-file-regex},
+ \cb{--fat-type-file}, and \cb{--file-list}."
+ };
+
+ NarrowStrings --type-file-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate type
+ names to file names when the \cb{--file-per-type} option is specified.
+ <regex> is a Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. Any character can be
+ used as a delimiter instead of \cb{/}. Escaping of the delimiter
+ character in \ci{pattern} or \ci{replacement} is not supported. All
+ the regular expressions are pushed into a stack with the last specified
+ expression considered first. The first match that succeeds is used.
+ Regular expressions are applied to a string in the form
+
+ \c{\i{namespace} \i{type-name}}
+
+ For example, the following expression maps type \cb{foo} that is
+ defined in the \cb{http://example.com/bar} namespace to file name
+ \cb{bar-foo}:
+
+ \cb{%http://example.com/(.+) (.+)%$1-$2%}
+
+ See also the REGEX AND SHELL QUOTING section below."
+ };
+
+ bool --type-file-regex-trace
+ {
+ "Trace the process of applying regular expressions specified with the
+ \cb{--type-file-regex} option. Use this option to find out why your
+ regular expressions don't do what you expected them to do."
+ };
+
+ NarrowStrings --schema-file-regex
+ {
+ "<regex>",
+ "Add <regex> to the list of regular expressions used to translate schema
+ file names when the \cb{--file-per-type} option is specified. <regex> is
+ a Perl-like regular expression in the form
+ \c{\b{/}\i{pattern}\b{/}\i{replacement}\b{/}}. Any character can be used
+ as a delimiter instead of \cb{/}. Escaping of the delimiter character in
+ \ci{pattern} or \ci{replacement} is not supported. All the regular
+ expressions are pushed into a stack with the last specified expression
+ considered first. The first match that succeeds is used. Regular
+ Expressions are applied to the absolute filesystem path of a schema file
+ and the result, including the directory part, if any, is used to derive
+ the \cb{#include} directive paths as well as the generated C++ file
+ paths. This option, along with \cb{--type-file-regex} are primarily
+ useful to place the generated files into subdirectories or to resolve
+ file name conflicts.
+
+ For example, the following expression maps schema files in the
+ \cb{foo/1.0.0/} subdirectory to the files in the \cb{foo/} subdirectory.
+ As a result, the \cb{#include} directive paths for such schemas will be
+ in the \cb{foo/schema.hxx} form and the generated C++ files will be
+ placed into the \cb{foo/} subdirectory:
+
+ \cb{%.*/foo/1.0.0/(.+)%foo/$1%}
+
+ See also the REGEX AND SHELL QUOTING section below."
+ };
+
+ bool --schema-file-regex-trace
+ {
+ "Trace the process of applying regular expressions specified with the
+ \cb{--schema-file-regex} option. Use this option to find out why your
+ regular expressions don't do what you expected them to do."
+ };
+
+ bool --fat-type-file
+ {
+ "Generate code corresponding to global elements into type files instead
+ of schema files when the \cb{--type-file-regex} option is specified.
+ This option is primarily useful when trying to minimize the amount of
+ object code that is linked to an executable by packaging compiled
+ generated code into a static (archive) library."
+ };
+
+ // File list options.
+ //
+ NarrowString --file-list
+ {
+ "<file>",
+ "Write a list of generated C++ files to <file>. This option is primarily
+ useful in the file-per-type compilation mode (\cb{--file-per-type}) to
+ create a list of generated C++ files, for example, as a makefile
+ fragment."
+ };
+
+ NarrowString --file-list-prologue
+ {
+ "<text>",
+ "Insert <text> at the beginning of the file list. As a convenience, all
+ occurrences of the \cb{\\n} character sequence in <text> are replaced
+ with new lines. This option can, for example, be used to assign the
+ generated file list to a makefile variable."
+ };
+
+ NarrowString --file-list-epilogue
+ {
+ "<text>",
+ "Insert <text> at the end of the file list. As a convenience, all
+ occurrences of the \cb{\\n} character sequence in <text> are replaced
+ with new lines."
+ };
+
+ NarrowString --file-list-delim = "\n"
+ {
+ "<text>",
+ "Delimit file names written to the file list with <text> instead of new
+ lines. As a convenience, all occurrences of the \cb{\\n} character
+ sequence in <text> are replaced with new lines."
+ };
+
+ // Undocumented.
+ //
+ bool --disable-multi-import;
+ bool --disable-full-check;
+};
diff --git a/xsd/xsd/options.cxx b/xsd/xsd/options.cxx
new file mode 100644
index 0000000..3af99f2
--- /dev/null
+++ b/xsd/xsd/options.cxx
@@ -0,0 +1,976 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+#include <options-parser.hxx>
+//
+// End prologue.
+
+#include <options.hxx>
+
+#include <map>
+#include <set>
+#include <string>
+#include <vector>
+#include <ostream>
+#include <sstream>
+#include <cstring>
+#include <fstream>
+
+namespace cli
+{
+ // unknown_option
+ //
+ unknown_option::
+ ~unknown_option () throw ()
+ {
+ }
+
+ void unknown_option::
+ print (::std::wostream& os) const
+ {
+ os << "unknown option '" << option ().c_str () << "'";
+ }
+
+ const char* unknown_option::
+ what () const throw ()
+ {
+ return "unknown option";
+ }
+
+ // unknown_argument
+ //
+ unknown_argument::
+ ~unknown_argument () throw ()
+ {
+ }
+
+ void unknown_argument::
+ print (::std::wostream& os) const
+ {
+ os << "unknown argument '" << argument ().c_str () << "'";
+ }
+
+ const char* unknown_argument::
+ what () const throw ()
+ {
+ return "unknown argument";
+ }
+
+ // missing_value
+ //
+ missing_value::
+ ~missing_value () throw ()
+ {
+ }
+
+ void missing_value::
+ print (::std::wostream& os) const
+ {
+ os << "missing value for option '" << option ().c_str () << "'";
+ }
+
+ const char* missing_value::
+ what () const throw ()
+ {
+ return "missing option value";
+ }
+
+ // invalid_value
+ //
+ invalid_value::
+ ~invalid_value () throw ()
+ {
+ }
+
+ void invalid_value::
+ print (::std::wostream& os) const
+ {
+ os << "invalid value '" << value ().c_str () << "' for option '"
+ << option ().c_str () << "'";
+ }
+
+ const char* invalid_value::
+ what () const throw ()
+ {
+ return "invalid option value";
+ }
+
+ // eos_reached
+ //
+ void eos_reached::
+ print (::std::wostream& os) const
+ {
+ os << what ();
+ }
+
+ const char* eos_reached::
+ what () const throw ()
+ {
+ return "end of argument stream reached";
+ }
+
+ // file_io_failure
+ //
+ file_io_failure::
+ ~file_io_failure () throw ()
+ {
+ }
+
+ void file_io_failure::
+ print (::std::wostream& os) const
+ {
+ os << "unable to open file '" << file ().c_str () << "' or read failure";
+ }
+
+ const char* file_io_failure::
+ what () const throw ()
+ {
+ return "unable to open file or read failure";
+ }
+
+ // unmatched_quote
+ //
+ unmatched_quote::
+ ~unmatched_quote () throw ()
+ {
+ }
+
+ void unmatched_quote::
+ print (::std::wostream& os) const
+ {
+ os << "unmatched quote in argument '" << argument ().c_str () << "'";
+ }
+
+ const char* unmatched_quote::
+ what () const throw ()
+ {
+ return "unmatched quote";
+ }
+
+ // scanner
+ //
+ scanner::
+ ~scanner ()
+ {
+ }
+
+ // argv_scanner
+ //
+ bool argv_scanner::
+ more ()
+ {
+ return i_ < argc_;
+ }
+
+ const char* argv_scanner::
+ peek ()
+ {
+ if (i_ < argc_)
+ return argv_[i_];
+ else
+ throw eos_reached ();
+ }
+
+ const char* argv_scanner::
+ next ()
+ {
+ if (i_ < argc_)
+ {
+ const char* r (argv_[i_]);
+
+ if (erase_)
+ {
+ for (int i (i_ + 1); i < argc_; ++i)
+ argv_[i - 1] = argv_[i];
+
+ --argc_;
+ argv_[argc_] = 0;
+ }
+ else
+ ++i_;
+
+ return r;
+ }
+ else
+ throw eos_reached ();
+ }
+
+ void argv_scanner::
+ skip ()
+ {
+ if (i_ < argc_)
+ ++i_;
+ else
+ throw eos_reached ();
+ }
+
+ // argv_file_scanner
+ //
+ bool argv_file_scanner::
+ more ()
+ {
+ if (!args_.empty ())
+ return true;
+
+ while (base::more ())
+ {
+ // See if the next argument is the file option.
+ //
+ const char* a (base::peek ());
+ const option_info* oi;
+
+ if (!skip_ && (oi = find (a)))
+ {
+ base::next ();
+
+ if (!base::more ())
+ throw missing_value (oi->option);
+
+ if (oi->search_func != 0)
+ {
+ std::string f (oi->search_func (base::next (), oi->arg));
+
+ if (!f.empty ())
+ load (f);
+ }
+ else
+ load (base::next ());
+
+ if (!args_.empty ())
+ return true;
+ }
+ else
+ {
+ if (!skip_)
+ skip_ = (std::strcmp (a, "--") == 0);
+
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ const char* argv_file_scanner::
+ peek ()
+ {
+ if (!more ())
+ throw eos_reached ();
+
+ return args_.empty () ? base::peek () : args_.front ().c_str ();
+ }
+
+ const char* argv_file_scanner::
+ next ()
+ {
+ if (!more ())
+ throw eos_reached ();
+
+ if (args_.empty ())
+ return base::next ();
+ else
+ {
+ hold_.swap (args_.front ());
+ args_.pop_front ();
+ return hold_.c_str ();
+ }
+ }
+
+ void argv_file_scanner::
+ skip ()
+ {
+ if (!more ())
+ throw eos_reached ();
+
+ if (args_.empty ())
+ return base::skip ();
+ else
+ args_.pop_front ();
+ }
+
+ const argv_file_scanner::option_info* argv_file_scanner::
+ find (const char* a) const
+ {
+ for (std::size_t i (0); i < options_count_; ++i)
+ if (std::strcmp (a, options_[i].option) == 0)
+ return &options_[i];
+
+ return 0;
+ }
+
+ void argv_file_scanner::
+ load (const std::string& file)
+ {
+ using namespace std;
+
+ ifstream is (file.c_str ());
+
+ if (!is.is_open ())
+ throw file_io_failure (file);
+
+ while (!is.eof ())
+ {
+ string line;
+ getline (is, line);
+
+ if (is.fail () && !is.eof ())
+ throw file_io_failure (file);
+
+ string::size_type n (line.size ());
+
+ // Trim the line from leading and trailing whitespaces.
+ //
+ if (n != 0)
+ {
+ const char* f (line.c_str ());
+ const char* l (f + n);
+
+ const char* of (f);
+ while (f < l && (*f == ' ' || *f == '\t' || *f == '\r'))
+ ++f;
+
+ --l;
+
+ const char* ol (l);
+ while (l > f && (*l == ' ' || *l == '\t' || *l == '\r'))
+ --l;
+
+ if (f != of || l != ol)
+ line = f <= l ? string (f, l - f + 1) : string ();
+ }
+
+ // Ignore empty lines, those that start with #.
+ //
+ if (line.empty () || line[0] == '#')
+ continue;
+
+ string::size_type p (line.find (' '));
+
+ if (p == string::npos)
+ {
+ if (!skip_)
+ skip_ = (line == "--");
+
+ args_.push_back (line);
+ }
+ else
+ {
+ string s1 (line, 0, p);
+
+ // Skip leading whitespaces in the argument.
+ //
+ n = line.size ();
+ for (++p; p < n; ++p)
+ {
+ char c (line[p]);
+
+ if (c != ' ' && c != '\t' && c != '\r')
+ break;
+ }
+
+ string s2 (line, p);
+
+ // If the string is wrapped in quotes, remove them.
+ //
+ n = s2.size ();
+ char cf (s2[0]), cl (s2[n - 1]);
+
+ if (cf == '"' || cf == '\'' || cl == '"' || cl == '\'')
+ {
+ if (n == 1 || cf != cl)
+ throw unmatched_quote (s2);
+
+ s2 = string (s2, 1, n - 2);
+ }
+
+ const option_info* oi;
+ if (!skip_ && (oi = find (s1.c_str ())))
+ {
+ if (s2.empty ())
+ throw missing_value (oi->option);
+
+ if (oi->search_func != 0)
+ {
+ std::string f (oi->search_func (s2.c_str (), oi->arg));
+
+ if (!f.empty ())
+ load (f);
+ }
+ else
+ load (s2);
+ }
+ else
+ {
+ args_.push_back (s1);
+ args_.push_back (s2);
+ }
+ }
+ }
+ }
+
+ template <typename X>
+ struct parser
+ {
+ static void
+ parse (X& x, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string v (s.next ());
+ std::istringstream is (v);
+ if (!(is >> x && is.eof ()))
+ throw invalid_value (o, v);
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <>
+ struct parser<bool>
+ {
+ static void
+ parse (bool& x, scanner& s)
+ {
+ s.next ();
+ x = true;
+ }
+ };
+
+ template <>
+ struct parser<std::string>
+ {
+ static void
+ parse (std::string& x, bool& xs, scanner& s)
+ {
+ const char* o (s.next ());
+
+ if (s.more ())
+ x = s.next ();
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::vector<X> >
+ {
+ static void
+ parse (std::vector<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.push_back (x);
+ xs = true;
+ }
+ };
+
+ template <typename X>
+ struct parser<std::set<X> >
+ {
+ static void
+ parse (std::set<X>& c, bool& xs, scanner& s)
+ {
+ X x;
+ bool dummy;
+ parser<X>::parse (x, dummy, s);
+ c.insert (x);
+ xs = true;
+ }
+ };
+
+ template <typename K, typename V>
+ struct parser<std::map<K, V> >
+ {
+ static void
+ parse (std::map<K, V>& m, bool& xs, scanner& s)
+ {
+ std::string o (s.next ());
+
+ if (s.more ())
+ {
+ std::string ov (s.next ());
+ std::string::size_type p = ov.find ('=');
+
+ if (p == std::string::npos)
+ {
+ K k = K ();
+
+ if (!ov.empty ())
+ {
+ std::istringstream ks (ov);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = V ();
+ }
+ else
+ {
+ K k = K ();
+ V v = V ();
+ std::string kstr (ov, 0, p);
+ std::string vstr (ov, p + 1);
+
+ if (!kstr.empty ())
+ {
+ std::istringstream ks (kstr);
+
+ if (!(ks >> k && ks.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ if (!vstr.empty ())
+ {
+ std::istringstream vs (vstr);
+
+ if (!(vs >> v && vs.eof ()))
+ throw invalid_value (o, ov);
+ }
+
+ m[k] = v;
+ }
+ }
+ else
+ throw missing_value (o);
+
+ xs = true;
+ }
+ };
+
+ template <typename X, typename T, T X::*M>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, s);
+ }
+
+ template <typename X, typename T, T X::*M, bool X::*S>
+ void
+ thunk (X& x, scanner& s)
+ {
+ parser<T>::parse (x.*M, x.*S, s);
+ }
+}
+
+#include <map>
+#include <cstring>
+
+// help_options
+//
+
+help_options::
+help_options ()
+: help_ (),
+ version_ (),
+ proprietary_license_ ()
+{
+}
+
+help_options::
+help_options (int& argc,
+ char** argv,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+: help_ (),
+ version_ (),
+ proprietary_license_ ()
+{
+ ::cli::argv_scanner s (argc, argv, erase);
+ _parse (s, opt, arg);
+}
+
+help_options::
+help_options (int start,
+ int& argc,
+ char** argv,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+: help_ (),
+ version_ (),
+ proprietary_license_ ()
+{
+ ::cli::argv_scanner s (start, argc, argv, erase);
+ _parse (s, opt, arg);
+}
+
+help_options::
+help_options (int& argc,
+ char** argv,
+ int& end,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+: help_ (),
+ version_ (),
+ proprietary_license_ ()
+{
+ ::cli::argv_scanner s (argc, argv, erase);
+ _parse (s, opt, arg);
+ end = s.end ();
+}
+
+help_options::
+help_options (int start,
+ int& argc,
+ char** argv,
+ int& end,
+ bool erase,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+: help_ (),
+ version_ (),
+ proprietary_license_ ()
+{
+ ::cli::argv_scanner s (start, argc, argv, erase);
+ _parse (s, opt, arg);
+ end = s.end ();
+}
+
+help_options::
+help_options (::cli::scanner& s,
+ ::cli::unknown_mode opt,
+ ::cli::unknown_mode arg)
+: help_ (),
+ version_ (),
+ proprietary_license_ ()
+{
+ _parse (s, opt, arg);
+}
+
+void help_options::
+print_usage (::std::wostream&)
+{
+}
+
+typedef
+std::map<std::string, void (*) (help_options&, ::cli::scanner&)>
+_cli_help_options_map;
+
+static _cli_help_options_map _cli_help_options_map_;
+
+struct _cli_help_options_map_init
+{
+ _cli_help_options_map_init ()
+ {
+ _cli_help_options_map_["--help"] =
+ &::cli::thunk< help_options, bool, &help_options::help_ >;
+ _cli_help_options_map_["--version"] =
+ &::cli::thunk< help_options, bool, &help_options::version_ >;
+ _cli_help_options_map_["--proprietary-license"] =
+ &::cli::thunk< help_options, bool, &help_options::proprietary_license_ >;
+ }
+};
+
+static _cli_help_options_map_init _cli_help_options_map_init_;
+
+bool help_options::
+_parse (const char* o, ::cli::scanner& s)
+{
+ _cli_help_options_map::const_iterator i (_cli_help_options_map_.find (o));
+
+ if (i != _cli_help_options_map_.end ())
+ {
+ (*(i->second)) (*this, s);
+ return true;
+ }
+
+ return false;
+}
+
+void help_options::
+_parse (::cli::scanner& s,
+ ::cli::unknown_mode opt_mode,
+ ::cli::unknown_mode arg_mode)
+{
+ bool opt = true;
+
+ while (s.more ())
+ {
+ const char* o = s.peek ();
+
+ if (std::strcmp (o, "--") == 0)
+ {
+ s.skip ();
+ opt = false;
+ continue;
+ }
+
+ if (opt && _parse (o, s));
+ else if (opt && std::strncmp (o, "-", 1) == 0 && o[1] != '\0')
+ {
+ switch (opt_mode)
+ {
+ case ::cli::unknown_mode::skip:
+ {
+ s.skip ();
+ continue;
+ }
+ case ::cli::unknown_mode::stop:
+ {
+ break;
+ }
+ case ::cli::unknown_mode::fail:
+ {
+ throw ::cli::unknown_option (o);
+ }
+ }
+
+ break;
+ }
+ else
+ {
+ switch (arg_mode)
+ {
+ case ::cli::unknown_mode::skip:
+ {
+ s.skip ();
+ continue;
+ }
+ case ::cli::unknown_mode::stop:
+ {
+ break;
+ }
+ case ::cli::unknown_mode::fail:
+ {
+ throw ::cli::unknown_argument (o);
+ }
+ }
+
+ break;
+ }
+ }
+}
+
+// options
+//
+
+options::
+options ()
+: disable_warning_ (),
+ disable_warning_specified_ (false),
+ options_file_ (),
+ options_file_specified_ (false),
+ show_sloc_ (),
+ sloc_limit_ (),
+ sloc_limit_specified_ (false),
+ proprietary_license_ (),
+ custom_literals_ (),
+ custom_literals_specified_ (false),
+ preserve_anonymous_ (),
+ show_anonymous_ (),
+ anonymous_regex_ (),
+ anonymous_regex_specified_ (false),
+ anonymous_regex_trace_ (),
+ morph_anonymous_ (),
+ location_map_ (),
+ location_map_specified_ (false),
+ location_regex_ (),
+ location_regex_specified_ (false),
+ location_regex_trace_ (),
+ file_per_type_ (),
+ type_file_regex_ (),
+ type_file_regex_specified_ (false),
+ type_file_regex_trace_ (),
+ schema_file_regex_ (),
+ schema_file_regex_specified_ (false),
+ schema_file_regex_trace_ (),
+ fat_type_file_ (),
+ file_list_ (),
+ file_list_specified_ (false),
+ file_list_prologue_ (),
+ file_list_prologue_specified_ (false),
+ file_list_epilogue_ (),
+ file_list_epilogue_specified_ (false),
+ file_list_delim_ ("\n"),
+ file_list_delim_specified_ (false),
+ disable_multi_import_ (),
+ disable_full_check_ ()
+{
+}
+
+void options::
+print_usage (::std::wostream& os)
+{
+ os << "--disable-warning <warn> Disable printing warning with id <warn>." << ::std::endl;
+
+ os << "--options-file <file> Read additional options from <file>." << ::std::endl;
+
+ os << "--show-sloc Show the number of generated physical source lines" << ::std::endl
+ << " of code (SLOC)." << ::std::endl;
+
+ os << "--sloc-limit <num> Check that the number of generated physical source" << ::std::endl
+ << " lines of code (SLOC) does not exceed <num>." << ::std::endl;
+
+ os << "--proprietary-license Indicate that the generated code is licensed under" << ::std::endl
+ << " a proprietary license instead of the GPL." << ::std::endl;
+
+ os << "--custom-literals <file> Load custom XML string to C++ literal mappings" << ::std::endl
+ << " from <file>." << ::std::endl;
+
+ os << "--preserve-anonymous Preserve anonymous types." << ::std::endl;
+
+ os << "--show-anonymous Show elements and attributes that are of anonymous" << ::std::endl
+ << " types." << ::std::endl;
+
+ os << "--anonymous-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to derive names for anonymous types from the" << ::std::endl
+ << " enclosing attributes/elements." << ::std::endl;
+
+ os << "--anonymous-regex-trace Trace the process of applying regular expressions" << ::std::endl
+ << " specified with the '--anonymous-regex' option." << ::std::endl;
+
+ os << "--location-map <ol>=<nl> Map the original schema location <ol> that is" << ::std::endl
+ << " specified in the XML Schema include or import" << ::std::endl
+ << " elements to new schema location <nl>." << ::std::endl;
+
+ os << "--location-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to map schema locations that are specified in" << ::std::endl
+ << " the XML Schema include or import elements." << ::std::endl;
+
+ os << "--location-regex-trace Trace the process of applying regular expressions" << ::std::endl
+ << " specified with the '--location-regex' option." << ::std::endl;
+
+ os << "--file-per-type Generate a separate set of C++ files for each type" << ::std::endl
+ << " defined in XML Schema." << ::std::endl;
+
+ os << "--type-file-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate type names to file names when" << ::std::endl
+ << " the '--file-per-type' option is specified." << ::std::endl;
+
+ os << "--type-file-regex-trace Trace the process of applying regular expressions" << ::std::endl
+ << " specified with the '--type-file-regex' option." << ::std::endl;
+
+ os << "--schema-file-regex <regex> Add <regex> to the list of regular expressions" << ::std::endl
+ << " used to translate schema file names when the" << ::std::endl
+ << " '--file-per-type' option is specified." << ::std::endl;
+
+ os << "--schema-file-regex-trace Trace the process of applying regular expressions" << ::std::endl
+ << " specified with the '--schema-file-regex' option." << ::std::endl;
+
+ os << "--fat-type-file Generate code corresponding to global elements" << ::std::endl
+ << " into type files instead of schema files when the" << ::std::endl
+ << " '--type-file-regex' option is specified." << ::std::endl;
+
+ os << "--file-list <file> Write a list of generated C++ files to <file>." << ::std::endl;
+
+ os << "--file-list-prologue <text> Insert <text> at the beginning of the file list." << ::std::endl;
+
+ os << "--file-list-epilogue <text> Insert <text> at the end of the file list." << ::std::endl;
+
+ os << "--file-list-delim <text> Delimit file names written to the file list with" << ::std::endl
+ << " <text> instead of new lines." << ::std::endl;
+}
+
+typedef
+std::map<std::string, void (*) (options&, ::cli::scanner&)>
+_cli_options_map;
+
+static _cli_options_map _cli_options_map_;
+
+struct _cli_options_map_init
+{
+ _cli_options_map_init ()
+ {
+ _cli_options_map_["--disable-warning"] =
+ &::cli::thunk< options, NarrowStrings, &options::disable_warning_,
+ &options::disable_warning_specified_ >;
+ _cli_options_map_["--options-file"] =
+ &::cli::thunk< options, std::string, &options::options_file_,
+ &options::options_file_specified_ >;
+ _cli_options_map_["--show-sloc"] =
+ &::cli::thunk< options, bool, &options::show_sloc_ >;
+ _cli_options_map_["--sloc-limit"] =
+ &::cli::thunk< options, std::size_t, &options::sloc_limit_,
+ &options::sloc_limit_specified_ >;
+ _cli_options_map_["--proprietary-license"] =
+ &::cli::thunk< options, bool, &options::proprietary_license_ >;
+ _cli_options_map_["--custom-literals"] =
+ &::cli::thunk< options, NarrowString, &options::custom_literals_,
+ &options::custom_literals_specified_ >;
+ _cli_options_map_["--preserve-anonymous"] =
+ &::cli::thunk< options, bool, &options::preserve_anonymous_ >;
+ _cli_options_map_["--show-anonymous"] =
+ &::cli::thunk< options, bool, &options::show_anonymous_ >;
+ _cli_options_map_["--anonymous-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::anonymous_regex_,
+ &options::anonymous_regex_specified_ >;
+ _cli_options_map_["--anonymous-regex-trace"] =
+ &::cli::thunk< options, bool, &options::anonymous_regex_trace_ >;
+ _cli_options_map_["--morph-anonymous"] =
+ &::cli::thunk< options, bool, &options::morph_anonymous_ >;
+ _cli_options_map_["--location-map"] =
+ &::cli::thunk< options, NarrowStrings, &options::location_map_,
+ &options::location_map_specified_ >;
+ _cli_options_map_["--location-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::location_regex_,
+ &options::location_regex_specified_ >;
+ _cli_options_map_["--location-regex-trace"] =
+ &::cli::thunk< options, bool, &options::location_regex_trace_ >;
+ _cli_options_map_["--file-per-type"] =
+ &::cli::thunk< options, bool, &options::file_per_type_ >;
+ _cli_options_map_["--type-file-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::type_file_regex_,
+ &options::type_file_regex_specified_ >;
+ _cli_options_map_["--type-file-regex-trace"] =
+ &::cli::thunk< options, bool, &options::type_file_regex_trace_ >;
+ _cli_options_map_["--schema-file-regex"] =
+ &::cli::thunk< options, NarrowStrings, &options::schema_file_regex_,
+ &options::schema_file_regex_specified_ >;
+ _cli_options_map_["--schema-file-regex-trace"] =
+ &::cli::thunk< options, bool, &options::schema_file_regex_trace_ >;
+ _cli_options_map_["--fat-type-file"] =
+ &::cli::thunk< options, bool, &options::fat_type_file_ >;
+ _cli_options_map_["--file-list"] =
+ &::cli::thunk< options, NarrowString, &options::file_list_,
+ &options::file_list_specified_ >;
+ _cli_options_map_["--file-list-prologue"] =
+ &::cli::thunk< options, NarrowString, &options::file_list_prologue_,
+ &options::file_list_prologue_specified_ >;
+ _cli_options_map_["--file-list-epilogue"] =
+ &::cli::thunk< options, NarrowString, &options::file_list_epilogue_,
+ &options::file_list_epilogue_specified_ >;
+ _cli_options_map_["--file-list-delim"] =
+ &::cli::thunk< options, NarrowString, &options::file_list_delim_,
+ &options::file_list_delim_specified_ >;
+ _cli_options_map_["--disable-multi-import"] =
+ &::cli::thunk< options, bool, &options::disable_multi_import_ >;
+ _cli_options_map_["--disable-full-check"] =
+ &::cli::thunk< options, bool, &options::disable_full_check_ >;
+ }
+};
+
+static _cli_options_map_init _cli_options_map_init_;
+
+bool options::
+_parse (const char* o, ::cli::scanner& s)
+{
+ _cli_options_map::const_iterator i (_cli_options_map_.find (o));
+
+ if (i != _cli_options_map_.end ())
+ {
+ (*(i->second)) (*this, s);
+ return true;
+ }
+
+ return false;
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
diff --git a/xsd/xsd/options.hxx b/xsd/xsd/options.hxx
new file mode 100644
index 0000000..ed243bc
--- /dev/null
+++ b/xsd/xsd/options.hxx
@@ -0,0 +1,575 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+#ifndef OPTIONS_HXX
+#define OPTIONS_HXX
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+#include <deque>
+#include <iosfwd>
+#include <string>
+#include <cstddef>
+#include <exception>
+
+namespace cli
+{
+ class unknown_mode
+ {
+ public:
+ enum value
+ {
+ skip,
+ stop,
+ fail
+ };
+
+ unknown_mode (value v);
+
+ operator value () const
+ {
+ return v_;
+ }
+
+ private:
+ value v_;
+ };
+
+ // Exceptions.
+ //
+
+ class exception: public std::exception
+ {
+ public:
+ virtual void
+ print (::std::wostream&) const = 0;
+ };
+
+ ::std::wostream&
+ operator<< (::std::wostream&, const exception&);
+
+ class unknown_option: public exception
+ {
+ public:
+ virtual
+ ~unknown_option () throw ();
+
+ unknown_option (const std::string& option);
+
+ const std::string&
+ option () const;
+
+ virtual void
+ print (::std::wostream&) const;
+
+ virtual const char*
+ what () const throw ();
+
+ private:
+ std::string option_;
+ };
+
+ class unknown_argument: public exception
+ {
+ public:
+ virtual
+ ~unknown_argument () throw ();
+
+ unknown_argument (const std::string& argument);
+
+ const std::string&
+ argument () const;
+
+ virtual void
+ print (::std::wostream&) const;
+
+ virtual const char*
+ what () const throw ();
+
+ private:
+ std::string argument_;
+ };
+
+ class missing_value: public exception
+ {
+ public:
+ virtual
+ ~missing_value () throw ();
+
+ missing_value (const std::string& option);
+
+ const std::string&
+ option () const;
+
+ virtual void
+ print (::std::wostream&) const;
+
+ virtual const char*
+ what () const throw ();
+
+ private:
+ std::string option_;
+ };
+
+ class invalid_value: public exception
+ {
+ public:
+ virtual
+ ~invalid_value () throw ();
+
+ invalid_value (const std::string& option,
+ const std::string& value);
+
+ const std::string&
+ option () const;
+
+ const std::string&
+ value () const;
+
+ virtual void
+ print (::std::wostream&) const;
+
+ virtual const char*
+ what () const throw ();
+
+ private:
+ std::string option_;
+ std::string value_;
+ };
+
+ class eos_reached: public exception
+ {
+ public:
+ virtual void
+ print (::std::wostream&) const;
+
+ virtual const char*
+ what () const throw ();
+ };
+
+ class file_io_failure: public exception
+ {
+ public:
+ virtual
+ ~file_io_failure () throw ();
+
+ file_io_failure (const std::string& file);
+
+ const std::string&
+ file () const;
+
+ virtual void
+ print (::std::wostream&) const;
+
+ virtual const char*
+ what () const throw ();
+
+ private:
+ std::string file_;
+ };
+
+ class unmatched_quote: public exception
+ {
+ public:
+ virtual
+ ~unmatched_quote () throw ();
+
+ unmatched_quote (const std::string& argument);
+
+ const std::string&
+ argument () const;
+
+ virtual void
+ print (::std::wostream&) const;
+
+ virtual const char*
+ what () const throw ();
+
+ private:
+ std::string argument_;
+ };
+
+ class scanner
+ {
+ public:
+ virtual
+ ~scanner ();
+
+ virtual bool
+ more () = 0;
+
+ virtual const char*
+ peek () = 0;
+
+ virtual const char*
+ next () = 0;
+
+ virtual void
+ skip () = 0;
+ };
+
+ class argv_scanner: public scanner
+ {
+ public:
+ argv_scanner (int& argc, char** argv, bool erase = false);
+ argv_scanner (int start, int& argc, char** argv, bool erase = false);
+
+ int
+ end () const;
+
+ virtual bool
+ more ();
+
+ virtual const char*
+ peek ();
+
+ virtual const char*
+ next ();
+
+ virtual void
+ skip ();
+
+ private:
+ int i_;
+ int& argc_;
+ char** argv_;
+ bool erase_;
+ };
+
+ class argv_file_scanner: public argv_scanner
+ {
+ public:
+ argv_file_scanner (int& argc,
+ char** argv,
+ const std::string& option,
+ bool erase = false);
+
+ argv_file_scanner (int start,
+ int& argc,
+ char** argv,
+ const std::string& option,
+ bool erase = false);
+
+ struct option_info
+ {
+ // If search_func is not NULL, it is called, with the arg
+ // value as the second argument, to locate the options file.
+ // If it returns an empty string, then the file is ignored.
+ //
+ const char* option;
+ std::string (*search_func) (const char*, void* arg);
+ void* arg;
+ };
+
+ argv_file_scanner (int& argc,
+ char** argv,
+ const option_info* options,
+ std::size_t options_count,
+ bool erase = false);
+
+ argv_file_scanner (int start,
+ int& argc,
+ char** argv,
+ const option_info* options,
+ std::size_t options_count,
+ bool erase = false);
+
+ virtual bool
+ more ();
+
+ virtual const char*
+ peek ();
+
+ virtual const char*
+ next ();
+
+ virtual void
+ skip ();
+
+ private:
+ const option_info*
+ find (const char*) const;
+
+ void
+ load (const std::string& file);
+
+ typedef argv_scanner base;
+
+ const std::string option_;
+ option_info option_info_;
+ const option_info* options_;
+ std::size_t options_count_;
+
+ std::string hold_;
+ std::deque<std::string> args_;
+ bool skip_;
+ };
+
+ template <typename X>
+ struct parser;
+}
+
+#include <cstddef>
+
+#include <types.hxx>
+
+class help_options
+{
+ public:
+ help_options (int& argc,
+ char** argv,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ help_options (int start,
+ int& argc,
+ char** argv,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ help_options (int& argc,
+ char** argv,
+ int& end,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ help_options (int start,
+ int& argc,
+ char** argv,
+ int& end,
+ bool erase = false,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ help_options (::cli::scanner&,
+ ::cli::unknown_mode option = ::cli::unknown_mode::fail,
+ ::cli::unknown_mode argument = ::cli::unknown_mode::stop);
+
+ help_options ();
+
+ // Option accessors.
+ //
+ const bool&
+ help () const;
+
+ const bool&
+ version () const;
+
+ const bool&
+ proprietary_license () const;
+
+ // Print usage information.
+ //
+ static void
+ print_usage (::std::wostream&);
+
+ // Implementation details.
+ //
+ protected:
+ bool
+ _parse (const char*, ::cli::scanner&);
+
+ private:
+ void
+ _parse (::cli::scanner&,
+ ::cli::unknown_mode option,
+ ::cli::unknown_mode argument);
+
+ public:
+ bool help_;
+ bool version_;
+ bool proprietary_license_;
+};
+
+class options
+{
+ public:
+ // Option accessors.
+ //
+ const NarrowStrings&
+ disable_warning () const;
+
+ bool
+ disable_warning_specified () const;
+
+ const std::string&
+ options_file () const;
+
+ bool
+ options_file_specified () const;
+
+ const bool&
+ show_sloc () const;
+
+ const std::size_t&
+ sloc_limit () const;
+
+ bool
+ sloc_limit_specified () const;
+
+ const bool&
+ proprietary_license () const;
+
+ const NarrowString&
+ custom_literals () const;
+
+ bool
+ custom_literals_specified () const;
+
+ const bool&
+ preserve_anonymous () const;
+
+ const bool&
+ show_anonymous () const;
+
+ const NarrowStrings&
+ anonymous_regex () const;
+
+ bool
+ anonymous_regex_specified () const;
+
+ const bool&
+ anonymous_regex_trace () const;
+
+ const bool&
+ morph_anonymous () const;
+
+ const NarrowStrings&
+ location_map () const;
+
+ bool
+ location_map_specified () const;
+
+ const NarrowStrings&
+ location_regex () const;
+
+ bool
+ location_regex_specified () const;
+
+ const bool&
+ location_regex_trace () const;
+
+ const bool&
+ file_per_type () const;
+
+ const NarrowStrings&
+ type_file_regex () const;
+
+ bool
+ type_file_regex_specified () const;
+
+ const bool&
+ type_file_regex_trace () const;
+
+ const NarrowStrings&
+ schema_file_regex () const;
+
+ bool
+ schema_file_regex_specified () const;
+
+ const bool&
+ schema_file_regex_trace () const;
+
+ const bool&
+ fat_type_file () const;
+
+ const NarrowString&
+ file_list () const;
+
+ bool
+ file_list_specified () const;
+
+ const NarrowString&
+ file_list_prologue () const;
+
+ bool
+ file_list_prologue_specified () const;
+
+ const NarrowString&
+ file_list_epilogue () const;
+
+ bool
+ file_list_epilogue_specified () const;
+
+ const NarrowString&
+ file_list_delim () const;
+
+ bool
+ file_list_delim_specified () const;
+
+ const bool&
+ disable_multi_import () const;
+
+ const bool&
+ disable_full_check () const;
+
+ // Print usage information.
+ //
+ static void
+ print_usage (::std::wostream&);
+
+ // Implementation details.
+ //
+ protected:
+ options ();
+
+ bool
+ _parse (const char*, ::cli::scanner&);
+
+ public:
+ NarrowStrings disable_warning_;
+ bool disable_warning_specified_;
+ std::string options_file_;
+ bool options_file_specified_;
+ bool show_sloc_;
+ std::size_t sloc_limit_;
+ bool sloc_limit_specified_;
+ bool proprietary_license_;
+ NarrowString custom_literals_;
+ bool custom_literals_specified_;
+ bool preserve_anonymous_;
+ bool show_anonymous_;
+ NarrowStrings anonymous_regex_;
+ bool anonymous_regex_specified_;
+ bool anonymous_regex_trace_;
+ bool morph_anonymous_;
+ NarrowStrings location_map_;
+ bool location_map_specified_;
+ NarrowStrings location_regex_;
+ bool location_regex_specified_;
+ bool location_regex_trace_;
+ bool file_per_type_;
+ NarrowStrings type_file_regex_;
+ bool type_file_regex_specified_;
+ bool type_file_regex_trace_;
+ NarrowStrings schema_file_regex_;
+ bool schema_file_regex_specified_;
+ bool schema_file_regex_trace_;
+ bool fat_type_file_;
+ NarrowString file_list_;
+ bool file_list_specified_;
+ NarrowString file_list_prologue_;
+ bool file_list_prologue_specified_;
+ NarrowString file_list_epilogue_;
+ bool file_list_epilogue_specified_;
+ NarrowString file_list_delim_;
+ bool file_list_delim_specified_;
+ bool disable_multi_import_;
+ bool disable_full_check_;
+};
+
+#include <options.ixx>
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
+#endif // OPTIONS_HXX
diff --git a/xsd/xsd/options.ixx b/xsd/xsd/options.ixx
new file mode 100644
index 0000000..f30c651
--- /dev/null
+++ b/xsd/xsd/options.ixx
@@ -0,0 +1,462 @@
+// This code was generated by CLI, a command line interface
+// compiler for C++.
+//
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+namespace cli
+{
+ // unknown_mode
+ //
+ inline unknown_mode::
+ unknown_mode (value v)
+ : v_ (v)
+ {
+ }
+
+ // exception
+ //
+ inline ::std::wostream&
+ operator<< (::std::wostream& os, const exception& e)
+ {
+ e.print (os);
+ return os;
+ }
+
+ // unknown_option
+ //
+ inline unknown_option::
+ unknown_option (const std::string& option)
+ : option_ (option)
+ {
+ }
+
+ inline const std::string& unknown_option::
+ option () const
+ {
+ return option_;
+ }
+
+ // unknown_argument
+ //
+ inline unknown_argument::
+ unknown_argument (const std::string& argument)
+ : argument_ (argument)
+ {
+ }
+
+ inline const std::string& unknown_argument::
+ argument () const
+ {
+ return argument_;
+ }
+
+ // missing_value
+ //
+ inline missing_value::
+ missing_value (const std::string& option)
+ : option_ (option)
+ {
+ }
+
+ inline const std::string& missing_value::
+ option () const
+ {
+ return option_;
+ }
+
+ // invalid_value
+ //
+ inline invalid_value::
+ invalid_value (const std::string& option,
+ const std::string& value)
+ : option_ (option), value_ (value)
+ {
+ }
+
+ inline const std::string& invalid_value::
+ option () const
+ {
+ return option_;
+ }
+
+ inline const std::string& invalid_value::
+ value () const
+ {
+ return value_;
+ }
+
+ // file_io_failure
+ //
+ inline file_io_failure::
+ file_io_failure (const std::string& file)
+ : file_ (file)
+ {
+ }
+
+ inline const std::string& file_io_failure::
+ file () const
+ {
+ return file_;
+ }
+
+ // unmatched_quote
+ //
+ inline unmatched_quote::
+ unmatched_quote (const std::string& argument)
+ : argument_ (argument)
+ {
+ }
+
+ inline const std::string& unmatched_quote::
+ argument () const
+ {
+ return argument_;
+ }
+
+ // argv_scanner
+ //
+ inline argv_scanner::
+ argv_scanner (int& argc, char** argv, bool erase)
+ : i_ (1), argc_ (argc), argv_ (argv), erase_ (erase)
+ {
+ }
+
+ inline argv_scanner::
+ argv_scanner (int start, int& argc, char** argv, bool erase)
+ : i_ (start), argc_ (argc), argv_ (argv), erase_ (erase)
+ {
+ }
+
+ inline int argv_scanner::
+ end () const
+ {
+ return i_;
+ }
+
+ // argv_file_scanner
+ //
+ inline argv_file_scanner::
+ argv_file_scanner (int& argc,
+ char** argv,
+ const std::string& option,
+ bool erase)
+ : argv_scanner (argc, argv, erase),
+ option_ (option),
+ options_ (&option_info_),
+ options_count_ (1),
+ skip_ (false)
+ {
+ option_info_.option = option_.c_str ();
+ option_info_.search_func = 0;
+ }
+
+ inline argv_file_scanner::
+ argv_file_scanner (int start,
+ int& argc,
+ char** argv,
+ const std::string& option,
+ bool erase)
+ : argv_scanner (start, argc, argv, erase),
+ option_ (option),
+ options_ (&option_info_),
+ options_count_ (1),
+ skip_ (false)
+ {
+ option_info_.option = option_.c_str ();
+ option_info_.search_func = 0;
+ }
+
+ inline argv_file_scanner::
+ argv_file_scanner (int& argc,
+ char** argv,
+ const option_info* options,
+ std::size_t options_count,
+ bool erase)
+ : argv_scanner (argc, argv, erase),
+ options_ (options),
+ options_count_ (options_count),
+ skip_ (false)
+ {
+ }
+
+ inline argv_file_scanner::
+ argv_file_scanner (int start,
+ int& argc,
+ char** argv,
+ const option_info* options,
+ std::size_t options_count,
+ bool erase)
+ : argv_scanner (start, argc, argv, erase),
+ options_ (options),
+ options_count_ (options_count),
+ skip_ (false)
+ {
+ }
+}
+
+// help_options
+//
+
+inline const bool& help_options::
+help () const
+{
+ return this->help_;
+}
+
+inline const bool& help_options::
+version () const
+{
+ return this->version_;
+}
+
+inline const bool& help_options::
+proprietary_license () const
+{
+ return this->proprietary_license_;
+}
+
+// options
+//
+
+inline const NarrowStrings& options::
+disable_warning () const
+{
+ return this->disable_warning_;
+}
+
+inline bool options::
+disable_warning_specified () const
+{
+ return this->disable_warning_specified_;
+}
+
+inline const std::string& options::
+options_file () const
+{
+ return this->options_file_;
+}
+
+inline bool options::
+options_file_specified () const
+{
+ return this->options_file_specified_;
+}
+
+inline const bool& options::
+show_sloc () const
+{
+ return this->show_sloc_;
+}
+
+inline const std::size_t& options::
+sloc_limit () const
+{
+ return this->sloc_limit_;
+}
+
+inline bool options::
+sloc_limit_specified () const
+{
+ return this->sloc_limit_specified_;
+}
+
+inline const bool& options::
+proprietary_license () const
+{
+ return this->proprietary_license_;
+}
+
+inline const NarrowString& options::
+custom_literals () const
+{
+ return this->custom_literals_;
+}
+
+inline bool options::
+custom_literals_specified () const
+{
+ return this->custom_literals_specified_;
+}
+
+inline const bool& options::
+preserve_anonymous () const
+{
+ return this->preserve_anonymous_;
+}
+
+inline const bool& options::
+show_anonymous () const
+{
+ return this->show_anonymous_;
+}
+
+inline const NarrowStrings& options::
+anonymous_regex () const
+{
+ return this->anonymous_regex_;
+}
+
+inline bool options::
+anonymous_regex_specified () const
+{
+ return this->anonymous_regex_specified_;
+}
+
+inline const bool& options::
+anonymous_regex_trace () const
+{
+ return this->anonymous_regex_trace_;
+}
+
+inline const bool& options::
+morph_anonymous () const
+{
+ return this->morph_anonymous_;
+}
+
+inline const NarrowStrings& options::
+location_map () const
+{
+ return this->location_map_;
+}
+
+inline bool options::
+location_map_specified () const
+{
+ return this->location_map_specified_;
+}
+
+inline const NarrowStrings& options::
+location_regex () const
+{
+ return this->location_regex_;
+}
+
+inline bool options::
+location_regex_specified () const
+{
+ return this->location_regex_specified_;
+}
+
+inline const bool& options::
+location_regex_trace () const
+{
+ return this->location_regex_trace_;
+}
+
+inline const bool& options::
+file_per_type () const
+{
+ return this->file_per_type_;
+}
+
+inline const NarrowStrings& options::
+type_file_regex () const
+{
+ return this->type_file_regex_;
+}
+
+inline bool options::
+type_file_regex_specified () const
+{
+ return this->type_file_regex_specified_;
+}
+
+inline const bool& options::
+type_file_regex_trace () const
+{
+ return this->type_file_regex_trace_;
+}
+
+inline const NarrowStrings& options::
+schema_file_regex () const
+{
+ return this->schema_file_regex_;
+}
+
+inline bool options::
+schema_file_regex_specified () const
+{
+ return this->schema_file_regex_specified_;
+}
+
+inline const bool& options::
+schema_file_regex_trace () const
+{
+ return this->schema_file_regex_trace_;
+}
+
+inline const bool& options::
+fat_type_file () const
+{
+ return this->fat_type_file_;
+}
+
+inline const NarrowString& options::
+file_list () const
+{
+ return this->file_list_;
+}
+
+inline bool options::
+file_list_specified () const
+{
+ return this->file_list_specified_;
+}
+
+inline const NarrowString& options::
+file_list_prologue () const
+{
+ return this->file_list_prologue_;
+}
+
+inline bool options::
+file_list_prologue_specified () const
+{
+ return this->file_list_prologue_specified_;
+}
+
+inline const NarrowString& options::
+file_list_epilogue () const
+{
+ return this->file_list_epilogue_;
+}
+
+inline bool options::
+file_list_epilogue_specified () const
+{
+ return this->file_list_epilogue_specified_;
+}
+
+inline const NarrowString& options::
+file_list_delim () const
+{
+ return this->file_list_delim_;
+}
+
+inline bool options::
+file_list_delim_specified () const
+{
+ return this->file_list_delim_specified_;
+}
+
+inline const bool& options::
+disable_multi_import () const
+{
+ return this->disable_multi_import_;
+}
+
+inline const bool& options::
+disable_full_check () const
+{
+ return this->disable_full_check_;
+}
+
+// Begin epilogue.
+//
+//
+// End epilogue.
diff --git a/xsd/xsd/processing/cardinality/processor.cxx b/xsd/xsd/processing/cardinality/processor.cxx
index 473c412..f43395a 100644
--- a/xsd/xsd/processing/cardinality/processor.cxx
+++ b/xsd/xsd/processing/cardinality/processor.cxx
@@ -1,26 +1,23 @@
// file : processing/cardinality/processor.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#include <processing/cardinality/processor.hxx>
-
-#include <elements.hxx>
+#include <map>
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-#include <cult/containers/map.hxx>
+#include <elements.hxx>
+
+#include <processing/cardinality/processor.hxx>
+
+using namespace std;
namespace Processing
{
- using namespace Cult;
-
namespace SemanticGraph = XSDFrontend::SemanticGraph;
namespace Traversal = XSDFrontend::Traversal;
- typedef WideString String;
-
namespace Cardinality
{
namespace
@@ -39,8 +36,7 @@ namespace Processing
{
}
- ElementInfo (SemanticGraph::Element& e,
- UnsignedLong min_, UnsignedLong max_)
+ ElementInfo (SemanticGraph::Element& e, size_t min_, size_t max_)
: min (min_), max (max_), e_ (&e)
{
}
@@ -53,13 +49,13 @@ namespace Processing
}
public:
- UnsignedLong min, max;
+ size_t min, max;
private:
SemanticGraph::Element* e_;
};
- typedef Cult::Containers::Map<String, ElementInfo> ElementInfoMap;
+ typedef map<String, ElementInfo> ElementInfoMap;
//
//
@@ -75,8 +71,7 @@ namespace Processing
{
}
- AnyInfo (SemanticGraph::Any& a,
- UnsignedLong min_, UnsignedLong max_)
+ AnyInfo (SemanticGraph::Any& a, size_t min_, size_t max_)
: min (min_), max (max_), a_ (&a)
{
}
@@ -89,13 +84,13 @@ namespace Processing
}
public:
- UnsignedLong min, max;
+ size_t min, max;
private:
SemanticGraph::Any* a_;
};
- typedef Cult::Containers::Map<String, AnyInfo> AnyInfoMap;
+ typedef map<String, AnyInfo> AnyInfoMap;
//
//
@@ -105,13 +100,13 @@ namespace Processing
Traversal::Element,
Traversal::Any
{
- virtual Void
+ virtual void
traverse (SemanticGraph::All& a)
{
traverse_sequence (a);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Choice& c)
{
using SemanticGraph::Compositor;
@@ -135,20 +130,26 @@ namespace Processing
// those that are we need to choose minimum between
// the two for min and maximum for max.
//
- for (ElementInfoMap::Iterator i (el_map.begin ());
+ for (ElementInfoMap::iterator i (el_map.begin ());
i != el_map.end (); ++i)
{
String const& name (i->first);
ElementInfo& ei (i->second);
- ElementInfoMap::Iterator j (t.el_map.find (name));
+ ElementInfoMap::iterator j (t.el_map.find (name));
if (j == t.el_map.end ())
ei.min = 0;
else
{
ei.min = j->second.min < ei.min ? j->second.min : ei.min;
- ei.max = j->second.max > ei.max ? j->second.max : ei.max;
+
+ // Unbounded is encoded as 0.
+ //
+ if (j->second.max == 0 || ei.max == 0)
+ ei.max = 0;
+ else
+ ei.max = j->second.max > ei.max ? j->second.max : ei.max;
}
}
@@ -156,13 +157,13 @@ namespace Processing
// not in the map, we need to add to the map and set their
// min to 0.
//
- for (ElementInfoMap::Iterator i (t.el_map.begin ());
+ for (ElementInfoMap::iterator i (t.el_map.begin ());
i != t.el_map.end (); ++i)
{
String const& name (i->first);
ElementInfo& ei (i->second);
- ElementInfoMap::Iterator j (el_map.find (name));
+ ElementInfoMap::iterator j (el_map.find (name));
if (j == el_map.end ())
el_map[name] = ElementInfo (ei.element (), 0, ei.max);
@@ -173,7 +174,7 @@ namespace Processing
// we need to copy them from each arm of choice and set min to
// 0.
//
- for (AnyInfoMap::Iterator i (t.any_map.begin ());
+ for (AnyInfoMap::iterator i (t.any_map.begin ());
i != t.any_map.end (); ++i)
{
String const& name (i->first);
@@ -187,19 +188,19 @@ namespace Processing
// Choice's min and max.
//
- UnsignedLong cmin (c.min ()), cmax (c.max ());
+ size_t cmin (c.min ()), cmax (c.max ());
// Iterate over elements and wildcards in the maps and multiply
// their cardinality by cmin and cmax.
//
- for (ElementInfoMap::Iterator i (el_map.begin ());
+ for (ElementInfoMap::iterator i (el_map.begin ());
i != el_map.end (); ++i)
{
i->second.min *= cmin;
i->second.max *= cmax;
}
- for (AnyInfoMap::Iterator i (any_map.begin ());
+ for (AnyInfoMap::iterator i (any_map.begin ());
i != any_map.end (); ++i)
{
i->second.min *= cmin; // Not really necessary since min == 0.
@@ -207,20 +208,20 @@ namespace Processing
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Sequence& s)
{
traverse_sequence (s);
}
- Void
+ void
traverse_sequence (SemanticGraph::Compositor& c)
{
using SemanticGraph::Compositor;
// Sequence's min and max.
//
- UnsignedLong smin (c.min ()), smax (c.max ());
+ size_t smin (c.min ()), smax (c.max ());
// Go over all particles we contain and add them to the map.
//
@@ -232,14 +233,14 @@ namespace Processing
// Handle elements.
//
- for (ElementInfoMap::Iterator i (t.el_map.begin ());
+ for (ElementInfoMap::iterator i (t.el_map.begin ());
i != t.el_map.end (); ++i)
{
String const& name (i->first);
ElementInfo& ei (i->second);
- UnsignedLong min (ei.min * smin);
- UnsignedLong max (ei.max * smax);
- ElementInfoMap::Iterator j (el_map.find (name));
+ size_t min (ei.min * smin);
+ size_t max (ei.max * smax);
+ ElementInfoMap::iterator j (el_map.find (name));
if (j != el_map.end ())
{
@@ -255,13 +256,13 @@ namespace Processing
// Handle wildcards.
//
- for (AnyInfoMap::Iterator i (t.any_map.begin ());
+ for (AnyInfoMap::iterator i (t.any_map.begin ());
i != t.any_map.end (); ++i)
{
String const& name (i->first);
AnyInfo& ai (i->second);
- UnsignedLong min (ai.min * smin);
- UnsignedLong max (ai.max * smax);
+ size_t min (ai.min * smin);
+ size_t max (ai.max * smax);
assert (any_map.find (name) == any_map.end ());
@@ -270,7 +271,7 @@ namespace Processing
}
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
SemanticGraph::ContainsParticle& cp (e.contained_particle ());
@@ -282,7 +283,7 @@ namespace Processing
el_map[name] = ElementInfo (e, cp.min (), cp.max ());
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Any& a)
{
SemanticGraph::ContainsParticle& cp (a.contained_particle ());
@@ -300,7 +301,7 @@ namespace Processing
//
struct Complex: Traversal::Complex
{
- virtual Void
+ virtual void
traverse (Type& c)
{
if (c.contains_compositor_p ())
@@ -308,21 +309,21 @@ namespace Processing
Particle t;
t.dispatch (c.contains_compositor ().compositor ());
- for (ElementInfoMap::Iterator i (t.el_map.begin ());
+ for (ElementInfoMap::iterator i (t.el_map.begin ());
i != t.el_map.end (); ++i)
{
ElementInfo& ei (i->second);
- FrontendElements::Context& ctx (ei.element ().context ());
+ SemanticGraph::Context& ctx (ei.element ().context ());
ctx.set ("min", ei.min);
ctx.set ("max", ei.max);
}
- for (AnyInfoMap::Iterator i (t.any_map.begin ());
+ for (AnyInfoMap::iterator i (t.any_map.begin ());
i != t.any_map.end (); ++i)
{
AnyInfo& ai (i->second);
- FrontendElements::Context& ctx (ai.any ().context ());
+ SemanticGraph::Context& ctx (ai.any ().context ());
ctx.set ("min", ai.min);
ctx.set ("max", ai.max);
@@ -340,13 +341,13 @@ namespace Processing
//
struct Attribute: Traversal::Attribute
{
- virtual Void
+ virtual void
traverse (Type& a)
{
- FrontendElements::Context& ctx (a.context ());
+ SemanticGraph::Context& ctx (a.context ());
- ctx.set ("min", a.optional_p () ? 0UL : 1UL);
- ctx.set ("max", 1UL);
+ ctx.set ("min", size_t (a.optional_p () ? 0 : 1));
+ ctx.set ("max", size_t (1));
}
};
@@ -355,7 +356,7 @@ namespace Processing
//
struct Uses: Traversal::Uses
{
- virtual Void
+ virtual void
traverse (Type& u)
{
SemanticGraph::Schema& s (u.schema ());
@@ -369,7 +370,7 @@ namespace Processing
};
}
- Void Processor::
+ void Processor::
process (SemanticGraph::Schema& tu, SemanticGraph::Path const&)
{
Traversal::Schema schema;
diff --git a/xsd/xsd/processing/cardinality/processor.hxx b/xsd/xsd/processing/cardinality/processor.hxx
index 31c6ef8..2b4ebe0 100644
--- a/xsd/xsd/processing/cardinality/processor.hxx
+++ b/xsd/xsd/processing/cardinality/processor.hxx
@@ -1,28 +1,25 @@
// file : processing/cardinality/processor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef PROCESSING_CARDINALITY_PROCESSOR_HXX
#define PROCESSING_CARDINALITY_PROCESSOR_HXX
-#include <cult/types.hxx>
-
#include <xsd-frontend/semantic-graph/elements.hxx> // Path
#include <xsd-frontend/semantic-graph/schema.hxx>
+#include <types.hxx>
+
namespace Processing
{
namespace Cardinality
{
- using namespace Cult::Types;
-
class Processor
{
public:
struct Failed {};
- Void
+ void
process (XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file);
};
diff --git a/xsd/xsd/processing/inheritance/processor.cxx b/xsd/xsd/processing/inheritance/processor.cxx
index d92ea6c..6680a39 100644
--- a/xsd/xsd/processing/inheritance/processor.cxx
+++ b/xsd/xsd/processing/inheritance/processor.cxx
@@ -1,8 +1,10 @@
// file : processing/inheritance/processor.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+#include <set>
+#include <iostream>
+
#include <processing/inheritance/processor.hxx>
#include <elements.hxx>
@@ -10,21 +12,13 @@
#include <xsd-frontend/semantic-graph.hxx>
#include <xsd-frontend/traversal.hxx>
-#include <cult/containers/set.hxx>
-
-#include <iostream>
-using std::wcerr;
-using std::endl;
+using namespace std;
namespace Processing
{
- using namespace Cult;
-
namespace SemanticGraph = XSDFrontend::SemanticGraph;
namespace Traversal = XSDFrontend::Traversal;
- typedef WideString String;
-
namespace Inheritance
{
namespace
@@ -43,15 +37,14 @@ namespace Processing
String member_xpath;
};
- inline Boolean
+ inline bool
operator< (Dep const& a, Dep const& b)
{
return &a.type < &b.type;
}
- typedef Containers::Set<Dep> DepSet;
- typedef Containers::Set<SemanticGraph::Type*> TypeSet;
-
+ typedef set<Dep> DepSet;
+ typedef set<SemanticGraph::Type*> TypeSet;
String
xpath (SemanticGraph::Nameable& n)
@@ -88,7 +81,7 @@ namespace Processing
*this >> names_ >> *this;
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
using SemanticGraph::Complex;
@@ -103,14 +96,14 @@ namespace Processing
names (c);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Member& m)
{
SemanticGraph::Type& t (m.type ());
if (!t.named_p () && types_seen_.find (&t) == types_seen_.end ())
{
- FrontendElements::Context& ctx (t.context ());
+ SemanticGraph::Context& ctx (t.context ());
last_xpath_ = xpath (m);
@@ -158,14 +151,14 @@ namespace Processing
}
template <typename E>
- Void
+ void
add_edge_left (E& e)
{
node_.add_edge_left (e, arg_);
}
template <typename E>
- Void
+ void
add_edge_right (E& e)
{
node_.add_edge_right (e, arg_);
@@ -185,26 +178,26 @@ namespace Processing
{
Global (SemanticGraph::Schema& root,
SemanticGraph::Schema& schema,
- Boolean& failed)
+ bool& failed)
: root_ (root), schema_ (schema), failed_ (failed)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Type& t)
{
if (t.named_p ())
types_seen_.insert (&t);
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Complex& c)
{
check_dep (c, c);
types_seen_.insert (&c);
};
- virtual Void
+ virtual void
traverse (SemanticGraph::Element& e)
{
SemanticGraph::Type& t (e.type ());
@@ -218,7 +211,7 @@ namespace Processing
};
private:
- Void
+ void
check_dep (SemanticGraph::Nameable& global,
SemanticGraph::Type& type)
{
@@ -236,12 +229,19 @@ namespace Processing
complex.dispatch (type);
}
- for (DepSet::ConstIterator i (prereqs.begin ());
+ for (DepSet::const_iterator i (prereqs.begin ());
i != prereqs.end (); ++i)
{
Dep const& dep (*i);
Type& t (dep.type);
+ // Ignore IDREF templates.
+ //
+ if (!t.named_p () &&
+ (t.is_a<SemanticGraph::Fundamental::IdRef> () ||
+ t.is_a<SemanticGraph::Fundamental::IdRefs> ()))
+ continue;
+
// We won't be able to generate compilable code in case of a
// dependency on ourselves (e.g., a member element with
// anonymous type that inherits from us).
@@ -311,7 +311,6 @@ namespace Processing
continue;
}
-
//wcerr << "type '" << t.name () << "' needs to be moved " <<
// "before " << (global.is_a<Type> () ? "type" : "element") <<
// " '" << global.name () << "'" << endl;
@@ -328,6 +327,11 @@ namespace Processing
// Insert a new Names edge before global.
//
{
+ // t.scope () and global.scope () can be different in
+ // case of the chameleon inclusion.
+ //
+ Scope& scope (global.scope ());
+
// Convert to the insert-after call.
//
Scope::NamesIterator i (scope.find (global.named ()));
@@ -353,7 +357,7 @@ namespace Processing
private:
// Return true if root sources s.
//
- Boolean
+ bool
sources_p (SemanticGraph::Schema& root, SemanticGraph::Schema& s)
{
using SemanticGraph::Schema;
@@ -376,40 +380,55 @@ namespace Processing
SemanticGraph::Schema& root_;
SemanticGraph::Schema& schema_;
TypeSet types_seen_;
- Boolean& failed_;
+ bool& failed_;
};
+ // Sources traverser that goes into each schema only once.
+ //
+ struct Sources: Traversal::Sources
+ {
+ virtual void
+ traverse (SemanticGraph::Sources& s)
+ {
+ if (schemas_.insert (&s.schema ()).second)
+ Traversal::Sources::traverse (s);
+ }
+
+ private:
+ set<SemanticGraph::Schema*> schemas_;
+ };
+
// Go into included/imported schemas while making sure we don't
// process the same stuff more than once.
//
struct Uses: Traversal::Includes, Traversal::Imports
{
- Uses (SemanticGraph::Schema& root, Boolean& failed)
+ Uses (SemanticGraph::Schema& root, bool& failed)
: root_ (root), failed_ (failed)
{
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Includes& i)
{
traverse (i.schema ());
}
- virtual Void
+ virtual void
traverse (SemanticGraph::Imports& i)
{
traverse (i.schema ());
}
private:
- Void
+ void
traverse (SemanticGraph::Schema& s)
{
if (!s.context ().count ("processing-inheritance-seen"))
{
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
schema >> sources >> schema;
schema >> *this;
@@ -431,21 +450,21 @@ namespace Processing
private:
SemanticGraph::Schema& root_;
- Boolean& failed_;
+ bool& failed_;
};
}
- Void Processor::
+ void Processor::
process (SemanticGraph::Schema& tu, SemanticGraph::Path const&)
{
- Boolean failed (false);
+ bool failed (false);
// We need to process include/imported schemas since other
// parts of the process, for example, name processors can
// rely on the order of types in the schema.
//
Traversal::Schema schema;
- Traversal::Sources sources;
+ Sources sources;
Uses uses (tu, failed);
schema >> sources >> schema;
diff --git a/xsd/xsd/processing/inheritance/processor.hxx b/xsd/xsd/processing/inheritance/processor.hxx
index aba3b49..46a33c7 100644
--- a/xsd/xsd/processing/inheritance/processor.hxx
+++ b/xsd/xsd/processing/inheritance/processor.hxx
@@ -1,28 +1,25 @@
// file : processing/inheritance/processor.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef PROCESSING_INHERITANCE_PROCESSOR_HXX
#define PROCESSING_INHERITANCE_PROCESSOR_HXX
-#include <cult/types.hxx>
-
#include <xsd-frontend/semantic-graph/elements.hxx> // Path
#include <xsd-frontend/semantic-graph/schema.hxx>
+#include <types.hxx>
+
namespace Processing
{
namespace Inheritance
{
- using namespace Cult::Types;
-
class Processor
{
public:
struct Failed {};
- Void
+ void
process (XSDFrontend::SemanticGraph::Schema&,
XSDFrontend::SemanticGraph::Path const& file);
};
diff --git a/xsd/xsd/type-map/lexer.cxx b/xsd/xsd/type-map/lexer.cxx
index 96e42de..fe7ecfc 100644
--- a/xsd/xsd/type-map/lexer.cxx
+++ b/xsd/xsd/type-map/lexer.cxx
@@ -1,6 +1,5 @@
// file : xsd/type-map/lexer.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2007-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2007-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <iostream>
@@ -68,7 +67,7 @@ namespace TypeMap
if (is_.eof ())
return Token (Token::eos, L"<end-of-stream>", line_);
- Boolean quote (c == '"');
+ bool quote (c == '"');
if (!quote)
lexeme += c;
diff --git a/xsd/xsd/type-map/lexer.hxx b/xsd/xsd/type-map/lexer.hxx
index 923c85f..0d3af42 100644
--- a/xsd/xsd/type-map/lexer.hxx
+++ b/xsd/xsd/type-map/lexer.hxx
@@ -1,6 +1,5 @@
// file : xsd/type-map/lexer.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2007-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2007-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_TYPE_MAP_LEXER_HXX
@@ -9,13 +8,10 @@
#include <locale>
#include <iosfwd>
-#include <cult/types.hxx>
+#include <types.hxx>
namespace TypeMap
{
- using namespace Cult::Types;
- typedef WideString String;
-
class Lexer
{
public:
@@ -29,7 +25,7 @@ namespace TypeMap
eos
};
- Token (Type type, String const& lexeme, UnsignedLong line)
+ Token (Type type, String const& lexeme, size_t line)
: type_ (type), lexeme_ (lexeme), line_ (line)
{
}
@@ -46,7 +42,7 @@ namespace TypeMap
return lexeme_;
}
- UnsignedLong
+ size_t
line () const
{
return line_;
@@ -55,7 +51,7 @@ namespace TypeMap
private:
Type type_;
String lexeme_;
- UnsignedLong line_;
+ size_t line_;
};
Lexer (std::istream&, String const& path);
@@ -69,12 +65,11 @@ namespace TypeMap
std::locale locale_;
std::istream& is_;
String path_;
- UnsignedLong line_;
+ size_t line_;
String held_lexeme_;
- Boolean comment_;
+ bool comment_;
};
}
#endif // XSD_TYPE_MAP_LEXER_HXX
-
diff --git a/xsd/xsd/type-map/parser.cxx b/xsd/xsd/type-map/parser.cxx
index 9f5e2b5..e391cf7 100644
--- a/xsd/xsd/type-map/parser.cxx
+++ b/xsd/xsd/type-map/parser.cxx
@@ -1,11 +1,10 @@
// file : xsd/type-map/parser.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2007-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2007-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#include <iostream>
-#include <backend-elements/regex.hxx>
+#include <cutl/re.hxx>
#include <type-map/parser.hxx>
@@ -14,14 +13,14 @@ using std::endl;
namespace TypeMap
{
typedef Lexer::Token Token;
- typedef BackendElements::Regex::Format<WideChar> Format;
+ typedef cutl::re::wformat Format;
Parser::Parser (Lexer& lex, String const& path)
: lex_ (lex), path_ (path), e (std::wcerr)
{
}
- Boolean Parser::
+ bool Parser::
parse (Namespaces& ns)
{
try
@@ -83,7 +82,7 @@ namespace TypeMap
return true;
}
- Boolean Parser::
+ bool Parser::
namespace_ (Namespaces& ns)
{
// First get XML namespace.
@@ -99,7 +98,7 @@ namespace TypeMap
catch (Format const& ex)
{
e << path_ << ":" << t.line () << ": invalid namespace pattern: "
- << ex.description () << endl;
+ << ex.description ().c_str () << endl;
return false;
}
@@ -115,7 +114,7 @@ namespace TypeMap
//
t = lex_.next ();
- Boolean has_cxx_name (false);
+ bool has_cxx_name (false);
String cxx_name;
if (t.type () != Token::token)
@@ -191,7 +190,7 @@ namespace TypeMap
return true;
}
- Boolean Parser::
+ bool Parser::
include (Namespace& n)
{
Token t (lex_.next ());
@@ -222,7 +221,7 @@ namespace TypeMap
return true;
}
- Boolean Parser::
+ bool Parser::
type (Token t, Namespace& n)
{
Pattern xsd_name;
@@ -234,7 +233,7 @@ namespace TypeMap
catch (Format const& ex)
{
e << path_ << ":" << t.line () << ": invalid namespace pattern: "
- << ex.description () << endl;
+ << ex.description ().c_str () << endl;
return false;
}
diff --git a/xsd/xsd/type-map/parser.hxx b/xsd/xsd/type-map/parser.hxx
index 038d2ec..c91bb12 100644
--- a/xsd/xsd/type-map/parser.hxx
+++ b/xsd/xsd/type-map/parser.hxx
@@ -1,21 +1,17 @@
// file : xsd/type-map/parser.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2007-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2007-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_TYPE_MAP_PARSER_HXX
#define XSD_TYPE_MAP_PARSER_HXX
-#include <cult/types.hxx>
+#include <types.hxx>
#include <type-map/type-map.hxx>
#include <type-map/lexer.hxx>
namespace TypeMap
{
- using namespace Cult::Types;
- typedef WideString String;
-
class Parser
{
public:
@@ -23,17 +19,17 @@ namespace TypeMap
// Merge parsed namespaces.
//
- Boolean
+ bool
parse (Namespaces&);
private:
- Boolean
+ bool
namespace_ (Namespaces&);
- Boolean
+ bool
include (Namespace&);
- Boolean
+ bool
type (Lexer::Token, Namespace&);
private:
diff --git a/xsd/xsd/type-map/type-map.hxx b/xsd/xsd/type-map/type-map.hxx
index 34ceefa..cdb8a0c 100644
--- a/xsd/xsd/type-map/type-map.hxx
+++ b/xsd/xsd/type-map/type-map.hxx
@@ -1,25 +1,32 @@
// file : xsd/type-map/type-map.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2007-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2007-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_TYPE_MAP_TYPE_MAP_HXX
#define XSD_TYPE_MAP_TYPE_MAP_HXX
-#include <cult/types.hxx>
-#include <cult/containers/vector.hxx>
+#include <vector>
-#include <backend-elements/regex.hxx>
+#include <cutl/re.hxx>
+
+#include <types.hxx>
namespace TypeMap
{
- using namespace Cult::Types;
- typedef WideString String;
- typedef BackendElements::Regex::Pattern<WideChar> Pattern;
+ typedef cutl::re::wregex Pattern;
class Type
{
public:
+ Type (String const& xsd_name,
+ String const& cxx_ret_name,
+ String const& cxx_arg_name)
+ : xsd_name_ (xsd_name),
+ cxx_ret_name_ (cxx_ret_name),
+ cxx_arg_name_ (cxx_arg_name)
+ {
+ }
+
Type (Pattern const& xsd_name,
String const& cxx_ret_name,
String const& cxx_arg_name)
@@ -56,6 +63,11 @@ namespace TypeMap
class Namespace
{
public:
+ Namespace (String const& xsd_name)
+ : xsd_name_ (xsd_name), has_cxx_name_ (false)
+ {
+ }
+
Namespace (Pattern const& xsd_name)
: xsd_name_ (xsd_name), has_cxx_name_ (false)
{
@@ -67,7 +79,7 @@ namespace TypeMap
}
Namespace (Pattern const& xsd_name,
- Boolean has_cxx_name,
+ bool has_cxx_name,
String const& cxx_name)
: xsd_name_ (xsd_name),
has_cxx_name_ (has_cxx_name),
@@ -77,8 +89,8 @@ namespace TypeMap
//
//
- typedef Cult::Containers::Vector<String> Includes;
- typedef Includes::ConstIterator IncludesIterator;
+ typedef std::vector<String> Includes;
+ typedef Includes::const_iterator IncludesIterator;
IncludesIterator
includes_begin () const
@@ -92,7 +104,7 @@ namespace TypeMap
return includes_.end ();
}
- Void
+ void
includes_push_back (String const& i)
{
includes_.push_back (i);
@@ -100,8 +112,8 @@ namespace TypeMap
//
//
- typedef Cult::Containers::Vector<Type> Types;
- typedef Types::ConstIterator TypesIterator;
+ typedef std::vector<Type> Types;
+ typedef Types::const_iterator TypesIterator;
TypesIterator
types_begin () const
@@ -115,7 +127,15 @@ namespace TypeMap
return types_.end ();
}
- Void
+ void
+ types_push_back (String const& xsd_type,
+ String const& cxx_ret_type,
+ String const& cxx_arg_type = L"")
+ {
+ types_.push_back (Type (xsd_type, cxx_ret_type, cxx_arg_type));
+ }
+
+ void
types_push_back (Pattern const& xsd_type,
String const& cxx_ret_type,
String const& cxx_arg_type = L"")
@@ -133,7 +153,7 @@ namespace TypeMap
//
//
- Boolean
+ bool
has_cxx_name () const
{
return has_cxx_name_;
@@ -149,12 +169,11 @@ namespace TypeMap
Includes includes_;
Types types_;
Pattern xsd_name_;
- Boolean has_cxx_name_;
+ bool has_cxx_name_;
String cxx_name_;
};
- typedef Cult::Containers::Vector<Namespace> Namespaces;
+ typedef std::vector<Namespace> Namespaces;
}
#endif // XSD_TYPE_MAP_TYPE_MAP_HXX
-
diff --git a/xsd/xsd/types.hxx b/xsd/xsd/types.hxx
new file mode 100644
index 0000000..6850b42
--- /dev/null
+++ b/xsd/xsd/types.hxx
@@ -0,0 +1,20 @@
+// file : xsd/types.hxx
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef TYPES_HXX
+#define TYPES_HXX
+
+#include <vector>
+#include <cstddef> // std::size_t
+
+#include <xsd-frontend/types.hxx>
+
+using std::size_t;
+
+using XSDFrontend::String;
+using XSDFrontend::NarrowString;
+
+typedef std::vector<NarrowString> NarrowStrings;
+
+#endif // TYPES_HXX
diff --git a/xsd/xsd/usage.hxx b/xsd/xsd/usage.hxx
deleted file mode 100644
index 63ce413..0000000
--- a/xsd/xsd/usage.hxx
+++ /dev/null
@@ -1,226 +0,0 @@
-// file : xsd/usage.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-#ifndef USAGE_HXX
-#define USAGE_HXX
-
-#include <cult/types.hxx>
-
-#include <backend-elements/indentation/buffer.hxx>
-#include <backend-elements/indentation/clip.hxx>
-
-namespace CLI
-{
- using namespace Cult::Types;
-
- template <typename C>
- class OptionsUsage: public BackendElements::Indentation::Buffer<C>
- {
- typedef BackendElements::Indentation::Buffer<C> Buffer;
-
- public:
- typedef
- typename Buffer::Traits
- Traits;
-
- typedef
- typename Buffer::AsChar
- AsChar;
-
- typedef
- typename Buffer::AsInt
- AsInt;
-
- typedef
- typename Buffer::Write
- Write;
-
- public:
- OptionsUsage (Buffer& out)
- : out_ (out),
- option_length_ (0),
- construct_ (Construct::newline)
- {
- }
-
- public:
- virtual AsInt
- put (AsChar c)
- {
- AsInt result (Traits::to_int_type (c));
-
- try
- {
- switch (c)
- {
- case '\n':
- {
- switch (construct_)
- {
- case Construct::newline:
- {
- result = out_.put (c);
- break;
- }
- case Construct::option:
- {
- construct_ = Construct::newline;
- break;
- }
- case Construct::description:
- {
- result = out_.put (c);
- construct_ = Construct::newline;
- break;
- }
- default:
- {
- abort ();
- }
- }
-
- break;
- }
- case '-':
- {
- switch (construct_)
- {
- case Construct::newline:
- {
- construct_ = Construct::option;
-
- option_length_ = 0;
-
- output_indentation ();
- result = out_.put (c);
-
- ++option_length_;
-
- break;
- }
- case Construct::option:
- {
- ++option_length_;
- //fall through
- }
- case Construct::description:
- {
- result = out_.put (c);
- break;
- }
- default:
- {
- abort ();
- }
- }
-
- break;
- }
- default:
- {
- switch (construct_)
- {
- case Construct::newline:
- {
- construct_ = Construct::description;
-
- output_indentation ();
-
- result = out_.put (c);
- break;
- }
- case Construct::option:
- {
- ++option_length_;
- //fall through
- }
- default:
- {
- result = out_.put (c);
- break;
- }
- }
-
- break;
- }
- }
- }
- catch (Write const&)
- {
- result = Traits::eof ();
- }
-
- return result;
- }
-
- virtual Void
- unbuffer ()
- {
- }
-
- private:
- Void
- output_indentation ()
- {
- UnsignedLong spaces;
-
- switch (construct_)
- {
- case Construct::option:
- {
- spaces = 2;
- option_length_ += 2;
- break;
- }
- case Construct::description:
- {
- spaces = 29;
-
- if (option_length_)
- {
- if (option_length_ > spaces)
- spaces = 1;
- else
- spaces -= option_length_;
-
- option_length_ = 0;
- }
-
- break;
- }
- default:
- {
- abort ();
- }
- }
-
- while (spaces--)
- out_.put (' ');
- }
-
- private:
- Buffer& out_;
- UnsignedLong option_length_;
-
- struct Construct
- {
- enum Value
- {
- newline,
- option,
- description
- };
- };
-
- typename Construct::Value construct_;
- };
-
- //@@ rename Indentation to Indent in be?
- //
- namespace Indent = BackendElements::Indentation;
-}
-
-#endif // USAGE_HXX
-
diff --git a/xsd/xsd/xsd.cxx b/xsd/xsd/xsd.cxx
index 2e2f6ce..f333d76 100644
--- a/xsd/xsd/xsd.cxx
+++ b/xsd/xsd/xsd.cxx
@@ -1,20 +1,17 @@
// file : xsd/xsd.cxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-#include <cult/types.hxx>
-
-#include <cult/trace/log.hxx>
+#include <map>
+#include <vector>
+#include <memory> // std::auto_ptr
+#include <cstddef> // std::size_t
+#include <iostream>
+#include <fstream>
-#include <cult/containers/map.hxx>
-#include <cult/containers/vector.hxx>
+#include <xercesc/util/PlatformUtils.hpp>
-#include <cult/cli/exceptions.hxx>
-#include <cult/cli/file-arguments.hxx>
-#include <cult/cli/options.hxx>
-#include <cult/cli/options-spec.hxx>
-#include <cult/cli/options-parser.hxx>
+#include <cutl/re.hxx>
#include <xsd-frontend/parser.hxx>
#include <xsd-frontend/transformations/anonymous.hxx>
@@ -23,8 +20,8 @@
#include <xsd-frontend/transformations/schema-per-type.hxx>
#include <xsd-frontend/transformations/simplifier.hxx>
-#include <backend-elements/regex.hxx>
-#include <backend-elements/indentation/clip.hxx>
+#include <cxx/tree/options.hxx>
+#include <cxx/parser/options.hxx>
#include <cxx/tree/generator.hxx>
#include <cxx/parser/generator.hxx>
@@ -32,98 +29,16 @@
#include <processing/cardinality/processor.hxx>
#include <processing/inheritance/processor.hxx>
-#include <iostream>
-#include <boost/filesystem/fstream.hpp>
-
-#include <xercesc/util/PlatformUtils.hpp>
-
#include <xsd.hxx>
-#include <usage.hxx>
+#include <types.hxx>
+#include <options.hxx>
#include "../libxsd/xsd/cxx/version.hxx"
-using namespace Cult::Types;
-
-typedef Cult::Containers::Vector<NarrowString> NarrowStrings;
-
namespace SemanticGraph = XSDFrontend::SemanticGraph;
namespace Transformations = XSDFrontend::Transformations;
-using std::wcerr;
-using std::endl;
-
-namespace CLI
-{
- using namespace Cult::CLI;
-
- typedef Char const Key[];
-
- extern Key help = "help";
- extern Key version = "version";
- extern Key proprietary_license = "proprietary-license";
-
- typedef Cult::CLI::Options
- <
- help, Boolean,
- version, Boolean,
- proprietary_license, Boolean
- >
- HelpOptions;
-
- struct HelpOptionsSpec: Cult::CLI::OptionsSpec<HelpOptions> {};
-
-
- extern Key disable_warning = "disable-warning";
- extern Key sloc_limit = "sloc-limit";
- extern Key morph_anonymous = "morph-anonymous";
- extern Key preserve_anonymous = "preserve-anonymous";
- extern Key anonymous_regex = "anonymous-regex";
- extern Key anonymous_regex_trace = "anonymous-regex-trace";
- extern Key location_map = "location-map";
- extern Key location_regex = "location-regex";
- extern Key location_regex_trace = "location-regex-trace";
- extern Key custom_literals = "custom-literals";
- extern Key file_per_type = "file-per-type";
- extern Key type_file_regex = "type-file-regex";
- extern Key type_file_regex_trace = "type-file-regex-trace";
- extern Key schema_file_regex = "schema-file-regex";
- extern Key schema_file_regex_trace = "schema-file-regex-trace";
- extern Key file_list = "file-list";
- extern Key file_list_prologue = "file-list-prologue";
- extern Key file_list_epilogue = "file-list-epilogue";
- extern Key file_list_delim = "file-list-delim";
- extern Key disable_multi_import = "disable-multi-import"; // Undocumented.
- extern Key disable_full_check = "disable-full-check"; // Undocumented.
-
-
- typedef Cult::CLI::Options
- <
- disable_warning, Cult::Containers::Vector<NarrowString>,
- sloc_limit, UnsignedLong,
- morph_anonymous, Boolean,
- preserve_anonymous, Boolean,
- anonymous_regex, NarrowStrings,
- anonymous_regex_trace, Boolean,
- location_map, NarrowStrings,
- location_regex, NarrowStrings,
- location_regex_trace, Boolean,
- custom_literals, NarrowString,
- file_per_type, Boolean,
- type_file_regex, NarrowStrings,
- type_file_regex_trace, Boolean,
- schema_file_regex, NarrowStrings,
- schema_file_regex_trace, Boolean,
- file_list, NarrowString,
- file_list_prologue, NarrowString,
- file_list_epilogue, NarrowString,
- file_list_delim, NarrowString,
- disable_multi_import, Boolean,
- disable_full_check, Boolean
- >
- CommonOptions;
-
- struct CommonOptionsSpec: Cult::CLI::OptionsSpec<CommonOptions> {};
-}
+using namespace std;
//
//
@@ -133,24 +48,24 @@ struct LocationTranslator: XSDFrontend::LocationTranslator
LocationTranslator (NarrowStrings const& map,
NarrowStrings const& regex,
- Boolean trace);
+ bool trace);
virtual NarrowString
translate (NarrowString const&);
private:
- typedef Cult::Containers::Map<NarrowString, NarrowString> Map;
+ typedef map<NarrowString, NarrowString> Map;
- typedef BackendElements::Regex::Expression<Char> Regex;
- typedef BackendElements::Regex::Format<Char> RegexFormat;
- typedef Cult::Containers::Vector<Regex> RegexVector;
+ typedef cutl::re::regexsub Regex;
+ typedef cutl::re::format RegexFormat;
+ typedef vector<Regex> RegexVector;
- typedef Cult::Containers::Map<NarrowString, NarrowString> Cache;
+ typedef map<NarrowString, NarrowString> Cache;
Map map_;
RegexVector regex_;
Cache cache_;
- Boolean trace_;
+ bool trace_;
};
//
@@ -159,21 +74,21 @@ struct AnonymousNameTranslator: Transformations::AnonymousNameTranslator
{
struct Failed {};
- AnonymousNameTranslator (NarrowStrings const& regex, Boolean trace);
+ AnonymousNameTranslator (NarrowStrings const& regex, bool trace);
- virtual WideString
- translate (WideString const& file,
- WideString const& ns,
- WideString const& name,
- WideString const& xpath);
+ virtual String
+ translate (String const& file,
+ String const& ns,
+ String const& name,
+ String const& xpath);
private:
- typedef BackendElements::Regex::Expression<WideChar> Regex;
- typedef BackendElements::Regex::Format<WideChar> RegexFormat;
- typedef Cult::Containers::Vector<Regex> RegexVector;
+ typedef cutl::re::wregexsub Regex;
+ typedef cutl::re::wformat RegexFormat;
+ typedef vector<Regex> RegexVector;
RegexVector regex_;
- Boolean trace_;
+ bool trace_;
};
@@ -184,30 +99,30 @@ struct SchemaPerTypeTranslator: Transformations::SchemaPerTypeTranslator
struct Failed {};
SchemaPerTypeTranslator (NarrowStrings const& type_regex,
- Boolean type_trace,
+ bool type_trace,
NarrowStrings const& schema_regex,
- Boolean schema_trace);
+ bool schema_trace);
- virtual WideString
- translate_type (WideString const& ns, WideString const& name);
+ virtual String
+ translate_type (String const& ns, String const& name);
virtual NarrowString
translate_schema (NarrowString const& file);
private:
- typedef BackendElements::Regex::Expression<WideChar> TypeRegex;
- typedef BackendElements::Regex::Format<WideChar> TypeRegexFormat;
- typedef Cult::Containers::Vector<TypeRegex> TypeRegexVector;
+ typedef cutl::re::wregexsub TypeRegex;
+ typedef cutl::re::wformat TypeRegexFormat;
+ typedef vector<TypeRegex> TypeRegexVector;
TypeRegexVector type_regex_;
- Boolean type_trace_;
+ bool type_trace_;
- typedef BackendElements::Regex::Expression<Char> SchemaRegex;
- typedef BackendElements::Regex::Format<Char> SchemaRegexFormat;
- typedef Cult::Containers::Vector<SchemaRegex> SchemaRegexVector;
+ typedef cutl::re::regexsub SchemaRegex;
+ typedef cutl::re::format SchemaRegexFormat;
+ typedef vector<SchemaRegex> SchemaRegexVector;
SchemaRegexVector schema_regex_;
- Boolean schema_trace_;
+ bool schema_trace_;
};
//
@@ -227,57 +142,48 @@ struct XercesInitializer
// Expand the \n escape sequence.
//
-Void
+void
expand_nl (NarrowString& s);
-
-Int
-main (Int argc, Char* argv[])
+int
+main (int argc, char* argv[])
{
- std::wostream& e (wcerr);
-
- Cult::Trace::Log::instance ().level (0);
+ wostream& e (wcerr);
try
{
- CLI::FileArguments args (argc, argv, "--options-file");
-
- CLI::HelpOptions help_options (
- CLI::parse (CLI::HelpOptionsSpec (), args, CLI::UnknownMode::stop));
+ cli::argv_file_scanner args (argc, argv, "--options-file");
+ help_options help_ops (args, cli::unknown_mode::stop);
NarrowString cmd;
+ if (args.more ())
+ cmd = args.next ();
- if (args.size () > 1)
+ if (help_ops.version () || cmd == "version")
{
- cmd = args[1];
- args.erase (1);
- }
+ wostream& o (wcout);
- if (help_options.value<CLI::version> () || cmd == "version")
- {
- e << "CodeSynthesis XSD XML Schema to C++ compiler " <<
+ o << "CodeSynthesis XSD XML Schema to C++ compiler " <<
XSD_STR_VERSION << endl
- << "Copyright (C) 2005-2010 Code Synthesis Tools CC" << endl;
+ << "Copyright (c) 2005-2014 Code Synthesis Tools CC" << endl;
- if (!help_options.value<CLI::proprietary_license> () &&
- cmd == "version")
+ if (!help_ops.proprietary_license () && cmd == "version")
{
// Parse the options after the command to detect trailing
// --proprietary-license.
//
- help_options = CLI::parse (
- CLI::HelpOptionsSpec (), args, CLI::UnknownMode::stop);
+ help_ops = help_options (args, cli::unknown_mode::stop);
}
- if (help_options.value<CLI::proprietary_license> ())
+ if (help_ops.proprietary_license ())
{
- e << "The compiler was invoked in the Proprietary License mode. You "
+ o << "The compiler was invoked in the Proprietary License mode. You "
<< "should have\nreceived a proprietary license from Code Synthesis "
<< "Tools CC that entitles\nyou to use it in this mode." << endl;
}
else
{
- e << "This is free software; see the source for copying conditions. "
+ o << "This is free software; see the source for copying conditions. "
<< "There is NO\nwarranty; not even for MERCHANTABILITY or FITNESS "
<< "FOR A PARTICULAR PURPOSE." << endl;
}
@@ -285,15 +191,17 @@ main (Int argc, Char* argv[])
return 0;
}
- if (help_options.value<CLI::help> () || cmd == "help")
+ if (help_ops.help () || cmd == "help")
{
- if (cmd == "help" && args.size () > 1)
+ wostream& o (wcout);
+
+ if (cmd == "help" && args.more ())
{
- NarrowString arg (args[1]);
+ NarrowString arg (args.next ());
if (arg == "cxx-tree")
{
- e << "Usage: " << args[0] << " cxx-tree [options] file [file ...]"
+ o << "Usage: " << argv[0] << " cxx-tree [options] file [file ...]"
<< endl
<< "Options:" << endl;
@@ -301,7 +209,7 @@ main (Int argc, Char* argv[])
}
else if (arg == "cxx-parser")
{
- e << "Usage: " << args[0] << " cxx-parser [options] file [file ...]"
+ o << "Usage: " << argv[0] << " cxx-parser [options] file [file ...]"
<< endl
<< "Options:" << endl;
@@ -309,135 +217,33 @@ main (Int argc, Char* argv[])
}
else
{
- e << "error: unknown command '" << arg.c_str () << "'" << endl
- << "info: try '" << args[0] << " help' for the list of commands"
+ o << "error: unknown command '" << arg.c_str () << "'" << endl
+ << "info: try '" << argv[0] << " help' for the list of commands"
<< endl;
return 1;
}
- ::CLI::Indent::Clip< ::CLI::OptionsUsage, WideChar> clip (e);
-
- // Disable warning option.
- //
- e << "--disable-warning <warn>" << endl
- << " Disable printing warning with id <warn>. If 'all'\n"
- << " is specified for the warning id then all warnings\n"
- << " are disabled."
- << endl;
-
- // Anonymous morphing options.
- //
- e << "--preserve-anonymous" << endl
- << " Preserve anonymous types. By default anonymous\n"
- << " types are automatically named with names derived\n"
- << " from the enclosing elements/attributes."
- << endl;
-
- e << "--anonymous-regex <regex>" << endl
- << " Add the provided regular expression to the list of\n"
- << " regular expressions used to derive names for\n"
- << " anonymous types from the names of the enclosing\n"
- << " attributes/elements."
- << endl;
-
- e << "--anonymous-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --anonymous-regex option."
- << endl;
-
- // Location mapping options.
- //
- e << "--location-map <ol>=<nl>" << endl
- << " Map the original schema location <ol> that is\n"
- << " specified in the XML Schema include or import\n"
- << " elements to new schema location <nl>. Repeat\n"
- << " this option to map more than one schema location."
- << endl;
-
- e << "--location-regex <regex>" << endl
- << " Add <regex> to the list of regular expressions\n"
- << " used to map schema locations that are specified\n"
- << " in the XML Schema include or import elements."
- << endl;
-
- e << "--location-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --location-regex option."
- << endl;
-
- // File-per-type compilation mode options.
- //
- e << "--file-per-type" << endl
- << " Generate a separate set of C++ files for each\n"
- << " type defined in XML Schema."
- << endl;
-
- e << "--type-file-regex <regex>" << endl
- << " Add the provided regular expression to the list of\n"
- << " regular expressions used to translate type names\n"
- << " to file names when the --file-per-type option is\n"
- << " specified."
- << endl;
-
- e << "--type-file-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --type-file-regex option."
- << endl;
-
- e << "--schema-file-regex <regex>" << endl
- << " Add the provided regular expression to the list\n"
- << " of regular expressions used to translate schema\n"
- << " file names when the --file-per-type option is\n"
- << " specified."
- << endl;
-
- e << "--schema-file-regex-trace" << endl
- << " Trace the process of applying regular expressions\n"
- << " specified with the --schema-file-regex option."
- << endl;
-
- // File list options.
+ // Add frontend options at the end.
//
- e << "--file-list <file>" << endl
- << " Write a list of generated C++ files to <file>."
- << endl;
-
- e << "--file-list-prologue <p>" << endl
- << " Insert <p> at the beginning of the file list. All\n"
- << " occurrences of the \\n character sequence in <p>\n"
- << " are replaced with new lines."
- << endl;
-
- e << "--file-list-prologue <e>" << endl
- << " Insert <e> at the end of the file list. All\n"
- << " occurrences of the \\n character sequence in <e>\n"
- << " are replaced with new lines."
- << endl;
-
- e << "--file-list-delim <d>" << endl
- << " Delimit file names written to the file list with\n"
- << " <d> instead of new lines. All occurrences of the\n"
- << " \\n character sequence in <d> are replaced with\n"
- << " new lines."
- << endl;
+ options::print_usage (o);
}
else
{
- e << "Usage: " << args[0] << " <cmd> ..." << endl
+ o << "Usage: " << argv[0] << " <cmd> ..." << endl
<< "Commands:" << endl;
- e << " help Print usage information and exit. Use\n"
+ o << " help Print usage information and exit. Use\n"
<< " 'help <cmd>' for command-specific options."
<< endl;
- e << " version Print version and exit."
+ o << " version Print version and exit."
<< endl;
- e << " cxx-tree Generate the C++/Tree mapping."
+ o << " cxx-tree Generate the C++/Tree mapping."
<< endl;
- e << " cxx-parser Generate the C++/Parser mapping."
+ o << " cxx-parser Generate the C++/Parser mapping."
<< endl;
}
@@ -447,7 +253,7 @@ main (Int argc, Char* argv[])
if (cmd.empty ())
{
e << "error: no command specified" << endl
- << "info: try '" << args[0] << " help' for usage information" << endl;
+ << "info: try '" << argv[0] << " help' for usage information" << endl;
return 1;
}
@@ -455,7 +261,7 @@ main (Int argc, Char* argv[])
if (cmd != "cxx-tree" && cmd != "cxx-parser")
{
e << "error: unknown command '" << cmd.c_str () << "'" << endl
- << "info: try '" << args[0] << " help' for the list of commands"
+ << "info: try '" << argv[0] << " help' for the list of commands"
<< endl;
return 1;
@@ -464,81 +270,57 @@ main (Int argc, Char* argv[])
// We need to parse command line options before we can get to
// the arguments.
//
- CLI::CommonOptionsSpec common_spec;
- common_spec.option<CLI::file_list_delim> ().default_value ("\n");
+ auto_ptr<CXX::Tree::options> tree_ops (
+ cmd == "cxx-tree" ? new CXX::Tree::options (args) : 0);
+
+ auto_ptr<CXX::Parser::options> parser_ops (
+ cmd == "cxx-parser" ? new CXX::Parser::options (args) : 0);
- CLI::CommonOptions common_ops (
- CLI::parse (
- common_spec,
- args,
- CLI::UnknownMode::skip,
- CLI::UnknownMode::skip));
+ CXX::options& common_ops (
+ cmd == "cxx-tree"
+ ? static_cast<CXX::options&> (*tree_ops)
+ : static_cast<CXX::options&> (*parser_ops));
+ // Disabled warnings.
+ //
WarningSet disabled_w;
{
- typedef Cult::Containers::Vector<NarrowString> Warnings;
- Warnings const& w (common_ops.value<CLI::disable_warning> ());
+ NarrowStrings const& w (common_ops.disable_warning ());
- for (Warnings::ConstIterator i (w.begin ()); i != w.end (); ++i)
+ for (NarrowStrings::const_iterator i (w.begin ()); i != w.end (); ++i)
disabled_w.insert (*i);
}
- Boolean disabled_w_all (disabled_w.find ("all") != disabled_w.end ());
+ bool disabled_w_all (disabled_w.find ("all") != disabled_w.end ());
- if (common_ops.value<CLI::morph_anonymous> () &&
- !disabled_w_all && disabled_w.find ("D001") == disabled_w.end ())
+ if (common_ops.morph_anonymous () &&
+ !disabled_w_all &&
+ disabled_w.find ("D001") == disabled_w.end ())
{
e << "warning D001: the --morph-anonymous option is on by default and "
<< "no longer required"
<< endl;
}
- Evptr<CXX::Tree::CLI::Options> tree_ops;
- Evptr<CXX::Parser::CLI::Options> parser_ops;
-
- Boolean show_sloc (false);
-
- if (cmd == "cxx-tree")
- {
- tree_ops = new CXX::Tree::CLI::Options (
- CLI::parse (CXX::Tree::Generator::options_spec (), args));
-
- tree_ops->value<CXX::Tree::CLI::disable_multi_import> () =
- common_ops.value<CLI::disable_multi_import> ();
-
- show_sloc = tree_ops->value<CXX::Tree::CLI::show_sloc> ();
- }
- else if (cmd == "cxx-parser")
- {
- parser_ops = new CXX::Parser::CLI::Options (
- CLI::parse (CXX::Parser::Generator::options_spec (), args));
-
- show_sloc = parser_ops->value<CXX::Parser::CLI::show_sloc> ();
- }
+ // Collect all the files to compile in a vector.
+ //
+ NarrowStrings files;
+ while (args.more ())
+ files.push_back (args.next ());
- if (args.size () < 2)
+ if (files.empty ())
{
e << "error: no input file specified" << endl;
return 1;
}
- Boolean fpt (common_ops.value<CLI::file_per_type> ());
+ bool fpt (common_ops.file_per_type ());
if (cmd == "cxx-tree" || cmd == "cxx-parser")
{
- Boolean gen (false), use (false);
-
- if (cmd == "cxx-tree")
- {
- gen = tree_ops->value<CXX::Tree::CLI::generate_xml_schema> ();
- use = tree_ops->value<CXX::Tree::CLI::extern_xml_schema> ();
- }
- else if (cmd == "cxx-parser")
- {
- gen = parser_ops->value<CXX::Parser::CLI::generate_xml_schema> ();
- use = parser_ops->value<CXX::Parser::CLI::extern_xml_schema> ();
- }
+ bool gen (common_ops.generate_xml_schema ());
+ bool use (common_ops.extern_xml_schema ());
// Things get complicated when we are compiling several schemas at
// once (non-file-per-type mode) and use the --generate-xml-schema/
@@ -549,7 +331,7 @@ main (Int argc, Char* argv[])
//
if (!fpt)
{
- if (args.size () > 2 && gen && !use)
+ if (files.size () > 1 && gen && !use)
{
e << "error: --extern-xml-schema is required when compiling more "
<< "than one schema and --generate-xml-schema is specified"
@@ -558,7 +340,7 @@ main (Int argc, Char* argv[])
return 1;
}
- if (args.size () == 2 && gen && use)
+ if (files.size () == 1 && gen && use)
{
e << "error: --generate-xml-schema and --extern-xml-schema are "
<< "mutually exclusive when compiling a single schema" << endl;
@@ -596,22 +378,22 @@ main (Int argc, Char* argv[])
//
FileList file_list;
AutoUnlinks unlinks;
- UnsignedLong sloc (0);
+ size_t sloc (0);
LocationTranslator loc_translator (
- common_ops.value<CLI::location_map> (),
- common_ops.value<CLI::location_regex> (),
- common_ops.value<CLI::location_regex_trace> ());
+ common_ops.location_map (),
+ common_ops.location_regex (),
+ common_ops.location_regex_trace ());
AnonymousNameTranslator anon_translator (
- common_ops.value<CLI::anonymous_regex> (),
- common_ops.value<CLI::anonymous_regex_trace> ());
+ common_ops.anonymous_regex (),
+ common_ops.anonymous_regex_trace ());
// Load custom string literals, if any.
//
CXX::StringLiteralMap string_literal_map;
- if (NarrowString file = common_ops.value<CLI::custom_literals> ())
+ if (NarrowString file = common_ops.custom_literals ())
{
XercesInitializer xerces_init;
@@ -628,7 +410,7 @@ main (Int argc, Char* argv[])
// File-per-schema compilation mode.
//
- for (Size i (1); i < args.size (); ++i)
+ for (size_t i (0); i < files.size (); ++i)
{
// Parse schema.
//
@@ -636,15 +418,11 @@ main (Int argc, Char* argv[])
try
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- tu = SemanticGraph::Path (args[i], boost::filesystem::native);
-#else
- tu = SemanticGraph::Path (args[i]);
-#endif
+ tu = SemanticGraph::Path (files[i]);
}
catch (SemanticGraph::InvalidPath const&)
{
- e << "error: '" << args[i] << "' is not a valid "
+ e << "error: '" << files[i].c_str () << "' is not a valid "
<< "filesystem path" << endl;
return 1;
@@ -652,12 +430,12 @@ main (Int argc, Char* argv[])
XSDFrontend::Parser parser (
cmd != "cxx-tree",
- !common_ops.value<CLI::disable_multi_import> (),
- !common_ops.value<CLI::disable_full_check> (),
+ !common_ops.disable_multi_import (),
+ !common_ops.disable_full_check (),
loc_translator,
disabled_w);
- Evptr<SemanticGraph::Schema> schema;
+ auto_ptr<SemanticGraph::Schema> schema;
if (cmd == "cxx-tree" || cmd == "cxx-parser")
{
@@ -667,44 +445,14 @@ main (Int argc, Char* argv[])
// will need to rely on the presence of the --extern-xml-schema
// to tell us which (fake) schema file corresponds to XML Schema.
//
- Boolean gen_xml_schema (false);
+ bool gen_xml_schema (common_ops.generate_xml_schema ());
- if (cmd == "cxx-tree")
- {
- gen_xml_schema =
- tree_ops->value<CXX::Tree::CLI::generate_xml_schema> ();
-
- if (gen_xml_schema)
- {
- if (NarrowString name =
- tree_ops->value<CXX::Tree::CLI::extern_xml_schema> ())
- {
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- if (tu.native_file_string () != name)
-#else
- if (tu.string () != name)
-#endif
- gen_xml_schema = false;
- }
- }
- }
- else if (cmd == "cxx-parser")
+ if (gen_xml_schema)
{
- gen_xml_schema =
- parser_ops->value<CXX::Parser::CLI::generate_xml_schema> ();
-
- if (gen_xml_schema)
+ if (NarrowString name = common_ops.extern_xml_schema ())
{
- if (NarrowString name =
- parser_ops->value<CXX::Parser::CLI::extern_xml_schema> ())
- {
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- if (tu.native_file_string () != name)
-#else
- if (tu.string () != name)
-#endif
- gen_xml_schema = false;
- }
+ if (tu.string () != name)
+ gen_xml_schema = false;
}
}
@@ -718,7 +466,7 @@ main (Int argc, Char* argv[])
// Morph anonymous types.
//
- if (!common_ops.value<CLI::preserve_anonymous> ())
+ if (!common_ops.preserve_anonymous ())
{
try
{
@@ -835,21 +583,15 @@ main (Int argc, Char* argv[])
//
SemanticGraph::Paths paths;
- for (Size i (1); i < args.size (); ++i)
+ for (size_t i (0); i < files.size (); ++i)
{
try
{
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- paths.push_back (
- SemanticGraph::Path (args[i], boost::filesystem::native));
-#else
- paths.push_back (
- SemanticGraph::Path (args[i]));
-#endif
+ paths.push_back (SemanticGraph::Path (files[i]));
}
catch (SemanticGraph::InvalidPath const&)
{
- e << "error: '" << args[i] << "' is not a valid "
+ e << "error: '" << files[i].c_str () << "' is not a valid "
<< "filesystem path" << endl;
return 1;
@@ -858,7 +600,7 @@ main (Int argc, Char* argv[])
if (cmd == "cxx-parser" &&
paths.size () > 1 &&
- parser_ops->value<CXX::Parser::CLI::generate_test_driver> ())
+ parser_ops->generate_test_driver ())
{
e << "info: generating test driver for the first schema only: '" <<
paths[0] << "'" << endl;
@@ -866,21 +608,21 @@ main (Int argc, Char* argv[])
XSDFrontend::Parser parser (
cmd != "cxx-tree",
- !common_ops.value<CLI::disable_multi_import> (),
- !common_ops.value<CLI::disable_full_check> (),
+ !common_ops.disable_multi_import (),
+ !common_ops.disable_full_check (),
loc_translator,
disabled_w);
- Evptr<SemanticGraph::Schema> schema (parser.parse (paths));
+ auto_ptr<SemanticGraph::Schema> schema (parser.parse (paths));
// Morph anonymous types.
//
- if (!common_ops.value<CLI::preserve_anonymous> ())
+ if (!common_ops.preserve_anonymous ())
{
try
{
Transformations::Anonymous trans (anon_translator);
- trans.transform (*schema, "", false);
+ trans.transform (*schema, SemanticGraph::Path (), false);
}
catch (Transformations::Anonymous::Failed const&)
{
@@ -893,7 +635,7 @@ main (Int argc, Char* argv[])
if (cmd == "cxx-tree")
{
Transformations::EnumSynthesis trans;
- trans.transform (*schema, "");
+ trans.transform (*schema, SemanticGraph::Path ());
}
// Simplify the schema graph.
@@ -901,7 +643,7 @@ main (Int argc, Char* argv[])
if (cmd == "cxx-parser")
{
Transformations::Simplifier trans;
- trans.transform (*schema, "");
+ trans.transform (*schema, SemanticGraph::Path ());
}
// Normalize and annotate complex content restrictions.
@@ -911,7 +653,7 @@ main (Int argc, Char* argv[])
try
{
Transformations::Restriction trans;
- trans.transform (*schema, "");
+ trans.transform (*schema, SemanticGraph::Path ());
}
catch (Transformations::Restriction::Failed const&)
{
@@ -923,26 +665,29 @@ main (Int argc, Char* argv[])
//
{
Processing::Cardinality::Processor proc;
- proc.process (*schema, "");
+ proc.process (*schema, SemanticGraph::Path ());
}
// Rearrange the graph so that each type is in a seperate
// schema file.
//
- typedef Cult::Containers::Vector<SemanticGraph::Schema*> Schemas;
+ typedef vector<SemanticGraph::Schema*> Schemas;
SchemaPerTypeTranslator type_translator (
- common_ops.value<CLI::type_file_regex> (),
- common_ops.value<CLI::type_file_regex_trace> (),
- common_ops.value<CLI::schema_file_regex> (),
- common_ops.value<CLI::schema_file_regex_trace> ());
+ common_ops.type_file_regex (),
+ common_ops.type_file_regex_trace (),
+ common_ops.schema_file_regex (),
+ common_ops.schema_file_regex_trace ());
+
+ Transformations::SchemaPerType trans (
+ type_translator,
+ common_ops.fat_type_file ());
- Transformations::SchemaPerType trans (type_translator);
Schemas schemas (trans.transform (*schema));
// Generate code.
//
- for (Schemas::Iterator b (schemas.begin ()), i (b), e (schemas.end ());
+ for (Schemas::iterator b (schemas.begin ()), i (b), e (schemas.end ());
i != e; ++i)
{
SemanticGraph::Schema& s (**i);
@@ -1001,24 +746,16 @@ main (Int argc, Char* argv[])
// See if we need to produce the file list.
//
- if (NarrowString fl = common_ops.value<CLI::file_list> ())
+ if (NarrowString fl = common_ops.file_list ())
{
- typedef boost::filesystem::ofstream OutputFileStream;
+ typedef std::ofstream OutputFileStream;
try
{
OutputFileStream ofs;
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
SemanticGraph::Path path (fl);
-#else
- SemanticGraph::Path path (fl.c_str());
-#endif
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- ofs.open (fl, std::ios_base::out);
-#else
- ofs.open (fl.c_str(), std::ios_base::out);
-#endif
+ ofs.open (path.string ().c_str (), ios_base::out);
if (!ofs.is_open ())
{
@@ -1026,16 +763,16 @@ main (Int argc, Char* argv[])
return 1;
}
- NarrowString d (common_ops.value<CLI::file_list_delim> ());
+ NarrowString d (common_ops.file_list_delim ());
expand_nl (d);
- if (NarrowString p = common_ops.value<CLI::file_list_prologue> ())
+ if (NarrowString p = common_ops.file_list_prologue ())
{
expand_nl (p);
ofs << p;
}
- for (FileList::Iterator i (file_list.begin ()), e (file_list.end ());
+ for (FileList::iterator i (file_list.begin ()), e (file_list.end ());
i != e;)
{
ofs << *i;
@@ -1044,7 +781,7 @@ main (Int argc, Char* argv[])
ofs << d;
}
- if (NarrowString e = common_ops.value<CLI::file_list_epilogue> ())
+ if (NarrowString e = common_ops.file_list_epilogue ())
{
expand_nl (e);
ofs << e;
@@ -1058,10 +795,10 @@ main (Int argc, Char* argv[])
}
}
- if (show_sloc)
+ if (common_ops.show_sloc ())
e << "total: " << sloc << endl;
- if (UnsignedLong sloc_limit = common_ops.value<CLI::sloc_limit> ())
+ if (size_t sloc_limit = common_ops.sloc_limit ())
{
if (sloc_limit < sloc)
{
@@ -1096,26 +833,10 @@ main (Int argc, Char* argv[])
{
// Diagnostic has already been issued.
}
- catch (CLI::UnexpectedOption const& e)
+ catch (cli::exception const& ex)
{
- wcerr << "error: unknown option '" << e.option ().c_str () << "'" << endl
- << "info: try '" << argv[0] << " help' for usage information"
- << endl;
- }
- catch (CLI::OptionFormat const& e)
- {
- wcerr << "error: value for option '" << e.option ().c_str ()
- << "' is invalid or missing" << endl
- << "info: try '" << argv[0] << " help' for usage information"
- << endl;
- }
- catch (CLI::OptionFile const& e)
- {
- if (e.value ())
- wcerr << "error: " << e.value ().c_str () << ": "
- << e.description ().c_str () << endl;
- else
- wcerr << "error: missing --options-file argument" << endl;
+ wcerr << ex << endl;
+ wcerr << "try '" << argv[0] << " help' for usage information" << endl;
}
return 1;
@@ -1127,16 +848,16 @@ main (Int argc, Char* argv[])
LocationTranslator::
LocationTranslator (NarrowStrings const& map,
NarrowStrings const& regex,
- Boolean trace)
+ bool trace)
: trace_ (trace)
{
// Map.
//
- for (NarrowStrings::ConstIterator i (map.begin ()); i != map.end (); ++i)
+ for (NarrowStrings::const_iterator i (map.begin ()); i != map.end (); ++i)
{
// Split the string in two parts at the last '='.
//
- Size pos (i->rfind ('='));
+ size_t pos (i->rfind ('='));
if (pos == NarrowString::npos)
{
@@ -1151,7 +872,7 @@ LocationTranslator (NarrowStrings const& map,
// Regex.
//
- for (NarrowStrings::ConstIterator i (regex.begin ()); i != regex.end (); ++i)
+ for (NarrowStrings::const_iterator i (regex.begin ()); i != regex.end (); ++i)
{
try
{
@@ -1160,7 +881,7 @@ LocationTranslator (NarrowStrings const& map,
catch (RegexFormat const& e)
{
wcerr << "error: invalid location regex: '" <<
- e.expression ().c_str () << "': " <<
+ e.regex ().c_str () << "': " <<
e.description ().c_str () << endl;
throw Failed ();
@@ -1173,14 +894,14 @@ translate (NarrowString const& l)
{
// First check the cache.
//
- Cache::ConstIterator ci (cache_.find (l));
+ Cache::const_iterator ci (cache_.find (l));
if (ci != cache_.end ())
return ci->second;
// Then check the direct map.
//
- Map::ConstIterator mi (map_.find (l));
+ Map::const_iterator mi (map_.find (l));
if (mi != map_.end ())
{
@@ -1193,15 +914,15 @@ translate (NarrowString const& l)
if (trace_)
wcerr << "location: '" << l.c_str () << "'" << endl;
- for (RegexVector::ReverseIterator i (regex_.rbegin ());
+ for (RegexVector::reverse_iterator i (regex_.rbegin ());
i != regex_.rend (); ++i)
{
if (trace_)
- wcerr << "try: '" << i->pattern () << "' : ";
+ wcerr << "try: '" << i->regex ().str ().c_str () << "' : ";
if (i->match (l))
{
- NarrowString r (i->merge (l));
+ NarrowString r (i->replace (l));
if (trace_)
wcerr << "'" << r.c_str () << "' : +" << endl;
@@ -1224,45 +945,45 @@ translate (NarrowString const& l)
//
AnonymousNameTranslator::
-AnonymousNameTranslator (NarrowStrings const& regex, Boolean trace)
+AnonymousNameTranslator (NarrowStrings const& regex, bool trace)
: trace_ (trace)
{
- for (NarrowStrings::ConstIterator i (regex.begin ()); i != regex.end (); ++i)
+ for (NarrowStrings::const_iterator i (regex.begin ()); i != regex.end (); ++i)
{
try
{
- regex_.push_back (Regex (*i));
+ regex_.push_back (Regex (String (*i)));
}
catch (RegexFormat const& e)
{
wcerr << "error: invalid anonymous type regex: '" <<
- e.expression () << "': " << e.description () << endl;
+ e.regex () << "': " << e.description ().c_str () << endl;
throw Failed ();
}
}
}
-WideString AnonymousNameTranslator::
-translate (WideString const& file,
- WideString const& ns,
- WideString const& name,
- WideString const& xpath)
+String AnonymousNameTranslator::
+translate (String const& file,
+ String const& ns,
+ String const& name,
+ String const& xpath)
{
- WideString s (file + L' ' + ns + L' ' + xpath);
+ String s (file + L' ' + ns + L' ' + xpath);
if (trace_)
wcerr << "anonymous type: '" << s << "'" << endl;
- for (RegexVector::ReverseIterator i (regex_.rbegin ());
+ for (RegexVector::reverse_iterator i (regex_.rbegin ());
i != regex_.rend (); ++i)
{
if (trace_)
- wcerr << "try: '" << i->pattern () << "' : ";
+ wcerr << "try: '" << i->regex () << "' : ";
if (i->match (s))
{
- WideString r (i->merge (s));
+ String r (i->replace (s));
if (trace_)
wcerr << "'" << r << "' : +" << endl;
@@ -1284,28 +1005,28 @@ translate (WideString const& file,
SchemaPerTypeTranslator::
SchemaPerTypeTranslator (NarrowStrings const& type_regex,
- Boolean type_trace,
+ bool type_trace,
NarrowStrings const& schema_regex,
- Boolean schema_trace)
+ bool schema_trace)
: type_trace_ (type_trace), schema_trace_ (schema_trace)
{
- for (NarrowStrings::ConstIterator i (type_regex.begin ());
+ for (NarrowStrings::const_iterator i (type_regex.begin ());
i != type_regex.end (); ++i)
{
try
{
- type_regex_.push_back (TypeRegex (*i));
+ type_regex_.push_back (TypeRegex (String (*i)));
}
catch (TypeRegexFormat const& e)
{
wcerr << "error: invalid type file regex: '" <<
- e.expression () << "': " << e.description () << endl;
+ e.regex () << "': " << e.description ().c_str () << endl;
throw Failed ();
}
}
- for (NarrowStrings::ConstIterator i (schema_regex.begin ());
+ for (NarrowStrings::const_iterator i (schema_regex.begin ());
i != schema_regex.end (); ++i)
{
try
@@ -1315,30 +1036,30 @@ SchemaPerTypeTranslator (NarrowStrings const& type_regex,
catch (SchemaRegexFormat const& e)
{
wcerr << "error: invalid type file regex: '" <<
- e.expression ().c_str () << "': " << e.description ().c_str () << endl;
+ e.regex ().c_str () << "': " << e.description ().c_str () << endl;
throw Failed ();
}
}
}
-WideString SchemaPerTypeTranslator::
-translate_type (WideString const& ns, WideString const& name)
+String SchemaPerTypeTranslator::
+translate_type (String const& ns, String const& name)
{
- WideString s (ns + L' ' + name);
+ String s (ns + L' ' + name);
if (type_trace_)
wcerr << "type: '" << s << "'" << endl;
- for (TypeRegexVector::ReverseIterator i (type_regex_.rbegin ());
+ for (TypeRegexVector::reverse_iterator i (type_regex_.rbegin ());
i != type_regex_.rend (); ++i)
{
if (type_trace_)
- wcerr << "try: '" << i->pattern () << "' : ";
+ wcerr << "try: '" << i->regex () << "' : ";
if (i->match (s))
{
- WideString r (i->merge (s));
+ String r (i->replace (s));
if (type_trace_)
wcerr << "'" << r << "' : +" << endl;
@@ -1361,15 +1082,15 @@ translate_schema (NarrowString const& file)
if (schema_trace_)
wcerr << "schema: '" << file.c_str () << "'" << endl;
- for (SchemaRegexVector::ReverseIterator i (schema_regex_.rbegin ());
+ for (SchemaRegexVector::reverse_iterator i (schema_regex_.rbegin ());
i != schema_regex_.rend (); ++i)
{
if (schema_trace_)
- wcerr << "try: '" << i->pattern () << "' : ";
+ wcerr << "try: '" << i->regex ().str ().c_str () << "' : ";
if (i->match (file))
{
- NarrowString r (i->merge (file));
+ NarrowString r (i->replace (file));
if (schema_trace_)
wcerr << "'" << r.c_str () << "' : +" << endl;
@@ -1388,10 +1109,10 @@ translate_schema (NarrowString const& file)
//
//
-Void
+void
expand_nl (NarrowString& s)
{
- for (Size i (0); i < s.size ();)
+ for (size_t i (0); i < s.size ();)
{
if (s[i] == '\\' && (i + 1) < s.size () && s[i + 1] == 'n')
{
diff --git a/xsd/xsd/xsd.hxx b/xsd/xsd/xsd.hxx
index 508c8da..8b9d6fe 100644
--- a/xsd/xsd/xsd.hxx
+++ b/xsd/xsd/xsd.hxx
@@ -1,84 +1,25 @@
// file : xsd/xsd.hxx
-// author : Boris Kolpackov <boris@codesynthesis.com>
-// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
#ifndef XSD_HXX
#define XSD_HXX
-#include <xsd-frontend/semantic-graph/elements.hxx> // Path
-
-#include <cult/types.hxx>
-#include <cult/containers/set.hxx>
-#include <cult/containers/vector.hxx>
-
-
+#include <set>
+#include <vector>
#include <cstdio> // std::remove
-using namespace Cult::Types;
-
-//
-//
-typedef Cult::Containers::Set<NarrowString> WarningSet;
+#include <cutl/shared-ptr.hxx>
+#include <cutl/fs/auto-remove.hxx>
-//
-//
-typedef Cult::Containers::Vector<NarrowString> FileList;
-
-//
-//
-struct AutoUnlink
-{
- AutoUnlink (XSDFrontend::SemanticGraph::Path const& file)
- : file_ (file), canceled_ (false)
- {
- }
-
- ~AutoUnlink ()
- {
- if (!canceled_)
- {
-#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2
- std::remove (file_.native_file_string ().c_str ());
-#else
- std::remove (file_.string ().c_str ());
-#endif
- }
- }
-
- void
- cancel ()
- {
- canceled_ = true;
- }
-
-private:
- XSDFrontend::SemanticGraph::Path file_;
- Boolean canceled_;
-};
+#include <xsd-frontend/semantic-graph/elements.hxx> // Path
-//
-//
-struct AutoUnlinks
-{
- Void
- add (XSDFrontend::SemanticGraph::Path const& file)
- {
- unlinks_.push_back (Evptr<AutoUnlink> (new AutoUnlink (file)));
- }
+#include <types.hxx>
- Void
- cancel ()
- {
- for (Unlinks::Iterator i (unlinks_.begin ()); i != unlinks_.end (); ++i)
- {
- (*i)->cancel ();
- }
- }
+typedef std::set<NarrowString> WarningSet;
+typedef std::vector<NarrowString> FileList;
-private:
- typedef Cult::Containers::Vector<Evptr<AutoUnlink> > Unlinks;
- Unlinks unlinks_;
-};
+typedef cutl::fs::auto_remove AutoUnlink;
+typedef cutl::fs::auto_removes AutoUnlinks;
#endif // XSD_HXX