When constraints are set on a sub sub list item, the field registration fails when parsed by XSD loader.
Assuming following definition is ok:
<!-- list of lists use case --> <xs:element name="listOfLists" type="nxs:vlistOfListsType" /> <xs:complexType name="vlistOfListsType"> <xs:sequence> <xs:element name="listOfListsItem" type="nxs:vlistOfListsItemType" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> <xs:complexType name="vlistOfListsItemType"> <xs:sequence> <xs:element name="stringItem" type="xs:string" /> <xs:element name="stringListItem" type="nxs:vstringList" /> </xs:sequence> </xs:complexType> <xs:simpleType name="restrictedType"> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z][a-z '-]+" /> </xs:restriction> </xs:simpleType> <xs:simpleType name="vstringList"> <xs:list itemType="nxs:restrictedType" /> </xs:simpleType>
The following error appears in logs:
main 14:04:01,043 ERROR [XSDLoader] list item type was not defined -> you should define first the item type main 14:04:01,044 WARN [XSDLoader] loadType for stringListItem of vstringList simple type returns null
See non-regression test (ignored for now) TestSchemaLoaderRestriction#testListOfListRestriction