3 Answers
3

As @awesomo alluded to, what you really want to query against is a layer containing the parcel boundaries. I don't know that there is an online service that can do batch queries like this for Oakland. Both the city of Oakland and Alameda county have map viewers where you may query individual parcels and return their information.

If, on the other hand, your intent is to do more large scale geocoding and further analysis, the situation is a bit more complicated. Ordinarily, I would say to simply download the parcel boundary layer from the appropriate agency, in this case, Alameda County's Geospatial Data Files.

You would then use that layer to set up a geocoding service in your favorite GIS software, and geocode based on addresses.

In this case, you are going to run into a problem of what constitutes data that should be freely accessible to the public, or what is considered value-added, and thus able to be provided at an additional charge. This is a can of worms which I will avoid, but mention later.

Suffice it to say that Alameda County only provides the Parcel boundaries with a few attributes, namely the Parcel Number, and some modified dates for tracking, but no address or other property characteristics.
That sort of information is available from the county Assessor's office for an additional fee. Here is their Fee Schedule. You will want to look for the Compact Disc, and either the Entire Assessment Roll (Secured & Unsecured), for $20, or the Entire Property Characteristic File, which is $20,000. Please note the additional zeros for the second option. Hopefully they would include the addresses in the Assessment Roll, but that is by no means guaranteed.

Since this may turn into an expensive option, a second and completely free, though potentially less accurate option would be to instead use the street centerline file as the geocoding basis. This is available from the same download site at Alameda county.
Generally, the geocoders give you the option of including an offset from the line to the proper side based on the address number. Doing this with some adjustment to get the correct distance, should drop the geocoded point inside the parcel boundary, thus letting you do a spatial join between the point and the appropriate parcel boundary. If it doesn't fall inside, you could likely do a query for the nearest point or parcel, depending on which way you go, and get a fairly high percentage match.

To briefly address the discussion of what is happening with GIS data and its place in the public domain, I point you to this article: Does Government GIS Data Belong to the People. This is but a brief discussion, but there is much more information out there, with opinions on both sides of the issue. That discussion, however, is not appropriate for this space.

I almost wrote an identical answer, but liked your detail. Some additional info will solve this problem, though. If you also download the "Alameda County Secondary Addresses", which has the addresses AND the parcel number, you can either 1A) join your table to the SPAD points using the address field, or 1B) geocode to the SPAD points, and then 1C) select the intersecting parcels or 2) spatial join the SPAD point address data to the parcels and then join or geocode to the parcel polygons. I would suggest going with option 1, though, it will be easier.
–
RyanDaltonDec 6 '12 at 5:37

1

After looking more closely at the data, another advantage of the option 1 stated above is that some parcels may have more than 1 address point per polygon (think apartments and condos). By joining/geocoding first to the point, you will 1) get better geocodes and 2) not need to worry about getting multiple addresses on each polygon. For example, there are 394732 parcels, 530750 address points, a max count of 632 points in a single parcel, and 24 "stacked" points representing multiple addresses at the same location.
–
RyanDaltonDec 6 '12 at 6:31

GetSpatial: Thanks for your detailed reply! I was mostly asking to demonstrate to my boss that there is no simple API for getting this data, but with Alameda County's ESRI data, I should be able to write my own. @RyanDalton You raise a good point about apartments and condos, but (fortunately for me) this project is for a group transit benefit sold to apartment buildings and residential communities, not individual apartments and residences.
–
giaourDec 6 '12 at 17:25

I think this is one area that is truly in flux right now. I know that in San Diego, there is actually a growing agreement among the local agencies that it makes sense to put forth this sort of data as a service of some sort, be it WFS, or KML, etc; that other people can consume as a means of reducing the duplication of data. I think this is likely a trend that will happen in more and more places, though it does depend on the public vs value added question I alluded to in my answer.
–
Get SpatialDec 6 '12 at 17:34

What you really want is a parcel layer that can be queried. In CA, the counties have this parcel data (of varying degrees of quality), but they don't usually make a public queryable service out of it. They also leave off owner names usually. Unfortunately, I think you will have to purchase a commercial source that compiles the county data. http://www.parcelquest.com/, Core Logic,...

The viewport is unfortunately not accurate enough; the area it returns does not correspond to property lines but instead arbitrary geographic units. (In my area (Oakland, CA), the viewport object is usually three city blocks.)
–
giaourDec 5 '12 at 22:22