/[thuban]/branches/WIP-pyshapelib-bramz/Resources/XML/thuban-0.9.dtd
ViewVC logotype

Annotation of /branches/WIP-pyshapelib-bramz/Resources/XML/thuban-0.9.dtd

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1375 - (hide annotations)
Tue Jul 8 10:53:05 2003 UTC (21 years, 8 months ago) by bh
Original Path: trunk/thuban/Resources/XML/thuban-0.9.dtd
File size: 5798 byte(s)
* Resources/XML/thuban-0.9.dtd: New. This will become the DTD for
0.9.

* Thuban/Model/transientdb.py (TransientJoinedTable.JoinType):
New. Return the join type

* Thuban/Model/save.py (SessionSaver.write_session): Use new 0.9
DTD
(SessionSaver.write_data_containers): Save the join type for
joined tables

* Thuban/Model/load.py (SessionLoader.__init__): Add the new 0.9
namespace
(SessionLoader.start_jointable): Handle the jointype attribute

* test/test_load_0_8.py: New. Effectively a copy of test_load.py
as of Thuban 0.8. These are now tests to determine whether Thuban
can still read files generated by Thuban 0.8

* test/test_load.py (LoadSessionTest.dtd)
(TestSingleLayer.file_contents)
(TestLayerVisibility.file_contents, TestLabels.file_contents)
(TestLayerProjection.file_contents)
(TestRasterLayer.file_contents, TestJoinedTable.file_contents)
(TestJoinedTable.file_contents)
(TestLoadError.file_contents): Update for new DTD
(TestJoinedTable.file_contents, TestJoinedTable.setUp): Add test
for new join type attribute

* test/test_save.py (SaveSessionTest.dtd)
(SaveSessionTest.testEmptySession)
(SaveSessionTest.testSingleLayer)
(SaveSessionTest.testLayerProjection)
(SaveSessionTest.testRasterLayer)
(SaveSessionTest.testClassifiedLayer)
(SaveSessionTest.test_dbf_table)
(SaveSessionTest.test_joined_table): Update for new DTD
(SaveSessionTest.test_joined_table): Add test for new join type
attribute

1 bh 1375 <?xml version="1.0" encoding="UTF-8"?>
2     <!-- thuban-0.9.dtd
3    
4     Copyright (C) 2001, 2003 by Intevation GmbH
5     Authors:
6     Jan-Oliver Wagner <[email protected]>
7     Bernhard Herzog <[email protected]>
8    
9     This program is free software under the GPL (>=v2)
10     Read the file COPYING coming with Thuban for details.
11     -->
12    
13     <!-- a session contains zero or more datasources and and zero or more maps
14    
15     At some point, the namespace attribute will likely be used by Thuban to
16     identify the version of the file format.
17     -->
18    
19     <!ENTITY % shapesources "fileshapesource | derivedshapesource">
20     <!ENTITY % tables "filetable | jointable">
21     <!ELEMENT session ((%shapesources; | %tables; )*, map*)>
22     <!ATTLIST session
23     title CDATA #REQUIRED
24     xmlns CDATA #IMPLIED
25     >
26    
27    
28     <!--
29     A fileshapesource is a source of shapes and perhaps attribute data
30     read from a file. The filetype attribute must be one of the
31     supported file types. Currently only "shapefile" is supported.
32     -->
33    
34     <!ELEMENT fileshapesource EMPTY>
35     <!ATTLIST fileshapesource
36     id ID #REQUIRED
37     filename CDATA #REQUIRED
38     filetype CDATA #REQUIRED
39     >
40    
41     <!--
42     A derivedshapesource is a source of shapes and attribute data
43     derived from another shapesource for the shapes and a table for the
44     attribute data.
45     -->
46    
47     <!ELEMENT derivedshapesource EMPTY>
48     <!ATTLIST derivedshapesource
49     id ID #REQUIRED
50     shapesource IDREF #REQUIRED
51     table IDREF #REQUIRED
52     >
53    
54    
55     <!-- a filetable points to the actual file that
56     contains the tabular data.
57    
58     The filetype Attribute may be onve of "DBF" or "CSV"
59     -->
60     <!ELEMENT filetable EMPTY>
61     <!ATTLIST filetable
62     id ID #REQUIRED
63     title CDATA #REQUIRED
64     filename CDATA #REQUIRED
65     filetype CDATA #REQUIRED>
66    
67     <!--
68     A jointable is a table with the result of something equivalent to
69     this SQL Statement:
70    
71     SELECT * FROM left JOIN right WHERE left.leftcolumn = right.rightcolumn;
72    
73     The attributes left and right must be the ids of two tables defined
74     previously in the XML-Document file. leftcolumn and rightcolumn are
75     the column names to join on.
76    
77     The jointype attribute should be either "INNER" or "LEFT OUTER".
78     -->
79     <!ELEMENT jointable EMPTY>
80     <!ATTLIST jointable
81     id ID #REQUIRED
82     title CDATA #REQUIRED
83     left IDREF #REQUIRED
84     leftcolumn CDATA #REQUIRED
85     right IDREF #REQUIRED
86     rightcolumn CDATA #REQUIRED
87     jointype CDATA #REQUIRED
88     >
89    
90     <!-- A Map
91    
92     A map consists of a number of layers
93     the projection refers to the projection
94     used to display the map. If the projection
95     is missing, geographic coordinates in decimal
96     degrees are assumed.
97     -->
98     <!ELEMENT map (projection?, (layer | rasterlayer)*, labellayer?)>
99     <!ATTLIST map title CDATA #REQUIRED>
100    
101     <!-- a layer represents a set of geographic objects.
102     pointers to the actual data are stored.
103     The shapestore attributes contains the id of the data store
104     shown in the layer.
105     the projection refers to the projection
106     in which the data are stored. If the projection
107     is missing, geographic coordinates in decimal
108     degrees are assumed. Visibility is assumed true
109     unless otherwise specified.
110     -->
111     <!ELEMENT layer (projection?, classification?)>
112     <!ATTLIST layer title CDATA #REQUIRED>
113     <!ATTLIST layer shapestore IDREF #REQUIRED>
114     <!ATTLIST layer visible (true|false) "true">
115     <!-- the fill and stroke attributes can be either "None" or "#RRGGBB"
116     RGB hex values
117    
118     All of fill, stroke and stroke_width may be omitted and default to
119     "None", "#000000" and "1" respectively.
120     -->
121     <!ATTLIST layer fill CDATA "None">
122     <!ATTLIST layer stroke CDATA "#000000">
123     <!ATTLIST layer stroke_width CDATA "1">
124    
125    
126     <!-- a rasterlayer represents an image that has some geographic data
127     associated with it. The filename points to the image used.
128     -->
129     <!ELEMENT rasterlayer (projection?, classification?)>
130     <!ATTLIST rasterlayer
131     title CDATA #REQUIRED
132     filename CDATA #REQUIRED
133     visible (true|false) "true">
134    
135    
136     <!-- Classification data -->
137     <!ELEMENT classification (clnull?, clpoint*, clrange*, clcont*)>
138     <!ATTLIST classification field CDATA #REQUIRED>
139     <!ATTLIST classification field_type CDATA #REQUIRED>
140    
141     <!ELEMENT clnull (cldata*)>
142     <!ELEMENT clpoint (cldata*)>
143     <!ELEMENT clrange (cldata*)>
144     <!ELEMENT clcont (cldata*)>
145    
146     <!ATTLIST clnull label CDATA #IMPLIED>
147    
148     <!ATTLIST clpoint value CDATA #REQUIRED>
149     <!ATTLIST clpoint label CDATA #IMPLIED>
150    
151     <!ATTLIST clrange min CDATA #IMPLIED>
152     <!ATTLIST clrange max CDATA #IMPLIED>
153     <!ATTLIST clrange range CDATA #IMPLIED>
154     <!ATTLIST clrange label CDATA #IMPLIED>
155    
156     <!ATTLIST clcont rmin CDATA #REQUIRED>
157     <!ATTLIST clcont rmax CDATA #REQUIRED>
158     <!ATTLIST clcont dmin CDATA #REQUIRED>
159     <!ATTLIST clcont dmax CDATA #REQUIRED>
160    
161     <!-- Visual appearance of the classification
162    
163     the fill and stroke attributes can be either "None" or "#RRGGBB"
164     RGB hex values
165    
166     All of fill, stroke and stroke_width may be omitted and default to
167     "None", "#000000" and "1" respectively.
168     -->
169     <!ELEMENT cldata EMPTY>
170     <!ATTLIST cldata
171     stroke CDATA #IMPLIED
172     stroke_width CDATA #IMPLIED
173     fill CDATA #IMPLIED
174     >
175    
176    
177     <!-- a projection has a number of parameters
178     -->
179     <!ELEMENT projection (parameter*)>
180     <!ATTLIST projection
181     name CDATA "" >
182    
183     <!-- just a simple parameter consisting of a value
184     -->
185     <!ELEMENT parameter EMPTY>
186     <!ATTLIST parameter value CDATA #REQUIRED>
187    
188    
189     <!-- The label layer contains text labels -->
190     <!ELEMENT labellayer (label*) >
191    
192     <!ELEMENT label EMPTY>
193     <!ATTLIST label
194     x CDATA #REQUIRED
195     y CDATA #REQUIRED
196     text CDATA #REQUIRED
197     halign (left|center|right) #REQUIRED
198     valign (top|center|bottom) #REQUIRED>

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26