- From: Papalagi Pakeha <papalagi.pakeha@gmail.com>
- Date: Wed, 23 Jan 2008 13:29:22 +1300
- To: xmlschema-dev@w3.org
hello,
in our xml documents we use <Attachment> tag to specify, well,
attachments to these documents. something like:
<Doc>
<Title>xyz</Title>
....
<Attachment type="logo" format="url">http://some.url/logo.jpg</Attachment>
<Attachment type="token" format="inline">U29tZVRoaW5nCg==</Attachment>
<Attachment type="data" format="filename">local.file.bin</Attachment>
</Doc>
Is there any way in XSD to enforce:
- base64 content for format="inline",
- URL content when format="url", and
- non-URL when format="filename"
?
For now I have:
<xs:element name="Attachment">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="format" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="inline"/>
<xs:enumeration value="filename"/>
<xs:enumeration value="url"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="logo"/>
<xs:enumeration value="token"/>
<xs:enumeration value="data"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
that works well but accepts any "xs:string" for content and not
enforcing URL/non-URL/base64.
can anyone throw some hints on how to achieve the link between format
and content please?
thanks!
papa
Received on Wednesday, 23 January 2008 04:22:21 UTC