This proof of concepts demonstrates the a trivial mapping using a sparqlmotion endpoint in topbraid Composer. There are 4 key files in this repository
- Proxies > archimate_3.ttl. This is a semantic (RDF) version of the Archimate exchange format specification (see resources) and created in Topbraid composer using the export functionality
- endpoint.sms.ttl this file describes the sparqlmotion endpoint
- export.sms.ttl this file describes the sparqlmotion steps (use this file for debugging sparqlmotion)
- converter.ttl this file is used for the mapping using rule based inferencing (SPIN)
Here are a couple of findings (mappingwise) during the PoC:
- SKOS broader and narrow relations are less formal then Archimate relations but could be more expressive.
- terms are based on a certain context (scheme) the notion of such a context is semantically different in Archimate (views and viewpoints)
- Archimate profiles are not part of the Archimate exchange format and therefore not able to be mapped.
Some gotchas:
- an instance of sxml:Document is needed when using sparqlmotion in contrast with manually inferencing in Composer. This instance is manually added in the converter. (See: https://groups.google.com/forum/#!topic/topbraid-users/_oZ3rypyYCg)
- sxml:order can’t be use for the xml order but composite:index need to be used instead
- converting sxml to xml outputs qualified names where unqualified names are needed (according to the XSD). This is solved by a XSLT.
- open the project in Topbraid Composer
- navigate to the following address in your web browser:http://localhost:8083/tbl/sparqlmotion?id=skos2archimate&begrippenkader=im
- download the content
- open an Archimate aware editor (tested in Archi and Bizzdesign) and import the downloaded content
- open converter.ttl
- go to Model > display SPIN rules and Constraints
- select the mapping rule in the SPIN Overview window
- CTRL+click on converter:mapping
- You will see the rule in the spin:body property