GroupingFeatureIterator3 uses first instance client property for all instances 
of a multi-valued attribute
----------------------------------------------------------------------------------------------------------

                 Key: GEOT-1871
                 URL: http://jira.codehaus.org/browse/GEOT-1871
             Project: GeoTools
          Issue Type: Bug
          Components: data complex
    Affects Versions: 2.4.5
            Reporter: Ben Caradoc-Davies
            Assignee: Ben Caradoc-Davies


ClientProperty mapping is only applied for the first instance of a multi-valued 
attribute, and all subsequent instances in the group get the same 
ClientProperty.

Bug report from Alistair Ritchie:

Second, the data look to be serialised accurately except for the 
gsml:CompositionPart/gsml:lithology/@xlink:href="" values, which repeats 
the lithology value for the first CompositionPart in the unit for each 
subsequent CompositionPart.

For example, in the Yaugher Volcanic Group the four CompositionPart's are 
returned as:

<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology  xlink:href="urn:cgi:classifier:GSV:basalt" type="
simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">significant</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>
<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology xlink:href="urn:cgi:classifier:GSV:basalt" type="
simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">significant</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>
<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology xlink:href="urn:cgi:classifier:GSV:basalt" type="
simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">significant</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>
<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology xlink:href="urn:cgi:classifier:GSV:basalt" type="
simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">minor</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>

The lithology hrefs should actually be:

<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology  xlink:href="urn:cgi:classifier:GSV:basalt" type="
simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">significant</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>
<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology xlink:href="
urn:cgi:classifier:GSV:GSVdescriptiverocktype:tuff" type="simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">significant</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>
<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology xlink:href=
"urn:cgi:classifier:GSV:GSVdescriptiverocktype:gabbro[sensustricto]" type
="simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">significant</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>
<gsml:composition>
    <gsml:CompositionPart>
        <gsml:role codeSpace="
urn:cgi:classifierScheme:GSV:CompositionpartRole">interbedded component</
gsml:role>
        <gsml:lithology xlink:href=
"urn:cgi:classifier:GSV:GSVdescriptiverocktype:sedimentaryrock" type="
simple"/>
        <gsml:proportion>
            <gsml:CGI_TermValue><gsml:value codeSpace="
urn:cgi:classifierScheme:GSV:Proportion">minor</gsml:value></
gsml:CGI_TermValue>
        </gsml:proportion>
    </gsml:CompositionPart>
</gsml:composition>


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to