Hi!
My goal is that storing application schema which has complex features like
IndoorGML and CityGML.

As a first step, I'm parsing IndoorGML schema in order to make complex
FeatureType using FeatureTypeRegistry.
I think I found bug, but I'm not sure. please comment this.

Following is subset of IndoorGML schema.
The group element of CellSpaceGeometry has choice indicator and
CellSpaceType has a CellSpaceGeometry group.

============================================================
<xs:element name="CellSpace" type="CellSpaceType"
substitutionGroup="gml:AbstractFeature">
</xs:element>

<xs:complexType name="CellSpaceType">
<xs:complexContent>
<xs:extension base="gml:AbstractFeatureType">
<xs:sequence>
*<xs:group ref="CellSpaceGeometry" minOccurs="0" maxOccurs="1"/>*
<xs:element name="duality" type="StatePropertyType" minOccurs="0"
maxOccurs="1"/>
<xs:element name="externalReference" type="ExternalReferenceType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="partialboundedBy" type="CellSpaceBoundaryPropertyType"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>

<xs:group name="CellSpaceGeometry">
*<xs:choice>
<xs:element name="Geometry3D" type="gml:SolidPropertyType"/>
<xs:element name="Geometry2D" type="gml:SurfacePropertyType"/>
</xs:choice>*
</xs:group>
=============================================================

When creating FeatureType In FeatureTypeRegistry, FeatureType of CellSpace
has AttributeDescripter objects like this.

Name|isNillable|minOccrus|maxOccurs
http://www.opengis.net/indoorgml/1.0/core:Geometry3D<SolidPropertyType:Collection>|false|1|1
http://www.opengis.net/indoorgml/1.0/core:Geometry2D
<SurfacePropertyType:Polygon>|false|1|1
(...)

In xml schema the default value of minOccurs is 1, so the minOccurs value of
AttributeDescriptor seems correct.
But CellSpace has either Geometry3D or Geometry2D element in xml data. 
So building Feature from the FeatureType occurs error because one of these
elements doesn't exist in parsed data.
I think choice indicator also should be considered.

Cheers,
Hyung-Gyu





--
View this message in context: 
http://osgeo-org.1560.x6.nabble.com/Mutliplicity-of-AttributeTypeDescriptor-problem-when-parsing-elements-in-xsd-choice-tp5276520.html
Sent from the geotools-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to