Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

   

DDI 4 Sprint in Toronto, June 2014

Introduction

We started with the concept for a production workflow as designed in the previous sprint in Vancouver (figure 1) and identified a couple of issues (documented in the Wiki: IASSIST sprint, technical group). Because we were able to solve most of these issues during the sprint, this document focuses on only a subset of issues where the solution is important to document for subsequent work.

Out of our 11 issues, we selected one as our overall goal for this sprint: to produce a working prototype for the production workflow to prove the overall concept.


Figure 1: Production system as designed in Vancouver (deprecated)

Issues discussed

Identifiers

...

Joachim identified a method to roundtrip IDs from Drupal. This is an important preparatory step to actually shipping IDs forth and back. XMI allows the integration of custom attributes attached to any type of object

<ownedAttribute visibility="private" name="CustomLabel2" xmi:type="uml:Property"
xmi:id="EAID_084B6228_A680_47fa_8985_F729C4CAD9D6" isDerivedUnion="false"
isUnique="true" isOrdered="false" isDerived="false" isReadOnly="false" isStatic="false">
<type xmi:idref="EAID_7DF1F728_66C0_4376_A7EE_651E86DF2986"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="EAID_LI000015_A680_47fa_8985_F729C4CAD9D6" value="1"/>
<upperValue xmi:type="uml:LiteralInteger" xmi:id="EAID_LI000016_A680_47fa_8985_F729C4CAD9D6" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="EAID_LI000017_A680_47fa_8985_F729C4CAD9D6" value="QuestionnaireLabel2"/>
</ownedAttribute>

XMI example with embedded identifier from Drupal for the round-trip with EA.

XMI export from Drupal should put its own UUID there. The information is confirmed by manual testing to be both displayed in EA, exported safely and visible again on re-import. Behavior on object changes, deletion, etc. needs to be determined.

Update:

UUIDs are now automatically created in Drupal for all packages and objects. These get exported in the xmi export from Drupal. However a prefix (ddi4-)needs to be added as xml id doesn’t support numbers as first character. will be used as prefix.

Example: ddi4-0bea67ee-c3e0-4620-b8f0-3f763d734ec8

In the docbook export from Drupal a suffix might also be added to specify sections in the document.

Example: ddi4-0bea67ee-c3e0-4620-b8f0-3f763d734ec8-definition

Diagrams

We identified a basic structure for diagrams to document our model.

...

Formats other than XSD and OWL will not be part of the official standard specification. Nevertheless, we like to provide basic support for other formats (e.g. SQL, Java, C#, JSON). There will be a discussion within the DDI developers group to prioritize possible formats.

Some work on the combined use of SQL and Java has already been done.

Single source of information

...

After substantial discussion of the production workflow (Vancouver version) we did some modifications to the design, documented in figure 2.


Figure 2: Production system as designed in Toronto

Handling updates in Drupal and EA

...

EA can version per package. XMI is used as transport format between EA and version control repository.
Using Drupal and EA with one central repository
Figure 3: Using Drupal and EA with one central repository

Drupal could use the version control repository as source for the own data base tables.

...

After some deliberation, we decided to start with option 1 and make all changes in Drupal only. This would help us to start with a first prototype soon but would still allow as to additionally implement one or both of the other options. Fro Anchor_GoBack_GoBackm From a long-term perspective one single repository (option 3) would be desirable. Some tasks might be easier to archive in EA, so option 2 will be subject to further evaluation. At the moment we might not have enough development resources for option 2 and 3.