@igea/oac_backend 1.0.105 → 1.0.107

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@igea/oac_backend",
3
- "version": "1.0.105",
3
+ "version": "1.0.107",
4
4
  "description": "Backend service for the OAC project",
5
5
  "main": "src/index.js",
6
6
  "bin": {
@@ -103,7 +103,7 @@ module.exports = function(jwtLib){
103
103
  console.log(`Send email to ${email} with recovery instructions`)
104
104
  const token = randomUUID();
105
105
  await Users.setPasswordRecoveryToken(response.id, token)
106
- const activationLink = `${EXPOSED.protocol}://${EXPOSED.host}:${EXPOSED.port}/frontend/users/reset_password/${response.id}/${token}`
106
+ const activationLink = `${EXPOSED.protocol}://${EXPOSED.host}:${EXPOSED.port}/frontend/v2/users/reset_password/${response.id}/${token}`
107
107
  EmailSender.sendPasswordRecoveryEmail(
108
108
  email, activationLink
109
109
  ).then( () => {
@@ -225,6 +225,48 @@ router.post('/form/search', (req, res) => {
225
225
  })
226
226
 
227
227
  })
228
+
229
+
230
+ router.post('/form/searchindagini', async (req, res) => {
231
+ try {
232
+ let { tokens, limit = 10, offset = 0 } = req.body;
233
+
234
+ if (!Array.isArray(tokens) || tokens.length === 0) {
235
+ return res.json({
236
+ success: true,
237
+ data: []
238
+ });
239
+ }
240
+
241
+ // Normalizza: stringhe, niente null
242
+ tokens = tokens
243
+ .map(t => String(t).trim())
244
+ .filter(Boolean);
245
+
246
+ if (!tokens.length) {
247
+ return res.json({
248
+ success: true,
249
+ data: []
250
+ });
251
+ }
252
+
253
+ const rows = await Investigations.searchindagini(tokens, limit, offset);
254
+
255
+ res.json({
256
+ success: true,
257
+ data: rows
258
+ });
259
+
260
+ } catch (err) {
261
+ console.error(err);
262
+ res.status(500).json({
263
+ success: false,
264
+ data: null,
265
+ message: `Error searchindagini: ${err}`
266
+ });
267
+ }
268
+ });
269
+
228
270
  //-----------------------------------------------------------------
229
271
 
230
272
  router.get('/form/lock/:row_id/:client_uuid', (req, res) => {
@@ -44,6 +44,38 @@ class Investigations {
44
44
  });
45
45
  }
46
46
 
47
+ static async searchindagini(tokens, limit = 10, offset = 0) {
48
+ const likes = tokens.map(() => `dataset ILIKE ?`).join(' OR ');
49
+ const tsQueries = tokens.map(() => `dataset_search @@ plainto_tsquery('simple', ?)`).join(' OR ');
50
+
51
+ const sql = `
52
+ SELECT DISTINCT
53
+ id,
54
+ uuid,
55
+ COALESCE(
56
+ substring(dataset from 'rdfs:label\\s+"([^"]+)"'),
57
+ uuid
58
+ ) AS label
59
+ FROM investigations
60
+ WHERE
61
+ (${tsQueries})
62
+ OR
63
+ (${likes})
64
+ LIMIT ? OFFSET ?
65
+ `;
66
+
67
+ const params = [
68
+ ...tokens.map(t => `${t}:*`),
69
+ ...tokens.map(t => `%${t}%`),
70
+ limit,
71
+ offset
72
+ ];
73
+
74
+ const result = await db.raw(sql, params);
75
+ return result.rows;
76
+ }
77
+
78
+
47
79
  static getCounter(name){
48
80
  return new Promise(async (resolve, reject) => {
49
81
  try{
@@ -18,44 +18,74 @@
18
18
  @prefix core: <http://data.sparna.fr/ontologies/sparnatural-config-core#> .
19
19
 
20
20
 
21
- ex:E7Activity01Shape_label sh:path rdfs:label ;
22
- #sh:order "1" ;
21
+ ex:E7Activity01Shape_label # LABEL INDAGINE
22
+ sh:path rdfs:label ;
23
23
  sh:name "Label indagine" ;
24
- #sh:path indagine:label_indagine ;
25
24
  sh:nodeKind sh:Literal ;
26
25
  sh:datatype rdf:string ;
27
26
  sh:maxCount 1 ;
28
27
  sh:minCount 1 ;
29
28
  dash:searchWidget core:NonSelectableProperty;
30
- #dash:searchWidget core:SearchProperty ;
31
29
  dash:propertyRole dash:LabelRole ;
32
30
  core:enableOptional "false"^^xsd:boolean ;
33
31
  core:enableNegation "false"^^xsd:boolean .
34
32
 
35
- ex:S13Sample01Shape_label sh:path rdfs:label ;
36
- #sh:order "1" ;
33
+ ex:S13Sample01Shape_label # LABEL CAMPIONE
34
+ sh:path rdfs:label ;
37
35
  sh:name "Label campione" ;
38
- #sh:path indagine:label_campione ;
39
36
  sh:nodeKind sh:Literal ;
40
37
  sh:datatype rdf:string ;
41
38
  sh:maxCount 1 ;
42
39
  sh:minCount 1 ;
43
40
  dash:searchWidget core:NonSelectableProperty;
44
- #dash:searchWidget core:SearchProperty ;
45
41
  dash:propertyRole dash:LabelRole ;
46
42
  core:enableOptional "false"^^xsd:boolean ;
47
43
  core:enableNegation "false"^^xsd:boolean .
48
44
 
49
- ex:E7Activity02Shape_label sh:path rdfs:label ;
50
- #sh:order "1" ;
45
+ ex:E7Activity02Shape_label # LABEL ATTIVITA' DIAGNOSTICA
46
+ sh:path rdfs:label ;
51
47
  sh:name "Label attività diagnostica" ;
52
- #sh:path indagine:label_attivita_diagnostica ;
53
48
  sh:nodeKind sh:Literal ;
54
49
  sh:datatype rdf:string ;
55
50
  sh:maxCount 1 ;
56
51
  sh:minCount 1 ;
57
52
  dash:searchWidget core:NonSelectableProperty;
58
- #dash:searchWidget core:SearchProperty ;
53
+ dash:propertyRole dash:LabelRole ;
54
+ core:enableOptional "false"^^xsd:boolean ;
55
+ core:enableNegation "false"^^xsd:boolean .
56
+
57
+ ex:S10MaterialSubstantial01Shape_label # LABEL MATERIALE PREVALENTE - CAMPIONE
58
+ sh:path rdfs:label ;
59
+ sh:name "Label materiale" ;
60
+ sh:nodeKind sh:Literal ;
61
+ sh:datatype rdf:string ;
62
+ sh:maxCount 1 ;
63
+ sh:minCount 1 ;
64
+ dash:searchWidget core:NonSelectableProperty ; # ???
65
+ dash:propertyRole dash:LabelRole ;
66
+ core:enableOptional "false"^^xsd:boolean ;
67
+ core:enableNegation "false"^^xsd:boolean .
68
+
69
+ #ex:S10MaterialSubstantial02Shape_label # LABEL MATERIALE PREVALENTE COSTRUTTIVO - ELEMENTO COSTRUTTIVO
70
+ # sh:path rdfs:label ;
71
+ # sh:name "Label materiale" ;
72
+ # sh:nodeKind sh:Literal ;
73
+ # sh:datatype rdf:string ;
74
+ # sh:maxCount 1 ;
75
+ # sh:minCount 1 ;
76
+ # dash:searchWidget core:NonSelectableProperty ; # ???
77
+ # dash:propertyRole dash:LabelRole ;
78
+ # core:enableOptional "false"^^xsd:boolean ;
79
+ # core:enableNegation "false"^^xsd:boolean .
80
+
81
+ ex:CP9BuildingMaterialShape_label # LABEL MATERIALE PREVALENTE COSTRUTTIVO - ELEMENTO COSTRUTTIVO
82
+ sh:path rdfs:label ;
83
+ sh:name "Label materiale costruttivo" ;
84
+ sh:nodeKind sh:Literal ;
85
+ sh:datatype rdf:string ;
86
+ sh:maxCount 1 ;
87
+ sh:minCount 1 ;
88
+ dash:searchWidget core:NonSelectableProperty ; # ???
59
89
  dash:propertyRole dash:LabelRole ;
60
90
  core:enableOptional "false"^^xsd:boolean ;
61
91
  core:enableNegation "false"^^xsd:boolean .
@@ -137,12 +167,12 @@ ex:E7Activity02Shape # ATTIVITA' DIAGNOSTICA
137
167
  ] ;
138
168
  sh:property [
139
169
  sh:path crm:P160_has_temporal_projection ;
140
- sh:node ex:E52TimespanShape ;
170
+ sh:node ex:E52Timespan01Shape ;
141
171
  sh:name "Data di inzio attività" ; #verificare se corretto il nome ...
142
172
  sh:maxCount 1 ;
143
173
  ] ;
144
174
  sh:property [
145
- sh:path crm:P134_continued ; # prima è stata usata proprietà inversa ...
175
+ sh:path crm:P134_continued ;
146
176
  sh:node ex:E7Activity03Shape ;
147
177
  sh:name "Analisi associata" ;
148
178
  #sh:maxCount 1 ;
@@ -166,7 +196,7 @@ ex:E7Activity02Shape # ATTIVITA' DIAGNOSTICA
166
196
  #sh:maxCount 1 ;
167
197
  ] ;
168
198
  sh:property [
169
- sh:path [sh:inversePath crm:P16i_was_used_for] ; # usata proprietà inversa di P16_used_specific_object ...
199
+ sh:path [sh:inversePath crm:P16i_was_used_for] ; # *** NON FUNZIONA: P16i_was_used_for proprietà inversa di P16_used_specific_object
170
200
  sh:node ex:E73InformationObject03Shape ;
171
201
  sh:name "Software" ;
172
202
  sh:maxCount 1 ;
@@ -193,7 +223,7 @@ ex:E7Activity02Shape # ATTIVITA' DIAGNOSTICA
193
223
 
194
224
  ex:E31DocumentShape # REPORT
195
225
  a sh:NodeShape ;
196
- sh:targetClass crm:E13_Attribute_Assignment ;
226
+ sh:targetClass crm:E31_Document ;
197
227
  rdfs:label "Report" ;
198
228
  sh:property [
199
229
  sh:path crm:P48_has_preferred_identifier ;
@@ -249,20 +279,20 @@ ex:E13AttributeAssignmentShape # OUTPUT
249
279
  ] ;
250
280
  sh:property [
251
281
  sh:path crm:P140_assigned_attribute_to ;
252
- sh:node ex:S10MaterialSubstantial03Shape ;
282
+ sh:node ex:S10MaterialSubstantial04Shape ;
253
283
  sh:name "Materiale specifico" ;
254
284
  sh:maxCount 1 ;
255
285
  ] ;
256
286
  sh:property [
257
- sh:path [sh:inversePath crm:P140i_was_attributed_by] ; # usata proprietà inversa di P140_assigned_attribute_to ...
287
+ sh:path [sh:inversePath crm:P140i_was_attributed_by] ; # NON FUNZIONA: P140i_was_attributed_by proprietà inversa di P140_assigned_attribute_to
258
288
  sh:node ex:E18PhysicalThingShape ;
259
289
  sh:name "Componenti specifici" ;
260
290
  #sh:maxCount 1 ;
261
291
  ] ;
262
292
  sh:property [
263
293
  sh:path crm:P160_has_temporal_projection ;
264
- sh:node ex:E52TimespanShape ;
265
- sh:name "Datazione" ;
294
+ sh:node ex:E52Timespan03Shape ;
295
+ sh:name "Data output" ;
266
296
  sh:maxCount 1 ;
267
297
  ] ;
268
298
  sh:property [
@@ -317,7 +347,7 @@ ex:E73InformationObject02Shape # MEDIUM
317
347
  sh:maxCount 1 ;
318
348
  ] ;
319
349
  sh:property [
320
- sh:path [sh:inversePath crm:P67_refers_to] ; # usata proprietà inversa di P67i_is_referred_to_by ...
350
+ sh:path crm:P67i_is_referred_to_by ; # VERIFICA SE FUNZIONA (proprietà inversa di P67_refers_to)
321
351
  sh:node ex:E73InformationObject01Shape ;
322
352
  sh:name "Link" ;
323
353
  sh:maxCount 1 ;
@@ -332,12 +362,6 @@ ex:E73InformationObject03Shape # SOFTWARE
332
362
  sh:node ex:E42Identifier11Shape ;
333
363
  sh:name "Codice software" ;
334
364
  sh:maxCount 1 ;
335
- ] ;
336
- sh:property [
337
- sh:path crm:P67_refers_to ;
338
- sh:node ex:S5InferenceMakingShape ;
339
- sh:name "Inferenza" ;
340
- sh:maxCount 1 ;
341
365
  ] .
342
366
 
343
367
  ex:E73InformationObject04Shape # ALLEGATO REPORT
@@ -352,28 +376,6 @@ ex:E73InformationObject04Shape # ALLEGATO REPORT
352
376
  sh:maxCount 1 ;
353
377
  ] .
354
378
 
355
- ex:S5InferenceMakingShape # INFERENZA SOFTWARE
356
- a sh:NodeShape ;
357
- sh:targetClass j.0:S5_Inference_Making ;
358
- rdfs:label "Inferenza software" ;
359
- sh:property [
360
- sh:path indagine:inferenza ;
361
- sh:datatype xsd:string ;
362
- sh:name "Inferenza" ;
363
- sh:maxCount 1 ;
364
- ] .
365
-
366
- ex:I5InferenceMakingShape # INFERENZA INPUT
367
- a sh:NodeShape ;
368
- sh:targetClass base:S5_Inference_Making ;
369
- rdfs:label "Inferenza input" ;
370
- sh:property [
371
- sh:path indagine:inferenza ;
372
- sh:datatype xsd:string ;
373
- sh:name "Inferenza" ;
374
- sh:maxCount 1 ;
375
- ] .
376
-
377
379
  ex:E70ThingShape # STRUMENTO
378
380
  a sh:NodeShape ;
379
381
  sh:targetClass crm:E70_Thing ;
@@ -488,8 +490,8 @@ ex:S13Sample01Shape # CAMPIONE
488
490
  sh:maxCount 1 ;
489
491
  ] ;
490
492
  sh:property [
491
- sh:path j.0:O25_contains ;
492
- sh:node ex:S10MaterialSubstantial01Shape ;
493
+ sh:path [ sh:inversePath j.0:O25i_is_contained_in ] ; # *** NON FUNZIONA: O25i_is_contained_in proprietà inversa di O25_contains
494
+ sh:node ex:S10MaterialSubstantial01Shape ;
493
495
  sh:name "Materiale prevalente" ;
494
496
  sh:maxCount 1 ;
495
497
  ] ;
@@ -500,7 +502,7 @@ ex:S13Sample01Shape # CAMPIONE
500
502
  sh:maxCount 1 ;
501
503
  ] ;
502
504
  sh:property [
503
- sh:path [sh:inversePath j.0:O25i_is_contained_in] ; # usata proprietà inversa di O25_contains ...
505
+ sh:path j.0:O25_contains ;
504
506
  sh:node ex:S13Sample02Shape ;
505
507
  sh:name "Sottocampione" ;
506
508
  sh:maxCount 1 ;
@@ -584,7 +586,7 @@ ex:S2SampleTaking02Shape # SOTTOCAMPIONAMENTO
584
586
  rdfs:label "Sottocampionamento" ;
585
587
  sh:property [
586
588
  sh:path crm:P160_has_temporal_projection ;
587
- sh:node ex:E52TimespanShape ;
589
+ sh:node ex:E52Timespan02Shape ;
588
590
  sh:name "Data di analisi" ;
589
591
  sh:maxCount 1 ;
590
592
  ] ;
@@ -671,47 +673,70 @@ ex:S22SegmentofMatterShape # PORZIONE IDENTIFICATA
671
673
  sh:maxCount 1 ;
672
674
  ] .
673
675
 
676
+ ex:E52Timespan01Shape # DATA ATTIVITA' DIAGNOSTICA
677
+ a sh:NodeShape ;
678
+ sh:targetClass j.0:E52_Time-span ;
679
+ rdfs:label "Data attività diagnostica" ;
680
+ sh:property [
681
+ sh:path indagine:data_attivita_diagnostica ;
682
+ sh:datatype xsd:dateTime ;
683
+ #sh:datatype xsd:date ;
684
+ sh:name "Data" ;
685
+ sh:maxCount 1 ;
686
+ ] .
687
+
688
+ ex:E52Timespan02Shape # DATA SOTTOCAMPIONAMENTO
689
+ a sh:NodeShape ;
690
+ sh:targetClass j.0:E52_Time-span ;
691
+ rdfs:label "Data sottocampionamento" ;
692
+ sh:property [
693
+ sh:path indagine:data_sottocampionamento ;
694
+ sh:datatype xsd:dateTime ;
695
+ sh:name "Data" ;
696
+ sh:maxCount 1 ;
697
+ ] .
698
+
699
+ ex:E52Timespan03Shape # DATA OUTPUT
700
+ a sh:NodeShape ;
701
+ sh:targetClass j.0:E52_Time-span ;
702
+ rdfs:label "Data" ;
703
+ sh:property [
704
+ sh:path indagine:data_ouput ;
705
+ sh:datatype xsd:dateTime ;
706
+ sh:name "Data" ;
707
+ sh:maxCount 1 ;
708
+ ] .
709
+
674
710
  ex:E2TemporalEntity01Shape # DATA CAMPIONAMENTO
675
711
  a sh:NodeShape ;
676
712
  sh:targetClass crm:E2_Temporal_Entity ;
677
713
  rdfs:label "Data campionamento" ;
678
714
  sh:property [
679
715
  sh:path indagine:data_campionamento ;
680
- sh:datatype xsd:date ;
681
- sh:name "Data campionamento" ;
716
+ sh:datatype xsd:dateTime ;
717
+ sh:name "Data" ;
682
718
  sh:maxCount 1 ;
683
719
  ] .
684
720
 
685
721
  ex:E2TemporalEntity02Shape # DATA CREAZIONE REPORT
686
722
  a sh:NodeShape ;
687
723
  sh:targetClass crm:E2_Temporal_Entity ;
688
- rdfs:label "Data creazione" ;
724
+ rdfs:label "Data creazione report" ;
689
725
  sh:property [
690
726
  sh:path indagine:data_creazione_report ;
691
- sh:datatype xsd:date ;
692
- sh:name "Data creazione" ;
727
+ sh:datatype xsd:dateTime ;
728
+ sh:name "Data" ;
693
729
  sh:maxCount 1 ;
694
730
  ] .
695
731
 
696
732
  ex:E2TemporalEntity03Shape # DATA AGGIORNAMENTO REPORT
697
733
  a sh:NodeShape ;
698
734
  sh:targetClass crm:E2_Temporal_Entity ;
699
- rdfs:label "Data aggiornamento" ;
735
+ rdfs:label "Data aggiornamento report" ;
700
736
  sh:property [
701
737
  sh:path indagine:data_aggiornamento_report ;
702
- sh:datatype xsd:date ;
703
- sh:name "Data aggiornamento" ;
704
- sh:maxCount 1 ;
705
- ] .
706
-
707
- ex:E52TimespanShape # DATA SOTTOCAMPIONAMENTO, OUTPUT
708
- a sh:NodeShape ;
709
- sh:targetClass j.0:E52_Time-span ;
710
- rdfs:label "Datazione" ;
711
- sh:property [
712
- sh:path indagine:datazione ;
713
- sh:datatype xsd:date ;
714
- sh:name "Datazione" ;
738
+ sh:datatype xsd:dateTime ;
739
+ sh:name "Data" ;
715
740
  sh:maxCount 1 ;
716
741
  ] .
717
742
 
@@ -782,7 +807,8 @@ ex:S10MaterialSubstantial01Shape # MATERIALE PREVALENTE - CAMPIONE
782
807
  sh:name "Materiale campione" ;
783
808
  sh:maxCount 1 ;
784
809
  sh:minCount 1 ;
785
- ] .
810
+ ] ;
811
+ sh:property ex:S10MaterialSubstantial01Shape_label .
786
812
 
787
813
  ex:S10MaterialSubstantial02Shape # MATERIALE PREVALENTE - SOTTOCAMPIONE
788
814
  a sh:NodeShape ;
@@ -791,11 +817,60 @@ ex:S10MaterialSubstantial02Shape # MATERIALE PREVALENTE - SOTTOCAMPIONE
791
817
  sh:property [
792
818
  sh:path crm:P2_has_type ;
793
819
  sh:node ex:E55Type08Shape ;
794
- sh:name "Materiale prevalente" ;
820
+ sh:name "Materiale sottocampione" ;
795
821
  sh:maxCount 1 ;
796
822
  ] .
797
823
 
798
- ex:S10MaterialSubstantial03Shape # MATERIALE SPECIFICO - OUTPUT
824
+ ex:S10MaterialSubstantial03Shape # MATERIALE PREVALENTE - ELEMENTO COSTRUTTIVO
825
+ a sh:NodeShape ;
826
+ sh:targetClass j.0:S10_Material_Substantial ;
827
+ rdfs:label "Materiale prevalente - elemento costruttivo" ;
828
+ sh:property [
829
+ sh:path crm:P2_has_type ;
830
+ sh:node ex:E55Type08Shape ;
831
+ sh:name "Materiale prevalente" ;
832
+ sh:maxCount 1 ;
833
+ ] ;
834
+ sh:property [
835
+ sh:path basecpm:PC51_was_affected_by ;
836
+ sh:node ex:CP42MaterialDecayShape ;
837
+ sh:name "Degrado" ;
838
+ #sh:maxCount 1 ;
839
+ ] ;
840
+ sh:property [
841
+ sh:path crm:P3_has_note ;
842
+ sh:node ex:E62String15Shape ;
843
+ sh:name "Note degrado" ;
844
+ sh:maxCount 1 ;
845
+ ] ;
846
+ sh:property ex:S10MaterialSubstantial01Shape_label .
847
+ #sh:property ex:S10MaterialSubstantial02Shape_label .
848
+
849
+ ex:CP9BuildingMaterialShape # MATERIALE PREVALENTE COSTRUTTIVO - ELEMENTO COSTRUTTIVO
850
+ a sh:NodeShape ;
851
+ sh:targetClass basecpm:CP9_Building_Material ;
852
+ rdfs:label "Materiale prevalente costruttivo - elemento costruttivo" ;
853
+ sh:property [
854
+ sh:path crm:P2_has_type ;
855
+ sh:node ex:E55Type08Shape ;
856
+ sh:name "Materiale prevalente" ;
857
+ sh:maxCount 1 ;
858
+ ] ;
859
+ sh:property [
860
+ sh:path basecpm:PC51_was_affected_by ;
861
+ sh:node ex:CP42MaterialDecayShape ;
862
+ sh:name "Degrado" ;
863
+ #sh:maxCount 1 ;
864
+ ] ;
865
+ sh:property [
866
+ sh:path crm:P3_has_note ;
867
+ sh:node ex:E62String15Shape ;
868
+ sh:name "Note degrado" ;
869
+ sh:maxCount 1 ;
870
+ ] ;
871
+ sh:property ex:CP9BuildingMaterialShape_label .
872
+
873
+ ex:S10MaterialSubstantial04Shape # MATERIALE SPECIFICO - OUTPUT
799
874
  a sh:NodeShape ;
800
875
  sh:targetClass j.0:S10_Material_Substantial ;
801
876
  rdfs:label "Materiale specifico" ;
@@ -875,7 +950,7 @@ ex:CP2ArchitectureWorkShape # BENE DI RIFERIMENTO
875
950
  sh:maxCount 1 ;
876
951
  ] ;
877
952
  sh:property [
878
- sh:path crm:P46_is_composed_of ;
953
+ sh:path crm:P46_is_composed_of ; # NON POSSIBILE CREARE RELAZIONE INVERSA *** P46i_forms_part_of proprietà inversa di P46_is_composed_of
879
954
  sh:node ex:CP20ConstructionWorkShape ;
880
955
  sh:name "Elemento costruttivo" ;
881
956
  sh:maxCount 1 ;
@@ -911,13 +986,13 @@ ex:CP20ConstructionWorkShape # ELEMENTO COSTRUTTIVO
911
986
  ] ;
912
987
  sh:property [
913
988
  sh:path j.0:O25_contains ;
914
- sh:node ex:S10CP9Material01Shape ;
989
+ sh:node ex:S10MaterialSubstantial03Shape ;
915
990
  sh:name "Materiale prevalente" ;
916
991
  sh:maxCount 1 ;
917
992
  ] ;
918
993
  sh:property [
919
- sh:path basecpm:PC41_shows_as_main_material ;
920
- sh:node ex:S10CP9Material02Shape ;
994
+ sh:path basecpm:PC41_shows_as_main_material ; # *** NON FUNZIONA CREAZIONE COLLEGAMENTO BIDIREZIONALE: PC41i_is_shown_as_main_material_of proprietà inversa di PC41_shows_as_main_material
995
+ sh:node ex:CP9BuildingMaterialShape ;
921
996
  sh:name "Materiale prevalente costruttivo" ;
922
997
  sh:maxCount 1 ;
923
998
  ] ;
@@ -1066,14 +1141,14 @@ ex:E42Identifier10Shape # SPECIFICHE TECNICHE
1066
1141
  sh:maxCount 1 ;
1067
1142
  ] .
1068
1143
 
1069
- ex:E42Identifier11Shape # SOFTWARE
1144
+ ex:E42Identifier11Shape # ID SOFTWARE
1070
1145
  a sh:NodeShape ;
1071
1146
  sh:targetClass crm:E42_Identifier ;
1072
- rdfs:label "Codice software" ;
1147
+ rdfs:label "ID software" ;
1073
1148
  sh:property [
1074
- sh:path indagine:software ;
1149
+ sh:path indagine:id_software ;
1075
1150
  sh:datatype xsd:string ;
1076
- sh:name "Codice software" ;
1151
+ sh:name "ID software" ;
1077
1152
  sh:maxCount 1 ;
1078
1153
  ] .
1079
1154
 
@@ -1129,9 +1204,9 @@ ex:E39Actor01Shape # ATTORI COINVOLTI
1129
1204
  sh:targetClass crm:E39_Actor ;
1130
1205
  rdfs:label "Attori coinvolti" ;
1131
1206
  sh:property [
1132
- sh:path crm:P2_has_type ;
1133
- sh:node ex:E55Type03Shape ;
1134
- sh:name "Attori" ;
1207
+ sh:path crm:P1_is_identified_by ;
1208
+ sh:node ex:E41Appellation01Shape ;
1209
+ sh:name "Ente richiedente - Schedatore" ;
1135
1210
  sh:maxCount 1 ;
1136
1211
  ] .
1137
1212
 
@@ -1266,12 +1341,6 @@ ex:I2Belief02Shape # INPUT
1266
1341
  sh:node ex:E7Activity03Shape ;
1267
1342
  sh:name "Analisi pregressa" ;
1268
1343
  sh:maxCount 1 ;
1269
- ] ;
1270
- sh:property [
1271
- sh:path base:J1i_was_premise_for ;
1272
- sh:node ex:I5InferenceMakingShape ;
1273
- sh:name "Inferenza" ;
1274
- sh:maxCount 1 ;
1275
1344
  ] .
1276
1345
 
1277
1346
  ex:E41Appellation01Shape # ENTE RICHIEDENTE - SCHEDATORE
@@ -1348,17 +1417,6 @@ ex:E55Type02Shape # TIPO QUESITO DIAGNOSTICO
1348
1417
  sh:maxCount 1 ;
1349
1418
  ] .
1350
1419
 
1351
- ex:E55Type03Shape # TIPOLOGIA ATTORI
1352
- a sh:NodeShape ;
1353
- sh:targetClass crm:E55_Type ;
1354
- rdfs:label "Tipo attori" ;
1355
- sh:property [
1356
- sh:path crm:P1_is_identified_by ;
1357
- sh:node ex:E41Appellation01Shape ;
1358
- sh:name "Ente richiedente - Schedatore" ;
1359
- sh:maxCount 1 ;
1360
- ] .
1361
-
1362
1420
  ex:E55Type04Shape # TIPOLOGIE CAMPIONE (8DESCRIZIONE, TIPO, NATURA OGGETTO)
1363
1421
  a sh:NodeShape ;
1364
1422
  sh:targetClass crm:E55_Type ;
@@ -1616,52 +1674,6 @@ ex:E55Type18Shape # TIPO OUTPUT
1616
1674
  sh:maxCount 1 ;
1617
1675
  ] .
1618
1676
 
1619
- ex:S10CP9Material01Shape # MATERIALE PREVALENTE - ELEMENTO COSTRUTTIVO
1620
- a sh:NodeShape ;
1621
- sh:targetClass j.0:S10_Material_Substantial ;
1622
- rdfs:label "Materiale prevalente - elemento costruttivo" ;
1623
- sh:property [
1624
- sh:path crm:P2_has_type ;
1625
- sh:node ex:E55Type08Shape ;
1626
- sh:name "Materiale prevalente" ;
1627
- sh:maxCount 1 ;
1628
- ] ;
1629
- sh:property [
1630
- sh:path basecpm:PC51_was_affected_by ;
1631
- sh:node ex:CP42MaterialDecayShape ;
1632
- sh:name "Degrado" ;
1633
- #sh:maxCount 1 ;
1634
- ] ;
1635
- sh:property [
1636
- sh:path crm:P3_has_note ;
1637
- sh:node ex:E62String15Shape ;
1638
- sh:name "Note degrado" ;
1639
- sh:maxCount 1 ;
1640
- ] .
1641
-
1642
- ex:S10CP9Material02Shape # MATERIALE PREVALENTE COSRTUTTIVO - ELEMENTO COSTRUTTIVO
1643
- a sh:NodeShape ;
1644
- sh:targetClass basecpm:CP9_Building_Material ;
1645
- rdfs:label "Materiale prevalente costruttivo - elemento costruttivo" ;
1646
- sh:property [
1647
- sh:path crm:P2_has_type ;
1648
- sh:node ex:E55Type08Shape ;
1649
- sh:name "Materiale prevalente" ;
1650
- sh:maxCount 1 ;
1651
- ] ;
1652
- sh:property [
1653
- sh:path basecpm:PC51_was_affected_by ;
1654
- sh:node ex:CP42MaterialDecayShape ;
1655
- sh:name "Degrado" ;
1656
- #sh:maxCount 1 ;
1657
- ] ;
1658
- sh:property [
1659
- sh:path crm:P3_has_note ;
1660
- sh:node ex:E62String15Shape ;
1661
- sh:name "Note degrado" ;
1662
- sh:maxCount 1 ;
1663
- ] .
1664
-
1665
1677
  ex:CP42MaterialDecayShape # TIPO DEGRADO
1666
1678
  a sh:NodeShape ;
1667
1679
  sh:targetClass basecpm:CP42_Material_Decay ;
@@ -61,9 +61,9 @@ this:E39ActorIndagine # ATTORI
61
61
  rdfs:label "Attori coinvolti" ;
62
62
  sh:deactivated "true"^^xsd:boolean ;
63
63
  sh:property [
64
- sh:path crm:P2_has_type ;
65
- sh:node this:E55TypeAttori ;
66
- sh:name "ha tipo" ;
64
+ sh:path crm:P1_is_identified_by ;
65
+ sh:node this:E41AppellationEnteRichSchedatore ;
66
+ sh:name "è identificato da" ;
67
67
  ] .
68
68
 
69
69
  this:S13SampleCampione # CAMPIONE
@@ -102,11 +102,6 @@ this:E42IdentifierIndagine # ID INDAGINE
102
102
  sh:path indagine:id_indagine ;
103
103
  sh:name "ID" ;
104
104
  sh:datatype xsd:string ;
105
- sh:nodeKind sh:Literal ;
106
- dash:searchWidget core:AutocompleteProperty ;
107
- dash:propertyRole dash:LabelRole ;
108
- core:enableOptional "true"^^xsd:boolean ;
109
- core:enableNegation "true"^^xsd:boolean ;
110
105
  ] .
111
106
 
112
107
  this:I12AdoptedBelief # QUESITO DIAGNOSTICO
@@ -181,18 +176,6 @@ this:E55TypeQuesito # TIPO QUESITO DIAGNOSTICO
181
176
  datasources:treeChildrenDatasource this:tree_children_broader_term ;
182
177
  ] .
183
178
 
184
- this:E55TypeAttori # TIPOLOGIA ATTORI
185
- a sh:NodeShape ;
186
- sh:targetClass crm:E55_Type ;
187
- rdfs:label "Tipo attori" ;
188
- sh:deactivated "true"^^xsd:boolean ;
189
- sh:property [
190
- sh:path crm:P1_is_identified_by ;
191
- sh:node this:E41AppellationEnteRichSchedatore ;
192
- sh:name "è identificato da" ;
193
- #sh:maxCount 1 ;
194
- ] .
195
-
196
179
  this:E55TypeCampione # TIPO CAMPIONE
197
180
  a sh:NodeShape ;
198
181
  sh:targetClass crm:E55_Type ;
@@ -19,7 +19,7 @@
19
19
  @prefix datasources: <http://data.sparna.fr/ontologies/sparnatural-config-datasources#> .
20
20
 
21
21
 
22
- this:S13SampleCampioneLabel sh:path rdfs:label ;
22
+ this:S13SampleCampioneLabel sh:path rdfs:label ; # LABEL CAMPIONE
23
23
  sh:name "Label campione" ;
24
24
  sh:nodeKind sh:Literal ;
25
25
  sh:datatype rdf:string ;
@@ -86,11 +86,6 @@ this:E42IdentifierCampione # ID CAMPIONE
86
86
  sh:path indagine:id_campione ;
87
87
  sh:name "ID" ;
88
88
  sh:datatype xsd:string ;
89
- sh:nodeKind sh:Literal ;
90
- dash:searchWidget core:AutocompleteProperty ;
91
- dash:propertyRole dash:LabelRole ;
92
- core:enableOptional "true"^^xsd:boolean ;
93
- core:enableNegation "true"^^xsd:boolean ;
94
89
  ] .
95
90
 
96
91
  this:E41AppellationBene # DENOMINAZIONE BENE