XML模式定义:文件名元素的实用类型限制是什么?

时间:2019-08-09 07:58:16

标签: xsd filenames

我当前正在创建XSD文件。根据XSD的XML文件应包含一个用于捕获文件名的元素,例如<filename> This is a fancy file with a name that contains spaces + an Ümlaut (and additional challenging characters like brackets and a plus sign).pdf </filename>

为避免文件名会给典型的文件系统带来麻烦,我想对<filename>的类型使用适当的限制。

什么是适合该类型的实用限制?

<xs:whiteSpace value="collapse" />是一个好的开始。显然,这不能防止换行符,禁止的Windows旧文件名(例如CON,PRN等),可能破坏文件名的精美Unicode字符等。

那么,这里还有什么进一步的限制呢?

<xs:element name="filename">
    <xs:simpleType>
        <xs:restriction base="xs:string"> <!-- what to use as base? -->
            <xs:whiteSpace value="collapse" />
            <!-- how to further restrict here? -->
        </xs:restriction>
    </xs:simpleType>
</xs:element>

0 个答案:

没有答案