1461104846-8054a87f-29b6-4962-9614-4a4cbac15614

What is claimed is:

1. A method of dynamically updating a user interface in a processing system, the method comprising:
storing a data set locally in the processing system;
generating a presentation document based on a source document and the data set; and
responding to an event by
modifying the data set in the processing system,
determining whether the modification to the data set should affect the presentation document, and
if the modification to the data set should affect the presentation document, then automatically updating only parts of the presentation document that correspond to the modification to the data set.
2. A method as recited in claim 1, wherein the processing system generates a user interface, and wherein the method further comprises using the updated presentation document to update the user interface dynamically.
3. A method as recited in claim 1, wherein the source document is written in an extensible markup language.
4. A method as recited in claim 1, wherein:
the source document comprises a tag having a dependency expression as an attribute;
said determining whether the modification to the data set should affect the presentation document comprises evaluating the dependency expression; and
the method further comprises updating the presentation document, if appropriate, based on a result of the dependency expression.
5. A method of dynamically updating a user interface on a local processing system, the method comprising:
storing data in the local processing system;
providing a presentation document in the local processing system based on the data and a source document written in an extensible markup language, wherein the presentation document is dependent upon one or more expressions that operate on the data;
rendering the user interface in the local processing system based on the presentation document;
detecting an event in the local processing system;
responding to the event in the local processing system by
causing a change to the data in the local processing system,
determining whether the presentation document is dependent upon at least one expression, the result of which is affected by the change to the data, and
if the presentation document is dependent upon at least one expression, the result of which is affected by the change to the data, then automatically updating only one or more parts of the presentation document that depend on said at least one expression, without updating the entire presentation document; and

rendering the user interface in the local processing system based on the updated presentation document.
6. A method as recited in claim 5, wherein:
the source document comprises a tag having a dependency expression as an attribute;
said determining comprises evaluating the dependency expression; and
the method further comprises updating the presentation document, if appropriate, based on the dependency expression.
7. A method and apparatus for dynamically updating a user interface in a processing system, the method comprising:
generating a presentation document in the processing system based on a stored data model and a source document written in extensible markup language;
rendering the user interface in the processing system based on the presentation document;
responding to an event in the local processing system by
causing a change to the data set,
determining a set of parts of the presentation document which are invalid as a result of the change, and
automatically updating only those parts of the presentation document that are invalid, without updating the entire presentation document; and

rendering the user interface based on the updated presentation document.
8. A method as recited in claim 7, wherein the data set is stored locally in the processing system.
9. A method as recited in claim 7, wherein:
the source document comprises a tag having a dependency expression as an attribute;
said determining a set of segments comprises evaluating the dependency expression; and
the method further comprises updating the presentation document, if appropriate, based on a result of the dependency expression.
10. A method of dynamically updating a user interface on a local processing system, the method comprising:
generating a presentation document based on a source document and a stored data set; and
responding to an event by
modifying the data set,
determining whether the modification to the data set should affect the presentation document, and
if the modification to the data set should affect the presentation document, then automatically updating the presentation document based on the modification to the data set.
11. A method as recited in claim 10, further comprising storing the data set locally within the local processing system.
12. A method as recited in claim 10, wherein:
the source document comprises a tag having a dependency expression as an attribute;
said determining whether the modification to the data set should affect the presentation document comprises evaluating the dependency expression; and
the method further comprises updating the presentation document, if appropriate, based on the dependency expression.
13. A method as recited in claim 10, wherein said automatically updating the presentation document comprises automatically updating only segments of the presentation document that correspond to the changed data, without updating the entire presentation document.
14. A method as recited in claim 10, further comprising storing the data set locally within the local processing system, wherein said automatically updating the presentation document comprises automatically updating only segments of the presentation document that depend on the changed data, without updating the entire presentation document.
15. A method as recited in claim 10, wherein the source document is an extensible markup language document.
16. A method of dynamically updating a user interface on a local processing system, the method comprising:
providing a presentation document in the local processing system based on a source document written in an extensible markup language and a data set;
rendering the user interface in the local processing system based on the presentation document;
detecting an event in the local processing system;
responding to the event in the local processing system by
causing a change to the data in the local processing system,
determining whether the presentation document is dependent upon the changed data, and
if the presentation document is dependent upon the changed data, then automatically updating the presentation document based on the change to the data; and

rendering the user interface in the local processing system based on the updated presentation document.
17. A method as recited in claim 16, further comprising storing the data set locally within the local processing system.
18. A method as recited in claim 16, further comprising storing the data set locally within the local processing system, wherein said automatically updating the presentation document comprises automatically updating only one or more segments of the presentation document that depend on the changed data, without updating the entire presentation document.
19. A method as recited in claim 16, wherein:
the source document comprises a tag having a dependency expression as an attribute;
said determining whether the presentation document is dependent upon the changed data comprises evaluating the dependency expression; and
the method further comprises updating the presentation document, if appropriate, based on a result of the dependency expression.
20. A method of dynamically updating a user interface on a local processing system, the method comprising:
generating a presentation document based on a source document and a stored data set; and
responding to an event by
modifying the data set,
determining whether the modification to the data set should affect the presentation document, and
if the modification to the data set should affect the presentation document, then updating only segments of the presentation document that correspond to the changed data, without updating the entire presentation document.
21. A method as recited in claim 20, further comprising storing the data set locally within the local processing system.
22. A method as recited in claim 20, wherein said updating comprises automatically updating only segments of the presentation document that depend on the changed data.
23. A method as recited in claim 20, further comprising storing the data set locally within the local processing system, wherein said updating the presentation document comprises automatically updating only segments of the presentation document that depend on the changed data.
24. A method as recited in claim 20, wherein the source document comprises a tag having a dependency expression as an attribute, and wherein said determining whether the modification to the data set should affect the presentation document comprises evaluating the dependency expression.
25. A method as recited in claim 20, wherein the source document is an extensible markup language document.
26. A method of dynamically updating a user interface on a local processing system, the method comprising:
providing a presentation document in the local processing system based on a source document written in an extensible markup language and a data set;
rendering the user interface in the local processing system based on the presentation document;
detecting an event in the local processing system;
responding to the event in the local processing system by
causing a change to the data set in the local processing system,
determining whether the presentation document is dependent upon the data changed by the change to the data set, and
if the presentation document is dependent upon the changed data, then updating only one or more segments of the presentation document that depend on said changed data, without updating the entire presentation document; and

rendering the user interface in the local processing system based on the updated presentation document.
27. A method as recited in claim 26, wherein said updating comprises automatically updating said one or more segments of the presentation document that depend on said changed data.
28. A method as recited in claim 26, wherein the source document comprises a tag having a dependency expression as an attribute, and wherein said determining whether the presentation document is dependent upon the data changed by the change to the data set comprises evaluating the dependency expression.
29. A method as recited in claim 26, further comprising storing the data set within the local processing system.
30. A method as recited in claim 26, wherein said updating comprises automatically updating said one or more segments of the presentation document that depend on said changed data;
the method further comprising storing the data set within the local processing system.
31. A method of dynamically updating a user interface on a local processing system, the method comprising:
storing, in the local processing system, a data set for use in generating a presentation document;
generating a presentation document based on a source document and the stored data set; and
responding to an event by
modifying the data set in the local processing system,
determining whether the modification to the data set should affect the presentation document, and
if the modification to the data set should affect the presentation document, then updating the presentation document based on the modification to the data set.
32. A method as recited in claim 31, wherein said updating comprises automatically updating the presentation document.
33. A method as recited in claim 31, wherein the source document comprises a tag having a dependency expression as an attribute, and wherein said determining whether the modification to the data set should affect the presentation document comprises evaluating the dependency expression.
34. A method as recited in claim 31, wherein said updating comprises updating only segments of the presentation document that correspond to the changed data.
35. A method as recited in claim 31, wherein said updating comprises automatically updating only segments of the presentation document that depend on the changed data.
36. A method as recited in claim 31, wherein the source document is written in an extensible markup language.
37. A method of dynamically updating a user interface on a local processing system, the method comprising:
storing data in the local processing system;
providing a presentation document in the local processing system based on a source document written in an extensible markup language and the data;
rendering the user interface in the local processing system based on the presentation document;
detecting an event in the local processing system;
responding to the event in the local processing system by
causing a change to the data in the local processing system,
determining whether the presentation document is dependent upon the changed data, and
if the presentation document is dependent upon the changed data, then updating the presentation document based on the change to the data; and

rendering the user interface in the local processing system based on the updated presentation document.
38. A method as recited in claim 37, wherein said updating the presentation document comprises automatically updating the presentation document in response to the event.
39. A method as recited in claim 37, wherein the source document comprises a tag having a dependency expression as an attribute, and wherein said determining whether the presentation document is dependent upon the changed data comprises evaluating the dependency expression.
40. A method as recited in claim 37, wherein said updating comprises updating only one or more segments of the presentation document that depend on the changed data, without updating the entire presentation document.
41. A method as recited in claim 37, wherein said updating the presentation document comprises automatically updating only one or more segments of the presentation document that depend on the changed data, without updating the entire presentation document.
42. A machine-readable storage medium containing instructions which, when executed by a machine, configure the machine to perform a method and apparatus for dynamically updating a user interface in a processing system, the method comprising:
storing a data set locally in the processing system;
generating a presentation document in the processing system based on the data model and a source document written in extensible markup language;
rendering the user interface in the processing system based on the presentation document;
responding to an event in the local processing system by
causing a change to the data set,
determining a set of parts of the presentation document which are invalid as a result of the change, and
automatically updating only those parts of the presentation document that are invalid, without updating the entire presentation document; and

rendering the user interface based on the updated presentation document.
43. A machine-readable storage medium as recited in claim 42, wherein:
the source document comprises a tag having a dependency expression as an attribute;
said determining a set of segments comprises evaluating the dependency expression; and
the method further comprises updating the presentation document, if appropriate, based on a result of the dependency expression.
44. A computing device comprising:
a processor;
an output device;
a first storage unit containing a data set for use in generating an extensible markup language based presentation document; and
a second storage unit containing instructions which configure the processor to
generate the presentation document based on a source document written in an extensible markup language and the data set, wherein the presentation document is dependent upon one or more expressions that operate on the data;
present a user interface at the output device based on the presentation document;
detect an event; and
respond to the event by
causing a change to the data set,
determine whether the presentation document is dependent upon at least one expression, the result of which is affected by the change to the data, and
if the presentation document is dependent upon at least one expression, the result of which is affected by the change to the data, then automatically updating only one or more segments of the presentation document that depend on said at least one expression, without updating the entire presentation document, and
present the user interface at the output device based on the updated presentation document.
45. A computing device as recited in claim 44, wherein the computing device is a wireless, hand-held computing device.
46. A computing device as recited in claim 45, wherein the computing device is configured to receive the source document from a remote server over a network.
47. A computing device as recited in claim 44, wherein:
the source document comprises a tag having a dependency expression as an attribute; and
the method further comprises updating the presentation document, if appropriate, based on the dependency expression.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A solar panel comprising:
a substrate having a surface; and
layers of droplets of different materials disposed on the surface of the substrate, wherein the layers of materials comprise:
an outer layer disposed away from the surface of the substrate, the outer layer comprising a face of the solar panel;
a cathode electrode disposed between the outer layer and the surface of the substrate;
an anode electrode disposed between the outer layer and the surface of the substrate;
a P region disposed at least partially around the anode electrode and the P region comprising droplets of a P material comprising P-doped semiconductor particles, and
an N region disposed at least partially around the P region and at least partially around the cathode electrode, the N region comprising droplets of an N material comprising N-doped semiconductor particles.
2. The solar panel of claim 1, wherein the cathode electrode and the anode electrode are disposed directly on the surface of the substrate.
3. The solar panel of claim 1, wherein the layers of materials further comprises:
an N+ region disposed at least partially around the cathode electrode between the cathode electrode and the N region, the N+ region comprising droplets of a material comprising semiconductor particles with a greater concentration of N-doping than the N material; and
a P+ region disposed at least partially around the anode electrode between the anode electrode and the P region, the P+ region comprising droplets of a material comprising semiconductor particles with a greater concentration of P-doping than the P material.
4. The solar panel of claim 1, wherein:
the layers further comprise a first upper region disposed above the P region and a first neck region disposed between and interconnecting the P region and the first upper region, the first neck region being more narrow than the P region and the first upper region, and
the first neck region and the first upper region comprise droplets of the P material comprising the P-doped semiconductor particles.
5. The solar panel of claim 4, wherein:
the layers further comprise a second upper region and a second neck region disposed between and interconnecting the first upper region and the second upper region, the second neck region being more narrow than the first upper region and the second upper region, and
the second neck region and the second upper region comprise droplets of the P material comprising the P-doped semiconductor particles.
6. The solar panel of claim 1 further comprising a concentrator lens for focusing light disposed on the outer layer.
7. The solar panel of claim 1 further including a by-pass diode, a first terminal of the diode electrically connected to the cathode electrode and a second terminal of the diode electrically connected to the anode electrode, the diode being forward biased from the cathode electrode to the anode electrode, wherein the diode is formed in the layers of droplets disposed on the surface of the substrate.
8. The solar panel of claim 1 further including a clamping diode electrically connected to the cathode electrode and the anode electrode and forward biased from the anode electrode to the cathode electrode, wherein the diode is formed in the layers of droplets disposed on the surface of the substrate.
9. A method of making a solar panel, the method comprising:
depositing a plurality of layers of droplets of different materials on a surface of a substrate and on a cathode electrode and an anode electrode located on the surface of the substrate,
wherein the depositing a plurality of layers of droplets of different materials comprises:
forming a P region at least partially around the anode electrode by depositing a plurality of droplets of a P material comprising P-doped semiconductor particles onto the surface of the substrate and at least partially around the anode electrode; and
forming an N region at least partially around the cathode electrode by depositing a plurality of droplets of an N material comprising N-doped semiconductor particles onto the surface and at least partially around the cathode electrode and the P region.
10. The method of claim 9, wherein:
the forming the P region comprises:
depositing the droplets of the P material in liquid form through a spray head, and
hardening the deposited droplets of the P material; and

the forming the N region comprises:
depositing the droplets of the N material in liquid form through a spray head, and
hardening the deposited droplets of the N material.
11. The method of claim 10, wherein:
the P-doped semiconductor particles comprise nano-particles of silicon doped with a P dopant in a concentration of 1\xd71014 to 1\xd71016 atoms per cubic centimeter;
the hardening the deposited droplets of the P material comprises heating the deposited droplets of the P material to a temperature of 150 to 250 degrees Celsius;
the N-doped semiconductor particles comprise nano-particles of silicon doped with an N dopant in a concentration of 1\xd71014 to 1\xd71016 atoms per cubic centimeter; and
the hardening the deposited droplets of the N material comprises heating the deposited droplets of the N material to a temperature of 150 to 250 degrees Celsius.
12. The method of claim 11, wherein the depositing the plurality of layers of droplets of the different materials further comprises:
forming a P+ region at least partially around the anode electrode between the anode electrode and the P region by depositing a plurality of droplets of a P+ material comprising P+ semiconductor particles with a greater concentration of P-doping than the P material, and forming an N+ region at least partially around the cathode electrode between the cathode electrode and the N region by depositing a plurality of droplets of an N+ material comprising N+ semiconductor particles with a greater concentration of N-doping than the N material.
13. The method of claim 12, wherein:
the forming the P+ region comprises:
depositing the plurality of droplets of the P+ material in liquid form through a spray head, and
hardening the deposited droplets of the P+ material; and

the forming the N+ region comprises:
depositing the plurality of droplets of the N+ material in liquid form through a spray head, and
hardening the deposited droplets of the N+ material.
14. The method of claim 13, wherein:
the P+ semiconductor particles comprise nano-particles of silicon doped with a P dopant in a concentration greater than 1\xd71020 atoms per cubic centimeter;
the hardening the deposited droplets of the P+ material comprises heating the deposited droplets of the P+ material to a temperature of 150 to 250 degrees Celsius;
the N+ doped semiconductor particles comprise nano-particles of silicon doped with an N dopant in a concentration greater than 1\xd71020 atoms per cubic centimeter; and
the hardening the deposited droplets of the N+ material comprises heating the deposited droplets of the N+ material to a temperature of 150 to 250 degrees Celsius.
15. The method of claim 9, wherein the depositing the plurality of layers of droplets of different materials further comprises forming a concentrator lens on the N region for focusing incident light onto a junction of the P region and the N region by depositing a plurality of droplets of an optical material on the N region.
16. The method of claim 9, wherein the cathode electrode and the anode electrode are located directly on the surface of the substrate.
17. A method of generating an electric current, the method comprising:
exposing a face of a solar panel to light, the face comprising an outer layer of a plurality of layers of droplets of different materials disposed on a surface of a substrate,
wherein:
the light enters the layers and strikes a depletion region between a P region and an N region within the layers,
the P region is disposed at least partially around an anode electrode located on the surface of the substrate, and the P region comprises droplets of a material comprising P-doped semiconductor particles,
the N region is disposed at least partially around the P region and at least partially around a cathode electrode located on the surface of the substrate, and the N region comprises droplets of a material comprising N-doped semiconductor particles, and
the light striking the depletion region generates a current flow from the cathode electrode to the anode electrode.
18. The method of claim 17, wherein the cathode electrode and the anode electrode are located directly on the surface of the substrate.
19. The method of claim 18, wherein the face comprises a concentrator lens disposed on the N region, wherein the method further comprises the concentrator lens focusing the light onto the depletion region.
20. The method of claim 18, wherein the face comprises a concentrator lens disposed on the N region, wherein the method further comprises the concentrator lens magnifying the light entering the layers.
21. A solar panel comprising:
a substrate comprising a cathode electrode disposed on a first base, the first base having a triangular cross-section with converging sidewalls each disposed at an angle with respect to the surface of the substrate of 20 to 70 degrees, the substrate further comprising an anode electrode disposed on a second base, the second base having a triangular cross-section with converging sidewalls each disposed at an angle with respect to the surface of the substrate of 20 to 70 degrees; and
layers of droplets of materials disposed on the surface of the substrate, the cathode, and the anode, wherein the layers of materials comprise:
an outer layer disposed away from the surface of the substrate, the outer layer comprising angled portions each angled with respect to the surface of the substrate at an angle that is approximately equal to one of the angles of one of the sidewalls of the first base or the second base;
a P region disposed at least partially around the anode electrode, the P region comprising droplets of a P material comprising P-doped semiconductor particles, and
an N region disposed at least partially around the P region and at least partially around the cathode electrode, the N region comprising droplets of an N material comprising N-doped semiconductor particles.
22. The solar panel of claim 21, wherein the N region comprises the outer layer.
23. The solar panel of claim 21, wherein the layers of materials further comprises:
an N+ region disposed at least partially around the cathode electrode between the cathode electrode and the N region, the N+ region comprising droplets of a material comprising semiconductor particles with a greater concentration of N-doping than the N material; and
a P+ region disposed at least partially around the anode electrode between the anode electrode and the P region, the P+ region comprising droplets of a material comprising semiconductor particles with a greater concentration of P-doping than the P material.
24. The solar panel of claim 23, wherein:
the P+ region is angled with respect to the surface of the substrate at angles that are approximately equal to the angles of the sidewalls of the second base, and
the N+ region is angled with respect to the surface of the substrate at angles that are approximately equal to the angles of the sidewalls of the first base.
25. The solar panel of claim 24, wherein:
the layers further comprise an upper region disposed above the P region and comprising a first angled portion and a second angled portion each angled with respect to the surface of the substrate at angles that are approximately equal to the angles of the sidewalls of the second base,
the layers further comprise a neck region disposed between and interconnecting the P region and the upper region, the neck region being more narrow than the P region and the upper region, and
the neck region and the upper region comprise droplets of the P material comprising the P-doped semiconductor particles.
26-50. (canceled)