// Copyright (C) 2017 The Libphonenumber Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

syntax = "proto3";

package i18n.phonenumbers.metadata;

option java_package = "com.google.i18n.phonenumbers.metadata.proto";

// The possible provenance which can be assigned to a range.
// This enum is NOT stable and must only be stored in text based protocol
// buffers.
enum Provenance {
  // Having a distinct default/unknown enum with a zero value is a proto3 thing.
  // No data should actually ever have this value.
  UNKNOWN = 0;

  // Indicates that the ranges were defined in an official ITU document. The
  // comment associated with this range should contain a link to the document.
  // This is the most trusted for of evidence and will usually replace any
  // previous "lower" provenance (though this is not always true for some
  // countries).
  ITU = 10;

  // Indicates that the ranges were defined in an official IR21 document. The
  // comment associated with this range should contain a link to the document.
  // This is the most trusted for of evidence and will usually replace any
  // previous "lower" provenance (though this is not always true for some
  // countries).
  IR21 = 20;

  // Indicates that evidence for a range was found in a website belonging to
  // an official, government endorsed entity (e.g. national telecoms operator),
  // but not part of either an official ITU or IR21 document.
  // The comment associated with this range should contain a URL to the
  // appropriate page where the evidence was found.
  GOVERNMENT = 30;

  // Indicates that evidence for a range was found in a website belonging to a
  // telecoms operators (mobile carrier, MVNO etc...). The comment associated
  // with this range should contain a URL to the appropriate page where the
  // evidence was found.
  TELECOMS = 40;

  // Indicates that evidence for a range was found in an unofficial website
  // (e.g Facebook or a general company home page). The comment associated
  // with this range should contain a URL to the appropriate page where the
  // evidence was found.
  WEB = 50;

  // Used to indicate special situations in which a number is accepted as
  // valid, despite no citeable evidence. When this provenance the coment text
  // should indicate some bug report or internal reasoning as to why this range
  // should be accepted. This provenance should be used only in exceptional
  // circumstances and the comment may be scrubbed from externally published
  // versions of the range data.
  INTERNAL = 100;
}
