Alvin050789 / kml-samples

Automatically exported from code.google.com/p/kml-samples
0 stars 0 forks source link

Error in Data.Balloon_Substitution.kml #279

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
In the file...
http://code.google.com/p/kml-samples/source/browse/trunk/morekml/Extended_Data/E
xtended_Data.Balloon_Substitution.kml

which runs in...
http://kml-samples.googlecode.com/svn/trunk/interactive/index.html

There is a typo in the balloon style,
$[TrailHeadType/TrailHeadName/displayName]
seems like it should be...
$[name]

Its rendering as it should by the schema rule but it seems the intent was
to get the name of the placemark.

Original issue reported on code.google.com by patcahil...@gmail.com on 27 May 2009 at 6:19

GoogleCodeExporter commented 8 years ago

Original comment by api.roman.public@gmail.com on 29 May 2009 at 8:35

GoogleCodeExporter commented 8 years ago
I think the current behavior is correct. The sample shows how you can show an
extended data property name (display name) and value in a balloon.

If anything it should be something like:

The $[TrailHeadType/TrailHeadName/displayName] of '$[name]' is
<i>$[TrailHeadType/TrailHeadName]</i>.

Original comment by api.roman.public@gmail.com on 1 Jun 2009 at 7:25

GoogleCodeExporter commented 8 years ago
The current behaviour _is_ correct according to the schema rules.

However $[TrailHeadType/TrailHeadName/displayName] is not part of the schema 
and not
in the Placemark examples.
For all intents this is a redundant IF statement,  if X print X else print "no 
X", 
we never provide X so it can never happen so why not skip the overhead and just 
do
print "no X"

Since the kml samples page is used by novice users, I think it that by having a
replacement that never happens in the example and isnt documented as such would 
make
the entire example less clear.

I think that to improve the example either...
a) Add $[TrailHeadType/TrailHeadName/displayName] to the Schema and add a third
Placemark that references it so the substitution happens at least once.
or
b) Change the placemarks to reference $[name] as in my original post, which I 
think
was the intent given the structure of that sentence it creates.
or
c) Document that there is a missing element in the schema and in the examples 
and
that is the reason for the output.
or
d) Rewrite the template to not reference 
$[TrailHeadType/TrailHeadName/displayName]
at all.

I hope you take the suggestions on board and I'm willing to provide the 
rewritten
exaple myself (though I think Id have to attach it here and let you upload the
change) if it would help your workload.

regards

Original comment by patcahil...@gmail.com on 2 Jun 2009 at 7:20

GoogleCodeExporter commented 8 years ago
Hmm, well displayName is in the schema:

  <Schema name="TrailHeadType" id="TrailHeadTypeId">
    <SimpleField type="string" name="TrailHeadName">

      <!-- displayName is right here... -->
      <displayName><![CDATA[Trail Head Name]]></displayName>

    </SimpleField>
    ...

Am I missing something?

Original comment by api.roman.public@gmail.com on 2 Jun 2009 at 11:51