Bug #4646


when upgrading from 2.0.1, morpho did not catch empty <offline> element

Added by Margaret O'Brien about 14 years ago. Updated about 14 years ago.

morpho - general
Target version:
Start date:
Due date:
% Done:


Estimated time:


a user updated her morpho to 1.7.1, and loaded a 2.0.1 package. The first thing she must do is upgrade to EML2.1.0
The data package did not included a data table, but included the table attribute descriptions, so morpho 1.7.1 had inserted 2 elements which are not allowed in EML2.1:
1. an empty <objectName> </objectName>
2. <offline> with no children
Morpho presented the user with a dialog box for adding the objectName, but ignored the offline element. The error message (from the parser) was not useful to the scientist.
The file is attached.
[Note: this file actually had 2 errors, but the other problem is addressed in another bug: 3978]


cdonahue_8_4.xml (16.8 KB) cdonahue_8_4.xml Margaret O'Brien, 01/04/2010 03:00 PM
cdonahue_8_3.xml (12.4 KB) cdonahue_8_3.xml Margaret O'Brien, 01/20/2010 02:06 PM
Actions #1

Updated by Margaret O'Brien about 14 years ago

sorry - I listed the mropho version wrong
It was morpho are 1.6.1 that created the EML 201
and morpho 1.7 which did not fully upgrade to eml 2.1.0

Actions #2

Updated by Jing Tao about 14 years ago

Hi, Margaret:

Can you put the original eml 2.0.1 or eml 2.0.0 document here as an attachement?



Actions #4

Updated by Jing Tao about 14 years ago

When morpho runs the correction wizard, first it will detect the path which has blank value. Then Morpho selects the subtree which contains the blank value and transform it to an OrderedMap object. The original data will be populated into a UI pages by setPageData(map) method.

DataLocation is a kind of special page. It has different UI for different distribution type, offline, online and no distribution et all. In previous version, it used the path in the OderedMap object (from setPageData method) to determine the distribution type. For example, if the map has "offline", it thought this was offline distribution.

In Margaret's case, the offline element has empty value, so the map doesn't have any element to denote the distribution type. Morpho thinks it is a type without distribution element. So it only displays the object name field.

Now I added a mechanism - in order to look up the distribution type, morpho not only looks the OrderedMap object, but also the path with empty value. So even map object doesn't have any indication, but the path with empty value does. This approach fixes the bug.

Actions #5

Updated by Redmine Admin almost 11 years ago

Original Bugzilla ID was 4646


Also available in: Atom PDF