summaryrefslogtreecommitdiff
path: root/dist/README-WINDOWS
blob: d2e3925e5954e43c8e4788d1cf9ab5d85cc4aa74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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
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
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
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
This package contains precompiled binaries of CodeSynthesis XSD, a
W3C XML Schema to C++ Data Binding compiler, built for Microsoft
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).


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
http://xerces.apache.org/xerces-c/download.cgi


Environment
-----------

Before you can start building examples or your applications that use XSD
you need to set include, library and executable search paths in the Visual
Studio IDE and the System Environment.

1. Setting up Xerces-C++

  First you need to set up Xerces-C++ include and library search paths.
  If you already have Xerces-C++ set up in your development environment,
  you can skip to the next step. Here we assume that your Xerces-C++ path
  is C:\projects\xerces-c-x.y.z. If you have Xerces-C++ in a different
  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".

     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".

       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".

       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). 

     For Visual Studio 2010 (10.0):

       1. Open an existing or create a new C++ project (you can open one of
          the example solutions)  

       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

       4. Right click on Microsoft.Cpp.Win32.user and select the "Properties"
          menu action

       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)

       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

       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 
       Microsoft.Cpp.x64.user property sheet (Visual Studio keeps a separate
       set of paths for each platform). 


  b) In the Control Panel, choose "System" and select the "Advanced" tab.
     Click on the "Environment Variables" button. In the "System Variables"
     list, select "Path" and add (via "Edit" button) the
     ";C:\projects\xerces-c-x.y.z\bin" path at the end.


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 
  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".

    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).

    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). 

  For Visual Studio 2010 (10.0):

    1. Open an existing or create a new C++ project (you can open one of
       the example solutions)  

    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

    4. Right click on Microsoft.Cpp.Win32.user and select the "Properties"
       menu action

    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)

    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

    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.


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.

Some of the examples depend on additional third-party libraries or
show a specific feature of XSD and are not included in the solutions
above. They come with their individual solution files:

examples/cxx/tree/embedded         - example of schema embedding
examples/cxx/tree/custom           - examples of type customization
examples/cxx/tree/custom/calendar  - depends on the Boost date_time library
examples/cxx/tree/compression      - depends on the zlib library
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 
as well as other Visual Studio-specific topics, refer to the Using XSD with
Microsoft Visual Studio Wiki page:

http://wiki.codesynthesis.com/Using_XSD_with_Microsoft_Visual_Studio