[seek-dev] [Bug 2649] New: - Ecogrid returnfields don't return enough information
bugzilla-daemon@ecoinformatics.org
bugzilla-daemon at ecoinformatics.org
Wed Nov 8 10:21:16 PST 2006
http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2649
Summary: Ecogrid returnfields don't return enough information
Product: SEEK
Version: unspecified
Platform: Other
OS/Version: All
Status: NEW
Severity: normal
Priority: P1
Component: ecogrid
AssignedTo: jones at nceas.ucsb.edu
ReportedBy: berkley at nceas.ucsb.edu
QAContact: seek-dev at ecoinformatics.org
When using returnfields in an ecogrid query, the original xpath used in the
returnfield is not returned with the results, making it very difficult to parse
the results. When a query is submited, a ResultsetTypeRecordReturnfield object
is returned. This object only has two useful methods: get_value() and getId().
I thought getId() would return the original xpath query used to create the
returnfield, but instead it returns a cryptic identifier starting with 'f' then
a number.
Example:
Given these returnfields:
<returnField>/entity/@name</returnField>
<returnField>/entity/property/@name</returnField>
<returnField>/entity/property/@value</returnField>
And this input document:
<entity name="Variable Setter" class="ptolemy.kernel.ComponentEntity">
<property name="entityId" value="urn:lsid:kepler-project.org:actor:10:2"
class="org.kepler.moml.NamedObjId"/>
<property name="documentation"
class="org.kepler.moml.DocumentationAttribute">
null
</property>
<property name="class" value="ptolemy.actor.lib.SetVariable"
class="ptolemy.kernel.util.StringAttribute">
<property name="id" value="null"
class="ptolemy.kernel.util.StringAttribute"/>
</property>
<property name="kepler:input" class="org.kepler.moml.PortAttribute">
<property name="direction" value="input"
class="ptolemy.kernel.util.StringAttribute"/>
<property name="dataType" value="unknown"
class="ptolemy.kernel.util.StringAttribute"/>
<property name="isMultiport" value="false"
class="ptolemy.kernel.util.StringAttribute"/>
</property>
<property name="variableName" class="ptolemy.kernel.util.StringAttribute"
value="parameter">
</property>
<property name="delayed" class="ptolemy.data.expr.Parameter" value="true">
</property>
<property name="semanticType000" class="org.kepler.sms.SemanticType"
value="urn:lsid:localhost:onto:1:1#Variable">
</property>
<property name="semanticType111" class="org.kepler.sms.SemanticType"
value="urn:lsid:localhost:onto:2:1#LocalInput">
</property>
<property name="_location" class="ptolemy.kernel.util.Location"
value="{250, 300}">
</property>
<property name="karId" class="ptolemy.kernel.util.StringAttribute"
value="urn:lsid:kepler-project.org:kar:11:1">
</property>
</entity>
You will get returnfields (in the format getId():get_value()) like this:
returnfield: f0:Variable Setter
returnfield: f1:entityId
returnfield: f2:urn:lsid:kepler-project.org:actor:10:2
returnfield: f1:documentation
returnfield: f1:class
returnfield: f2:ptolemy.actor.lib.SetVariable
returnfield: f1:kepler:input
returnfield: f1:variableName
returnfield: f2:parameter
returnfield: f1:delayed
returnfield: f2:true
returnfield: f1:semanticType000
returnfield: f2:urn:lsid:localhost:onto:1:1#Variable
returnfield: f1:semanticType111
returnfield: f2:urn:lsid:localhost:onto:2:1#LocalInput
returnfield: f1:_location
returnfield: f2:{250, 300}
returnfield: f1:karId
returnfield: f2:urn:lsid:kepler-project.org:kar:11:1
Instead, there either needs to be a new method, getQuery(), that would return
the query for each field, or the getId() should return the query or some other
more meaninful identifier.
More information about the Seek-dev
mailing list