У меня есть XSD-файл с таким элементом:
<xs:element name="orcid" minOccurs="0" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="https://orcid\.org/[0-9]{4}-[0-9]{4}-[0-9]{4}-\d{3}[\dX]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Я хотел бы прочитать шаблон из этого значения, и я делаю:
with open(app.config.get("schema")) as xsd:
doc = etree.parse(xsd)
data = doc.xpath(ORCID_XPATH, namespaces=doc.getroot().nsmap)[0]
где
ORCID_XPATH = '/xs:element/xs:simpleType/xs:restriction[@base="xs:string"]/xs:pattern/@value
но в результате я получил строку, которую я не понимаю:
'[d0-9]{4}-{0,1}[0-9]{3}[0-9xX]{1}'
Не могли бы вы объяснить мне, что здесь происходит?