Hi all,
Accidentally bumped upon this very minor issue when working on an
xliff data-model this morning:
The value of the 'reformat' attribute for <group>,
<trans-unit>,<bin-unit> can be:
1) yes
2) no
3) one or more of "predefined values (coord, font, etc) and/or
extensible values (x-blah etc)"
The current schema does not allow mixing predefined values with x-type
values. Here are some test results:
- "yes no" - NOT Validating (Correct)
- "yes" Validating OK (Correct)
- "no" Validating OK (Correct)
- "yes font" NOT Validating (Correct)
- "no coord" NOT Validating (Correct)
- "coord font" Validating OK (Correct)
- "x-blah" Validating OK (Correct)
- "yes x-blah" NOT Validating (Correct)
- "coord font x-blah" NOT Validating (INCORRECT)
A suggested change to accommodate x-values with predefined values is
to change the following:
<xsd:simpleType name="AttrType_reformat">
<xsd:union memberTypes="xlf:reformatValueYesNo
xlf:reformatValueList xlf:XTend"/>
</xsd:simpleType>
Remove union with xlf:XTend:
<xsd:simpleType name="AttrType_reformat">
<xsd:union memberTypes="xlf:reformatValueYesNo xlf:reformatValueList"/>
</xsd:simpleType>
In addition the reformatValueList must then be changed from,
<xsd:simpleType name="reformatValueList">
<xsd:list>
<xsd:simpleType>
<xsd:restriction base="xsd:string"/>
<xsd:enumeration value="coord"/>
<xsd:enumeration value="coord-x"/>
<xsd:enumeration value="coord-y"/>
....
</xsd:restriction>
</xsd:simpleType>
</xsd:list>
</xsd:simpleType>
adding the union with xlf:XTend:
<xsd:simpleType name="reformatValueList">
<xsd:list>
<xsd:simpleType>
<xsd:union memberTypes="xlf:XTend"> <-- ADDED -->
<xsd:simpleType> <-- ADDED -->
<xsd:restriction base="xsd:string"/>
<xsd:enumeration value="coord"/>
<xsd:enumeration value="coord-x"/>
<xsd:enumeration value="coord-y"/>
....
</xsd:restriction>
</xsd:simpleType>
</xsd:union>
<xsd:simpleType>
</xsd:list>
</xsd:simpleType>
Note that both the original and changed schema accepts duplicates of
values (e.g. "coord coord font") but I don't know a good way of
enforcing only one of each value in the schema.
cheers,
asgeir
--
Asgeir Frimannsson
PhD Candidate
School of Software Engineering and Data Communications
Queensland University of Technology
126 Margaret Street, Level 3
Brisbane QLD 4001, Australia
Phone: (+61) 7 3864 9332 Mob: (+61) 405 412 696
Email:
a.frimannsson@qut.edu.au