|
| 1 | + |
| 2 | +# Overview |
| 3 | + |
| 4 | +This is a workspace area for the development of the data model and subsequent generation |
| 5 | +of the various products derived from the vo-dml/XML representation of the model. |
| 6 | + |
| 7 | +Since there are many paths for generating the data model documents, the products themselves |
| 8 | +are stored in the other directories of this repository, and no software is installed in this |
| 9 | +workspace. Instead, we provide the instructions for duplicating the workflow used to create |
| 10 | +the current products. |
| 11 | + |
| 12 | +# Data Modeling Tool |
| 13 | + |
| 14 | +The modeling itself is currently done using Modelio. This includes the UML diagrams, and documentation |
| 15 | +of the model elements. This is exported as an XMI (UML-2.4.1 format) document which can be found in the 'model' |
| 16 | +sibling directory. The XMI file is processed using the VO-DML Toolkit to generate the VO-DML/XML file and |
| 17 | +other products. |
| 18 | + |
| 19 | +# VO-DML Toolkit plugin |
| 20 | + |
| 21 | +This toolkit provides a set of tasks for generating and translating vo-dml/XML files. |
| 22 | +For details on the toolkit, please see the "[Using the VO-DML Gradle Plugin](https://github.com/ivoa/vo-dml/tree/master/tools)" |
| 23 | +page of the [VO-DML repository](https://github.com/ivoa/vo-dml). |
| 24 | + |
| 25 | +The files included here are those necessary to execute the tasks outlined below. |
| 26 | + |
| 27 | +## Setup |
| 28 | + |
| 29 | +* Clone this repository |
| 30 | + The toolkit is a command-line system |
| 31 | + |
| 32 | +* "[VO-DML Tools Guide](https://ivoa.github.io/vo-dml/)" |
| 33 | + Guide on the VO-DML Toolkit and how to use it. |
| 34 | + |
| 35 | +* Install gradle |
| 36 | + Instructions can be found on the "[Using the VO-DML Gradle Plugin](https://github.com/ivoa/vo-dml/tree/master/tools)" page. |
| 37 | + There is no need to run the `gradle init` command, this space includes the files generated by that process tailored to |
| 38 | + this particular model and directory structure. |
| 39 | + |
| 40 | + Note: While gradle requires Java 8 or higher, the toolkit itself requires Java 11 in your environment. |
| 41 | + |
| 42 | + * build.gradle.kts |
| 43 | + * gradle connection to vo-dml toolkit plugin |
| 44 | + * dependencies and required information (directory specs) |
| 45 | + * register additional tasks |
| 46 | + * settings.gradle.kts |
| 47 | + * gradle support |
| 48 | + * bindings_<model>_model.xml |
| 49 | + * mapping between model and generated files. |
| 50 | + |
| 51 | + |
| 52 | +## Running Tasks |
| 53 | + |
| 54 | +The toolkit contains several tasks which can be used to generate and validate VO-DML/XML files, or translate them into |
| 55 | +various other formats or to code. These instructions are focused on the tasks used to create and validate the |
| 56 | +VO-DML/XML files and generation of the standard HTML documentation. |
| 57 | + |
| 58 | +* ```%> gradle UMLToVODML``` |
| 59 | + This model is currently developed using the Modelio UML tool and exported to UML-2.4.1 format. |
| 60 | + This command translates the XMI file into the VO-DML/XML representation. |
| 61 | + |
| 62 | + * input, output, and translation script are specified with the task registration in build.gradle.kts |
| 63 | + * the task locates the xmi file, and executes the specified translation script |
| 64 | + * output is written to ./src/main/vo-dml/ |
| 65 | + |
| 66 | +* ```%> gradle vodmlValidate``` |
| 67 | + Runs the VO-DML validation utility on the vo-dml/xml file. |
| 68 | + |
| 69 | + * locates the vo-dml/XML file using the information contained in build.gradle.kts |
| 70 | + * executes the validation utility |
| 71 | + * output is echoed to the screen |
| 72 | + |
| 73 | +* ```%> gradle vodslToVodml --dml=<file spec for vo-dml/xml file> --dsl=<file spec to vodsl file>``` |
| 74 | + Runs a utility to VO-DML/XML files from models described in vodsl format. |
| 75 | + |
| 76 | + * locates the vodsl file using the information contained in build.gradle.kts |
| 77 | + * executes the translation task |
| 78 | + * output is written to ./src/main/vodsl/ |
| 79 | + |
| 80 | +* ```%> gradle vodmlDoc``` |
| 81 | + Runs a utility to generate HTML (and Tex) representation of the model. |
| 82 | + Note: This model does not use the Tex format output from this utility for the actual PDF document. |
| 83 | + |
| 84 | + * locates the vo-dml/XML file using the information contained in build.gradle.kts |
| 85 | + * executes the translation task |
| 86 | + * output is written to ./build/generated/docs/vodml |
| 87 | + |
| 88 | + |
| 89 | +* Schema Generation |
0 commit comments