├── .gitattributes ├── .gitignore ├── ExcelRDF.sln ├── ExcelRDF ├── DotNetRdfExtensions.cs ├── ExcelRDF.csproj ├── ExportOptionsForm.Designer.cs ├── ExportOptionsForm.cs ├── ExportOptionsForm.resx ├── Helper.cs ├── ImportOptionsForm.Designer.cs ├── ImportOptionsForm.cs ├── ImportOptionsForm.resx ├── Properties │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ ├── Settings.Designer.cs │ └── Settings.settings ├── RdfOntologyOperations.cs ├── Resources │ ├── ExportRdfIcon.png │ └── LoadOntologyIcon.png ├── Ribbon.Designer.cs ├── Ribbon.cs ├── Ribbon.resx ├── ThisAddIn.Designer.cs ├── ThisAddIn.Designer.xml ├── ThisAddIn.cs └── packages.config └── docs ├── README.md ├── _config.yml ├── distribution ├── Application Files │ ├── ExcelRDF_1_0_0_0 │ │ ├── ExcelRDF.dll.deploy │ │ ├── ExcelRDF.dll.manifest │ │ ├── ExcelRDF.vsto │ │ ├── HtmlAgilityPack.dll.deploy │ │ ├── Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy │ │ ├── Newtonsoft.Json.dll.deploy │ │ ├── Resources │ │ │ └── LoadOntologyIcon.png.deploy │ │ ├── VDS.Common.dll.deploy │ │ └── dotNetRDF.dll.deploy │ ├── ExcelRDF_1_0_0_1 │ │ ├── ExcelRDF.dll.deploy │ │ ├── ExcelRDF.dll.manifest │ │ ├── ExcelRDF.vsto │ │ ├── HtmlAgilityPack.dll.deploy │ │ ├── Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy │ │ ├── Newtonsoft.Json.dll.deploy │ │ ├── Resources │ │ │ └── LoadOntologyIcon.png.deploy │ │ ├── VDS.Common.dll.deploy │ │ └── dotNetRDF.dll.deploy │ ├── ExcelRDF_1_1_0_0 │ │ ├── ExcelRDF.dll.deploy │ │ ├── ExcelRDF.dll.manifest │ │ ├── ExcelRDF.vsto │ │ ├── HtmlAgilityPack.dll.deploy │ │ ├── Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy │ │ ├── Newtonsoft.Json.dll.deploy │ │ ├── Resources │ │ │ └── LoadOntologyIcon.png.deploy │ │ ├── VDS.Common.dll.deploy │ │ └── dotNetRDF.dll.deploy │ ├── ExcelRDF_1_1_1_0 │ │ ├── ExcelRDF.dll.deploy │ │ ├── ExcelRDF.dll.manifest │ │ ├── ExcelRDF.vsto │ │ ├── HtmlAgilityPack.dll.deploy │ │ ├── Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy │ │ ├── Newtonsoft.Json.dll.deploy │ │ ├── Resources │ │ │ └── LoadOntologyIcon.png.deploy │ │ ├── VDS.Common.dll.deploy │ │ └── dotNetRDF.dll.deploy │ ├── ExcelRDF_1_1_2_0 │ │ ├── ExcelRDF.dll.deploy │ │ ├── ExcelRDF.dll.manifest │ │ ├── ExcelRDF.vsto │ │ ├── HtmlAgilityPack.dll.deploy │ │ ├── Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy │ │ ├── Newtonsoft.Json.dll.deploy │ │ ├── Resources │ │ │ └── LoadOntologyIcon.png.deploy │ │ ├── VDS.Common.dll.deploy │ │ └── dotNetRDF.dll.deploy │ ├── ExcelRDF_1_1_3_0 │ │ ├── ExcelRDF.dll.deploy │ │ ├── ExcelRDF.dll.manifest │ │ ├── ExcelRDF.vsto │ │ ├── HtmlAgilityPack.dll.deploy │ │ ├── Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy │ │ ├── Newtonsoft.Json.dll.deploy │ │ ├── Resources │ │ │ └── LoadOntologyIcon.png.deploy │ │ ├── VDS.Common.dll.deploy │ │ └── dotNetRDF.dll.deploy │ └── ExcelRDF_1_1_4_0 │ │ ├── ExcelRDF.dll.deploy │ │ ├── ExcelRDF.dll.manifest │ │ ├── ExcelRDF.vsto │ │ ├── HtmlAgilityPack.dll.deploy │ │ ├── Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy │ │ ├── Newtonsoft.Json.dll.deploy │ │ ├── Resources │ │ └── LoadOntologyIcon.png.deploy │ │ ├── VDS.Common.dll.deploy │ │ └── dotNetRDF.dll.deploy ├── ExcelRDF.vsto └── setup.exe └── images ├── AnonymousIndividualProperties.png ├── ExampleData.png ├── ExportRdfButton.png ├── ExportRdfDialog.png ├── GeneratedSkeleton.png ├── ImportOntologyDialog.png ├── LoadOntologyButton.png ├── NestedIndividualsData.png └── NestedIndividualsDropDown.png /.gitattributes: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # Set default behavior to automatically normalize line endings. 3 | ############################################################################### 4 | * text=auto 5 | 6 | ############################################################################### 7 | # Set default behavior for command prompt diff. 8 | # 9 | # This is need for earlier builds of msysgit that does not have it on by 10 | # default for csharp files. 11 | # Note: This is only used by command line 12 | ############################################################################### 13 | #*.cs diff=csharp 14 | 15 | ############################################################################### 16 | # Set the merge driver for project and solution files 17 | # 18 | # Merging from the command prompt will add diff markers to the files if there 19 | # are conflicts (Merging from VS is not affected by the settings below, in VS 20 | # the diff markers are never inserted). Diff markers may cause the following 21 | # file extensions to fail to load in VS. An alternative would be to treat 22 | # these files as binary and thus will always conflict and require user 23 | # intervention with every merge. To do so, just uncomment the entries below 24 | ############################################################################### 25 | #*.sln merge=binary 26 | #*.csproj merge=binary 27 | #*.vbproj merge=binary 28 | #*.vcxproj merge=binary 29 | #*.vcproj merge=binary 30 | #*.dbproj merge=binary 31 | #*.fsproj merge=binary 32 | #*.lsproj merge=binary 33 | #*.wixproj merge=binary 34 | #*.modelproj merge=binary 35 | #*.sqlproj merge=binary 36 | #*.wwaproj merge=binary 37 | 38 | ############################################################################### 39 | # behavior for image files 40 | # 41 | # image files are treated as binary by default. 42 | ############################################################################### 43 | #*.jpg binary 44 | #*.png binary 45 | #*.gif binary 46 | 47 | ############################################################################### 48 | # diff behavior for common document formats 49 | # 50 | # Convert binary document formats to text before diffing them. This feature 51 | # is only available from the command line. Turn it on by uncommenting the 52 | # entries below. 53 | ############################################################################### 54 | #*.doc diff=astextplain 55 | #*.DOC diff=astextplain 56 | #*.docx diff=astextplain 57 | #*.DOCX diff=astextplain 58 | #*.dot diff=astextplain 59 | #*.DOT diff=astextplain 60 | #*.pdf diff=astextplain 61 | #*.PDF diff=astextplain 62 | #*.rtf diff=astextplain 63 | #*.RTF diff=astextplain 64 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | 4 | # User-specific files 5 | *.suo 6 | *.user 7 | *.userosscache 8 | *.sln.docstates 9 | 10 | # User-specific files (MonoDevelop/Xamarin Studio) 11 | *.userprefs 12 | 13 | # Build results 14 | [Dd]ebug/ 15 | [Dd]ebugPublic/ 16 | [Rr]elease/ 17 | [Rr]eleases/ 18 | x64/ 19 | x86/ 20 | bld/ 21 | [Bb]in/ 22 | [Oo]bj/ 23 | [Ll]og/ 24 | 25 | # Visual Studio 2015 cache/options directory 26 | .vs/ 27 | # Uncomment if you have tasks that create the project's static files in wwwroot 28 | #wwwroot/ 29 | 30 | # MSTest test Results 31 | [Tt]est[Rr]esult*/ 32 | [Bb]uild[Ll]og.* 33 | 34 | # NUNIT 35 | *.VisualState.xml 36 | TestResult.xml 37 | 38 | # Build Results of an ATL Project 39 | [Dd]ebugPS/ 40 | [Rr]eleasePS/ 41 | dlldata.c 42 | 43 | # DNX 44 | project.lock.json 45 | project.fragment.lock.json 46 | artifacts/ 47 | 48 | *_i.c 49 | *_p.c 50 | *_i.h 51 | *.ilk 52 | *.meta 53 | *.obj 54 | *.pch 55 | *.pdb 56 | *.pgc 57 | *.pgd 58 | *.rsp 59 | *.sbr 60 | *.tlb 61 | *.tli 62 | *.tlh 63 | *.tmp 64 | *.tmp_proj 65 | *.log 66 | *.vspscc 67 | *.vssscc 68 | .builds 69 | *.pidb 70 | *.svclog 71 | *.scc 72 | 73 | # Chutzpah Test files 74 | _Chutzpah* 75 | 76 | # Visual C++ cache files 77 | ipch/ 78 | *.aps 79 | *.ncb 80 | *.opendb 81 | *.opensdf 82 | *.sdf 83 | *.cachefile 84 | *.VC.db 85 | *.VC.VC.opendb 86 | 87 | # Visual Studio profiler 88 | *.psess 89 | *.vsp 90 | *.vspx 91 | *.sap 92 | 93 | # TFS 2012 Local Workspace 94 | $tf/ 95 | 96 | # Guidance Automation Toolkit 97 | *.gpState 98 | 99 | # ReSharper is a .NET coding add-in 100 | _ReSharper*/ 101 | *.[Rr]e[Ss]harper 102 | *.DotSettings.user 103 | 104 | # JustCode is a .NET coding add-in 105 | .JustCode 106 | 107 | # TeamCity is a build add-in 108 | _TeamCity* 109 | 110 | # DotCover is a Code Coverage Tool 111 | *.dotCover 112 | 113 | # NCrunch 114 | _NCrunch_* 115 | .*crunch*.local.xml 116 | nCrunchTemp_* 117 | 118 | # MightyMoose 119 | *.mm.* 120 | AutoTest.Net/ 121 | 122 | # Web workbench (sass) 123 | .sass-cache/ 124 | 125 | # Installshield output folder 126 | [Ee]xpress/ 127 | 128 | # DocProject is a documentation generator add-in 129 | DocProject/buildhelp/ 130 | DocProject/Help/*.HxT 131 | DocProject/Help/*.HxC 132 | DocProject/Help/*.hhc 133 | DocProject/Help/*.hhk 134 | DocProject/Help/*.hhp 135 | DocProject/Help/Html2 136 | DocProject/Help/html 137 | 138 | # Click-Once directory 139 | publish/ 140 | 141 | # Publish Web Output 142 | *.[Pp]ublish.xml 143 | *.azurePubxml 144 | # TODO: Comment the next line if you want to checkin your web deploy settings 145 | # but database connection strings (with potential passwords) will be unencrypted 146 | #*.pubxml 147 | *.publishproj 148 | 149 | # Microsoft Azure Web App publish settings. Comment the next line if you want to 150 | # checkin your Azure Web App publish settings, but sensitive information contained 151 | # in these scripts will be unencrypted 152 | PublishScripts/ 153 | 154 | # NuGet Packages 155 | *.nupkg 156 | # The packages folder can be ignored because of Package Restore 157 | **/packages/* 158 | # except build/, which is used as an MSBuild target. 159 | !**/packages/build/ 160 | # Uncomment if necessary however generally it will be regenerated when needed 161 | #!**/packages/repositories.config 162 | # NuGet v3's project.json files produces more ignoreable files 163 | *.nuget.props 164 | *.nuget.targets 165 | 166 | # Microsoft Azure Build Output 167 | csx/ 168 | *.build.csdef 169 | 170 | # Microsoft Azure Emulator 171 | ecf/ 172 | rcf/ 173 | 174 | # Windows Store app package directories and files 175 | AppPackages/ 176 | BundleArtifacts/ 177 | Package.StoreAssociation.xml 178 | _pkginfo.txt 179 | 180 | # Visual Studio cache files 181 | # files ending in .cache can be ignored 182 | *.[Cc]ache 183 | # but keep track of directories ending in .cache 184 | !*.[Cc]ache/ 185 | 186 | # Others 187 | ClientBin/ 188 | ~$* 189 | *~ 190 | *.dbmdl 191 | *.dbproj.schemaview 192 | *.jfm 193 | *.pfx 194 | *.publishsettings 195 | node_modules/ 196 | orleans.codegen.cs 197 | 198 | # Since there are multiple workflows, uncomment next line to ignore bower_components 199 | # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) 200 | #bower_components/ 201 | 202 | # RIA/Silverlight projects 203 | Generated_Code/ 204 | 205 | # Backup & report files from converting an old project file 206 | # to a newer Visual Studio version. Backup files are not needed, 207 | # because we have git ;-) 208 | _UpgradeReport_Files/ 209 | Backup*/ 210 | UpgradeLog*.XML 211 | UpgradeLog*.htm 212 | 213 | # SQL Server files 214 | *.mdf 215 | *.ldf 216 | 217 | # Business Intelligence projects 218 | *.rdl.data 219 | *.bim.layout 220 | *.bim_*.settings 221 | 222 | # Microsoft Fakes 223 | FakesAssemblies/ 224 | 225 | # GhostDoc plugin setting file 226 | *.GhostDoc.xml 227 | 228 | # Node.js Tools for Visual Studio 229 | .ntvs_analysis.dat 230 | 231 | # Visual Studio 6 build log 232 | *.plg 233 | 234 | # Visual Studio 6 workspace options file 235 | *.opt 236 | 237 | # Visual Studio LightSwitch build output 238 | **/*.HTMLClient/GeneratedArtifacts 239 | **/*.DesktopClient/GeneratedArtifacts 240 | **/*.DesktopClient/ModelManifest.xml 241 | **/*.Server/GeneratedArtifacts 242 | **/*.Server/ModelManifest.xml 243 | _Pvt_Extensions 244 | 245 | # Paket dependency manager 246 | .paket/paket.exe 247 | paket-files/ 248 | 249 | # FAKE - F# Make 250 | .fake/ 251 | 252 | # JetBrains Rider 253 | .idea/ 254 | *.sln.iml 255 | 256 | # CodeRush 257 | .cr/ 258 | 259 | # Python Tools for Visual Studio (PTVS) 260 | __pycache__/ 261 | *.pyc -------------------------------------------------------------------------------- /ExcelRDF.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 15 4 | VisualStudioVersion = 15.0.28307.421 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExcelRDF", "ExcelRDF\ExcelRDF.csproj", "{405F50D9-BEB5-43F0-921D-0C93FE159DFB}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {405F50D9-BEB5-43F0-921D-0C93FE159DFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {405F50D9-BEB5-43F0-921D-0C93FE159DFB}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {405F50D9-BEB5-43F0-921D-0C93FE159DFB}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {405F50D9-BEB5-43F0-921D-0C93FE159DFB}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | GlobalSection(ExtensibilityGlobals) = postSolution 23 | SolutionGuid = {5C6C06AB-D2A4-4BB0-B771-4E3A2EE4B502} 24 | EndGlobalSection 25 | EndGlobal 26 | -------------------------------------------------------------------------------- /ExcelRDF/DotNetRdfExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using VDS.RDF; 7 | using VDS.RDF.Ontology; 8 | 9 | namespace ExcelRDF 10 | { 11 | static class DotNetRdfExtensions 12 | { 13 | public static bool IsTopNamedClass(this OntologyClass cls) 14 | { 15 | return cls.IsNamed() && !cls.DirectSuperClasses.Any(superCls => superCls.IsNamed() && !superCls.Resource.ToString().Equals("http://www.w3.org/2002/07/owl#Thing")); 16 | } 17 | 18 | public static bool IsNamed(this OntologyResource ontResource) 19 | { 20 | return ontResource.Resource.IsUri(); 21 | } 22 | 23 | public static bool IsUri(this INode node) 24 | { 25 | return node.NodeType.Equals(NodeType.Uri); 26 | } 27 | 28 | public static IUriNode GetUriNode(this OntologyResource ontResource) 29 | { 30 | if (!ontResource.IsNamed()) 31 | { 32 | throw new RdfException($"Ontology resource {ontResource} does not have an IRI."); 33 | } 34 | return ontResource.Resource.AsUriNode(); 35 | } 36 | 37 | public static IUriNode AsUriNode(this INode node) 38 | { 39 | if (!node.IsUri()) 40 | { 41 | throw new RdfException($"Node {node} is not an URI node."); 42 | } 43 | return node as IUriNode; 44 | } 45 | 46 | public static Uri GetIri(this OntologyResource ontResource) 47 | { 48 | return ontResource.GetUriNode().Uri; 49 | } 50 | 51 | public static bool IsOwlThing(this OntologyClass cls) 52 | { 53 | Uri owlThing = new Uri("http://www.w3.org/2002/07/owl#Thing"); 54 | return cls.IsNamed() && cls.GetIri().Equals(owlThing); 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /ExcelRDF/ExcelRDF.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 20 | 21 | {BAA0C2D2-18E2-41B9-852F-F413020CAA33};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 22 | Debug 23 | AnyCPU 24 | {405F50D9-BEB5-43F0-921D-0C93FE159DFB} 25 | Library 26 | false 27 | ExcelRDF 28 | ExcelRDF 29 | v4.5 30 | VSTO40 31 | True 32 | true 33 | C:\Users\karlh\Scratch\Git\ExcelRDF\docs\distribution\ 34 | https://dev.realestatecore.io/ExcelRDF/distribution/ 35 | en 36 | 1.1.4.0 37 | false 38 | true 39 | 7 40 | days 41 | ExcelRDF 42 | Karl Hammar 43 | https://dev.realestatecore.io/ExcelRDF/ 44 | ExcelRDF 45 | A VSTO plugin for round-trip XLS<->RDF data transformation. 46 | 3 47 | 48 | 49 | 50 | False 51 | Microsoft .NET Framework 4.7.2 %28x86 and x64%29 52 | true 53 | 54 | 55 | False 56 | .NET Framework 3.5 SP1 57 | false 58 | 59 | 60 | False 61 | Microsoft Visual Studio 2010 Tools for Office Runtime %28x86 and x64%29 62 | true 63 | 64 | 65 | 66 | 70 | Excel 71 | 72 | 88 | 89 | true 90 | full 91 | false 92 | bin\Debug\ 93 | false 94 | $(DefineConstants);DEBUG;TRACE 95 | 4 96 | 97 | 113 | 114 | pdbonly 115 | true 116 | bin\Release\ 117 | false 118 | $(DefineConstants);TRACE 119 | 4 120 | 121 | 124 | 125 | 126 | 127 | ..\packages\dotNetRDF.2.2.0\lib\net40\dotNetRDF.dll 128 | 129 | 130 | ..\packages\HtmlAgilityPack.1.8.2\lib\Net45\HtmlAgilityPack.dll 131 | 132 | 133 | ..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | ..\packages\VDS.Common.1.10.0\lib\net40-client\VDS.Common.dll 149 | 150 | 151 | 152 | 153 | False 154 | 155 | 156 | False 157 | 158 | 159 | False 160 | 161 | 162 | False 163 | 164 | 165 | False 166 | 167 | 168 | 169 | 170 | True 171 | 172 | 173 | 174 | 175 | False 176 | true 177 | 178 | 179 | False 180 | true 181 | 182 | 183 | False 184 | 185 | 186 | 196 | 197 | 198 | 199 | Form 200 | 201 | 202 | ExportOptionsForm.cs 203 | 204 | 205 | 206 | Form 207 | 208 | 209 | ImportOptionsForm.cs 210 | 211 | 212 | Code 213 | 214 | 215 | ExportOptionsForm.cs 216 | 217 | 218 | ImportOptionsForm.cs 219 | 220 | 221 | ResXFileCodeGenerator 222 | Designer 223 | Resources.Designer.cs 224 | 225 | 226 | Ribbon.cs 227 | 228 | 229 | 230 | SettingsSingleFileGenerator 231 | Settings.Designer.cs 232 | 233 | 234 | True 235 | True 236 | Resources.resx 237 | 238 | 239 | True 240 | Settings.settings 241 | 242 | 243 | 244 | Component 245 | 246 | 247 | Ribbon.cs 248 | 249 | 250 | Code 251 | 252 | 253 | ThisAddIn.cs 254 | 255 | 256 | ThisAddIn.Designer.xml 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 10.0 266 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) 267 | 268 | 269 | true 270 | 271 | 272 | 273 | 274 | 275 | 276 | 6F62947135BD456D1A27AC27B2B11C150013E0F1 277 | 278 | 279 | false 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | -------------------------------------------------------------------------------- /ExcelRDF/ExportOptionsForm.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Text.RegularExpressions; 5 | using System.Windows.Forms; 6 | 7 | namespace ExcelRDF 8 | { 9 | public partial class ExportOptionsForm : Form 10 | { 11 | 12 | public ExportOptionsForm() 13 | { 14 | InitializeComponent(); 15 | } 16 | 17 | private void ExportOptionsForm_Load(object sender, EventArgs e) 18 | { 19 | int nsIndex = 0; 20 | foreach (Uri uri in RdfOntologyOperations.instance.candidateNamespacesToMap) 21 | { 22 | string pName = String.Format("ns{0}", nsIndex); 23 | nsIndex++; 24 | string[] row = { pName, uri.ToString() }; 25 | namespacePrefixesView.Rows.Add(row); 26 | } 27 | } 28 | 29 | private void ExportNamespaceTextBox_Validating(object sender, CancelEventArgs e) 30 | { 31 | if (Uri.TryCreate(exportNamespaceTextBox.Text, UriKind.Absolute, out Uri tempValue) == true) 32 | { 33 | errorProvider1.SetError(exportNamespaceTextBox, ""); 34 | okButton.Enabled = true; 35 | } 36 | else 37 | { 38 | errorProvider1.SetError(exportNamespaceTextBox, "Please enter a correctly formatted URI."); 39 | okButton.Enabled = false; 40 | } 41 | } 42 | 43 | private void OkButton_Click(object sender, EventArgs e) 44 | { 45 | RdfOntologyOperations.instance.exportNamespace = new Uri(exportNamespaceTextBox.Text); 46 | 47 | Dictionary prefixMappings = new Dictionary(); 48 | foreach (DataGridViewRow row in namespacePrefixesView.Rows) 49 | { 50 | string prefix = (string)row.Cells["prefix"].Value; 51 | string nspace = (string)row.Cells["nspace"].Value; 52 | Uri nspaceUri = new Uri(nspace); 53 | prefixMappings.Add(prefix, nspaceUri); 54 | } 55 | RdfOntologyOperations.instance.exportPrefixMappings = prefixMappings; 56 | 57 | this.Close(); 58 | } 59 | 60 | private void CancelButton_Click(object sender, EventArgs e) 61 | { 62 | this.Close(); 63 | } 64 | 65 | private void AddPrefixButton_Click(object sender, EventArgs e) 66 | { 67 | namespacePrefixesView.Rows.Add(); 68 | } 69 | 70 | private void RemovePrefixButton_Click(object sender, EventArgs e) 71 | { 72 | if (namespacePrefixesView.SelectedRows.Count == 1) 73 | { 74 | namespacePrefixesView.Rows.RemoveAt(namespacePrefixesView.SelectedRows[0].Index); 75 | } 76 | } 77 | 78 | private void NamespacePrefixesView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) 79 | { 80 | string headerText = namespacePrefixesView.Columns[e.ColumnIndex].HeaderText; 81 | string cellText = e.FormattedValue.ToString(); 82 | 83 | if (headerText.Equals("Prefix")) 84 | { 85 | // Validate prefix cell 86 | Regex rx = new Regex(@"[\w\d]+"); 87 | if (rx.Match(cellText).Success == true) 88 | { 89 | errorProvider1.SetError(namespacePrefixesView, ""); 90 | okButton.Enabled = true; 91 | } 92 | else 93 | { 94 | errorProvider1.SetError(namespacePrefixesView, "Please enter a correctly formatted prefix name."); 95 | okButton.Enabled = false; 96 | } 97 | } 98 | else if (headerText.Equals("Namespace")) 99 | { 100 | // Validate namespace cell 101 | if (Uri.TryCreate(cellText, UriKind.Absolute, out Uri tempValue) == true) 102 | { 103 | errorProvider1.SetError(namespacePrefixesView, ""); 104 | okButton.Enabled = true; 105 | } 106 | else 107 | { 108 | errorProvider1.SetError(namespacePrefixesView, "Please enter a correctly formatted namespace URI."); 109 | okButton.Enabled = false; 110 | } 111 | } 112 | } 113 | 114 | private void AddDataNamespaceToMappingsButton_Click(object sender, EventArgs e) 115 | { 116 | string[] row = { "", exportNamespaceTextBox.Text }; 117 | namespacePrefixesView.Rows.Add(row); 118 | } 119 | } 120 | } 121 | -------------------------------------------------------------------------------- /ExcelRDF/ExportOptionsForm.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 17, 17 122 | 123 | 124 | True 125 | 126 | 127 | True 128 | 129 | -------------------------------------------------------------------------------- /ExcelRDF/Helper.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Office.Interop.Excel; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using VDS.RDF; 8 | using VDS.RDF.Ontology; 9 | 10 | namespace ExcelRDF 11 | { 12 | internal static class Helper 13 | { 14 | internal static string GetExcelColumnName(int columnNumber) 15 | { 16 | int dividend = columnNumber; 17 | string columnName = String.Empty; 18 | int modulo; 19 | 20 | while (dividend > 0) 21 | { 22 | modulo = (dividend - 1) % 26; 23 | columnName = Convert.ToChar(65 + modulo).ToString() + columnName; 24 | dividend = (int)((dividend - modulo) / 26); 25 | } 26 | 27 | return columnName; 28 | } 29 | 30 | /// 31 | /// Get a label for an ontology resource, if it exists; else get the full URI. 32 | /// 33 | /// 34 | /// 35 | internal static string GetLabel(OntologyResource ontologyResource) 36 | { 37 | string enLabel = ""; 38 | // Iterate over all resource labels 39 | foreach (ILiteralNode label in ontologyResource.Label) 40 | { 41 | // If a language-agnostic label is found, return it immediately 42 | if (label.Language == "") 43 | { 44 | return label.Value; 45 | } 46 | // If an english-language label is found, store it for later 47 | if (label.Language == "en") 48 | { 49 | enLabel = label.Value; 50 | } 51 | } 52 | // Fallback option -- use the English label 53 | if (enLabel != "") 54 | { 55 | return enLabel; 56 | } 57 | else 58 | { 59 | // Fallback to the fallback option -- use resource IRI, either by extracting local name 60 | // (if it is a URI node) or using whatever representation the resource provides 61 | if (ontologyResource.Resource.NodeType == NodeType.Uri) 62 | { 63 | IUriNode uriNode = (IUriNode)ontologyResource.Resource; 64 | return GetLocalName(uriNode.Uri); 65 | } 66 | else 67 | { 68 | return ontologyResource.ToString(); 69 | } 70 | } 71 | } 72 | 73 | internal static string GetLocalName(Uri uri) 74 | { 75 | if (uri.Fragment.Equals("")) 76 | { 77 | // There's no fragment, i.e., this is a slash URI; return substring after the last slash. 78 | string uriString = uri.ToString(); 79 | return uriString.Substring(uriString.LastIndexOf("/") + 1); 80 | } 81 | else 82 | { 83 | // There is a fragment, i.e., this is a hash URI; so return the fragment (minus hash) as local name. 84 | return uri.Fragment.TrimStart('#'); 85 | } 86 | } 87 | 88 | internal static HashSet getNamespaceUrisFromComments(Range sourceRange) 89 | { 90 | // Used for filtering spurious hits out later 91 | List wellknownNamespaces = new List { NamespaceMapper.OWL, NamespaceMapper.RDF, NamespaceMapper.RDFS, NamespaceMapper.XMLSCHEMA }; 92 | 93 | HashSet retVal = new HashSet(); 94 | // Iterate through range 95 | foreach (Range cell in sourceRange.Cells) 96 | { 97 | // If there are notes, read them 98 | if (cell.NoteText().Count() > 0) 99 | { 100 | string noteText = cell.NoteText(); 101 | // Parse notes by line 102 | foreach (string noteTextComponent in noteText.Split('\n')) 103 | { 104 | // Trim enclosure and see if we get a URI out 105 | Char[] trimUrisChars = new Char[] { '<', '>' }; 106 | if (Uri.TryCreate(noteTextComponent.Trim(trimUrisChars), UriKind.Absolute, out Uri noteTextComponentUri) == true) 107 | { 108 | // Yay, we have a Uri! Now let's figure out which type. Start by removing any query data if it exists 109 | string nameSpaceUri = noteTextComponentUri.GetLeftPart(UriPartial.Path); 110 | if (noteTextComponentUri.Fragment.Equals("")) 111 | { 112 | // There's no fragment, i.e., this is a slash URI; strip everything after the last slash. 113 | nameSpaceUri = nameSpaceUri.Substring(0, nameSpaceUri.LastIndexOf('/') + 1); 114 | } 115 | else 116 | { 117 | // There is a fragment, i.e., this is a hash URI; build the namespace from the 118 | // path and add back the closing hash 119 | nameSpaceUri = nameSpaceUri + "#"; 120 | } 121 | // Finally, if the resulting name space URI is not in the default mappings already, add it to the list 122 | if (!wellknownNamespaces.Contains(nameSpaceUri)) 123 | { 124 | retVal.Add(new Uri(nameSpaceUri)); 125 | } 126 | } 127 | } 128 | } 129 | } 130 | return retVal; 131 | } 132 | } 133 | } 134 | -------------------------------------------------------------------------------- /ExcelRDF/ImportOptionsForm.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Data; 4 | using System.Linq; 5 | using System.Windows.Forms; 6 | using VDS.RDF; 7 | using VDS.RDF.Ontology; 8 | 9 | namespace ExcelRDF 10 | { 11 | public partial class ImportOptionsForm : Form 12 | { 13 | private readonly string NAMED_INDIVIDUAL_LABEL = "Named individual"; 14 | private readonly string NESTED_ANON_INDIVIDUAL_LABEL = "Nested anonymous individual"; 15 | 16 | private OntologyGraph graph; 17 | private Dictionary> classToPropertyMap = new Dictionary>(); 18 | private bool _noise = false; 19 | 20 | /// 21 | /// 22 | /// 23 | /// 24 | public ImportOptionsForm(OntologyGraph graph) 25 | { 26 | InitializeComponent(); 27 | this.graph = graph; 28 | RdfOntologyOperations.instance.resourcesToImport.Clear(); 29 | RdfOntologyOperations.instance.nestedProperties.Clear(); 30 | InitializeTreeView(); 31 | } 32 | 33 | /// 34 | /// Recursively add an ontology class and its subclasses to a tree. 35 | /// 36 | /// Ontology class to add. 37 | /// The collection of nodes to which this class is to be added. 38 | private void AddToTreeView(OntologyClass c, TreeNodeCollection nodes) 39 | { 40 | string classLabel = Helper.GetLabel(c); 41 | string classId = c.Resource.ToString(); 42 | TreeNode newNode = nodes.Add(classId, classLabel); 43 | newNode.Tag = c; 44 | classToPropertyMap.Add(newNode, new HashSet()); 45 | foreach (OntologyProperty property in c.IsDomainOf.OrderBy(o => o.Types.First()).OrderBy(o => o.ToString())) 46 | { 47 | classToPropertyMap[newNode].Add(property); 48 | } 49 | 50 | // Recurse for all children 51 | foreach (OntologyClass sc in c.DirectSubClasses.Where(subClass => subClass.IsNamed())) 52 | { 53 | AddToTreeView(sc, newNode.Nodes); 54 | } 55 | } 56 | 57 | /// 58 | /// Render the class hierarchy of the loaded ontology into the TreeView on the left 59 | /// side of the import options window. 60 | /// 61 | private void InitializeTreeView() 62 | { 63 | ontologyClassesTreeView.BeginUpdate(); 64 | 65 | foreach (OntologyClass c in graph.OwlClasses) 66 | { 67 | if (c.IsTopNamedClass()) 68 | { 69 | AddToTreeView(c, ontologyClassesTreeView.Nodes); 70 | } 71 | } 72 | ontologyClassesTreeView.EndUpdate(); 73 | ontologyClassesTreeView.ExpandAll(); 74 | } 75 | 76 | private void OkButton_Click(object sender, EventArgs e) 77 | { 78 | Close(); 79 | } 80 | 81 | private void CancelButton_Click(object sender, EventArgs e) 82 | { 83 | Close(); 84 | } 85 | 86 | /// 87 | /// Callback that re-renders the CheckedListBox holding properties when a node in 88 | /// in the left-hand TreeView is selected or checked. 89 | /// 90 | /// 91 | /// 92 | private void OntologyClassesTreeView_AfterSelect(object sender, TreeViewEventArgs e) 93 | { 94 | propertiesListBox.BeginUpdate(); 95 | propertiesListBox.Items.Clear(); 96 | foreach (OntologyProperty property in classToPropertyMap[e.Node]) 97 | { 98 | // Re-check those boxes that were checked previously, i.e. keep state 99 | bool isChecked = RdfOntologyOperations.instance.resourcesToImport.Contains(property.ToString()); 100 | propertiesListBox.Items.Add(new PropertyListItem(property), isChecked); 101 | } 102 | propertiesListBox.EndUpdate(); 103 | } 104 | 105 | private void OntologyClassesTreeView_AfterCheck(object sender, TreeViewEventArgs e) 106 | { 107 | if (e.Node.Checked) 108 | { 109 | RdfOntologyOperations.instance.resourcesToImport.Add(e.Node.Tag.ToString()); 110 | } 111 | else 112 | { 113 | RdfOntologyOperations.instance.resourcesToImport.Remove(e.Node.Tag.ToString()); 114 | } 115 | } 116 | 117 | private void PropertiesListBox_ItemCheck(object sender, ItemCheckEventArgs e) 118 | { 119 | if (e.NewValue == CheckState.Checked) 120 | { 121 | RdfOntologyOperations.instance.resourcesToImport.Add(((PropertyListItem)propertiesListBox.Items[e.Index]).property.ToString()); 122 | } 123 | else 124 | { 125 | RdfOntologyOperations.instance.resourcesToImport.Remove(((PropertyListItem)propertiesListBox.Items[e.Index]).property.ToString()); 126 | } 127 | } 128 | 129 | /// 130 | /// Nested class for the property list, wrapping an OntologyProperty but changing its default 131 | /// default string representation to use the label. 132 | /// 133 | private class PropertyListItem 134 | { 135 | public OntologyProperty property; 136 | public PropertyListItem(OntologyProperty property) 137 | { 138 | this.property = property; 139 | } 140 | public override string ToString() 141 | { 142 | return Helper.GetLabel(property); 143 | } 144 | } 145 | 146 | private void PropCtxMenuRangeTypeSelector_SelectedIndexChanged(object sender, EventArgs e) 147 | { 148 | if (_noise) return; 149 | string selectedOption = (string)propCtxMenuRangeTypeSelector.SelectedItem; 150 | OntologyProperty selectedProperty = ((PropertyListItem)propertiesListBox.SelectedItem).property; 151 | Uri selectedPropertyUri = ((UriNode)selectedProperty.Resource).Uri; 152 | if (selectedOption.Equals(NESTED_ANON_INDIVIDUAL_LABEL)) 153 | { 154 | propCtxMenuSubProperties.Enabled = true; 155 | RdfOntologyOperations.instance.nestedProperties[selectedPropertyUri.AbsoluteUri] = new HashSet(); 156 | } 157 | else 158 | { 159 | propCtxMenuSubProperties.Enabled = false; 160 | RdfOntologyOperations.instance.nestedProperties.Remove(selectedPropertyUri.AbsoluteUri); 161 | } 162 | } 163 | 164 | private void PropertyContextMenu_Opening(object sender, System.ComponentModel.CancelEventArgs e) 165 | { 166 | OntologyProperty selectedProperty = ((PropertyListItem)propertiesListBox.SelectedItem).property; 167 | Uri selectedPropertyUri = ((UriNode)selectedProperty.Resource).Uri; 168 | 169 | // Populate the range type selector 170 | propCtxMenuRangeTypeSelector.Items.Clear(); 171 | propCtxMenuRangeTypeSelector.Items.AddRange(new String[] { NAMED_INDIVIDUAL_LABEL, 172 | NESTED_ANON_INDIVIDUAL_LABEL }); 173 | 174 | _noise = true; 175 | if (!RdfOntologyOperations.instance.nestedProperties.ContainsKey(selectedPropertyUri.AbsoluteUri)) { 176 | propCtxMenuRangeTypeSelector.SelectedIndex = 0; 177 | propCtxMenuSubProperties.Enabled = false; 178 | } 179 | else 180 | { 181 | propCtxMenuRangeTypeSelector.SelectedIndex = 1; 182 | propCtxMenuSubProperties.Enabled = true; 183 | } 184 | _noise = false; 185 | 186 | // Load submenus in propCtxMenuSubProperties based on the selected property 187 | propCtxMenuSubProperties.DropDownItems.Clear(); 188 | List subPropertyUris = new List(); 189 | subPropertyUris.Add(new Uri(OntologyHelper.PropertyLabel)); 190 | 191 | // TODO: This is horribly slow on non-trivial sized graphs; very likely needs to be changed! 192 | foreach (OntologyClass range in selectedProperty.Ranges) 193 | { 194 | foreach (OntologyProperty subPropertyCandidate in graph.OwlProperties) 195 | { 196 | if (subPropertyCandidate.Domains.Contains(range)) 197 | { 198 | Uri subPropertyCandidateUri = ((UriNode)subPropertyCandidate.Resource).Uri; 199 | subPropertyUris.Add(subPropertyCandidateUri); 200 | } 201 | } 202 | } 203 | foreach (Uri subPropertyUri in subPropertyUris) 204 | { 205 | ToolStripMenuItem newItem = new ToolStripMenuItem(subPropertyUri.ToString()) 206 | { 207 | Checked = false, 208 | CheckOnClick = true, 209 | Tag = subPropertyUri, 210 | }; 211 | newItem.CheckedChanged += new EventHandler(this.NestedProperty_CheckedChanged); 212 | propCtxMenuSubProperties.DropDownItems.Add(newItem); 213 | 214 | if (RdfOntologyOperations.instance.nestedProperties.ContainsKey(selectedPropertyUri.AbsoluteUri)) { 215 | HashSet nestedProperties = RdfOntologyOperations.instance.nestedProperties[selectedPropertyUri.AbsoluteUri]; 216 | if (nestedProperties.Contains(subPropertyUri.AbsoluteUri)) 217 | { 218 | newItem.Checked = true; 219 | } 220 | else 221 | { 222 | newItem.Checked = false; 223 | } 224 | } 225 | } 226 | } 227 | 228 | private void NestedProperty_CheckedChanged(object sender, EventArgs e) 229 | { 230 | OntologyProperty selectedProperty = ((PropertyListItem)propertiesListBox.SelectedItem).property; 231 | Uri selectedPropertyUri = ((UriNode)selectedProperty.Resource).Uri; 232 | Uri nestedPropertyUri = (Uri)((ToolStripMenuItem)sender).Tag; 233 | if (((ToolStripMenuItem)sender).Checked) 234 | { 235 | RdfOntologyOperations.instance.nestedProperties[selectedPropertyUri.AbsoluteUri].Add(nestedPropertyUri.AbsoluteUri); 236 | } 237 | else 238 | { 239 | RdfOntologyOperations.instance.nestedProperties[selectedPropertyUri.AbsoluteUri].Remove(nestedPropertyUri.AbsoluteUri); 240 | } 241 | } 242 | } 243 | } 244 | -------------------------------------------------------------------------------- /ExcelRDF/ImportOptionsForm.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 17, 17 122 | 123 | -------------------------------------------------------------------------------- /ExcelRDF/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using System.Security; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("ExcelRDF")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("ExcelRDF")] 14 | [assembly: AssemblyCopyright("Copyright © 2019")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | 18 | // Setting ComVisible to false makes the types in this assembly not visible 19 | // to COM components. If you need to access a type in this assembly from 20 | // COM, set the ComVisible attribute to true on that type. 21 | [assembly: ComVisible(false)] 22 | 23 | // The following GUID is for the ID of the typelib if this project is exposed to COM 24 | [assembly: Guid("fb56fec6-36a9-485c-8924-f00b83ec1143")] 25 | 26 | // Version information for an assembly consists of the following four values: 27 | // 28 | // Major Version 29 | // Minor Version 30 | // Build Number 31 | // Revision 32 | // 33 | // You can specify all the values or you can default the Build and Revision Numbers 34 | // by using the '*' as shown below: 35 | // [assembly: AssemblyVersion("1.0.*")] 36 | [assembly: AssemblyVersion("1.0.0.0")] 37 | [assembly: AssemblyFileVersion("1.0.0.0")] 38 | 39 | -------------------------------------------------------------------------------- /ExcelRDF/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace ExcelRDF.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// Returns the cached ResourceManager instance used by this class. 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ExcelRDF.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// Overrides the current thread's CurrentUICulture property for all 51 | /// resource lookups using this strongly typed resource class. 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | 63 | /// 64 | /// Looks up a localized resource of type System.Drawing.Bitmap. 65 | /// 66 | internal static System.Drawing.Bitmap ExportRdfIcon { 67 | get { 68 | object obj = ResourceManager.GetObject("ExportRdfIcon", resourceCulture); 69 | return ((System.Drawing.Bitmap)(obj)); 70 | } 71 | } 72 | 73 | /// 74 | /// Looks up a localized resource of type System.Drawing.Bitmap. 75 | /// 76 | internal static System.Drawing.Bitmap LoadOntologyIcon { 77 | get { 78 | object obj = ResourceManager.GetObject("LoadOntologyIcon", resourceCulture); 79 | return ((System.Drawing.Bitmap)(obj)); 80 | } 81 | } 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /ExcelRDF/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 122 | ..\Resources\LoadOntologyIcon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 123 | 124 | 125 | ..\Resources\ExportRdfIcon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 126 | 127 | -------------------------------------------------------------------------------- /ExcelRDF/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace ExcelRDF.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.0.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /ExcelRDF/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ExcelRDF/Resources/ExportRdfIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/ExcelRDF/Resources/ExportRdfIcon.png -------------------------------------------------------------------------------- /ExcelRDF/Resources/LoadOntologyIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/ExcelRDF/Resources/LoadOntologyIcon.png -------------------------------------------------------------------------------- /ExcelRDF/Ribbon.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace ExcelRDF 2 | { 3 | partial class Ribbon : Microsoft.Office.Tools.Ribbon.RibbonBase 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | public Ribbon() 11 | : base(Globals.Factory.GetRibbonFactory()) 12 | { 13 | InitializeComponent(); 14 | } 15 | 16 | /// 17 | /// Clean up any resources being used. 18 | /// 19 | /// true if managed resources should be disposed; otherwise, false. 20 | protected override void Dispose(bool disposing) 21 | { 22 | if (disposing && (components != null)) 23 | { 24 | components.Dispose(); 25 | } 26 | base.Dispose(disposing); 27 | } 28 | 29 | #region Component Designer generated code 30 | 31 | /// 32 | /// Required method for Designer support - do not modify 33 | /// the contents of this method with the code editor. 34 | /// 35 | private void InitializeComponent() 36 | { 37 | this.tab1 = this.Factory.CreateRibbonTab(); 38 | this.RdfTranslationGroup = this.Factory.CreateRibbonGroup(); 39 | this.loadOntologyButton = this.Factory.CreateRibbonButton(); 40 | this.exportRdfButton = this.Factory.CreateRibbonButton(); 41 | this.tab1.SuspendLayout(); 42 | this.RdfTranslationGroup.SuspendLayout(); 43 | this.SuspendLayout(); 44 | // 45 | // tab1 46 | // 47 | this.tab1.ControlId.ControlIdType = Microsoft.Office.Tools.Ribbon.RibbonControlIdType.Office; 48 | this.tab1.ControlId.OfficeId = "TabData"; 49 | this.tab1.Groups.Add(this.RdfTranslationGroup); 50 | this.tab1.Label = "TabData"; 51 | this.tab1.Name = "tab1"; 52 | // 53 | // RdfTranslationGroup 54 | // 55 | this.RdfTranslationGroup.Items.Add(this.loadOntologyButton); 56 | this.RdfTranslationGroup.Items.Add(this.exportRdfButton); 57 | this.RdfTranslationGroup.Label = "RDF Translation"; 58 | this.RdfTranslationGroup.Name = "RdfTranslationGroup"; 59 | this.RdfTranslationGroup.Position = this.Factory.RibbonPosition.AfterOfficeId("GroupGetExternalData"); 60 | // 61 | // loadOntologyButton 62 | // 63 | this.loadOntologyButton.ControlSize = Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge; 64 | this.loadOntologyButton.Image = global::ExcelRDF.Properties.Resources.LoadOntologyIcon; 65 | this.loadOntologyButton.Label = "Load Ontology"; 66 | this.loadOntologyButton.Name = "loadOntologyButton"; 67 | this.loadOntologyButton.ShowImage = true; 68 | this.loadOntologyButton.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(this.LoadOntologyButton_Click); 69 | // 70 | // exportRdfButton 71 | // 72 | this.exportRdfButton.ControlSize = Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge; 73 | this.exportRdfButton.Image = global::ExcelRDF.Properties.Resources.ExportRdfIcon; 74 | this.exportRdfButton.Label = "Export RDF"; 75 | this.exportRdfButton.Name = "exportRdfButton"; 76 | this.exportRdfButton.ShowImage = true; 77 | this.exportRdfButton.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(this.ExportRdfButton_Click); 78 | // 79 | // Ribbon 80 | // 81 | this.Name = "Ribbon"; 82 | this.RibbonType = "Microsoft.Excel.Workbook"; 83 | this.Tabs.Add(this.tab1); 84 | this.Load += new Microsoft.Office.Tools.Ribbon.RibbonUIEventHandler(this.Ribbon_Load); 85 | this.tab1.ResumeLayout(false); 86 | this.tab1.PerformLayout(); 87 | this.RdfTranslationGroup.ResumeLayout(false); 88 | this.RdfTranslationGroup.PerformLayout(); 89 | this.ResumeLayout(false); 90 | 91 | } 92 | 93 | #endregion 94 | 95 | internal Microsoft.Office.Tools.Ribbon.RibbonTab tab1; 96 | internal Microsoft.Office.Tools.Ribbon.RibbonGroup RdfTranslationGroup; 97 | internal Microsoft.Office.Tools.Ribbon.RibbonButton loadOntologyButton; 98 | internal Microsoft.Office.Tools.Ribbon.RibbonButton exportRdfButton; 99 | } 100 | 101 | partial class ThisRibbonCollection 102 | { 103 | internal Ribbon Ribbon 104 | { 105 | get { return this.GetRibbon(); } 106 | } 107 | } 108 | } 109 | -------------------------------------------------------------------------------- /ExcelRDF/Ribbon.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Office.Tools.Ribbon; 2 | 3 | namespace ExcelRDF 4 | { 5 | public partial class Ribbon 6 | { 7 | private void Ribbon_Load(object sender, RibbonUIEventArgs e) 8 | { 9 | 10 | } 11 | 12 | private void LoadOntologyButton_Click(object sender, RibbonControlEventArgs e) 13 | { 14 | RdfOntologyOperations.instance.LoadOntology(); 15 | } 16 | 17 | private void ExportRdfButton_Click(object sender, RibbonControlEventArgs e) 18 | { 19 | RdfOntologyOperations.instance.ExportRDF(); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ExcelRDF/Ribbon.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /ExcelRDF/ThisAddIn.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | #pragma warning disable 414 12 | namespace ExcelRDF { 13 | 14 | 15 | /// 16 | [Microsoft.VisualStudio.Tools.Applications.Runtime.StartupObjectAttribute(0)] 17 | [global::System.Security.Permissions.PermissionSetAttribute(global::System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 18 | public sealed partial class ThisAddIn : Microsoft.Office.Tools.AddInBase { 19 | 20 | internal Microsoft.Office.Tools.CustomTaskPaneCollection CustomTaskPanes; 21 | 22 | internal Microsoft.Office.Tools.SmartTagCollection VstoSmartTags; 23 | 24 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 25 | private global::System.Object missing = global::System.Type.Missing; 26 | 27 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 28 | internal Microsoft.Office.Interop.Excel.Application Application; 29 | 30 | /// 31 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 32 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 33 | public ThisAddIn(global::Microsoft.Office.Tools.Excel.ApplicationFactory factory, global::System.IServiceProvider serviceProvider) : 34 | base(factory, serviceProvider, "AddIn", "ThisAddIn") { 35 | Globals.Factory = factory; 36 | } 37 | 38 | /// 39 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 40 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 41 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 42 | protected override void Initialize() { 43 | base.Initialize(); 44 | this.Application = this.GetHostItem(typeof(Microsoft.Office.Interop.Excel.Application), "Application"); 45 | Globals.ThisAddIn = this; 46 | global::System.Windows.Forms.Application.EnableVisualStyles(); 47 | this.InitializeCachedData(); 48 | this.InitializeControls(); 49 | this.InitializeComponents(); 50 | this.InitializeData(); 51 | } 52 | 53 | /// 54 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 55 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 56 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 57 | protected override void FinishInitialization() { 58 | this.InternalStartup(); 59 | this.OnStartup(); 60 | } 61 | 62 | /// 63 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 64 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 65 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 66 | protected override void InitializeDataBindings() { 67 | this.BeginInitialization(); 68 | this.BindToData(); 69 | this.EndInitialization(); 70 | } 71 | 72 | /// 73 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 74 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 75 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 76 | private void InitializeCachedData() { 77 | if ((this.DataHost == null)) { 78 | return; 79 | } 80 | if (this.DataHost.IsCacheInitialized) { 81 | this.DataHost.FillCachedData(this); 82 | } 83 | } 84 | 85 | /// 86 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 87 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 88 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 89 | private void InitializeData() { 90 | } 91 | 92 | /// 93 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 94 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 95 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 96 | private void BindToData() { 97 | } 98 | 99 | /// 100 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 101 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 102 | private void StartCaching(string MemberName) { 103 | this.DataHost.StartCaching(this, MemberName); 104 | } 105 | 106 | /// 107 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 108 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 109 | private void StopCaching(string MemberName) { 110 | this.DataHost.StopCaching(this, MemberName); 111 | } 112 | 113 | /// 114 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 115 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 116 | private bool IsCached(string MemberName) { 117 | return this.DataHost.IsCached(this, MemberName); 118 | } 119 | 120 | /// 121 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 122 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 123 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 124 | private void BeginInitialization() { 125 | this.BeginInit(); 126 | this.CustomTaskPanes.BeginInit(); 127 | this.VstoSmartTags.BeginInit(); 128 | } 129 | 130 | /// 131 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 132 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 133 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 134 | private void EndInitialization() { 135 | this.VstoSmartTags.EndInit(); 136 | this.CustomTaskPanes.EndInit(); 137 | this.EndInit(); 138 | } 139 | 140 | /// 141 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 142 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 143 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 144 | private void InitializeControls() { 145 | this.CustomTaskPanes = Globals.Factory.CreateCustomTaskPaneCollection(null, null, "CustomTaskPanes", "CustomTaskPanes", this); 146 | this.VstoSmartTags = Globals.Factory.CreateSmartTagCollection(null, null, "VstoSmartTags", "VstoSmartTags", this); 147 | } 148 | 149 | /// 150 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 151 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 152 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 153 | private void InitializeComponents() { 154 | } 155 | 156 | /// 157 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 158 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 159 | private bool NeedsFill(string MemberName) { 160 | return this.DataHost.NeedsFill(this, MemberName); 161 | } 162 | 163 | /// 164 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 165 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 166 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] 167 | protected override void OnShutdown() { 168 | this.VstoSmartTags.Dispose(); 169 | this.CustomTaskPanes.Dispose(); 170 | base.OnShutdown(); 171 | } 172 | } 173 | 174 | /// 175 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 176 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 177 | internal sealed partial class Globals { 178 | 179 | /// 180 | private Globals() { 181 | } 182 | 183 | private static ThisAddIn _ThisAddIn; 184 | 185 | private static global::Microsoft.Office.Tools.Excel.ApplicationFactory _factory; 186 | 187 | private static ThisRibbonCollection _ThisRibbonCollection; 188 | 189 | internal static ThisAddIn ThisAddIn { 190 | get { 191 | return _ThisAddIn; 192 | } 193 | set { 194 | if ((_ThisAddIn == null)) { 195 | _ThisAddIn = value; 196 | } 197 | else { 198 | throw new System.NotSupportedException(); 199 | } 200 | } 201 | } 202 | 203 | internal static global::Microsoft.Office.Tools.Excel.ApplicationFactory Factory { 204 | get { 205 | return _factory; 206 | } 207 | set { 208 | if ((_factory == null)) { 209 | _factory = value; 210 | } 211 | else { 212 | throw new System.NotSupportedException(); 213 | } 214 | } 215 | } 216 | 217 | internal static ThisRibbonCollection Ribbons { 218 | get { 219 | if ((_ThisRibbonCollection == null)) { 220 | _ThisRibbonCollection = new ThisRibbonCollection(_factory.GetRibbonFactory()); 221 | } 222 | return _ThisRibbonCollection; 223 | } 224 | } 225 | } 226 | 227 | /// 228 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 229 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "15.0.0.0")] 230 | internal sealed partial class ThisRibbonCollection : Microsoft.Office.Tools.Ribbon.RibbonCollectionBase { 231 | 232 | /// 233 | internal ThisRibbonCollection(global::Microsoft.Office.Tools.Ribbon.RibbonFactory factory) : 234 | base(factory) { 235 | } 236 | } 237 | } 238 | -------------------------------------------------------------------------------- /ExcelRDF/ThisAddIn.Designer.xml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ExcelRDF/ThisAddIn.cs: -------------------------------------------------------------------------------- 1 | namespace ExcelRDF 2 | { 3 | public partial class ThisAddIn 4 | { 5 | private void ThisAddIn_Startup(object sender, System.EventArgs e) 6 | { 7 | } 8 | 9 | private void ThisAddIn_Shutdown(object sender, System.EventArgs e) 10 | { 11 | } 12 | 13 | #region VSTO generated code 14 | 15 | /// 16 | /// Required method for Designer support - do not modify 17 | /// the contents of this method with the code editor. 18 | /// 19 | private void InternalStartup() 20 | { 21 | this.Startup += new System.EventHandler(ThisAddIn_Startup); 22 | this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown); 23 | } 24 | 25 | #endregion 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /ExcelRDF/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | # ExcelRDF Documentation 2 | 3 | **Disclaimer:** This software is a four year old research prototype. It may have issues. Unfortunately, I do not have the bandwidth to prioritize developing it at the moment. You are most welcome to find and fix such issues through pull requests. The repository remains live here in case any other active RealEstateCore devs or community members wish to pick up the reins and continue development. /Karl Hammar, author 4 | 5 | ## Functionality 6 | 7 | The purpose of this VSTO plugin is to provide light-weight translation from OWL to XLS, and from XLS to RDF, to enable linked data generation from existing Excel-based tools and workflows. 8 | 9 | The plugin creates a rudimentary Excel skeleton based on an OWL ontology file, with worksheets representing the classes in the ontology, and columns representing the object or data properties that apply to said classes (i.e., that have a given class in their rdfs:domain declarations). The plugin adds a header row to each sheet containing human-readable labels for the columns and some metadata for each property encoded as newline-separated Excel notes on the header cells (property IRI, property type, and property range). Additionally an *Identifier* column is added, to be used for minting the IRIs of the generated named individuals. This column has similar note-based metadata added, indicating that it is an IRI minting column, and the IRI of the class the sheet represents. 10 | 11 | When exporting such an Excel skeleton to RDF (whether created wholly in this plugin, or also involving manual annotation work), the plugin iterates over the sheets and rows, creating a named individual per row, with the property assertions given by the data provided in the columns. Note that the plugin at this time does not validate the correctness of that data, it simply tacks together the data provided in the sheet. It is thus the responsibility of the user to ensure, for instance, that cells which will be exported as xsd:integers actually hold data that is formatted as integers. 12 | 13 | ## Requirements 14 | 15 | * Microsoft Excel for Windows. 16 | 17 | ## Installation instructions 18 | 19 | *Note:* Due to the lack of a code-signing certificate, a previous build of this plugin required users to add this website to their Trusted Sites list in the Windows Control Panel. I have now obtained such a certificate and signed the 1.0 build using it, so that procedure is no longer necessary. If you added this site to your Trusted Sites list, you can probably remove it now. 20 | 21 | 1. Download and execute setup.exe from the [releases page](https://github.com/RealEstateCore/ExcelRDF/releases). 22 | 2. The Windows 10 SmartScreen filter may try to prevent launching the file. If so, override it by selecting **More information** and **Run anyway**. 23 | 3. Subsequently the prerequisite .NET Framework versions will be installed (which will require superuser credentials), and the VSTO plugin itself will then be installed. You may in the latter phase be asked about if you trust the issuer who signed the software. Indicate that you do, and continue installing. 24 | 4. Launch Excel and see the instructions given below. 25 | 26 | ## Usage instructions 27 | 28 | ### Loading an ontology file 29 | 30 | 1. Create a new empty Excel document. 31 | 2. Go to the **Data** tab in the Excel ribbon menu. 32 | 3. Click on the **Load Ontology** button in the ribbon (see figure below). 33 | 4. After selecting the OWL file to use (supported formats: RDF/XML, Turtle, JSON-LD, NTriples, NQuads, TriG), a dialog will appear from which you select the classes and properties that you wish to include (see figure below). 34 | 5. Press OK and sheets and columns based on your selection will be created (see figure below). 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | ### Exporting data as RDF 43 | 44 | 1. Load up an Excel file containing ExcelRDF-compliant note-based metadata (e.g., as generated by loading an ontology file as discussed above). 45 | 2. Populate the second row and onwards of each sheet with the data you want to export (see figure below). 46 | 3. Go to the **Data** tab in the Excel ribbon menu. 47 | 4. Click on the **Export RDF** button in the ribbon (see figure below). 48 | 5. A dialog will appear asking you which namespace prefix you wish to use for your generated named individuals, and which namespace mappings to include in the generated RDF file (see figure below). A suggestion for the latter will be generated by parsing through the IRIs expressed in the metadata, but manual curation may be needed. Select reasonable options and press OK to save an RDF file to disk in one of the supported formats (RDF/XML, NTriples, Turtle). 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | ### Nested individuals 57 | 58 | Occasionally you may have poorly normalized data in which several columns in the Excel sheet have some shared characteristics that would make them suitable for representation as an own individual in the generated RDF graph. For instance, as shown in the figure below, you may have a table called *Staff Members*, containing some columns indicating the starting date of a particular staff member, and their job title -- data which, in the generated graph, you would want to split out into a separate node of the type *Employment*, connected to your staff member instances via an object property. 59 | 60 | 61 | 62 | ExcelRDF allows you to generate skeletons from your ontology that adhere to such a denormalized structure; and to parse any data expressed in accordance with the skeleton, back into RDF graphs. In order to do this, when importing the ontology as described above, right-click on a property that you have selected for inclusion in the generated skeleton. This brings up a menu (see figure below) from which you can set the property range to be either a named individual or a nested anonymous individual. In the former case (which is the default), ExcelRDF will create only one column for this property, and will when exporting an RDF graph treat the content of this column as RDF literals or IRIs (depending on the type of property). 63 | 64 | 65 | 66 | In the latter case however, ExcelRDF will create a number of columns (depending on what you select in the *Anonymous Individual Properties* sub-menu, see figure below), and the software will at export time treat the content of all of these columns as properties on a new anonymous individual, connected to the original individual via the initially selected property. 67 | 68 | 69 | 70 | ## Acknowledgements 71 | 72 | This plugin reuses [dotNetRDF](http://www.dotnetrdf.org/), a freely (MIT) licensed and very useful library for RDF/ontology parsing, managing, querying, etc. in .NET environments. 73 | -------------------------------------------------------------------------------- /docs/_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-slate 2 | show_downloads: true 3 | -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/ExcelRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_0/ExcelRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/ExcelRDF.dll.manifest: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | A VSTO plugin for round-trip XLS<->RDF data transformation. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 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 | cXROd8NQDQ0pA+zbsPPmxlw/L47pLpmq+d78/ct14j4= 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 0PTCRlsHPmknU9ZfOCUm56dzQy4A6QJyVa+wuMfoQsM= 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | pqEUucNV5Oy1/kb/+IDBRGOYYD/KgLGTKMKnhTrBwlo= 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | jLCTF8Mm6bD4PDN+rnzN6q0+ReXaNgPh68kMWgatFwI= 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 9Yw3T/yq5ONtdA2Q+/f+cNCrtzKM2a86CntwgD6ZS6Q= 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | yxGXWLT2riCWnsvGTrl/t533/RRGYTg6+/mC8t3Rsnk= 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | FzpyYpwVOPJXXgMrMm7dd1NYHK+SOGrdUrTuDkXF9o8= 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | ExcelRDF 256 | A VSTO plugin for round-trip XLS<->RDF data transformation. 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | rdZFRBd7R0QK+oOUCI0LhnjBjvI+PmOQqcxeF6T7hVY=kqB6HmBhfTXLp5/IRaFZ5jw1xx2/UWscODgsPhAR5hle5ruzBNUPCRAgeyC+xLbOBKlmRldLjQfGrwcVlvFIDJqX5YtNOrYDtOhd5s3uJxJM9/n05fZxHngn1nkHjmoVoQba5+MV2gFBGn2TS2WqV8A0GFMS0MTRydVcs8+4ISw=t95qCEpr0lSE50uj2h9LGCrZQhJsK8GBAgNxn5BaA1VgXPdF4ipW+dRX5sPM1flJsGbIc5XiGEly22beXg7p501HH1wIUU5WSjObB2esULcGktLDctOL8mPFGccFUhtIz6u4ZZXl6wONdPlh/dzxtMmB5ttVfd9pU3E0iPhpfxE=AQABCN=DESKTOP-RFMP7AG\karlhelkNm4zBY/V805HvoGGOC2fDxj0mJAmInbYJeA6JdUs=lg76Rsnw/mIu9lht0R2F+Yb1A4t3gQrwwB8asgIPvPwcuWE6/iQ48//CDOwODrlV+l84vSByIHDbz6veUTh+rINHFV2cGitTPhgF/Qu3t7qpYFpsnGL6gPJ1D4MEVTudj5QTjlWjPqSwDNQalZW6kSJxn+5wg/o30jQW95j6ZyY=t95qCEpr0lSE50uj2h9LGCrZQhJsK8GBAgNxn5BaA1VgXPdF4ipW+dRX5sPM1flJsGbIc5XiGEly22beXg7p501HH1wIUU5WSjObB2esULcGktLDctOL8mPFGccFUhtIz6u4ZZXl6wONdPlh/dzxtMmB5ttVfd9pU3E0iPhpfxE=AQABMIIB7TCCAVagAwIBAgIQYQsKZySyuJNI+EVr6syFqjANBgkqhkiG9w0BAQsFADA1MTMwMQYDVQQDHioARABFAFMASwBUAE8AUAAtAFIARgBNAFAANwBBAEcAXABrAGEAcgBsAGgwHhcNMTkwMzAxMjAxNDMwWhcNMjAwMzAxMDIxNDMwWjA1MTMwMQYDVQQDHioARABFAFMASwBUAE8AUAAtAFIARgBNAFAANwBBAEcAXABrAGEAcgBsAGgwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALfeaghKa9JUhOdLo9ofSxgq2UISbCvBgQIDcZ+QWgNVYFz3ReIqVvnUV+bDzNX5SbBmyHOV4hhJcttm3l4O6edNRx9cCFFOVkozmwdnrFC3BpLSw3LTi/JjxRnHBVIbSM+ruGWV5esDjXT5Yf3c8bTJgebbVX3faVNxNIj4aX8RAgMBAAEwDQYJKoZIhvcNAQELBQADgYEAIEaA9fJgbFcyhNA3orc/PbHieRFpqBZPDYq6EQl4QgNNFbETJTmnw6eYi4mq45Q446NpKgkkl99YqN7eKWH3K9Kk1ALAZdcisEHy4tQWqdzzNG+n2sjiZ2cgskBDCH/6s8COvMwu07803gkGd3vgEXhiCFTRrVHvVngTXkkqtzE= -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 3EA+LfjQ5dsNY4l9Pd5X5MTutiLVUAPH16AAgXjcFaM= 18 | 19 | 20 | 21 | fd2tMyxghP5+O0+sgl5WqzYQCZZwQZhUeML1nAZ4+jI=RJ6TbEifDbihXUGH24wLwjK5Gsjw9QgONtN0otktuAdZ3Vk6hG1QkHSxZLbqa/uT/OSC08SoMc8F6iurKY9hkmTnEq+19HiqVwJWfyW696sbbH5pmiERrlVIpVpI1cuOrmevz07X1Zk9M8eTCYfxVpPMecleC4KTZ2fdqK0kWVM=t95qCEpr0lSE50uj2h9LGCrZQhJsK8GBAgNxn5BaA1VgXPdF4ipW+dRX5sPM1flJsGbIc5XiGEly22beXg7p501HH1wIUU5WSjObB2esULcGktLDctOL8mPFGccFUhtIz6u4ZZXl6wONdPlh/dzxtMmB5ttVfd9pU3E0iPhpfxE=AQABCN=DESKTOP-RFMP7AG\karlhEyH9q+IS2B354a27J11lzyN/fU6iXnrpmhvcYTL91ak=PPCxN/RiaakusW3XcMgQ17UTRzamEoyLn8dTJ5uzruqTa7cpeRQf9/demSx7qTBySkGVUysuR1kFO8NsCS/8rewKVnm+/pNVDvuWLo79mGG1AcsnYAosVUlFnHfnXiPIbKTc3S5tTCXYm2sDrAXAxyjsPtbYjqOTls55uk5jRVs=t95qCEpr0lSE50uj2h9LGCrZQhJsK8GBAgNxn5BaA1VgXPdF4ipW+dRX5sPM1flJsGbIc5XiGEly22beXg7p501HH1wIUU5WSjObB2esULcGktLDctOL8mPFGccFUhtIz6u4ZZXl6wONdPlh/dzxtMmB5ttVfd9pU3E0iPhpfxE=AQABMIIB7TCCAVagAwIBAgIQYQsKZySyuJNI+EVr6syFqjANBgkqhkiG9w0BAQsFADA1MTMwMQYDVQQDHioARABFAFMASwBUAE8AUAAtAFIARgBNAFAANwBBAEcAXABrAGEAcgBsAGgwHhcNMTkwMzAxMjAxNDMwWhcNMjAwMzAxMDIxNDMwWjA1MTMwMQYDVQQDHioARABFAFMASwBUAE8AUAAtAFIARgBNAFAANwBBAEcAXABrAGEAcgBsAGgwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALfeaghKa9JUhOdLo9ofSxgq2UISbCvBgQIDcZ+QWgNVYFz3ReIqVvnUV+bDzNX5SbBmyHOV4hhJcttm3l4O6edNRx9cCFFOVkozmwdnrFC3BpLSw3LTi/JjxRnHBVIbSM+ruGWV5esDjXT5Yf3c8bTJgebbVX3faVNxNIj4aX8RAgMBAAEwDQYJKoZIhvcNAQELBQADgYEAIEaA9fJgbFcyhNA3orc/PbHieRFpqBZPDYq6EQl4QgNNFbETJTmnw6eYi4mq45Q446NpKgkkl99YqN7eKWH3K9Kk1ALAZdcisEHy4tQWqdzzNG+n2sjiZ2cgskBDCH/6s8COvMwu07803gkGd3vgEXhiCFTRrVHvVngTXkkqtzE= -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/HtmlAgilityPack.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_0/HtmlAgilityPack.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/Newtonsoft.Json.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_0/Newtonsoft.Json.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/Resources/LoadOntologyIcon.png.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_0/Resources/LoadOntologyIcon.png.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/VDS.Common.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_0/VDS.Common.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_0/dotNetRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_0/dotNetRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/ExcelRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_1/ExcelRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | zGwEOErAJPO0TjGQVfTXCzbVO6nsi4hFORLJaQaGgBw= 18 | 19 | 20 | 21 | B+OomqRWUMx+a5Oee7IIzlzFVCGsHMv7IUR8xdAMnoo=WZdfrmHEvrjXTpYSwiTK8iV7NHTqOyVpePv0h6klYypkoiGZKABjMOp7NSmyUuZobheGbWTImtTeZe5nBC5FWguV00XnlgC4k71p+Uuk1sSmgm2YirheGUaqjGgGS2X19GsMC89nTFxGiVH1sG2q3tbsF0rmg/joSbcNx16E1tOOF5ElvhgmyzeUexLxd5i3Jt/C2tlnMwHVZtcYee28n0KtIqi25WLdFbu8Ck7pdMUcW0dP+8Pt/hBQpP6+I3zLR/413YBeCDhU3QsmYY819JJONLCdx+VBNEnKVyDgo8mSJz/ENeRn7/BQQcHJ7QbiUG7XQGSzEWsq0T+8rmsMog==m/2VFDW6knuwiTTJ/DJbbqKlLpYoumr1UgtWmo8kXKg7SAWnvFscJZVDFS8sHmuFxLgtg0ixAobMc/YIWpAYc5SQzdhVusxxBwHvdJ1spahGRgkkh8M4ZDy6famVIqpfJoLvP4npZYVNwpn1E0qFO89TSgNBFr0KbqLd01HHP3jHo44c4QVAbMJJEbpBoePVVXEqtU0MZTNVKd47ZH86E5IDoaTm9ecphs0ER8t/kYV5m6jjl3Wspfxg9jFQe7uH5won229gxgd7wqShD58wqb5QrluRy/6Xpz2jwcj7gd93uW9eVzI3BDmy+1kpbk5pyNcivtqs8DzGMIn0uJnGdQ==AQABCN=KARL H HAMMAR, O=KARL H HAMMAR, STREET=Ulvsnaes 2, L=Tenhult, S=N/A, PostalCode=561 62, C=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 -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/HtmlAgilityPack.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_1/HtmlAgilityPack.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_1/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/Newtonsoft.Json.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_1/Newtonsoft.Json.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/Resources/LoadOntologyIcon.png.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_1/Resources/LoadOntologyIcon.png.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/VDS.Common.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_1/VDS.Common.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_0_0_1/dotNetRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_0_0_1/dotNetRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/ExcelRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_0_0/ExcelRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | q3tZ+N8WvsIE7uyetzepcJ3JAUoCextAGhw5wyps5B8= 18 | 19 | 20 | 21 | sEq5VGnnUs9DkNsEl9JCc8yRIyWhPmBgYYU/4+O+le8=OT3o4sMMAD4i4l4YY5K5U7SXfBFSmR9cE8nX64Mn0Q7IGpmfBM4w8F6m29oTFcklBLNi/4uU+KacSGgrVEN/nWJnpcM/1/FKTOkKxERA8gEYVx28rNbuwdInG8/KHtxBVEvTkcifHitGHPnEetA6Yer76BnRxalcsWIvHxWnGbNiHlFSeMtygtwYf91Thrt1Um9OF9OlI2Eb/aaBn47gnasLJFYzFX8MWmtvrLiEo/37GlxgpfqA12R2zQYaSph1wUh72qK1xK5xJ8x4XgaxJHHf96hsp6wZlxPchFIK1kqNeMHfGFKsKprYWMRiM/8lgZ0KGe+MPscS+fW+cpIKOQ==m/2VFDW6knuwiTTJ/DJbbqKlLpYoumr1UgtWmo8kXKg7SAWnvFscJZVDFS8sHmuFxLgtg0ixAobMc/YIWpAYc5SQzdhVusxxBwHvdJ1spahGRgkkh8M4ZDy6famVIqpfJoLvP4npZYVNwpn1E0qFO89TSgNBFr0KbqLd01HHP3jHo44c4QVAbMJJEbpBoePVVXEqtU0MZTNVKd47ZH86E5IDoaTm9ecphs0ER8t/kYV5m6jjl3Wspfxg9jFQe7uH5won229gxgd7wqShD58wqb5QrluRy/6Xpz2jwcj7gd93uW9eVzI3BDmy+1kpbk5pyNcivtqs8DzGMIn0uJnGdQ==AQABCN=KARL H HAMMAR, O=KARL H HAMMAR, STREET=Ulvsnaes 2, L=Tenhult, S=N/A, PostalCode=561 62, C=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 -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/HtmlAgilityPack.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_0_0/HtmlAgilityPack.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_0_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/Newtonsoft.Json.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_0_0/Newtonsoft.Json.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/Resources/LoadOntologyIcon.png.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_0_0/Resources/LoadOntologyIcon.png.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/VDS.Common.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_0_0/VDS.Common.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_0_0/dotNetRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_0_0/dotNetRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/ExcelRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_1_0/ExcelRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | jr5mrfIMgnky/GC0q69YBJOwJCv6lBH7uIp1/ATZR6U= 18 | 19 | 20 | 21 | koFX9KA8vvkmHZB9E/lH/ZM6U3QuLpVgeOJ18mhbgtE=SqfDokTEDqu4Aeme727vxzwnVtj9zzOISu1YSjgpaHWay6wqyCoUhDUW6NIaub/Ju+QqnrYD0dmjpCYk4T/GR4P3dGbBRY1fn4tMH7OdMRyPJ5+I17lLeRwVMyKiLcuthPRW0CZ387CruNX9MCZMu0IQdBHBXWBgTrfOrpe/DScxXe98cLlawFsxn5ONof9LSTPHDicoXJ3U3Szz4eB9GhHPLplO6zVifqE3tqXrVFdF0csTD/Oqrig3uo/iXAZG3gHeg3Y5qJ+OqoVoFr39/jmE3zElSm4cKfWeM6h7ObTOw3yF5OJlIH53TOE9YDBpzhXN3UHrV7QLbBesy4SKhQ==m/2VFDW6knuwiTTJ/DJbbqKlLpYoumr1UgtWmo8kXKg7SAWnvFscJZVDFS8sHmuFxLgtg0ixAobMc/YIWpAYc5SQzdhVusxxBwHvdJ1spahGRgkkh8M4ZDy6famVIqpfJoLvP4npZYVNwpn1E0qFO89TSgNBFr0KbqLd01HHP3jHo44c4QVAbMJJEbpBoePVVXEqtU0MZTNVKd47ZH86E5IDoaTm9ecphs0ER8t/kYV5m6jjl3Wspfxg9jFQe7uH5won229gxgd7wqShD58wqb5QrluRy/6Xpz2jwcj7gd93uW9eVzI3BDmy+1kpbk5pyNcivtqs8DzGMIn0uJnGdQ==AQABCN=KARL H HAMMAR, O=KARL H HAMMAR, STREET=Ulvsnaes 2, L=Tenhult, S=N/A, PostalCode=561 62, C=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 -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/HtmlAgilityPack.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_1_0/HtmlAgilityPack.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_1_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/Newtonsoft.Json.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_1_0/Newtonsoft.Json.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/Resources/LoadOntologyIcon.png.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_1_0/Resources/LoadOntologyIcon.png.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/VDS.Common.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_1_0/VDS.Common.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_1_0/dotNetRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_1_0/dotNetRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/ExcelRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_2_0/ExcelRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | o7OwLjUZvs9ZgSu3nKzW/PxsccJSqjueETizsJcXAUE= 18 | 19 | 20 | 21 | hswf/xmHtAvBVbHrhEkcWPudJ7ec2I88N99ym2/AaQ0=NUS4TZ0EIHNT9bRFhDZfTUXmeGEUVRp/qfDeStXV6CtA2ewzWCqVVKDx3Hp1hgJkpgK4uOBEgdQ2NfGo9zvjjINV40wDl6KO2Y7+TYC1W0HOLTZ/55AL/fGSbibu9g12YuiRHOdrf5FdZNIG/aDkQPB61WDEtfHRkFMTQWaIqnl5yvtTyzUrsaaOtbsBYEzY0SmeX8kG3OkSeHNSL4Dw1lDmPlN3mu32fWHIWaUKX5W9Ml1X3/6qoZ4af7BZsqtSdDJUxRzKvwRYbJGrmh7+OOAt5AiTIkK4H486xGW4kad/qpsB/O7CvYjlW0dWScVtL4uwo/pueAqH+iKGC6I/4A==m/2VFDW6knuwiTTJ/DJbbqKlLpYoumr1UgtWmo8kXKg7SAWnvFscJZVDFS8sHmuFxLgtg0ixAobMc/YIWpAYc5SQzdhVusxxBwHvdJ1spahGRgkkh8M4ZDy6famVIqpfJoLvP4npZYVNwpn1E0qFO89TSgNBFr0KbqLd01HHP3jHo44c4QVAbMJJEbpBoePVVXEqtU0MZTNVKd47ZH86E5IDoaTm9ecphs0ER8t/kYV5m6jjl3Wspfxg9jFQe7uH5won229gxgd7wqShD58wqb5QrluRy/6Xpz2jwcj7gd93uW9eVzI3BDmy+1kpbk5pyNcivtqs8DzGMIn0uJnGdQ==AQABCN=KARL H HAMMAR, O=KARL H HAMMAR, STREET=Ulvsnaes 2, L=Tenhult, S=N/A, PostalCode=561 62, C=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 -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/HtmlAgilityPack.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_2_0/HtmlAgilityPack.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_2_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/Newtonsoft.Json.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_2_0/Newtonsoft.Json.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/Resources/LoadOntologyIcon.png.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_2_0/Resources/LoadOntologyIcon.png.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/VDS.Common.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_2_0/VDS.Common.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_2_0/dotNetRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_2_0/dotNetRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/ExcelRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_3_0/ExcelRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | LSrhzViV8/GUn6tL+sJK1+0t7TavT9Gk9uUo0+leyY8= 18 | 19 | 20 | 21 | b96gaaOZQ7cl/PGmUbGaTfknBMBUcDaE2nM4IwGX4PU=F4hLkz4D4WTaOnkF4kOLGP7E2nTvaqZpHKb5s3fDWoxQQ6SOxhh+DoNc2qT+5YePPSxbH/7ac2M8jAaeNuJMEVkP87JyjJtttUm8Ro+iSGPuo78kR4jfsi/KQ7EFJRMP5mpbW0nRqXuJKde3wFKbkyB4UeCnjUKI/tanmBMX3UQAj2MtVQpAd0QLiC5Pp5zwRT2fvno9HmwAzVPzCE5EFQMTynehYJcTm8AyhJTU7ySzmRx0h9X4Xkqwe+G0oNaDOWWzZJZOQc0vKbL/qEWC+YtJReINbUdlh6yOkNWOe/E7VYSxaJ11F+dzG6hfRjTfkLlTvoi42OE0CNN5LkLYfg==m/2VFDW6knuwiTTJ/DJbbqKlLpYoumr1UgtWmo8kXKg7SAWnvFscJZVDFS8sHmuFxLgtg0ixAobMc/YIWpAYc5SQzdhVusxxBwHvdJ1spahGRgkkh8M4ZDy6famVIqpfJoLvP4npZYVNwpn1E0qFO89TSgNBFr0KbqLd01HHP3jHo44c4QVAbMJJEbpBoePVVXEqtU0MZTNVKd47ZH86E5IDoaTm9ecphs0ER8t/kYV5m6jjl3Wspfxg9jFQe7uH5won229gxgd7wqShD58wqb5QrluRy/6Xpz2jwcj7gd93uW9eVzI3BDmy+1kpbk5pyNcivtqs8DzGMIn0uJnGdQ==AQABCN=KARL H HAMMAR, O=KARL H HAMMAR, STREET=Ulvsnaes 2, L=Tenhult, S=N/A, PostalCode=561 62, C=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 -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/HtmlAgilityPack.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_3_0/HtmlAgilityPack.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_3_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/Newtonsoft.Json.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_3_0/Newtonsoft.Json.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/Resources/LoadOntologyIcon.png.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_3_0/Resources/LoadOntologyIcon.png.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/VDS.Common.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_3_0/VDS.Common.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_3_0/dotNetRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_3_0/dotNetRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/ExcelRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_4_0/ExcelRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | e4sD0fuJG8HNxp3a6ZmPE836YQwZauO5FNEPyn97PKc= 18 | 19 | 20 | 21 | wUkV2m7rSez0FwmJsagBIKYlDlTgKyCD7nN0zlfPwiQ=BU1qq7Wn9hDJl7JpB0F4nfaMf+W70C6Wzdps4R0BdZVQyca5pPOgn2bAa9mcd8kekUZmhB53JPJ81wHsfencEAWTUdsptnQN0ROHKhdkaY358pJpRqZhjtnNOqacXr9SsKQB7OGwqboQZln/6glCxjaQNfSV4I+85FkxvLOMvvAfmT4lWb964gw6Bhd4KzPkwSDXSeDfZDfiobNYJZce4JMsDFM2VoWldKxyie/d3OilCiyhxO4O1YOUSiKGuyQ4bONiW/UUpRaBZseXCk4ncO/uIJycjj1vJEKdTtr8qUJRhyuC8DStWJ01b0JW9oDB6nHdaaHRMM7oz5GETRhPCw==m/2VFDW6knuwiTTJ/DJbbqKlLpYoumr1UgtWmo8kXKg7SAWnvFscJZVDFS8sHmuFxLgtg0ixAobMc/YIWpAYc5SQzdhVusxxBwHvdJ1spahGRgkkh8M4ZDy6famVIqpfJoLvP4npZYVNwpn1E0qFO89TSgNBFr0KbqLd01HHP3jHo44c4QVAbMJJEbpBoePVVXEqtU0MZTNVKd47ZH86E5IDoaTm9ecphs0ER8t/kYV5m6jjl3Wspfxg9jFQe7uH5won229gxgd7wqShD58wqb5QrluRy/6Xpz2jwcj7gd93uW9eVzI3BDmy+1kpbk5pyNcivtqs8DzGMIn0uJnGdQ==AQABCN=KARL H HAMMAR, O=KARL H HAMMAR, STREET=Ulvsnaes 2, L=Tenhult, S=N/A, PostalCode=561 62, C=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 -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/HtmlAgilityPack.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_4_0/HtmlAgilityPack.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_4_0/Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/Newtonsoft.Json.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_4_0/Newtonsoft.Json.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/Resources/LoadOntologyIcon.png.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_4_0/Resources/LoadOntologyIcon.png.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/VDS.Common.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_4_0/VDS.Common.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/Application Files/ExcelRDF_1_1_4_0/dotNetRDF.dll.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/Application Files/ExcelRDF_1_1_4_0/dotNetRDF.dll.deploy -------------------------------------------------------------------------------- /docs/distribution/ExcelRDF.vsto: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | e4sD0fuJG8HNxp3a6ZmPE836YQwZauO5FNEPyn97PKc= 18 | 19 | 20 | 21 | wUkV2m7rSez0FwmJsagBIKYlDlTgKyCD7nN0zlfPwiQ=BU1qq7Wn9hDJl7JpB0F4nfaMf+W70C6Wzdps4R0BdZVQyca5pPOgn2bAa9mcd8kekUZmhB53JPJ81wHsfencEAWTUdsptnQN0ROHKhdkaY358pJpRqZhjtnNOqacXr9SsKQB7OGwqboQZln/6glCxjaQNfSV4I+85FkxvLOMvvAfmT4lWb964gw6Bhd4KzPkwSDXSeDfZDfiobNYJZce4JMsDFM2VoWldKxyie/d3OilCiyhxO4O1YOUSiKGuyQ4bONiW/UUpRaBZseXCk4ncO/uIJycjj1vJEKdTtr8qUJRhyuC8DStWJ01b0JW9oDB6nHdaaHRMM7oz5GETRhPCw==m/2VFDW6knuwiTTJ/DJbbqKlLpYoumr1UgtWmo8kXKg7SAWnvFscJZVDFS8sHmuFxLgtg0ixAobMc/YIWpAYc5SQzdhVusxxBwHvdJ1spahGRgkkh8M4ZDy6famVIqpfJoLvP4npZYVNwpn1E0qFO89TSgNBFr0KbqLd01HHP3jHo44c4QVAbMJJEbpBoePVVXEqtU0MZTNVKd47ZH86E5IDoaTm9ecphs0ER8t/kYV5m6jjl3Wspfxg9jFQe7uH5won229gxgd7wqShD58wqb5QrluRy/6Xpz2jwcj7gd93uW9eVzI3BDmy+1kpbk5pyNcivtqs8DzGMIn0uJnGdQ==AQABCN=KARL H HAMMAR, O=KARL H HAMMAR, STREET=Ulvsnaes 2, L=Tenhult, S=N/A, PostalCode=561 62, C=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 -------------------------------------------------------------------------------- /docs/distribution/setup.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/distribution/setup.exe -------------------------------------------------------------------------------- /docs/images/AnonymousIndividualProperties.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/AnonymousIndividualProperties.png -------------------------------------------------------------------------------- /docs/images/ExampleData.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/ExampleData.png -------------------------------------------------------------------------------- /docs/images/ExportRdfButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/ExportRdfButton.png -------------------------------------------------------------------------------- /docs/images/ExportRdfDialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/ExportRdfDialog.png -------------------------------------------------------------------------------- /docs/images/GeneratedSkeleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/GeneratedSkeleton.png -------------------------------------------------------------------------------- /docs/images/ImportOntologyDialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/ImportOntologyDialog.png -------------------------------------------------------------------------------- /docs/images/LoadOntologyButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/LoadOntologyButton.png -------------------------------------------------------------------------------- /docs/images/NestedIndividualsData.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/NestedIndividualsData.png -------------------------------------------------------------------------------- /docs/images/NestedIndividualsDropDown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RealEstateCore/ExcelRDF/c55c289757ad848f0c831a6aea9f54861e294b95/docs/images/NestedIndividualsDropDown.png --------------------------------------------------------------------------------