OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

xliff-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: XLIFF Schema Issue: 'reformat' not accepting mix of predefined and x-type values


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


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]