-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello.

I have a bit of a dilemma here and I'm hoping that someone on this list can
help me.

The problem that I'm facing is that I need to create an application that
displays the results of a vote. The vote is performed in a room that has a
fixed seating arrangement and the application will display a floor plan.  The
application will display the chairs in different colors depending on the vote
that was cast from that chair.  The voting system is a third party system
that we'll be able to poll and "ask" for the vote for a specific chair (each
chair has a unique integer ID) and we might even be able to later set up some
sort of an event mechanism that will allow the voting status to be pushed to
our application (but that's another story).

An SVG picture is being created for us where each chair will be a single SVG
element.  As I understand we should be able to add our own attributes to an
element such as the aforementioned ID of each chair. It could look something
like this:

<svg>
  <defs>
    <g id="chair"....
  </defs>

  <use xlink:href="#chair" x="10" y="10" althingi:chair-id="1"/>
  <use xlink:href="#chair" x="20" y="20" althingi:chair-id="2"/>
  ...
</svg>

So, what I'll have to do is create something that will poll the voting status
from the voting system and then in some way create a "layer" on top of the
floor plan image where the appearance of each "chair" is modified according
to the voting status on that chair ID.

We're using Java technology for this application and we've decided to use
Batik (unless anyone here objects?).  But the problem is that we really
haven't got much of an idea on what exactly we can do with it to get the
above behavior.

I've read a bit about Batik but it's a very complicated system and it seems to
be hard to just dive into.  Therefore I decided to send this email to the
list hoping that some kind-hearted genius out there could guide us in the
right direction.

So here are some questions/ideas that I would like to get your opinions on:

1) What would be the best way for us to obtain the previously mentioned
"layer" effect?  As I said the voting status would be displayed in a "layer"
that should be possible to "hide".  Other relevant information such as the
name of the person sitting in that chair, the party he/she is affiliated with
and so on would be examples of other "layers".
This might be an "SVG specific" question but I have a feeling that using a
"programmatical approach" would be better suited.  I've seen that the <g>
element is sometimes used to represent layers so I guess it should be
possible to add such an element to the document in some way but I would much
rather like to modify the image in memory than on file.  By that I mean that
Batik will read the floor plan from the SVG document that we have but that
should be the end of that.  The voting status and any other information
(persons name, party affiliation and so on) should be programmatically added
to the memory representation of the document.  I hope I'm making myself at
least vaguely understandable here.

2) My next question depends a bit on the answer of the first but that is how
it's best to manipulate data in SVG documents in Batik.  This would include
such things as coloring one of the chairs green to signify a "yes" vote.  I
could imagine a solution that would involve polling the voting status and
generating a whole new SVG document and re-rendering the whole floor plan in
the client would solve my problem but that would most definately be very slow
and unefficient.  So if it's possible to make each "layer" a seperate SVG
document or some sort a descriptor file that would be better than
re-generating the whole floor plan all the time.  But the image itself would
probably still have to be re-rendered which might not be very efficient. So
is there any way to update an SVG document in batik (for example to make one
of the "chairs" green) and only re-rendering the part of the image that was
modified to save processing?

In general I'd like to hear any and all comments on what you gurus out there
feel would be the best way to solve my problem.  If you know of anything
similar out there that I could use as a reference (by this I mean solutions
that use Batik... I know of the Adoby examples already) that would be most
appreciated as would any reference to reading material related to what I have
to do.

- -- 
Kind regards, Stefan

"XML is a giant step in no direction at all" (Erik Naggum)
"XML is a giant step in whichever direction you want it to be" (Andrew Hardie)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iQEVAwUBPy+I1r0ge6mq4AL2AQLHVgf7Bcu/uGmprSwCnGzvba5IB6os0vhssx8t
mcS9ym6/VSawiMKPrsyAgE9MbIeGojT0goFO+fQ8OlW/qdY146gUEA5iERiUBu+m
BPp9O9R8HSkd2x14h7IY7BKjiDLygToKcY+Cyg4HE1Zx+h7k+ZtRS4cffuf09j+j
tc1u7Jn+CUIZTRZiO94tM2lgKNsSdsLy8VIWnkGw3FEqnQY1DfcQ4fBgHY499M9j
xjeMukc64xBOkodfhJmWzW9Ihg/6jVc3I0El5GAufHS0svM5Nf7LibYjIVxKwcEh
Utt6AzJqTSVoP/yNHR9iy2hZLYhN2dlXfjAj3EWGwqik+qxO4Y4DwQ==
=rd3P
-----END PGP SIGNATURE-----


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to