2
如果在我的數據庫字符串的最長值是XSD中的字符串數據類型maxLength限制應基於預編碼還是後編碼數據?
"ABC<DEF"
應在XSD這串數據類型的最大長度的限制是7(預編碼),或者它應該是(編碼後)10,即
"ABC<DEF"
如果在我的數據庫字符串的最長值是XSD中的字符串數據類型maxLength限制應基於預編碼還是後編碼數據?
"ABC<DEF"
應在XSD這串數據類型的最大長度的限制是7(預編碼),或者它應該是(編碼後)10,即
"ABC<DEF"
簡短回答:預編碼。
XML中的編碼字符不影響字符串的「真實」長度值。
快速測試:
<?xml version="1.0" encoding="utf-8" ?>
<xsd:schema targetNamespace="http://tempuri.org/XMLSchema.xsd" elementFormDefault="qualified" xmlns="http://tempuri.org/XMLSchema.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="root">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:schema>
有效的XML :)
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!-- Sample XML generated by QTAssistant (http://www.paschidev.com) -->
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/XMLSchema.xsd">&1</root>