This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The fix to bug# 4687 added the required text to define how a document with DTD is coverted to base64 before embedding it into an smlif document. We must also add the corresponding element def to the smlif xsd file.
added base64Data element as shown below: <xs:complexType name="documentType"> <xs:sequence> <xs:element ref="smlif:docinfo" minOccurs="0"/> <xs:choice> <xs:element name="data" type="smlif:dataType"/> <xs:element name="base64Data" type="xs:base64Binary"/> <xs:element name="locator" type="smlif:locatorType"/> </xs:choice> ... </xs:complexType>
To be aligned with "data" (and other elements who have simple contents), I think we need to define a type like "base64DataType", which extends xs:base64Binary by adding an attribute wildcard to allow extensions. That is, <xs:complexType name="base64DataType"> <xs:simpleContent> <xs:extension base="xs:base64Binary"> <xs:anyAttribute namespace="##other" processContents="lax"/> </xs:extension> </xs:simpleContent> </xs:complexType>
changed as suggested in comment# 2: ---- added base64DataType def: <xs:complexType name="base64DataType"> <xs:simpleContent> <xs:extension base="xs:base64Binary"> <xs:anyAttribute namespace="##other" processContents="lax"/> </xs:extension> </xs:simpleContent> </xs:complexType> ---- updated type of base64Data element to base64DataType <xs:element name="document" type="smlif:documentType"/> <xs:complexType name="documentType"> <xs:sequence> <xs:element ref="smlif:docinfo" minOccurs="0"/> <xs:choice> <xs:element name="data" type="smlif:dataType"/> <xs:element name="base64Data" type="smlif:base64DataType"/> <xs:element name="locator" type="smlif:locatorType"/> </xs:choice> ... ...
Changes in comment #3 looks good.
+1 for change described in comment #3
+1 for resolution as described in comment #3.