[x3d-public] considering general conversion of metadata - containerField default in XML encoding (corrected copy)
Don Brutzman
brutzman at nps.edu
Thu Apr 13 09:47:25 PDT 2017
[Corrected copy, please discard prior version. Also inserted asterisks to highlight comparisons of interest in examples b. and c.]
On 4/6/2017 9:09 AM, Don Brutzman wrote:
> [...]
> b. containerField="value" is awfully verbose. Might we flip this around by changing the default containerField value? This would change some existing content, but not by much, and this is a tricky business in any case so checking is always needed. Might make sense to set up for the most common long-term case.
Illustrating examples follow. Equivalent versions a. and b. with current XML schema, possible alternative c.
==============================
a. original
<WorldInfo DEF='ModelMetadata' title='CaffeinePubChem2519SticksColor.x3d'>
<MetadataSet name='xmlns:chimera' reference='http://www.cgl.ucsf.edu/chimera'>
<MetadataString containerField='value' name='comment' value='"X3D profile limits on number of elements/colors/etc. were ignored"'/>
<MetadataSet containerField='value' name='chimera:WindowSize'>
<MetadataInteger containerField='value' name='height' value='512'/>
<MetadataInteger containerField='value' name='width' value='512'/>
</MetadataSet>
<MetadataSet containerField='value' name='chimera:DepthCue'>
<MetadataFloat containerField='value' name='color' value='1 1 1'/>
<MetadataFloat containerField='value' name='range' value='35.2169 40.437'/>
</MetadataSet>
</MetadataSet>
</WorldInfo>
==============================
b. equivalent, fully elaborated, note change in MetadataSet
<WorldInfo DEF='ModelMetadata' title='CaffeinePubChem2519SticksColor.x3d'>
<MetadataSet *containerField='metadata'* name='xmlns:chimera' reference='http://www.cgl.ucsf.edu/chimera'>
<MetadataString *containerField='value'* name='comment' value='"X3D profile limits on number of elements/colors/etc. were ignored"'/>
<MetadataSet *containerField='value'* name='chimera:WindowSize'>
<MetadataInteger *containerField='value*' name='height' value='512'/>
<MetadataInteger *containerField='value'* name='width' value='512'/>
</MetadataSet>
<MetadataSet *containerField='value'* name='chimera:DepthCue'>
<MetadataFloat *containerField='value'* name='color' value='1 1 1'/>
<MetadataFloat *containerField='value'* name='range' value='35.2169 40.437'/>
</MetadataSet>
</MetadataSet>
</WorldInfo>
==============================
c. alternative: flip the defaults in XML Schema/DTD. Note clarity of contained content.
<WorldInfo DEF='ModelMetadata' title='CaffeinePubChem2519SticksColor.x3d'>437' /> -->
<MetadataSet *containerField='metadata'* name='xmlns:chimera' reference='http://www.cgl.ucsf.edu/chimera'>
<MetadataString name='comment' value='"X3D profile limits on number of elements/colors/etc. were ignored"'/>
<MetadataSet name='chimera:WindowSize'>
<MetadataInteger name='height' value='512'/>
<MetadataInteger name='width' value='512'/>
</MetadataSet>
<MetadataSet name='chimera:DepthCue'>
<MetadataFloat name='color' value='1 1 1'/>
<MetadataFloat name='range' value='35.2169 40.437'/>
</MetadataSet>
</MetadataSet>
</WorldInfo>
==============================
d. Impacts.
- no changes to abstract specification or non-XML encodings.
- change default value in XML Schema, XML DTD, Object Model for X3D (OM4X3D)
- change to Canonical X3D .xml default and X3D Binary .x3db default.
- Need diagnostics to check XML scenes, but this would be straightforward (X3D Tooltips, X3D Validator, X3D Tidy, etc.)
==============================
all the best, Don
--
Don Brutzman Naval Postgraduate School, Code USW/Br brutzman at nps.edu
Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman
More information about the x3d-public
mailing list