#
# Copyright 2017-present Open Networking Laboratory
#
# 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.
#
#
# --- Elements (Singular)
node=Nodo
topology=Topologia
network=Rete
region=Regione
device=Dispositivo
host=Host
link=Collegamento

# --- Elements (Plural)
nodes=Nodi
topologies=Topologie
networks=Reti
regions=Regioni
devices=Dispositivi
hosts=Hosts
links=Collegamenti

# --- Element IDs
node_id=ID del Nodo
region_id=ID della Regione
device_id=ID del Dispositivo
host_id=ID dell'Host
link_id=ID del collegamento

# --- Protocol terms
protocol=Protocollo
ip=IP
ip_address=Indirizzo IP
tcp_port=Porta TCP
mac=MAC
mac_address=Indirizzo MAC
uri=URI
