@lbdudc/gp-gis-dsl 0.3.2 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,313 +1,315 @@
1
- grammar GISGrammar;
2
-
3
- parse
4
- : sentence+
5
- ;
6
-
7
- sentence
8
- : createStatement
9
- | useGIS
10
- | generateGIS
11
- | setDeployment
12
- ;
13
-
14
- createStatement:
15
- CREATE_SYMBOL (
16
- createGIS
17
- | createEntity
18
- | createLayer
19
- )
20
- ;
21
-
22
- createGIS:
23
- GIS_SYMBOL identifier USING_SYMBOL srid SCOL_SYMBOL
24
- ;
25
-
26
- createEntity:
27
- ENTITY_SYMBOL identifier OPAR_SYMBOL
28
- property (COMMA_SYMBOL property)*
29
- CPAR_SYMBOL SCOL_SYMBOL
30
- ;
31
-
32
- createLayer: createTileLayer | createGeoJSONLayer | createWmsStyle | createWmsLayer | createMap | createSortableMap;
33
-
34
- createTileLayer: TILE_SYMBOL LAYER_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
35
- URL_SYMBOL text
36
- CPAR_SYMBOL SCOL_SYMBOL;
37
-
38
- createGeoJSONLayer: GEOJSON_SYMBOL LAYER_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
39
- identifier (EDITABLE_SYMBOL)? COMMA_SYMBOL
40
- FILL_COLOR_SYMBOL hexColor COMMA_SYMBOL
41
- STROKE_COLOR_SYMBOL hexColor COMMA_SYMBOL
42
- FILL_OPACITY_SYMBOL floatNumber COMMA_SYMBOL
43
- STROKE_OPACITY_SYMBOL floatNumber
44
- CPAR_SYMBOL SCOL_SYMBOL;
45
-
46
- sldCustomBody: GEOMETRY_TYPE_SYMBOL TYPE COMMA_SYMBOL
47
- FILL_COLOR_SYMBOL? hexColor? COMMA_SYMBOL?
48
- STROKE_COLOR_SYMBOL? hexColor? COMMA_SYMBOL?
49
- FILL_OPACITY_SYMBOL? (floatNumber | intNumber)? COMMA_SYMBOL?
50
- STROKE_OPACITY_SYMBOL? (floatNumber | intNumber)?;
51
-
52
- createWmsStyle: WMS_SYMBOL STYLE_SYMBOL identifier OPAR_SYMBOL
53
- (SLD_SYMBOL text)? COMMA_SYMBOL?
54
- sldCustomBody?
55
- CPAR_SYMBOL SCOL_SYMBOL;
56
-
57
- createWmsLayer: WMS_SYMBOL LAYER_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
58
- wmsSubLayer (COMMA_SYMBOL wmsSubLayer)*
59
- CPAR_SYMBOL SCOL_SYMBOL;
60
-
61
- wmsSubLayer:
62
- identifier identifier
63
- | (wmsUrl wmsLayerName wmsFormatName? wmsCrs? wmsStyles? wmsQueryable? wmsAttribution? wmsBboxGroup? wmsVersion?)
64
- ;
65
-
66
- wmsUrl:
67
- URL_WMS_SYMBOL text
68
- ;
69
-
70
- wmsLayerName:
71
- COMMA_SYMBOL LAYERNAME_SYMBOL text
72
- ;
73
-
74
- wmsFormatName:
75
- COMMA_SYMBOL FORMAT_SYMBOL text
76
- ;
77
-
78
- wmsCrs:
79
- COMMA_SYMBOL CRS_SYMBOL text
80
- ;
81
-
82
- wmsBboxCrs:
83
- COMMA_SYMBOL BBOX_CRS_SYMBOL text
84
- ;
85
-
86
- wmsMinX:
87
- COMMA_SYMBOL MINX_SYMBOL floatNumber
88
- ;
89
-
90
- wmsMinY:
91
- COMMA_SYMBOL MINY_SYMBOL floatNumber
92
- ;
93
-
94
- wmsMaxX:
95
- COMMA_SYMBOL MAXX_SYMBOL floatNumber
96
- ;
97
-
98
- wmsMaxY:
99
- COMMA_SYMBOL MAXY_SYMBOL floatNumber
100
- ;
101
-
102
- wmsBboxGroup:
103
- wmsBboxCrs wmsMinX wmsMinY wmsMaxX wmsMaxY
104
- ;
105
-
106
- wmsStyles:
107
- COMMA_SYMBOL STYLE_SYMBOL text
108
- ;
109
-
110
- wmsQueryable:
111
- COMMA_SYMBOL QUERYABLE_SYMBOL text
112
- ;
113
-
114
- wmsAttribution:
115
- COMMA_SYMBOL ATTRIBUTION_SYMBOL text
116
- ;
117
-
118
- wmsVersion:
119
- COMMA_SYMBOL VERSION_SYMBOL text
120
- ;
121
-
122
- createSortableMap: SORTABLE_SYMBOL createMap;
123
-
124
- createMap: MAP_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
125
- mapLayer (COMMA_SYMBOL mapLayer)*
126
- CPAR_SYMBOL SCOL_SYMBOL;
127
-
128
- mapLayer: identifier (IS_BASE_LAYER_SYMBOL)? (HIDDEN_SYMBOL)?;
129
-
130
- useGIS: USE_SYMBOL GIS_SYMBOL identifier SCOL_SYMBOL;
131
-
132
- generateGIS: GENERATE_SYMBOL GIS_SYMBOL identifier SCOL_SYMBOL;
133
-
134
- setDeployment:
135
- SET_SYMBOL DEPLOYMENT_SYMBOL OPAR_SYMBOL
136
- deploymentProperty (COMMA_SYMBOL deploymentProperty)*
137
- CPAR_SYMBOL SCOL_SYMBOL
138
- ;
139
-
140
- deploymentProperty: text text;
141
-
142
- property: propertyDefinition | relationshipDefinition;
143
-
144
- propertyDefinition:
145
- identifier TYPE (
146
- IDENTIFIER_SYMBOL
147
- | DISPLAYSTRING_SYMBOL
148
- | REQUIRED_SYMBOL
149
- | UNIQUE_SYMBOL
150
- )*
151
- ;
152
-
153
- relationshipDefinition:
154
- ownedRelationshipDefinition | mappedRelationshipDefinition;
155
-
156
- mappedRelationshipDefinition:
157
- identifier identifier RELATIONSHIP_SYMBOL MAPPEDBY_SYMBOL identifier;
158
-
159
- ownedRelationshipDefinition:
160
- identifier identifier RELATIONSHIP_SYMBOL OPAR_SYMBOL cardinality COMMA_SYMBOL cardinality
161
- CPAR_SYMBOL BIDIRECTIONAL_SYMBOL?;
162
-
163
- cardinality:
164
- ZERO_ONE_SYMBOL
165
- | ONE_ONE_SYMBOL
166
- | ZERO_MANY_SYMBOL
167
- | ONE_MANY_SYMBOL
168
- ;
169
- srid: INT_NUMBER;
170
- identifier: IDENTIFIER;
171
- text: QUOTED_TEXT;
172
-
173
- hexColor: HEX_COLOR;
174
- floatNumber: FLOAT_NUMBER;
175
- intNumber: INT_NUMBER;
176
-
177
-
178
- //-----------------------------------------------------------------------
179
-
180
-
181
- fragment A: [aA];
182
- fragment B: [bB];
183
- fragment C: [cC];
184
- fragment D: [dD];
185
- fragment E: [eE];
186
- fragment F: [fF];
187
- fragment G: [gG];
188
- fragment H: [hH];
189
- fragment I: [iI];
190
- fragment J: [jJ];
191
- fragment K: [kK];
192
- fragment L: [lL];
193
- fragment M: [mM];
194
- fragment N: [nN];
195
- fragment O: [oO];
196
- fragment P: [pP];
197
- fragment Q: [qQ];
198
- fragment R: [rR];
199
- fragment S: [sS];
200
- fragment T: [tT];
201
- fragment U: [uU];
202
- fragment V: [vV];
203
- fragment W: [wW];
204
- fragment X: [xX];
205
- fragment Y: [yY];
206
- fragment Z: [zZ];
207
-
208
- fragment DIGIT: [0-9];
209
- fragment DIGITS: DIGIT+;
210
- fragment HEXDIGIT: [0-9a-fA-F];
211
-
212
-
213
-
214
- fragment LETTER_WHEN_UNQUOTED_NO_DIGIT: [a-zA-Z_$\u0080-\uffff];
215
- fragment LETTER_WHEN_UNQUOTED: DIGIT | LETTER_WHEN_UNQUOTED_NO_DIGIT;
216
- // Any letter but without e/E and digits (which are used to match a decimal number).
217
- fragment LETTER_WITHOUT_FLOAT_PART: [a-df-zA-DF-Z_$\u0080-\uffff];
218
-
219
- fragment UNDERLINE_SYMBOL: '_';
220
- fragment QUOTE_SYMBOL: '"';
221
- fragment MINUS_SYMBOL: '-';
222
-
223
- CREATE_SYMBOL: C R E A T E;
224
- GIS_SYMBOL: G I S;
225
- ENTITY_SYMBOL: E N T I T Y;
226
- USING_SYMBOL: U S I N G;
227
- USE_SYMBOL: U S E;
228
- GENERATE_SYMBOL: G E N E R A T E;
229
- IDENTIFIER_SYMBOL: I D E N T I F I E R;
230
- RELATIONSHIP_SYMBOL: R E L A T I O N S H I P;
231
- DISPLAYSTRING_SYMBOL: D I S P L A Y UNDERLINE_SYMBOL S T R I N G;
232
- REQUIRED_SYMBOL: R E Q U I R E D;
233
- UNIQUE_SYMBOL: U N I Q U E;
234
- BIDIRECTIONAL_SYMBOL: B I D I R E C T I O N A L;
235
- MAPPEDBY_SYMBOL: M A P P E D UNDERLINE_SYMBOL B Y;
236
- LAYER_SYMBOL: L A Y E R;
237
- TILE_SYMBOL: T I L E;
238
- GEOJSON_SYMBOL: G E O J S O N;
239
- GEOMETRY_TYPE_SYMBOL: G E O M E T R Y T Y P E;
240
- AS_SYMBOL: A S;
241
- URL_SYMBOL: U R L;
242
- SLD_SYMBOL: S T Y L E L A Y E R D E S C R I P T O R;
243
- EDITABLE_SYMBOL: E D I T A B L E;
244
- FILL_COLOR_SYMBOL: F I L L C O L O R;
245
- STROKE_COLOR_SYMBOL: S T R O K E C O L O R;
246
- FILL_OPACITY_SYMBOL: F I L L O P A C I T Y;
247
- STROKE_OPACITY_SYMBOL: S T R O K E O P A C I T Y;
248
- WMS_SYMBOL: W M S;
249
- STYLE_SYMBOL: S T Y L E;
250
- IS_BASE_LAYER_SYMBOL: I S UNDERLINE_SYMBOL B A S E UNDERLINE_SYMBOL L A Y E R;
251
- HIDDEN_SYMBOL: H I D D E N;
252
- SORTABLE_SYMBOL: S O R T A B L E;
253
- MAP_SYMBOL: M A P;
254
- SET_SYMBOL: S E T;
255
- DEPLOYMENT_SYMBOL: D E P L O Y M E N T;
256
-
257
- URL_WMS_SYMBOL: U R L W M S;
258
- LAYERNAME_SYMBOL: L A Y E R N A M E;
259
- FORMAT_SYMBOL: F O R M A T;
260
- CRS_SYMBOL: C R S;
261
- BBOX_CRS_SYMBOL: B B O X C R S;
262
- MINX_SYMBOL: M I N X;
263
- MINY_SYMBOL: M I N Y;
264
- MAXX_SYMBOL: M A X X;
265
- MAXY_SYMBOL: M A X Y;
266
- QUERYABLE_SYMBOL: Q U E R Y A B L E;
267
- ATTRIBUTION_SYMBOL: A T T R I B U T I O N;
268
- VERSION_SYMBOL: V E R S I O N;
269
-
270
- ZERO_ONE_SYMBOL: '0..1';
271
- ONE_ONE_SYMBOL: '1..1';
272
- ZERO_MANY_SYMBOL: '0..*';
273
- ONE_MANY_SYMBOL: '1..*';
274
-
275
- TYPE
276
- : L O N G
277
- | B O O L E A N
278
- | I N T E G E R
279
- | D O U B L E
280
- | L O C A L D A T E
281
- | S T R I N G
282
- | L I N E S T R I N G
283
- | L I N E
284
- | M U L T I L I N E S T R I N G
285
- | P O L Y G O N
286
- | M U L T I P O L Y G O N
287
- | P O I N T
288
- | M U L T I P O I N T
289
- ;
290
-
291
- POUND_SYMBOL : '#';
292
- DOT_SYMBOL : '.';
293
- OPAR_SYMBOL : '(';
294
- CPAR_SYMBOL : ')';
295
- COMMA_SYMBOL : ',';
296
- SCOL_SYMBOL : ';';
297
-
298
- HEX_COLOR: POUND_SYMBOL HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT;
299
- INT_NUMBER: DIGITS;
300
- FLOAT_NUMBER: MINUS_SYMBOL? (DIGITS? DOT_SYMBOL)? DIGITS;
301
-
302
- COMMENT: '//' ~[\r\n]* -> skip;
303
- //SPACE: [ \t]+ -> skip;
304
- //EOFS: [\r\n] -> skip;
305
- WHITESPACE: [ \t\f\r\n] -> channel(HIDDEN); // Ignore whitespaces.
306
-
307
- IDENTIFIER:
308
- DIGITS+ [eE] (LETTER_WHEN_UNQUOTED_NO_DIGIT LETTER_WHEN_UNQUOTED*)? // Have to exclude float pattern, as this rule matches more.
309
- | DIGITS+ LETTER_WITHOUT_FLOAT_PART LETTER_WHEN_UNQUOTED*
310
- | LETTER_WHEN_UNQUOTED_NO_DIGIT LETTER_WHEN_UNQUOTED* // INT_NUMBER matches first if there are only digits.
311
- ;
312
-
313
- QUOTED_TEXT: QUOTE_SYMBOL (~[\r\n"])* QUOTE_SYMBOL;
1
+ grammar GISGrammar;
2
+
3
+ parse
4
+ : sentence+
5
+ ;
6
+
7
+ sentence
8
+ : createStatement
9
+ | useGIS
10
+ | generateGIS
11
+ | setDeployment
12
+ ;
13
+
14
+ createStatement:
15
+ CREATE_SYMBOL (
16
+ createGIS
17
+ | createEntity
18
+ | createLayer
19
+ )
20
+ ;
21
+
22
+ createGIS:
23
+ GIS_SYMBOL identifier USING_SYMBOL srid SCOL_SYMBOL
24
+ ;
25
+
26
+ createEntity:
27
+ ENTITY_SYMBOL identifier OPAR_SYMBOL
28
+ property (COMMA_SYMBOL property)*
29
+ CPAR_SYMBOL SCOL_SYMBOL
30
+ ;
31
+
32
+ createLayer: createTileLayer | createGeoJSONLayer | createWmsStyle | createWmsLayer | createMap | createSortableMap;
33
+
34
+ createTileLayer: TILE_SYMBOL LAYER_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
35
+ URL_SYMBOL text
36
+ CPAR_SYMBOL SCOL_SYMBOL;
37
+
38
+ createGeoJSONLayer: GEOJSON_SYMBOL LAYER_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
39
+ identifier (EDITABLE_SYMBOL)? COMMA_SYMBOL
40
+ FILL_COLOR_SYMBOL hexColor COMMA_SYMBOL
41
+ STROKE_COLOR_SYMBOL hexColor COMMA_SYMBOL
42
+ FILL_OPACITY_SYMBOL floatNumber COMMA_SYMBOL
43
+ STROKE_OPACITY_SYMBOL floatNumber
44
+ CPAR_SYMBOL SCOL_SYMBOL;
45
+
46
+ sldCustomBody: GEOMETRY_TYPE_SYMBOL TYPE COMMA_SYMBOL
47
+ FILL_COLOR_SYMBOL? hexColor? COMMA_SYMBOL?
48
+ STROKE_COLOR_SYMBOL? hexColor? COMMA_SYMBOL?
49
+ FILL_OPACITY_SYMBOL? (floatNumber | intNumber)? COMMA_SYMBOL?
50
+ STROKE_OPACITY_SYMBOL? (floatNumber | intNumber)? COMMA_SYMBOL?
51
+ STROKE_WIDTH_SYMBOL? (floatNumber | intNumber)?;
52
+
53
+ createWmsStyle: WMS_SYMBOL STYLE_SYMBOL identifier OPAR_SYMBOL
54
+ (SLD_SYMBOL text)? COMMA_SYMBOL?
55
+ sldCustomBody?
56
+ CPAR_SYMBOL SCOL_SYMBOL;
57
+
58
+ createWmsLayer: WMS_SYMBOL LAYER_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
59
+ wmsSubLayer (COMMA_SYMBOL wmsSubLayer)*
60
+ CPAR_SYMBOL SCOL_SYMBOL;
61
+
62
+ wmsSubLayer:
63
+ identifier identifier
64
+ | (wmsUrl wmsLayerName wmsFormatName? wmsCrs? wmsStyles? wmsQueryable? wmsAttribution? wmsBboxGroup? wmsVersion?)
65
+ ;
66
+
67
+ wmsUrl:
68
+ URL_WMS_SYMBOL text
69
+ ;
70
+
71
+ wmsLayerName:
72
+ COMMA_SYMBOL LAYERNAME_SYMBOL text
73
+ ;
74
+
75
+ wmsFormatName:
76
+ COMMA_SYMBOL FORMAT_SYMBOL text
77
+ ;
78
+
79
+ wmsCrs:
80
+ COMMA_SYMBOL CRS_SYMBOL text
81
+ ;
82
+
83
+ wmsBboxCrs:
84
+ COMMA_SYMBOL BBOX_CRS_SYMBOL text
85
+ ;
86
+
87
+ wmsMinX:
88
+ COMMA_SYMBOL MINX_SYMBOL floatNumber
89
+ ;
90
+
91
+ wmsMinY:
92
+ COMMA_SYMBOL MINY_SYMBOL floatNumber
93
+ ;
94
+
95
+ wmsMaxX:
96
+ COMMA_SYMBOL MAXX_SYMBOL floatNumber
97
+ ;
98
+
99
+ wmsMaxY:
100
+ COMMA_SYMBOL MAXY_SYMBOL floatNumber
101
+ ;
102
+
103
+ wmsBboxGroup:
104
+ wmsBboxCrs wmsMinX wmsMinY wmsMaxX wmsMaxY
105
+ ;
106
+
107
+ wmsStyles:
108
+ COMMA_SYMBOL STYLE_SYMBOL text
109
+ ;
110
+
111
+ wmsQueryable:
112
+ COMMA_SYMBOL QUERYABLE_SYMBOL text
113
+ ;
114
+
115
+ wmsAttribution:
116
+ COMMA_SYMBOL ATTRIBUTION_SYMBOL text
117
+ ;
118
+
119
+ wmsVersion:
120
+ COMMA_SYMBOL VERSION_SYMBOL text
121
+ ;
122
+
123
+ createSortableMap: SORTABLE_SYMBOL createMap;
124
+
125
+ createMap: MAP_SYMBOL identifier (AS_SYMBOL text)? OPAR_SYMBOL
126
+ mapLayer (COMMA_SYMBOL mapLayer)*
127
+ CPAR_SYMBOL SCOL_SYMBOL;
128
+
129
+ mapLayer: identifier (IS_BASE_LAYER_SYMBOL)? (HIDDEN_SYMBOL)?;
130
+
131
+ useGIS: USE_SYMBOL GIS_SYMBOL identifier SCOL_SYMBOL;
132
+
133
+ generateGIS: GENERATE_SYMBOL GIS_SYMBOL identifier SCOL_SYMBOL;
134
+
135
+ setDeployment:
136
+ SET_SYMBOL DEPLOYMENT_SYMBOL OPAR_SYMBOL
137
+ deploymentProperty (COMMA_SYMBOL deploymentProperty)*
138
+ CPAR_SYMBOL SCOL_SYMBOL
139
+ ;
140
+
141
+ deploymentProperty: text text;
142
+
143
+ property: propertyDefinition | relationshipDefinition;
144
+
145
+ propertyDefinition:
146
+ identifier TYPE (
147
+ IDENTIFIER_SYMBOL
148
+ | DISPLAYSTRING_SYMBOL
149
+ | REQUIRED_SYMBOL
150
+ | UNIQUE_SYMBOL
151
+ )*
152
+ ;
153
+
154
+ relationshipDefinition:
155
+ ownedRelationshipDefinition | mappedRelationshipDefinition;
156
+
157
+ mappedRelationshipDefinition:
158
+ identifier identifier RELATIONSHIP_SYMBOL MAPPEDBY_SYMBOL identifier;
159
+
160
+ ownedRelationshipDefinition:
161
+ identifier identifier RELATIONSHIP_SYMBOL OPAR_SYMBOL cardinality COMMA_SYMBOL cardinality
162
+ CPAR_SYMBOL BIDIRECTIONAL_SYMBOL?;
163
+
164
+ cardinality:
165
+ ZERO_ONE_SYMBOL
166
+ | ONE_ONE_SYMBOL
167
+ | ZERO_MANY_SYMBOL
168
+ | ONE_MANY_SYMBOL
169
+ ;
170
+ srid: INT_NUMBER;
171
+ identifier: IDENTIFIER;
172
+ text: QUOTED_TEXT;
173
+
174
+ hexColor: HEX_COLOR;
175
+ floatNumber: FLOAT_NUMBER;
176
+ intNumber: INT_NUMBER;
177
+
178
+
179
+ //-----------------------------------------------------------------------
180
+
181
+
182
+ fragment A: [aA];
183
+ fragment B: [bB];
184
+ fragment C: [cC];
185
+ fragment D: [dD];
186
+ fragment E: [eE];
187
+ fragment F: [fF];
188
+ fragment G: [gG];
189
+ fragment H: [hH];
190
+ fragment I: [iI];
191
+ fragment J: [jJ];
192
+ fragment K: [kK];
193
+ fragment L: [lL];
194
+ fragment M: [mM];
195
+ fragment N: [nN];
196
+ fragment O: [oO];
197
+ fragment P: [pP];
198
+ fragment Q: [qQ];
199
+ fragment R: [rR];
200
+ fragment S: [sS];
201
+ fragment T: [tT];
202
+ fragment U: [uU];
203
+ fragment V: [vV];
204
+ fragment W: [wW];
205
+ fragment X: [xX];
206
+ fragment Y: [yY];
207
+ fragment Z: [zZ];
208
+
209
+ fragment DIGIT: [0-9];
210
+ fragment DIGITS: DIGIT+;
211
+ fragment HEXDIGIT: [0-9a-fA-F];
212
+
213
+
214
+
215
+ fragment LETTER_WHEN_UNQUOTED_NO_DIGIT: [a-zA-Z_$\u0080-\uffff];
216
+ fragment LETTER_WHEN_UNQUOTED: DIGIT | LETTER_WHEN_UNQUOTED_NO_DIGIT;
217
+ // Any letter but without e/E and digits (which are used to match a decimal number).
218
+ fragment LETTER_WITHOUT_FLOAT_PART: [a-df-zA-DF-Z_$\u0080-\uffff];
219
+
220
+ fragment UNDERLINE_SYMBOL: '_';
221
+ fragment QUOTE_SYMBOL: '"' | '\'';
222
+ fragment MINUS_SYMBOL: '-';
223
+
224
+ CREATE_SYMBOL: C R E A T E;
225
+ GIS_SYMBOL: G I S;
226
+ ENTITY_SYMBOL: E N T I T Y;
227
+ USING_SYMBOL: U S I N G;
228
+ USE_SYMBOL: U S E;
229
+ GENERATE_SYMBOL: G E N E R A T E;
230
+ IDENTIFIER_SYMBOL: I D E N T I F I E R;
231
+ RELATIONSHIP_SYMBOL: R E L A T I O N S H I P;
232
+ DISPLAYSTRING_SYMBOL: D I S P L A Y UNDERLINE_SYMBOL S T R I N G;
233
+ REQUIRED_SYMBOL: R E Q U I R E D;
234
+ UNIQUE_SYMBOL: U N I Q U E;
235
+ BIDIRECTIONAL_SYMBOL: B I D I R E C T I O N A L;
236
+ MAPPEDBY_SYMBOL: M A P P E D UNDERLINE_SYMBOL B Y;
237
+ LAYER_SYMBOL: L A Y E R;
238
+ TILE_SYMBOL: T I L E;
239
+ GEOJSON_SYMBOL: G E O J S O N;
240
+ GEOMETRY_TYPE_SYMBOL: G E O M E T R Y T Y P E;
241
+ AS_SYMBOL: A S;
242
+ URL_SYMBOL: U R L;
243
+ SLD_SYMBOL: S T Y L E L A Y E R D E S C R I P T O R;
244
+ EDITABLE_SYMBOL: E D I T A B L E;
245
+ FILL_COLOR_SYMBOL: F I L L C O L O R;
246
+ STROKE_COLOR_SYMBOL: S T R O K E C O L O R;
247
+ FILL_OPACITY_SYMBOL: F I L L O P A C I T Y;
248
+ STROKE_OPACITY_SYMBOL: S T R O K E O P A C I T Y;
249
+ STROKE_WIDTH_SYMBOL: S T R O K E W I D T H;
250
+ WMS_SYMBOL: W M S;
251
+ STYLE_SYMBOL: S T Y L E;
252
+ IS_BASE_LAYER_SYMBOL: I S UNDERLINE_SYMBOL B A S E UNDERLINE_SYMBOL L A Y E R;
253
+ HIDDEN_SYMBOL: H I D D E N;
254
+ SORTABLE_SYMBOL: S O R T A B L E;
255
+ MAP_SYMBOL: M A P;
256
+ SET_SYMBOL: S E T;
257
+ DEPLOYMENT_SYMBOL: D E P L O Y M E N T;
258
+
259
+ URL_WMS_SYMBOL: U R L W M S;
260
+ LAYERNAME_SYMBOL: L A Y E R N A M E;
261
+ FORMAT_SYMBOL: F O R M A T;
262
+ CRS_SYMBOL: C R S;
263
+ BBOX_CRS_SYMBOL: B B O X C R S;
264
+ MINX_SYMBOL: M I N X;
265
+ MINY_SYMBOL: M I N Y;
266
+ MAXX_SYMBOL: M A X X;
267
+ MAXY_SYMBOL: M A X Y;
268
+ QUERYABLE_SYMBOL: Q U E R Y A B L E;
269
+ ATTRIBUTION_SYMBOL: A T T R I B U T I O N;
270
+ VERSION_SYMBOL: V E R S I O N;
271
+
272
+ ZERO_ONE_SYMBOL: '0..1';
273
+ ONE_ONE_SYMBOL: '1..1';
274
+ ZERO_MANY_SYMBOL: '0..*';
275
+ ONE_MANY_SYMBOL: '1..*';
276
+
277
+ TYPE
278
+ : L O N G
279
+ | B O O L E A N
280
+ | I N T E G E R
281
+ | D O U B L E
282
+ | L O C A L D A T E
283
+ | S T R I N G
284
+ | L I N E S T R I N G
285
+ | L I N E
286
+ | M U L T I L I N E S T R I N G
287
+ | P O L Y G O N
288
+ | M U L T I P O L Y G O N
289
+ | P O I N T
290
+ | M U L T I P O I N T
291
+ ;
292
+
293
+ POUND_SYMBOL : '#';
294
+ DOT_SYMBOL : '.';
295
+ OPAR_SYMBOL : '(';
296
+ CPAR_SYMBOL : ')';
297
+ COMMA_SYMBOL : ',';
298
+ SCOL_SYMBOL : ';';
299
+
300
+ HEX_COLOR: POUND_SYMBOL HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT HEXDIGIT;
301
+ INT_NUMBER: DIGITS;
302
+ FLOAT_NUMBER: MINUS_SYMBOL? (DIGITS? DOT_SYMBOL)? DIGITS;
303
+
304
+ COMMENT: '//' ~[\r\n]* -> skip;
305
+ //SPACE: [ \t]+ -> skip;
306
+ //EOFS: [\r\n] -> skip;
307
+ WHITESPACE: [ \t\f\r\n] -> channel(HIDDEN); // Ignore whitespaces.
308
+
309
+ IDENTIFIER:
310
+ DIGITS+ [eE] (LETTER_WHEN_UNQUOTED_NO_DIGIT LETTER_WHEN_UNQUOTED*)? // Have to exclude float pattern, as this rule matches more.
311
+ | DIGITS+ LETTER_WITHOUT_FLOAT_PART LETTER_WHEN_UNQUOTED*
312
+ | LETTER_WHEN_UNQUOTED_NO_DIGIT LETTER_WHEN_UNQUOTED* // INT_NUMBER matches first if there are only digits.
313
+ ;
314
+
315
+ QUOTED_TEXT: QUOTE_SYMBOL (~[\r\n'"])* QUOTE_SYMBOL;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lbdudc/gp-gis-dsl",
3
- "version": "0.3.2",
3
+ "version": "0.3.4",
4
4
  "homepage": "https://github.com/lbdudc/gis-dsl#readme",
5
5
  "repository": {
6
6
  "type": "git",
@@ -51,4 +51,4 @@
51
51
  "prepare": "husky install",
52
52
  "test": "mocha --ui qunit"
53
53
  }
54
- }
54
+ }