From d9b066303f72c2426ce2a0dccafa016cf5eafaf9 Mon Sep 17 00:00:00 2001
From: Connor Cantrell <33592545+connorjcantrell@users.noreply.github.com>
Date: Wed, 18 Oct 2023 15:51:12 -0700
Subject: [PATCH 1/4] Add Desk <-> Workstation mappings
---
.../src/Mappings/v1/Mapped/willow_v1_dtdlv2_mapped.json | 4 ++++
.../src/Mappings/v1/Willow/mapped_v1_dtdlv2_Willow.json | 6 +++++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/Ontologies.Mappings/src/Mappings/v1/Mapped/willow_v1_dtdlv2_mapped.json b/Ontologies.Mappings/src/Mappings/v1/Mapped/willow_v1_dtdlv2_mapped.json
index dd28172a..e4d00619 100644
--- a/Ontologies.Mappings/src/Mappings/v1/Mapped/willow_v1_dtdlv2_mapped.json
+++ b/Ontologies.Mappings/src/Mappings/v1/Mapped/willow_v1_dtdlv2_mapped.json
@@ -4591,6 +4591,10 @@
{
"InputDtmi": "dtmi:com:willowinc:airport:AirfieldLightingEquipment;1",
"OutputDtmi": "dtmi:mapped:core:Airfield_Lighting_Equipment;1"
+ },
+ {
+ "InputDtmi": "dtmi:com:willowinc:Workstation;1",
+ "OutputDtmi": "dtmi:org:w3id:rec:Desk;1"
}
],
"NamespaceRemaps": [],
diff --git a/Ontologies.Mappings/src/Mappings/v1/Willow/mapped_v1_dtdlv2_Willow.json b/Ontologies.Mappings/src/Mappings/v1/Willow/mapped_v1_dtdlv2_Willow.json
index f690d390..8f75cd67 100644
--- a/Ontologies.Mappings/src/Mappings/v1/Willow/mapped_v1_dtdlv2_Willow.json
+++ b/Ontologies.Mappings/src/Mappings/v1/Willow/mapped_v1_dtdlv2_Willow.json
@@ -5181,6 +5181,10 @@
{
"InputDtmi": "dtmi:mapped:core:Airfield_Lighting_Equipment;1",
"OutputDtmi": "dtmi:com:willowinc:airport:AirfieldLightingEquipment;1"
+ },
+ {
+ "InputDtmi": "dtmi:org:w3id:rec:Desk;1",
+ "OutputDtmi": "dtmi:com:willowinc:Workstation;1"
}
],
"NamespaceRemaps": [
@@ -5247,4 +5251,4 @@
"ReverseRelationshipDirection": true
}
]
-}
\ No newline at end of file
+}
From ef07c960300ae9263807b6f986add214659b49d8 Mon Sep 17 00:00:00 2001
From: Connor Cantrell <33592545+connorjcantrell@users.noreply.github.com>
Date: Wed, 18 Oct 2023 16:42:04 -0700
Subject: [PATCH 2/4] Update Mapped ontology version
---
Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj b/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj
index 65dd0a4f..4c50c73e 100644
--- a/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj
+++ b/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj
@@ -21,7 +21,7 @@
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
From 6b4214c8a3d5068e5a4d18830ead3752c678555c Mon Sep 17 00:00:00 2001
From: Connor Cantrell <33592545+connorjcantrell@users.noreply.github.com>
Date: Wed, 18 Oct 2023 16:44:55 -0700
Subject: [PATCH 3/4] Correct Mapped ontology version
---
Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj b/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj
index 4c50c73e..1a2160cc 100644
--- a/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj
+++ b/Ontologies.Mappings/test/Ontologies.Mappings.Test.csproj
@@ -21,7 +21,7 @@
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
From f20e9a3a18e1db57dbd4081def3308cb7c044a40 Mon Sep 17 00:00:00 2001
From: Connor Cantrell <33592545+connorjcantrell@users.noreply.github.com>
Date: Tue, 31 Oct 2023 10:47:11 -0700
Subject: [PATCH 4/4] Update validation tests
---
.../test/BrickRecMappingValidationTests.cs | 34 +++++++++++--------
.../test/MappedMappingValidationTests.cs | 31 ++++++++++-------
2 files changed, 38 insertions(+), 27 deletions(-)
diff --git a/Ontologies.Mappings/test/BrickRecMappingValidationTests.cs b/Ontologies.Mappings/test/BrickRecMappingValidationTests.cs
index fa5bbb19..4092142e 100644
--- a/Ontologies.Mappings/test/BrickRecMappingValidationTests.cs
+++ b/Ontologies.Mappings/test/BrickRecMappingValidationTests.cs
@@ -97,7 +97,7 @@ public void ValidateSourceDtmisAreValid(string resourcePath)
var resourceLoader = new MappedOntologyMappingLoader(mockLogger.Object, resourcePath);
var ontologyMappingManager = new OntologyMappingManager(resourceLoader);
var modelParser = new ModelParser();
- var inputDtmi = LoadDtdl("mapped_dtdl.json");
+ var inputDtmi = LoadDtdl(new[] { "mapped_dtdl.json" });
var inputModels = modelParser.Parse(inputDtmi);
ontologyMappingManager.ValidateSourceOntologyMapping(inputModels, out var invalidSources);
@@ -112,36 +112,42 @@ public void ValidateTargetDtmisAreValid(string resourcePath)
var resourceLoader = new MappedOntologyMappingLoader(mockLogger.Object, resourcePath);
var ontologyMappingManager = new OntologyMappingManager(resourceLoader);
var modelParser = new ModelParser();
- var inputDtmi = LoadDtdl("RealEstateCore.DTDLv2.jsonld");
+ var inputDtmi = LoadDtdl(new[] { "RealEstateCore.DTDLv2.jsonld" });
var inputModels = modelParser.Parse(inputDtmi);
ontologyMappingManager.ValidateTargetOntologyMapping(inputModels, out var invalidSources);
Assert.Empty(invalidSources);
}
- private IEnumerable LoadDtdl(string dtdlFile)
+
+ private IEnumerable LoadDtdl(string[] dtdlFiles)
{
var assembly = Assembly.GetExecutingAssembly();
- var resourceName = assembly.GetManifestResourceNames().Single(str => str.EndsWith(dtdlFile));
+
List dtdls = new List();
- using (Stream? stream = assembly.GetManifestResourceStream(resourceName))
+ foreach (var file in dtdlFiles)
{
- if (stream != null)
+ var resourceName = assembly.GetManifestResourceNames().Single(str => str.EndsWith(file));
+
+ using (Stream? stream = assembly.GetManifestResourceStream(resourceName))
{
- using (StreamReader reader = new StreamReader(stream))
+ if (stream != null)
{
- string result = reader.ReadToEnd();
- dtdls.Add(result);
+ using (StreamReader reader = new StreamReader(stream))
+ {
+ string result = reader.ReadToEnd();
+ dtdls.Add(result);
+ }
+ }
+ else
+ {
+ throw new FileNotFoundException(resourceName);
}
- }
- else
- {
- throw new FileNotFoundException(resourceName);
}
}
return dtdls;
}
}
-}
\ No newline at end of file
+}
diff --git a/Ontologies.Mappings/test/MappedMappingValidationTests.cs b/Ontologies.Mappings/test/MappedMappingValidationTests.cs
index a406a92e..daefaeb9 100644
--- a/Ontologies.Mappings/test/MappedMappingValidationTests.cs
+++ b/Ontologies.Mappings/test/MappedMappingValidationTests.cs
@@ -153,7 +153,7 @@ public void ValidateSourceDtmisAreValid(string resourcePath)
var resourceLoader = new MappedOntologyMappingLoader(mockLogger.Object, resourcePath);
var ontologyMappingManager = new OntologyMappingManager(resourceLoader);
var modelParser = new ModelParser();
- var inputDtmi = LoadDtdl("Willow.Ontology.DTDLv3.jsonld");
+ var inputDtmi = LoadDtdl(new[] { "Willow.Ontology.DTDLv3.jsonld" });
var inputModels = modelParser.Parse(inputDtmi);
ontologyMappingManager.ValidateSourceOntologyMapping(inputModels, out var invalidSources);
Console.WriteLine(invalidSources.Count());
@@ -173,7 +173,7 @@ public void ValidateTargetDtmisAreValid(string resourcePath)
var resourceLoader = new MappedOntologyMappingLoader(mockLogger.Object, resourcePath);
var ontologyMappingManager = new OntologyMappingManager(resourceLoader);
var modelParser = new ModelParser();
- var inputDtmi = LoadDtdl("mapped_dtdl.json");
+ var inputDtmi = LoadDtdl(new[] { "mapped_dtdl.json" });
var inputModels = modelParser.Parse(inputDtmi);
ontologyMappingManager.ValidateTargetOntologyMapping(inputModels, out var invalidSources);
foreach (var invalidSource in invalidSources)
@@ -183,25 +183,30 @@ public void ValidateTargetDtmisAreValid(string resourcePath)
Assert.Empty(invalidSources);
}
- private IEnumerable LoadDtdl(string dtdlFile)
+ private IEnumerable LoadDtdl(string[] dtdlFiles)
{
var assembly = Assembly.GetExecutingAssembly();
- var resourceName = assembly.GetManifestResourceNames().Single(str => str.EndsWith(dtdlFile));
+
List dtdls = new List();
- using (Stream? stream = assembly.GetManifestResourceStream(resourceName))
+ foreach (var file in dtdlFiles)
{
- if (stream != null)
+ var resourceName = assembly.GetManifestResourceNames().Single(str => str.EndsWith(file));
+
+ using (Stream? stream = assembly.GetManifestResourceStream(resourceName))
{
- using (StreamReader reader = new StreamReader(stream))
+ if (stream != null)
{
- string result = reader.ReadToEnd();
- dtdls.Add(result);
+ using (StreamReader reader = new StreamReader(stream))
+ {
+ string result = reader.ReadToEnd();
+ dtdls.Add(result);
+ }
+ }
+ else
+ {
+ throw new FileNotFoundException(resourceName);
}
- }
- else
- {
- throw new FileNotFoundException(resourceName);
}
}