![Logo](https://github.com/oeg-upm/Chowlk/blob/webservice/app/static/images/logos/logo.png) # Chowlk Converter Tool to transform ontology conceptualizations made with diagrams.net into OWL code. The conceptualizations should follow the Chowlk visual notation. Please visit the specification for more details. Citing Chowlk: If you used Chowlk in your work, please cite the [ESWC paper](https://2022.eswc-conferences.org/wp-content/uploads/2022/05/paper_90_Chavez-Feria_et_al.pdf): ```bib @InProceedings{10.1007/978-3-031-06981-9_20, author="Ch{\'a}vez-Feria, Serge and Garc{\'i}a-Castro, Ra{\'u}l and Poveda-Villal{\'o}n, Mar{\'i}a", editor="Groth, Paul and Vidal, Maria-Esther and Suchanek, Fabian and Szekley, Pedro and Kapanipathi, Pavan and Pesquita, Catia and Skaf-Molli, Hala and Tamper, Minna", title="Chowlk: from UML-Based Ontology Conceptualizations to OWL", booktitle="The Semantic Web", year="2022", publisher="Springer International Publishing", address="Cham", pages="338--352" } ``` ## How to use the tool You have several options to use this tool. ### 1. The web application: 1. Go to https://chowlk.linkeddata.es/ web application. 2. Download the Chowlk template. * Complete version of the template: https://github.com/oeg-upm/chowlk_spec/blob/master/resources/chowlk-library-complete.xml * Lightweight version of the template: https://github.com/oeg-upm/chowlk_spec/blob/master/resources/chowlk-library-lightweight.xml 3. In diagrams.net go to File > Open Library from > Device ... 4. Select the library downloaded. 5. Make your conceptualization using the blocks that will appear on the side bar. 6. Download the diagram in xml format. 7. Drag and drop your diagram in the Service dropping area and download your TTL file. ### 2. The API: The following command line will return the ontology in Turtle format. ```bash curl -F data=@path_to_diagram/diagram.xml https://chowlk.linkeddata.es/api ``` where path_to_diagram can be a relative path (e.g. diagrams/diagram.xml) or an absolute path (e.g. /home/user/diagrams/diagram.xml). The service will return the following dictionary: ```json { "ttl_data": "@prefix ns: ...", "new_namespaces": {"ns1": "https://namespace1.com#", "ns2": "https://namespace2.com#"}, "errors": {"Concepts": [{"message": "Problem in text", "shape_id": "13", "value": "ns:Building Element"}], "Attributes": [{"message": "Problem in cardinality", "shape_id": 45, "value": "ns:ifcIdentifier"}]}, "xml_error_generated": true, "xml_error_file": "Converting UML-based ontology conceptualizations to OWL with Chowlk. In ESWC (Poster and Demo Track) ## Contact * Maria Poveda-Villalón (chowlk@delicias.dia.fi.upm.es)