@lbdudc/gp-gis-dsl 0.2.0
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.
- package/.eslintignore +2 -0
- package/.gitattributes +4 -0
- package/.prettierignore +2 -0
- package/LICENSE +22 -0
- package/README.md +37 -0
- package/grammar/GISGrammar.g4 +230 -0
- package/package.json +50 -0
- package/src/GISVisitor.js +318 -0
- package/src/GISVisitorHelper.js +162 -0
- package/src/cli.js +34 -0
- package/src/error/ErrorListener.js +26 -0
- package/src/error/SyntaxGenericError.js +18 -0
- package/src/index.js +26 -0
- package/src/lib/GISGrammar.interp +140 -0
- package/src/lib/GISGrammar.tokens +60 -0
- package/src/lib/GISGrammarLexer.interp +201 -0
- package/src/lib/GISGrammarLexer.js +354 -0
- package/src/lib/GISGrammarLexer.tokens +60 -0
- package/src/lib/GISGrammarListener.js +270 -0
- package/src/lib/GISGrammarParser.js +3173 -0
- package/src/lib/GISGrammarVisitor.js +184 -0
- package/src/spl/GIS.js +234 -0
- package/src/spl/GeoJSONLayer.js +21 -0
- package/src/spl/GeoJSONLayerStyle.js +14 -0
- package/src/spl/Map.js +44 -0
- package/src/spl/TileLayer.js +16 -0
- package/src/spl/WMSLayer.js +30 -0
- package/src/spl/WMSStyle.js +13 -0
- package/src/store.js +74 -0
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
function transformation(spec) {
|
|
2
|
+
_relationships(spec);
|
|
3
|
+
const newSpec = {
|
|
4
|
+
features: [
|
|
5
|
+
"GEMA_SPL",
|
|
6
|
+
"DataManagement",
|
|
7
|
+
"GraphicalUserInterface",
|
|
8
|
+
"MapViewer",
|
|
9
|
+
"Tools",
|
|
10
|
+
"DM_SpatialDatabase",
|
|
11
|
+
"DM_GenerationType",
|
|
12
|
+
"DM_DataServer",
|
|
13
|
+
"MV_MapServer",
|
|
14
|
+
"MV_Tools",
|
|
15
|
+
"MV_MapManagement",
|
|
16
|
+
"DM_SD_PostGIS",
|
|
17
|
+
"MV_T_Pan",
|
|
18
|
+
"MV_T_Zoom",
|
|
19
|
+
"DM_GT_Sequence",
|
|
20
|
+
"MV_MM_MultipleMapViewer",
|
|
21
|
+
"MV_MM_MMV_MapSelectorInMapViewer",
|
|
22
|
+
"MV_MM_MMV_MapSelectorInMenuElement",
|
|
23
|
+
"MV_MS_GeoServer",
|
|
24
|
+
"GUI_Forms",
|
|
25
|
+
"GUI_F_Editable",
|
|
26
|
+
"GUI_F_Creatable",
|
|
27
|
+
"GUI_F_Removable",
|
|
28
|
+
"GUI_F_R_ConfirmationAlert",
|
|
29
|
+
"GUI_Lists",
|
|
30
|
+
"GUI_L_FormLink",
|
|
31
|
+
"GUI_L_F_BasicSearch",
|
|
32
|
+
"GUI_L_Filterable",
|
|
33
|
+
"GUI_L_Sortable",
|
|
34
|
+
"GUI_L_LocateInMap",
|
|
35
|
+
"GUI_L_ViewListAsMap",
|
|
36
|
+
"GUI_L_Export",
|
|
37
|
+
"GUI_StaticPages",
|
|
38
|
+
"MV_ContextInformation",
|
|
39
|
+
"MV_CI_Scale",
|
|
40
|
+
"MV_CI_Map",
|
|
41
|
+
"MV_CI_CenterCoordinates",
|
|
42
|
+
"MV_CI_Dimensions",
|
|
43
|
+
"MV_DetailOnClick",
|
|
44
|
+
"MV_LayerManagement",
|
|
45
|
+
"MV_LM_CenterViewOnLayer",
|
|
46
|
+
"MV_LM_Order",
|
|
47
|
+
"MV_LM_Opacity",
|
|
48
|
+
"MV_LM_HideLayer",
|
|
49
|
+
"MV_LM_Style",
|
|
50
|
+
"MV_LM_ExternalLayer",
|
|
51
|
+
"MV_LM_StylePreview",
|
|
52
|
+
"MV_T_Export",
|
|
53
|
+
"MV_T_E_Type",
|
|
54
|
+
"MV_T_E_F_URL",
|
|
55
|
+
"MV_T_E_F_PDF",
|
|
56
|
+
"MV_T_E_SetScale",
|
|
57
|
+
"MV_T_E_ShowLegend",
|
|
58
|
+
"MV_T_InformationMode",
|
|
59
|
+
"MV_T_MeasureControl",
|
|
60
|
+
"MV_T_M_Distance",
|
|
61
|
+
"MV_T_M_Line",
|
|
62
|
+
"MV_T_M_Polygon",
|
|
63
|
+
"MV_T_ZoomWindow",
|
|
64
|
+
"GUI_Menu",
|
|
65
|
+
"GUI_M_Position",
|
|
66
|
+
"GUI_M_Top",
|
|
67
|
+
"DM_DataInput",
|
|
68
|
+
"DM_DI_DataFeeding",
|
|
69
|
+
"DM_DI_DF_Shapefile",
|
|
70
|
+
"T_GIS",
|
|
71
|
+
"T_EntitiesInformation",
|
|
72
|
+
"D_C_Postgres",
|
|
73
|
+
"D_C_Geoserver",
|
|
74
|
+
"D_C_Nginx",
|
|
75
|
+
],
|
|
76
|
+
basicData: {
|
|
77
|
+
name: spec.name,
|
|
78
|
+
},
|
|
79
|
+
data: {
|
|
80
|
+
dataModel: {
|
|
81
|
+
entities: spec.entities,
|
|
82
|
+
enums: [],
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
mapViewer: {
|
|
86
|
+
maps: spec.maps,
|
|
87
|
+
layers: spec.layers,
|
|
88
|
+
styles: spec.styles,
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
if (spec.extra) {
|
|
93
|
+
newSpec.basicData.extra = spec.extra;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
return newSpec;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
function _relationships(spec) {
|
|
100
|
+
let source, target;
|
|
101
|
+
|
|
102
|
+
spec.relationships.forEach((r) => {
|
|
103
|
+
source = spec.getEntity(r.source);
|
|
104
|
+
target = spec.getEntity(r.target);
|
|
105
|
+
let sourceOwner = false;
|
|
106
|
+
let targetOwner = false;
|
|
107
|
+
let sourceMultiple = _multiple(r.sourceOpts.multiplicity);
|
|
108
|
+
let targetMultiple = _multiple(r.targetOpts.multiplicity);
|
|
109
|
+
if (sourceMultiple && !targetMultiple) {
|
|
110
|
+
targetOwner = true;
|
|
111
|
+
} else {
|
|
112
|
+
sourceOwner = true;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
source.properties.push({
|
|
116
|
+
name: r.sourceOpts.label,
|
|
117
|
+
class: target.name,
|
|
118
|
+
owner: sourceOwner,
|
|
119
|
+
bidirectional: r.targetOpts.label,
|
|
120
|
+
multiple: sourceMultiple,
|
|
121
|
+
required: _required(r.sourceOpts.multiplicity),
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
target.properties.push({
|
|
125
|
+
name: r.targetOpts.label,
|
|
126
|
+
class: source.name,
|
|
127
|
+
owner: targetOwner,
|
|
128
|
+
bidirectional: r.sourceOpts.label,
|
|
129
|
+
multiple: targetMultiple,
|
|
130
|
+
required: _required(r.targetOpts.multiplicity),
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
function _multiple(multiplicity) {
|
|
136
|
+
return ["1..1", "0..1"].find((a) => a == multiplicity) == null;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
function _required(multiplicity) {
|
|
140
|
+
return ["1..1", "1..*"].find((a) => a == multiplicity) != null;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
function getPropertyParams(symbols) {
|
|
144
|
+
if (!symbols.length) return null;
|
|
145
|
+
|
|
146
|
+
const ret = {};
|
|
147
|
+
if (symbols.includes("identifier")) {
|
|
148
|
+
ret.pk = true;
|
|
149
|
+
}
|
|
150
|
+
if (symbols.includes("required")) {
|
|
151
|
+
ret.required = true;
|
|
152
|
+
}
|
|
153
|
+
if (symbols.includes("unique")) {
|
|
154
|
+
ret.unique = true;
|
|
155
|
+
}
|
|
156
|
+
if (symbols.includes("display_string")) {
|
|
157
|
+
ret.displayString = true;
|
|
158
|
+
}
|
|
159
|
+
return ret;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
export { transformation, getPropertyParams };
|
package/src/cli.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import meow from "meow";
|
|
4
|
+
import fs from "fs";
|
|
5
|
+
import gisdslParser from "./index.js";
|
|
6
|
+
import path from "path";
|
|
7
|
+
|
|
8
|
+
const usage = "Usage: gisdsl input output";
|
|
9
|
+
|
|
10
|
+
const cli = meow(usage, {
|
|
11
|
+
importMeta: import.meta,
|
|
12
|
+
flags: {
|
|
13
|
+
debug: {
|
|
14
|
+
type: "boolean",
|
|
15
|
+
default: false,
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
if (cli.input.length < 2) {
|
|
21
|
+
cli.showHelp();
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const inputPath = path.resolve(process.cwd(), cli.input.at(0));
|
|
25
|
+
const input = fs.readFileSync(inputPath, {
|
|
26
|
+
encoding: "utf-8",
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
const spec = gisdslParser(input, cli.flags.debug);
|
|
30
|
+
|
|
31
|
+
const outputPath = path.resolve(process.cwd(), cli.input.at(1));
|
|
32
|
+
fs.writeFileSync(outputPath, JSON.stringify(spec, null, 2), "utf8");
|
|
33
|
+
|
|
34
|
+
console.log(`File ${cli.input.at(1)} generated`);
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import antlr4 from "antlr4";
|
|
2
|
+
|
|
3
|
+
import SyntaxGenericError from "./SyntaxGenericError.js";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Custom Error Listener
|
|
7
|
+
*
|
|
8
|
+
* @returns {object}
|
|
9
|
+
*/
|
|
10
|
+
class ErrorListener extends antlr4.error.ErrorListener {
|
|
11
|
+
/**
|
|
12
|
+
* Checks syntax error
|
|
13
|
+
*
|
|
14
|
+
* @param {object} recognizer The parsing support code essentially. Most of it is error recovery stuff
|
|
15
|
+
* @param {object} symbol Offending symbol
|
|
16
|
+
* @param {int} line Line of offending symbol
|
|
17
|
+
* @param {int} column Position in line of offending symbol
|
|
18
|
+
* @param {string} message Error message
|
|
19
|
+
* @param {string} payload Stack trace
|
|
20
|
+
*/
|
|
21
|
+
syntaxError(recognizer, symbol, line, column, message) {
|
|
22
|
+
throw new SyntaxGenericError({ line, column, message });
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export default ErrorListener;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export default class SyntaxGenericError extends Error {
|
|
2
|
+
constructor(payload) {
|
|
3
|
+
super(payload);
|
|
4
|
+
|
|
5
|
+
this.code = "E_SYNTAX_GENERIC";
|
|
6
|
+
this.message = "Something went wrong";
|
|
7
|
+
|
|
8
|
+
if (typeof payload !== "undefined") {
|
|
9
|
+
this.message = payload.message || this.message;
|
|
10
|
+
this.payload = payload;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
console.error(
|
|
14
|
+
`line ${this.payload.line}, col ${this.payload.column}: ${this.payload.message}`,
|
|
15
|
+
);
|
|
16
|
+
Error.captureStackTrace(this, SyntaxGenericError);
|
|
17
|
+
}
|
|
18
|
+
}
|
package/src/index.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import antlr4 from "antlr4";
|
|
2
|
+
import GISGrammarLexer from "./lib/GISGrammarLexer.js";
|
|
3
|
+
import GISGrammarParser from "./lib/GISGrammarParser.js";
|
|
4
|
+
import ErrorListener from "./error/ErrorListener.js";
|
|
5
|
+
import GISVisitor from "./GISVisitor.js";
|
|
6
|
+
import store from "./store.js";
|
|
7
|
+
|
|
8
|
+
export default function parse(inputStr, debug = false) {
|
|
9
|
+
const chars = new antlr4.InputStream(inputStr);
|
|
10
|
+
const lexer = new GISGrammarLexer(chars);
|
|
11
|
+
lexer.strictMode = false; // do not use js strictMode
|
|
12
|
+
|
|
13
|
+
const tokens = new antlr4.CommonTokenStream(lexer);
|
|
14
|
+
const parser = new GISGrammarParser(tokens);
|
|
15
|
+
|
|
16
|
+
const errorListener = new ErrorListener();
|
|
17
|
+
// Do this after creating the parser and before running it
|
|
18
|
+
parser.removeErrorListeners(); // Remove default ConsoleErrorListener
|
|
19
|
+
parser.addErrorListener(errorListener); // Add custom error listener
|
|
20
|
+
|
|
21
|
+
const visitor = new GISVisitor(store, debug);
|
|
22
|
+
const tree = parser.parse();
|
|
23
|
+
visitor.start(tree);
|
|
24
|
+
|
|
25
|
+
return store.getLastGeneratedProduct();
|
|
26
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
token literal names:
|
|
2
|
+
null
|
|
3
|
+
null
|
|
4
|
+
null
|
|
5
|
+
null
|
|
6
|
+
null
|
|
7
|
+
null
|
|
8
|
+
null
|
|
9
|
+
null
|
|
10
|
+
null
|
|
11
|
+
null
|
|
12
|
+
null
|
|
13
|
+
null
|
|
14
|
+
null
|
|
15
|
+
null
|
|
16
|
+
null
|
|
17
|
+
null
|
|
18
|
+
null
|
|
19
|
+
null
|
|
20
|
+
null
|
|
21
|
+
null
|
|
22
|
+
null
|
|
23
|
+
null
|
|
24
|
+
null
|
|
25
|
+
null
|
|
26
|
+
null
|
|
27
|
+
null
|
|
28
|
+
null
|
|
29
|
+
null
|
|
30
|
+
null
|
|
31
|
+
null
|
|
32
|
+
null
|
|
33
|
+
null
|
|
34
|
+
null
|
|
35
|
+
'0..1'
|
|
36
|
+
'1..1'
|
|
37
|
+
'0..*'
|
|
38
|
+
'1..*'
|
|
39
|
+
null
|
|
40
|
+
'#'
|
|
41
|
+
'.'
|
|
42
|
+
'('
|
|
43
|
+
')'
|
|
44
|
+
','
|
|
45
|
+
';'
|
|
46
|
+
null
|
|
47
|
+
null
|
|
48
|
+
null
|
|
49
|
+
null
|
|
50
|
+
null
|
|
51
|
+
null
|
|
52
|
+
null
|
|
53
|
+
|
|
54
|
+
token symbolic names:
|
|
55
|
+
null
|
|
56
|
+
CREATE_SYMBOL
|
|
57
|
+
GIS_SYMBOL
|
|
58
|
+
ENTITY_SYMBOL
|
|
59
|
+
USING_SYMBOL
|
|
60
|
+
USE_SYMBOL
|
|
61
|
+
GENERATE_SYMBOL
|
|
62
|
+
IDENTIFIER_SYMBOL
|
|
63
|
+
RELATIONSHIP_SYMBOL
|
|
64
|
+
DISPLAYSTRING_SYMBOL
|
|
65
|
+
REQUIRED_SYMBOL
|
|
66
|
+
UNIQUE_SYMBOL
|
|
67
|
+
BIDIRECTIONAL_SYMBOL
|
|
68
|
+
MAPPEDBY_SYMBOL
|
|
69
|
+
LAYER_SYMBOL
|
|
70
|
+
TILE_SYMBOL
|
|
71
|
+
GEOJSON_SYMBOL
|
|
72
|
+
AS_SYMBOL
|
|
73
|
+
URL_SYMBOL
|
|
74
|
+
SLD_SYMBOL
|
|
75
|
+
EDITABLE_SYMBOL
|
|
76
|
+
FILL_COLOR_SYMBOL
|
|
77
|
+
STROKE_COLOR_SYMBOL
|
|
78
|
+
FILL_OPACITY_SYMBOL
|
|
79
|
+
STROKE_OPACITY_SYMBOL
|
|
80
|
+
WMS_SYMBOL
|
|
81
|
+
STYLE_SYMBOL
|
|
82
|
+
IS_BASE_LAYER_SYMBOL
|
|
83
|
+
HIDDEN_SYMBOL
|
|
84
|
+
SORTABLE_SYMBOL
|
|
85
|
+
MAP_SYMBOL
|
|
86
|
+
SET_SYMBOL
|
|
87
|
+
DEPLOYMENT_SYMBOL
|
|
88
|
+
ZERO_ONE_SYMBOL
|
|
89
|
+
ONE_ONE_SYMBOL
|
|
90
|
+
ZERO_MANY_SYMBOL
|
|
91
|
+
ONE_MANY_SYMBOL
|
|
92
|
+
TYPE
|
|
93
|
+
POUND_SYMBOL
|
|
94
|
+
DOT_SYMBOL
|
|
95
|
+
OPAR_SYMBOL
|
|
96
|
+
CPAR_SYMBOL
|
|
97
|
+
COMMA_SYMBOL
|
|
98
|
+
SCOL_SYMBOL
|
|
99
|
+
HEX_COLOR
|
|
100
|
+
INT_NUMBER
|
|
101
|
+
FLOAT_NUMBER
|
|
102
|
+
COMMENT
|
|
103
|
+
WHITESPACE
|
|
104
|
+
IDENTIFIER
|
|
105
|
+
QUOTED_TEXT
|
|
106
|
+
|
|
107
|
+
rule names:
|
|
108
|
+
parse
|
|
109
|
+
sentence
|
|
110
|
+
createStatement
|
|
111
|
+
createGIS
|
|
112
|
+
createEntity
|
|
113
|
+
createLayer
|
|
114
|
+
createTileLayer
|
|
115
|
+
createGeoJSONLayer
|
|
116
|
+
createWmsStyle
|
|
117
|
+
createWmsLayer
|
|
118
|
+
wmsSubLayer
|
|
119
|
+
createSortableMap
|
|
120
|
+
createMap
|
|
121
|
+
mapLayer
|
|
122
|
+
useGIS
|
|
123
|
+
generateGIS
|
|
124
|
+
setDeployment
|
|
125
|
+
deploymentProperty
|
|
126
|
+
property
|
|
127
|
+
propertyDefinition
|
|
128
|
+
relationshipDefinition
|
|
129
|
+
mappedRelationshipDefinition
|
|
130
|
+
ownedRelationshipDefinition
|
|
131
|
+
cardinality
|
|
132
|
+
srid
|
|
133
|
+
identifier
|
|
134
|
+
text
|
|
135
|
+
hexColor
|
|
136
|
+
floatNumber
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
atn:
|
|
140
|
+
[4, 1, 50, 275, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, 26, 7, 26, 2, 27, 7, 27, 2, 28, 7, 28, 1, 0, 4, 0, 60, 8, 0, 11, 0, 12, 0, 61, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 68, 8, 1, 1, 2, 1, 2, 1, 2, 1, 2, 3, 2, 74, 8, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 5, 4, 88, 8, 4, 10, 4, 12, 4, 91, 9, 4, 1, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 3, 5, 102, 8, 5, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 3, 6, 109, 8, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 3, 7, 122, 8, 7, 1, 7, 1, 7, 1, 7, 3, 7, 127, 8, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 3, 9, 158, 8, 9, 1, 9, 1, 9, 1, 9, 1, 9, 5, 9, 164, 8, 9, 10, 9, 12, 9, 167, 9, 9, 1, 9, 1, 9, 1, 9, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 11, 1, 12, 1, 12, 1, 12, 1, 12, 3, 12, 182, 8, 12, 1, 12, 1, 12, 1, 12, 1, 12, 5, 12, 188, 8, 12, 10, 12, 12, 12, 191, 9, 12, 1, 12, 1, 12, 1, 12, 1, 13, 1, 13, 3, 13, 198, 8, 13, 1, 13, 3, 13, 201, 8, 13, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 5, 16, 219, 8, 16, 10, 16, 12, 16, 222, 9, 16, 1, 16, 1, 16, 1, 16, 1, 17, 1, 17, 1, 17, 1, 18, 1, 18, 3, 18, 232, 8, 18, 1, 19, 1, 19, 1, 19, 5, 19, 237, 8, 19, 10, 19, 12, 19, 240, 9, 19, 1, 20, 1, 20, 3, 20, 244, 8, 20, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 261, 8, 22, 1, 23, 1, 23, 1, 24, 1, 24, 1, 25, 1, 25, 1, 26, 1, 26, 1, 27, 1, 27, 1, 28, 1, 28, 1, 28, 0, 0, 29, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 0, 2, 2, 0, 7, 7, 9, 11, 1, 0, 33, 36, 271, 0, 59, 1, 0, 0, 0, 2, 67, 1, 0, 0, 0, 4, 69, 1, 0, 0, 0, 6, 75, 1, 0, 0, 0, 8, 81, 1, 0, 0, 0, 10, 101, 1, 0, 0, 0, 12, 103, 1, 0, 0, 0, 14, 116, 1, 0, 0, 0, 16, 143, 1, 0, 0, 0, 18, 152, 1, 0, 0, 0, 20, 171, 1, 0, 0, 0, 22, 174, 1, 0, 0, 0, 24, 177, 1, 0, 0, 0, 26, 195, 1, 0, 0, 0, 28, 202, 1, 0, 0, 0, 30, 207, 1, 0, 0, 0, 32, 212, 1, 0, 0, 0, 34, 226, 1, 0, 0, 0, 36, 231, 1, 0, 0, 0, 38, 233, 1, 0, 0, 0, 40, 243, 1, 0, 0, 0, 42, 245, 1, 0, 0, 0, 44, 251, 1, 0, 0, 0, 46, 262, 1, 0, 0, 0, 48, 264, 1, 0, 0, 0, 50, 266, 1, 0, 0, 0, 52, 268, 1, 0, 0, 0, 54, 270, 1, 0, 0, 0, 56, 272, 1, 0, 0, 0, 58, 60, 3, 2, 1, 0, 59, 58, 1, 0, 0, 0, 60, 61, 1, 0, 0, 0, 61, 59, 1, 0, 0, 0, 61, 62, 1, 0, 0, 0, 62, 1, 1, 0, 0, 0, 63, 68, 3, 4, 2, 0, 64, 68, 3, 28, 14, 0, 65, 68, 3, 30, 15, 0, 66, 68, 3, 32, 16, 0, 67, 63, 1, 0, 0, 0, 67, 64, 1, 0, 0, 0, 67, 65, 1, 0, 0, 0, 67, 66, 1, 0, 0, 0, 68, 3, 1, 0, 0, 0, 69, 73, 5, 1, 0, 0, 70, 74, 3, 6, 3, 0, 71, 74, 3, 8, 4, 0, 72, 74, 3, 10, 5, 0, 73, 70, 1, 0, 0, 0, 73, 71, 1, 0, 0, 0, 73, 72, 1, 0, 0, 0, 74, 5, 1, 0, 0, 0, 75, 76, 5, 2, 0, 0, 76, 77, 3, 50, 25, 0, 77, 78, 5, 4, 0, 0, 78, 79, 3, 48, 24, 0, 79, 80, 5, 43, 0, 0, 80, 7, 1, 0, 0, 0, 81, 82, 5, 3, 0, 0, 82, 83, 3, 50, 25, 0, 83, 84, 5, 40, 0, 0, 84, 89, 3, 36, 18, 0, 85, 86, 5, 42, 0, 0, 86, 88, 3, 36, 18, 0, 87, 85, 1, 0, 0, 0, 88, 91, 1, 0, 0, 0, 89, 87, 1, 0, 0, 0, 89, 90, 1, 0, 0, 0, 90, 92, 1, 0, 0, 0, 91, 89, 1, 0, 0, 0, 92, 93, 5, 41, 0, 0, 93, 94, 5, 43, 0, 0, 94, 9, 1, 0, 0, 0, 95, 102, 3, 12, 6, 0, 96, 102, 3, 14, 7, 0, 97, 102, 3, 16, 8, 0, 98, 102, 3, 18, 9, 0, 99, 102, 3, 24, 12, 0, 100, 102, 3, 22, 11, 0, 101, 95, 1, 0, 0, 0, 101, 96, 1, 0, 0, 0, 101, 97, 1, 0, 0, 0, 101, 98, 1, 0, 0, 0, 101, 99, 1, 0, 0, 0, 101, 100, 1, 0, 0, 0, 102, 11, 1, 0, 0, 0, 103, 104, 5, 15, 0, 0, 104, 105, 5, 14, 0, 0, 105, 108, 3, 50, 25, 0, 106, 107, 5, 17, 0, 0, 107, 109, 3, 52, 26, 0, 108, 106, 1, 0, 0, 0, 108, 109, 1, 0, 0, 0, 109, 110, 1, 0, 0, 0, 110, 111, 5, 40, 0, 0, 111, 112, 5, 18, 0, 0, 112, 113, 3, 52, 26, 0, 113, 114, 5, 41, 0, 0, 114, 115, 5, 43, 0, 0, 115, 13, 1, 0, 0, 0, 116, 117, 5, 16, 0, 0, 117, 118, 5, 14, 0, 0, 118, 121, 3, 50, 25, 0, 119, 120, 5, 17, 0, 0, 120, 122, 3, 52, 26, 0, 121, 119, 1, 0, 0, 0, 121, 122, 1, 0, 0, 0, 122, 123, 1, 0, 0, 0, 123, 124, 5, 40, 0, 0, 124, 126, 3, 50, 25, 0, 125, 127, 5, 20, 0, 0, 126, 125, 1, 0, 0, 0, 126, 127, 1, 0, 0, 0, 127, 128, 1, 0, 0, 0, 128, 129, 5, 42, 0, 0, 129, 130, 5, 21, 0, 0, 130, 131, 3, 54, 27, 0, 131, 132, 5, 42, 0, 0, 132, 133, 5, 22, 0, 0, 133, 134, 3, 54, 27, 0, 134, 135, 5, 42, 0, 0, 135, 136, 5, 23, 0, 0, 136, 137, 3, 56, 28, 0, 137, 138, 5, 42, 0, 0, 138, 139, 5, 24, 0, 0, 139, 140, 3, 56, 28, 0, 140, 141, 5, 41, 0, 0, 141, 142, 5, 43, 0, 0, 142, 15, 1, 0, 0, 0, 143, 144, 5, 25, 0, 0, 144, 145, 5, 26, 0, 0, 145, 146, 3, 50, 25, 0, 146, 147, 5, 40, 0, 0, 147, 148, 5, 19, 0, 0, 148, 149, 3, 52, 26, 0, 149, 150, 5, 41, 0, 0, 150, 151, 5, 43, 0, 0, 151, 17, 1, 0, 0, 0, 152, 153, 5, 25, 0, 0, 153, 154, 5, 14, 0, 0, 154, 157, 3, 50, 25, 0, 155, 156, 5, 17, 0, 0, 156, 158, 3, 52, 26, 0, 157, 155, 1, 0, 0, 0, 157, 158, 1, 0, 0, 0, 158, 159, 1, 0, 0, 0, 159, 160, 5, 40, 0, 0, 160, 165, 3, 20, 10, 0, 161, 162, 5, 42, 0, 0, 162, 164, 3, 20, 10, 0, 163, 161, 1, 0, 0, 0, 164, 167, 1, 0, 0, 0, 165, 163, 1, 0, 0, 0, 165, 166, 1, 0, 0, 0, 166, 168, 1, 0, 0, 0, 167, 165, 1, 0, 0, 0, 168, 169, 5, 41, 0, 0, 169, 170, 5, 43, 0, 0, 170, 19, 1, 0, 0, 0, 171, 172, 3, 50, 25, 0, 172, 173, 3, 50, 25, 0, 173, 21, 1, 0, 0, 0, 174, 175, 5, 29, 0, 0, 175, 176, 3, 24, 12, 0, 176, 23, 1, 0, 0, 0, 177, 178, 5, 30, 0, 0, 178, 181, 3, 50, 25, 0, 179, 180, 5, 17, 0, 0, 180, 182, 3, 52, 26, 0, 181, 179, 1, 0, 0, 0, 181, 182, 1, 0, 0, 0, 182, 183, 1, 0, 0, 0, 183, 184, 5, 40, 0, 0, 184, 189, 3, 26, 13, 0, 185, 186, 5, 42, 0, 0, 186, 188, 3, 26, 13, 0, 187, 185, 1, 0, 0, 0, 188, 191, 1, 0, 0, 0, 189, 187, 1, 0, 0, 0, 189, 190, 1, 0, 0, 0, 190, 192, 1, 0, 0, 0, 191, 189, 1, 0, 0, 0, 192, 193, 5, 41, 0, 0, 193, 194, 5, 43, 0, 0, 194, 25, 1, 0, 0, 0, 195, 197, 3, 50, 25, 0, 196, 198, 5, 27, 0, 0, 197, 196, 1, 0, 0, 0, 197, 198, 1, 0, 0, 0, 198, 200, 1, 0, 0, 0, 199, 201, 5, 28, 0, 0, 200, 199, 1, 0, 0, 0, 200, 201, 1, 0, 0, 0, 201, 27, 1, 0, 0, 0, 202, 203, 5, 5, 0, 0, 203, 204, 5, 2, 0, 0, 204, 205, 3, 50, 25, 0, 205, 206, 5, 43, 0, 0, 206, 29, 1, 0, 0, 0, 207, 208, 5, 6, 0, 0, 208, 209, 5, 2, 0, 0, 209, 210, 3, 50, 25, 0, 210, 211, 5, 43, 0, 0, 211, 31, 1, 0, 0, 0, 212, 213, 5, 31, 0, 0, 213, 214, 5, 32, 0, 0, 214, 215, 5, 40, 0, 0, 215, 220, 3, 34, 17, 0, 216, 217, 5, 42, 0, 0, 217, 219, 3, 34, 17, 0, 218, 216, 1, 0, 0, 0, 219, 222, 1, 0, 0, 0, 220, 218, 1, 0, 0, 0, 220, 221, 1, 0, 0, 0, 221, 223, 1, 0, 0, 0, 222, 220, 1, 0, 0, 0, 223, 224, 5, 41, 0, 0, 224, 225, 5, 43, 0, 0, 225, 33, 1, 0, 0, 0, 226, 227, 3, 52, 26, 0, 227, 228, 3, 52, 26, 0, 228, 35, 1, 0, 0, 0, 229, 232, 3, 38, 19, 0, 230, 232, 3, 40, 20, 0, 231, 229, 1, 0, 0, 0, 231, 230, 1, 0, 0, 0, 232, 37, 1, 0, 0, 0, 233, 234, 3, 50, 25, 0, 234, 238, 5, 37, 0, 0, 235, 237, 7, 0, 0, 0, 236, 235, 1, 0, 0, 0, 237, 240, 1, 0, 0, 0, 238, 236, 1, 0, 0, 0, 238, 239, 1, 0, 0, 0, 239, 39, 1, 0, 0, 0, 240, 238, 1, 0, 0, 0, 241, 244, 3, 44, 22, 0, 242, 244, 3, 42, 21, 0, 243, 241, 1, 0, 0, 0, 243, 242, 1, 0, 0, 0, 244, 41, 1, 0, 0, 0, 245, 246, 3, 50, 25, 0, 246, 247, 3, 50, 25, 0, 247, 248, 5, 8, 0, 0, 248, 249, 5, 13, 0, 0, 249, 250, 3, 50, 25, 0, 250, 43, 1, 0, 0, 0, 251, 252, 3, 50, 25, 0, 252, 253, 3, 50, 25, 0, 253, 254, 5, 8, 0, 0, 254, 255, 5, 40, 0, 0, 255, 256, 3, 46, 23, 0, 256, 257, 5, 42, 0, 0, 257, 258, 3, 46, 23, 0, 258, 260, 5, 41, 0, 0, 259, 261, 5, 12, 0, 0, 260, 259, 1, 0, 0, 0, 260, 261, 1, 0, 0, 0, 261, 45, 1, 0, 0, 0, 262, 263, 7, 1, 0, 0, 263, 47, 1, 0, 0, 0, 264, 265, 5, 45, 0, 0, 265, 49, 1, 0, 0, 0, 266, 267, 5, 49, 0, 0, 267, 51, 1, 0, 0, 0, 268, 269, 5, 50, 0, 0, 269, 53, 1, 0, 0, 0, 270, 271, 5, 44, 0, 0, 271, 55, 1, 0, 0, 0, 272, 273, 5, 46, 0, 0, 273, 57, 1, 0, 0, 0, 19, 61, 67, 73, 89, 101, 108, 121, 126, 157, 165, 181, 189, 197, 200, 220, 231, 238, 243, 260]
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
CREATE_SYMBOL=1
|
|
2
|
+
GIS_SYMBOL=2
|
|
3
|
+
ENTITY_SYMBOL=3
|
|
4
|
+
USING_SYMBOL=4
|
|
5
|
+
USE_SYMBOL=5
|
|
6
|
+
GENERATE_SYMBOL=6
|
|
7
|
+
IDENTIFIER_SYMBOL=7
|
|
8
|
+
RELATIONSHIP_SYMBOL=8
|
|
9
|
+
DISPLAYSTRING_SYMBOL=9
|
|
10
|
+
REQUIRED_SYMBOL=10
|
|
11
|
+
UNIQUE_SYMBOL=11
|
|
12
|
+
BIDIRECTIONAL_SYMBOL=12
|
|
13
|
+
MAPPEDBY_SYMBOL=13
|
|
14
|
+
LAYER_SYMBOL=14
|
|
15
|
+
TILE_SYMBOL=15
|
|
16
|
+
GEOJSON_SYMBOL=16
|
|
17
|
+
AS_SYMBOL=17
|
|
18
|
+
URL_SYMBOL=18
|
|
19
|
+
SLD_SYMBOL=19
|
|
20
|
+
EDITABLE_SYMBOL=20
|
|
21
|
+
FILL_COLOR_SYMBOL=21
|
|
22
|
+
STROKE_COLOR_SYMBOL=22
|
|
23
|
+
FILL_OPACITY_SYMBOL=23
|
|
24
|
+
STROKE_OPACITY_SYMBOL=24
|
|
25
|
+
WMS_SYMBOL=25
|
|
26
|
+
STYLE_SYMBOL=26
|
|
27
|
+
IS_BASE_LAYER_SYMBOL=27
|
|
28
|
+
HIDDEN_SYMBOL=28
|
|
29
|
+
SORTABLE_SYMBOL=29
|
|
30
|
+
MAP_SYMBOL=30
|
|
31
|
+
SET_SYMBOL=31
|
|
32
|
+
DEPLOYMENT_SYMBOL=32
|
|
33
|
+
ZERO_ONE_SYMBOL=33
|
|
34
|
+
ONE_ONE_SYMBOL=34
|
|
35
|
+
ZERO_MANY_SYMBOL=35
|
|
36
|
+
ONE_MANY_SYMBOL=36
|
|
37
|
+
TYPE=37
|
|
38
|
+
POUND_SYMBOL=38
|
|
39
|
+
DOT_SYMBOL=39
|
|
40
|
+
OPAR_SYMBOL=40
|
|
41
|
+
CPAR_SYMBOL=41
|
|
42
|
+
COMMA_SYMBOL=42
|
|
43
|
+
SCOL_SYMBOL=43
|
|
44
|
+
HEX_COLOR=44
|
|
45
|
+
INT_NUMBER=45
|
|
46
|
+
FLOAT_NUMBER=46
|
|
47
|
+
COMMENT=47
|
|
48
|
+
WHITESPACE=48
|
|
49
|
+
IDENTIFIER=49
|
|
50
|
+
QUOTED_TEXT=50
|
|
51
|
+
'0..1'=33
|
|
52
|
+
'1..1'=34
|
|
53
|
+
'0..*'=35
|
|
54
|
+
'1..*'=36
|
|
55
|
+
'#'=38
|
|
56
|
+
'.'=39
|
|
57
|
+
'('=40
|
|
58
|
+
')'=41
|
|
59
|
+
','=42
|
|
60
|
+
';'=43
|