I know there have been a number of questions around this, so I thought I’d try to clear it up a bit. We’ll try to get the documentation updated as well.
The location object you use is in fact your location class for this installation of the SmartApp. You don’t see sunrise/sunset attributes, because those are actually events that we send out as a platform.
There are two different sets of events that get sent out. First off are the sunrise and sunset events. These happen at the minute when it is sunrise or sunset at your specific latitude and longitude. Use these when you need something to happen right at those times. For example, you might want to turn on your yard lights when it is sunset, and off again when it is sunrise. The value for these events is always just true so the use is just to trigger some action based on the sun.
The other types of events are sunriseTime and sunsetTime. The value for these is the time when the next sunrise or sunset is going to happen. How it works behind the scenes is whenever it is sunrise, we (the platform) then look for tomorrow’s sunrise time and if it is different, which typically is every day, we send out a new sunriseTime event. And of course the same for sunset. This is in the format 2014-11-20T13:17:00.000Z which is 7:17 AM CST. The value is in UTC time. Typically you would use these events if you need an offset, like you want your lights to turn on 30 minutes before sunset and off 30 minutes after sunrise. That is what the Sunrise/Sunset app does that as @AaronZON noticed, if you want an example of how to use the offsets.
If you ever want to see your sunrise, sunset, sunriseTime, or sunsetTime events, you can look them up in the Web IDE by going to: My Locations > [Location Name] > events > from location
If you have any questions, let me know!