-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathindex.html
205 lines (185 loc) · 6.68 KB
/
index.html
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
<!DOCTYPE>
<html>
<head>
<title>Shacl-gui editor</title>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1">
<link href="./css/cytoscape-context-menus.css" rel="stylesheet"
type="text/css" />
<link href="./css/mystyle.css" rel="stylesheet"
type="text/css" />
<script src="js/jquery.min.js"></script>
<script src="https://unpkg.com/cytoscape/dist/cytoscape.min.js"></script>
<script src="./js/cytoscape-context-menus.js"></script>
<script src="http://marvl.infotech.monash.edu/webcola/cola.min.js"></script>
<script src="./js/cytoscape-cola.js"></script>
<script src="./js/Turtle.js"></script>
<script src="./js/ShaclData.js"></script>
<script src="./js/main.js"></script>
<script src="./js/shacl.js"></script>
<script src="./js/util.js"></script>
<script src="./js/data.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.js"></script>
<script src="./js/cytoscape-edgehandles.js"></script>
</head>
<body onload="checkFirstVisit()">
<div id="addDiv" class="modal">
<!-- Modal content -->
<div class="modal-content autocomplete">
<span onclick="spanClick('addDiv');" class="close">×</span>
<p>
Class name:
<input type="text" id="txtClassName" onfocus="makeAutoComplete(this.id);">
</p>
<div class="btn-group">
<button id="btnAddClass" class="button" onclick="addClass();">addClass</button>
</div>
</div>
</div>
<div id="addPropDiv" class="modal">
<!-- Modal content -->
<div class="modal-content autocomplete">
<span onclick="spanClick('addPropDiv');" class="close">×</span>
<p>
Property:
<input type="text" id="txtProp" onfocus="makeAutoComplete(this.id);">
Value - RDF term:
<input type="text" id="txtValue" onfocus="makeAutoComplete(this.id);">
</p>
<div class="btn-group">
<button id="btnAddProp" class="button" onclick="addProp();">addProp</button>
</div>
</div>
</div>
<div id="addShConstraint" class="modal">
<!-- Modal content -->
<div class="modal-content">
<span onclick="spanClick('addShConstraint');" class="close">×</span>
<p>
Constraint property
<textarea rows="3" cols="100" spellcheck="false" id="txtShProp"></textarea>
<button id="btnSugShConst" class="button" onclick="sugShConstraint();">Suggested constraint</button>
<a href="examplesShaclConst.html" target="_blank">Another suggested examples(click here).</a>
</p>
<div class="btn-group">
<button id="btnAddShConst" class="button" onclick="addShConstraint();">addProp</button>
</div>
</div>
</div>
<div id="addShDiv" class="modal">
<!-- Modal content -->
<div class="modal-content autocomplete">
<span onclick="spanClick('addShDiv');" class="close">×</span>
<p>
Name
<input type="text" id="txtShClassName" onfocus="makeAutoComplete(this.id);">
</p>
<p>
<div class="btn-group">
<button id="btnAddShacl" class="button" onclick="addShacl();">add Shacl Shape</button>
</div>
</p>
</div>
</div>
<div id="divEditClass" class="modal">
<!-- Modal content -->
<div class="modal-content autocomplete">
<span onclick="spanClick('divEditClass');" class="close">×</span>
<p>
Class name:
<input type="text" readonly id="txtEdClassName">
</p>
<p>
Extend class:
<input type="text" id="txtEdClassExtend" onfocus="makeAutoComplete(this.id);">
</p>
<p>
Properties and RDF terms:
</p>
<div id="container" class="prop-value autocomplete"></div>
<div class="btn-group">
<button id="btnEdClass" class="button" onclick="saveClass();">Save changes</button>
</div>
</div>
</div>
<div id="addPropClassDiv" class="modal">
<!-- Modal content -->
<div class="modal-content autocomplete">
<span onclick="spanClick('addPropClassDiv');" class="close">×</span>
<p>
Choose a class:
<select name="cbclasses" id="cbclasses" onchange="getProps()">
</select>
</p>
<p>
Choose the property to relate:
<select name="cboprops" id="cboprops">
</select>
</p>
<div class="btn-group">
<button id="btnaddPropClass" class="button" onclick="savePropClass();">Save changes</button>
</div>
</div>
</div>
<div id="divEditShacl" class="modal">
<!-- Modal content -->
<div class="modal-content">
<span onclick="spanClick('divEditShacl');" class="close">×</span>
<p>
Target class:
<input type="text" readonly id="txtEdTargetClassName">
</p>
<p>
Shacl constraints:
</p>
<div id="containerShacl"></div>
<div class="btn-group">
<button id="btnEdShacl" class="button" onclick="saveShacl();">Save changes</button>
</div>
</div>
</div>
<div id="divLoadProject" class="modal">
<!-- Modal content -->
<div class="modal-content">
<span onclick="spanClick('divLoadProject');" class="close">×</span>
<p>
Identification number:
<input type="text" id="txtIdProject">
</p>
or
<p>Input the RDF triples(tested with N-Triples until the moment) or SPARQL query:</p>
<textarea rows="15" cols="100" spellcheck="false" id="txtLoad"></textarea>
<div class="btn-group">
<button id="btnLoad" class="button" onclick="loadProject();">Load</button>
</div>
</div>
</div>
<div id="menu" class="column left">
<div class="btn-group">
<button id="btnAddNode" class="button" onclick="showDiv('addDiv');">Add Class</button>
<button id="btnLoadProject" class="button" onclick="showDiv('divLoadProject');">Load Project</button>
<button id="btnSaveProject" class="button" onclick="saveProject();">Save Project</button>
<button id="btnQueryEndPoint" class="button" onclick="window.location.href='http://localhost:8080/sparql/master';">Query SPARQL End Point</button>
<button id="btnShaclValidation" class="button" onclick="makeValidation();">Shacl
Validation</button>
<button id="btnUpdateUI" class="button" onclick="organizeUI();">Organize Graph</button>
<button id="btnShaclText" title="Try an example of SHACL Textual Validation" class="button" onclick="window.location.href='shacltext.html';">
SHACL Textual example</button>
<button id="btnGitHub" title="fork me on github" style="background-color: red" class="button" onclick="window.location.href='https://github.com/firmao/shaclEditor/';">
Fork me on GitHub</button>
</div>
</div>
<div id="cy" class="column middle"></div>
<div id="code" class="column right">
<textarea rows="15" cols="50" spellcheck="false" id="txtCode"></textarea>
<p>
<textarea rows="15" cols="50" spellcheck="false" id="txtShacl"></textarea>
</p>
<p>
<textarea rows="5" cols="50" spellcheck="false" id="report"></textarea>
</p>
</div>
<br>
</body>
</html>