Для полноты я добавил следующие параметры проверки:
<xsd:element name="element">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="OptionalString">
<xsd:attribute name="row" type="xsd:positiveInteger"
use="required" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:simpleType name="OptionalString">
<xsd:restriction base="xsd:string">
<xsd:minLength value="0" />
</xsd:restriction>
</xsd:simpleType>
Будет ли это отличаться от решения, предложенного выше?