Obtain the Protobuf Schema to Decode the Vector Tiles

To request a list of protobuf schemas, use the proto endpoint.

When you make a proto request, the response is similar to the following example:

[{"name":"vector_tile.proto", "description":"OMV format"}]

Based on the information above, the protobuf schema for the relevant vector tiles is at https://vector.hereapi.com/v2/vectortiles/proto/vector_tile.proto.

When you make a request to the endpoint above, the response is similar to the following example:

//package vector_tile;
package com.mapbox.pb;

option optimize_for = LITE_RUNTIME;

message Tile {

    // GeomType is described in section 4.3.4 of the specification
    enum GeomType {
        UNKNOWN = 0;
        POINT = 1;
        LINESTRING = 2;
        POLYGON = 3;
    }

    // Variant type encoding
    // The use of values is described in section 4.1 of the specification
    message Value {
        // Exactly one of these values must be present in a valid message
        optional string string_value = 1;
        optional float float_value = 2;
        optional double double_value = 3;
        optional int64 int_value = 4;
        optional uint64 uint_value = 5;
        optional sint64 sint_value = 6;
        optional bool bool_value = 7;

        extensions 8 to max;
    }

    // Features are described in section 4.2 of the specification
    message Feature {
        optional uint64 id = 1 [ default = 0 ];

        // Tags of this feature are encoded as repeated pairs of
        // integers.
        // A detailed description of tags is located in sections
        // 4.2 and 4.4 of the specification
        repeated uint32 tags = 2 [ packed = true ];

        // The type of geometry stored in this feature.
        optional GeomType type = 3 [ default = UNKNOWN ];

        // Contains a stream of commands and parameters (vertices).
        // A detailed description on geometry encoding is located in
        // section 4.3 of the specification.
        repeated uint32 geometry = 4 [ packed = true ];
    }

    // Layers are described in section 4.1 of the specification
    message Layer {
        // Any compliant implementation must first read the version
        // number encoded in this message and choose the correct
        // implementation for this version number before proceeding to
        // decode other parts of this message.
        required uint32 version = 15 [ default = 1 ];

        required string name = 1;

        // The actual features in this tile.
        repeated Feature features = 2;

        // Dictionary encoding for keys
        repeated string keys = 3;

        // Dictionary encoding for values
        repeated Value values = 4;

        // Although this is an "optional" field it is required by the specification.
        // See https://github.com/mapbox/vector-tile-spec/issues/47
        optional uint32 extent = 5 [ default = 4096 ];

        extensions 16 to max;
    }

    repeated Layer layers = 3;

    extensions 16 to 8191;
}

results matching ""

    No results matching ""