= Make an RDS Class Hierarchy presentable in Excel = '''WIP''' This is a very quickly written explanation. Prior experience with the various tools will likely be a huge advantage. The next project that uses this should copy the code away from !NorHub, preferably in its own folder in `RD/software` This is a step by step guide on how you can make an Excel sheet where the indentation of the columns indicate the class hierarchy. == Software needed == 1. Cygwin 2. Perl (install using cygwin) 3. Gnumake (install using cygwin) 4. ARQ ( can be found in RD/software/ARQ ) 5. Saxon ( also in RD/software ) 6. Protege, with the plugin "Tabbed subclasses" which can be gotten from the plugin menu in Protege == Steps == 1. Update `RD/projects/NorHub` 2. Fill out the following files ===== TXT/ExcelTabbed-!StingClasses.txt ===== > This file should contain classes (by RDS code) of strings whose members are connected to classes via CLASS OF IDENTIFICATIONs. > [[BR]] > All these classes will be included in the final list. ===== TXT/ExcelTabbed-!MiscClasses.txt ===== > This file lists RDS codes for classes that should be included. 3. Update `RD/reference_data/XML/RDL.xml` to receive the latest RDS updates 4. Enter cygwin and navigate to `RD/projects/NorHub` 5. Run in Cygwin `make OWL/idpca.xml.owl`. If it claims to be "up to date", force it by adding `-B` at the end. 6. Open `OWL/idpca.xml.owl` in Protege 7. Press the class you want as your top class, and view this in the plugin. (You might want to create a separate tab for this) 8. Enable the reasoner 9. Select "Tabbed subclasses (inferred)" and select "Descendant classes" on the Query tab. 10. Copy this to the file `TXT/ExcelTabbed-tabbedIds.txt`. Leave the URIs as they are. 11. Run in Cygwin `make XSL/TabbedClasses.csv` 12. Open the csv in Excel. 13. Presto! === TXT/ExcelTabbed-skipList.txt === > Write down all RDS codes that should be excluded from the final Excel file. > [[BR]] > The intended use of this file is to remove classes after the first iteration, and should initially be empty. When you have an Excel file, add a column at the leftmost end of the sheet and write "Delete" in these for each class that should be omitted. [[BR]] > The script will fail if you have excluded superclasses of other, non-omitted, classes